luchete80 / EPSol

0 stars 0 forks source link

Elastic radial flow example: boundary conditions wrongly applied #72

Closed luchete80 closed 3 years ago

luchete80 commented 3 years ago

Current code:

    iu=int(0)
    iF=int(var_dim[0]*numnodes)     
    for n in range(numnodes):   
        iu=ndof*n
        Rglob[iu  ]=0
        Rglob[iu+1]=0
        Kglob[iu,iu]=Kglob[iu+1,iu]=Kglob[iu,iu+1]=Kglob[iu+1,iu+1]=1
luchete80 commented 3 years ago

once aplied this is obtained in 10 iteration (F only): dUglob [ 0. 0. 0. 0. -0. -0. 0.00481205 0.00160676 0. -0. 0.00855778 0.0006363

          1. -0. -0.01695632 0.00773291 -0. -0. -0.01432252 0.0079771
        1. -0. 0. -0.01496731 0.007186 -0. 0. 0.00813248 -0.0019734 ] Uglob [ 4.73594914e-02 -1.71900081e-02 0.00000000e+00 1.00000000e+00 3.66084127e-02 -1.70116714e-02 3.74151779e-01 1.38254162e+00 2.91926277e-02 -1.67855664e-02 4.91398509e-01 1.42081937e+00 4.92403877e-02 -8.68240874e-03 0.00000000e+00 1.00000000e+00 3.93923101e-02 -6.94592699e-03 -1.98849558e+00 1.89961719e+00 3.28269251e-02 -5.78827249e-03 -2.56048396e+00 2.12296838e+00 5.03826936e-02 -4.45759732e-05 0.00000000e+00 1.00000000e+00 4.02189896e-02 3.46492777e-03 -1.14275296e+00 1.45730441e+00 3.31730986e-02 5.78880636e-03 -1.99924170e-02 7.30248824e-01]
luchete80 commented 3 years ago

This is wrong at the end of the iteration
for n in range(numnodes):
Uglob[ndofn ]=vnxy[n,0] Uglob[ndofn+1]=vnxy[n,1]

luchete80 commented 3 years ago

For 10 iterations: Uglob [ 1. 0. 0. 1.

    1. 0.37415178 1.38254162
    1. 0.49139851 1.42081937
        1. -1.98849558 1.89961719
        1. -2.56048396 2.12296838
        1. -1.14275296 1.45730441
        1. -0.01999242 0.73024882]