-
Notifications
You must be signed in to change notification settings - Fork 232
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test cantilever beam with shell #135
base: master
Are you sure you want to change the base?
Test cantilever beam with shell #135
Conversation
…u/SPHinXsys into xiangyu/code_refactory
change muscle soft contact back to kirchhoff solver
rename intialize_gravity to initialize_time_step
40d008c
to
55c8d20
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- When the Poisson ratio is between 0.48-0.49, the simulation crashes. You can try to decrease the time step size slightly. (I have tried to reduce the dt, and the simulation is Okay). This issue is relevant to numerical stability, and we are looking for a method to fix it.
- Whether the particle is on the boundary or not, the Volume should be dp * dp, which is not the problem of the exact volume and is relevant to the SPH collocation. The derivative operator, for example, is otherwise incorrect. Thus, we suggest the boundary particles are 0.5*dp away from the physical boundary.
- Seems like the results of tests 1 and 2 are converging as increasing the resolution (decreasing the dp). We also do like the way in these two tests.
- If you want to extend the fixed boundary, you can try to only constrain the displacement as you said (free the pseudo normal). Otherwise, there may be the hourglass modes.
void reset_parameters() | ||
{ | ||
rho = 7800/(scaling*scaling*scaling); | ||
Youngs_modulus = 207e9/(scaling*scaling); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Youngs_modulus should be 207e9 / scaling. (N = kg*m/s^2)
physical_viscosity = 1./ 4.0 * std::sqrt(rho * Youngs_modulus)*0.002*scaling; | ||
ratio_fixed = 0.1;// Percent of body fixed | ||
extend_bc = false;// Extend fixed bc by kernell cutoff | ||
linear_load = 100./scaling;// 10 N/m |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
linear_load should be 100.
Description
The cantilever beam can be found here. In the Euler-Bernoulli formalism, a rigid cross-section orthogonal to the centerline is assumed, so for isotropic linear elastic material, it is closest to the analytical value when Poisson's ratio is 0. In this test case, the maximum expected deflection$\delta=\tfrac{qL^4}{8EI}=7.246$ mm.
Material properties:
Results
Discussion
It seems to converge close to analytical value (~3% error at dp=2mm), but it must be confirmed with simulation running at smaller resolution. Running at smaller resolution (dp = thickness/2) does not converge towards analytical.
A main source of error is the boundary condition that must be carefully adjusted in order to have physical location x=0 to be fixed.
While writing this issue, it also occurred to me that there is some shear of the cross-section as the shell formulation follows the Mindlin–Reissner theory, if I understood it correctly. So unless I constrain the pseudo-normal, the closest beam formulation to follow would actually be the Timoshenko beam theory. All things considered it might get close enough.
The pain point is when I run at lower Poisson ratio. Simulation fails already somewhere in-between 0.48 and 0.49. Your help here @DongWuTUM would be appreciated. (Just look at the last commit in the PR, it looks like so much changes because it is based on another PR by Prof. Hu yet to be merged))