Hello, I am studying the stress solver and trying to follow the mathematics in the code. I'm looking in the ComputeStress Subroutine and can follow how the stress is computed from the strain in the LocalStress subroutine found in Stress.f90. The strain is found using the local displacement, but I am having a hard time following how the local displacement is found. I see that line 1833 in StressSolve.f90 calls GetVectorLocalSolution( LocalDisplacement, USolver=Solver ). I am having trouble following this subroutine (found in DefUtils.f90). How does this calculate the local displacement of the nodes?
Thank you,
Jaron
Local Displacement in StressSolve.f90
-
- Site Admin
- Posts: 4823
- Joined: 22 Aug 2009, 11:57
- Antispam: Yes
- Location: Espoo, Finland
- Contact:
Re: Local Displacement in StressSolve.f90
Hi
This routine just picks the local displacements related to an element from the global solution vector. So there is no solution step required.
-Peter
This routine just picks the local displacements related to an element from the global solution vector. So there is no solution step required.
-Peter
Re: Local Displacement in StressSolve.f90
I am having trouble finding where the global displacement is calculated. The displacement should be dependent on the force boundary conditions. Where is the displacement vector calculated from the boundary conditions in the code?
-
- Site Admin
- Posts: 4823
- Joined: 22 Aug 2009, 11:57
- Antispam: Yes
- Location: Espoo, Finland
- Contact:
Re: Local Displacement in StressSolve.f90
DefaultSolve() is usally the routine that solves for the linear system + does some relexation + checks for convergence. The modules usually just do the physics specific stuff i.e. discretize the PDEs into linear systems. -Peter