ElasticityManager
Summary
- class pvade.structure.ElasticityManager.Elasticity(domain, structural_analysis, params)
This class solves the CFD problem
Initialize the fluid solver
This method initialize the Flow object, namely, it creates all the necessary function spaces on the mesh, initializes key counting and boolean variables and records certain characteristic quantities like the minimum cell size and the number of degrees of freedom attributed to both the pressure and velocity function spaces.
- Parameters:
domain (
pvade.geometry.MeshManager.Domain) – A Domain object
- _assemble_system(params)
Pre-assemble all LHS matrices and RHS vectors
Here we pre-assemble all the forms corresponding to the left-hand side matrices and right-hand side vectors once outside the time loop. This will enable us to re-use certain features like the sparsity pattern during the timestepping without any modification of the function calls.
- Parameters:
params (
pvade.Parameters.SimParams) – A SimParams object
- build_boundary_conditions(domain, params)
Build the boundary conditions
A method to manage the building of boundary conditions, including the steps of identifying entities on the boundary, marking those degrees of freedom either by the identified facets or a gmsh marker function, and finally assembling a list of Boundary objects that enforce the correct value.
- Parameters:
domain (
pvade.geometry.MeshManager.Domain) – A Domain objectparams (
pvade.Parameters.SimParams) – A SimParams object
- build_forms(domain, params)
Builds all variational statements
This method creates all the functions, expressions, and variational forms that will be needed for the numerical solution of Navier Stokes using a fractional step method. This includes the calculation of a tentative velocity, the calculation of the change in pressure required to correct the tentative velocity to enforce continuity, and the update to the velocity field to reflect this change in pressure.
- Parameters:
domain (
pvade.geometry.MeshManager.Domain) – A Domain objectparams (
pvade.Parameters.SimParams) – A SimParams object
- build_nullspace(V)
Build PETSc nullspace for 3D elasticity
- update_fields(u, u_old, v_old, a_old, dt, beta, gamma)
Update fields at the end of each time step.