Closed ktbolt closed 10 months ago
I've added the following functions for the core shell implementation to shells.cpp
, mat_fun.cpp
and mat_models.cpp
.
construct_shell()
shell_cst()
shell_bend_cst()
shl_strs_res()
get_pk2cc_shli()
get_pk2cc_shlc()
ten_mddot()
ten_asym_prod12()
shell_3d()
I've added processing Lee-Sacks material model parameters, updated
Parameters.h
Parameters.cpp
read_files.cpp
set_material_props.h
distribute.cpp
I've added the Lee-Sacks
material model and XML parameters for it, added a CST_Shell_BC_type
parameter and fixed some bugs in the processing of shell equations.
The C++ and Fortran results now match for svFSI-Tests/09-shells/01-plate/svFSI_tri3.inp
I've added post processing for shells
add new output groups (e.g., out_CGstrain, out_CGInv1)
modify set eq props
modify set output props
modify write_vtus()
add shl_post()
The C++ and Fortran stress
results match for svFSI-Tests/09-shells/02-valve
Test running in parallel, does not work, warning message Failed to converge plane-stress condition
.
Running using svFSI
produces
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ERROR occurred, see below for more explanation
ERROR: Shells with linear triangles should be run sequentially
STOP All processors are forced to stop by a fatal error
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
so I guess this is not supported yet @vvedula22 ?
@ktbolt Yes, we use a patch of triangular elements to compute bending strains required for shell formulation and therefore is not supported for parallel simulation yet. IGA for shells is supported for running in parallel.
I've added shell contact, updated XML parameter processing and added construct_contact_pnlty()
.
Contact results are off, looking into that now.
For svFSI-Tests/09-shells/02-valve
the Displacement
results produce the same maximum (0.256322) but a few nodes in the contact area do differ by around 0.0195 (7%), can't find the source of the difference other than just the accumulation of small differences in intermediate computations.
Merged into main
.
@ktbolt, can you add those tests to our testing framework?
The svFSI Fortran code has been updated with a new shell mechanics formulation. This new shell code needs to be converted and added to svFSIplus.
The changes are quite extensive as shown below identifying the commits that I think have to do with the new shell code