Closed rquey closed 2 years ago
Just a bit more insight to this issue: I believe this issue roots from that the mesh generated this way does not give the third dimensional information. I output the .bcs file and it only contains the face sets in X and Y directions.
Then I thought about a workaround - to load the mesh again and reprint. This time the $Nset section and $Faset sections are included, but looks like neper is treating it as if it is a cylinder - instead of [x-z][0,1], it gives f1, which, according to the manual, is the cylinder face.
This is a known bug and, yes, it comes from the fact that the 3D mesh is not generated in the standard way.
At this time, FEPX does not use the $NSets
field of the msh file, but it does use/need the $Fasets
field and expects 6 faces, while Neper "rebuilds" only 1 when you load/reprint... (f1
, f2
, etc. are for "arbitrary" faces, in contrast to x0
, x1
, etc., which are the min and max faces along x
, etc.).
So, there does not seem to be a real workaround, and the best way probably is to generate a "thin" 3D tessellation and mesh it in the standard way.
I will also step in to preemptively caution that there may be issues with proper constraint of the domain for thin plates/films, leading to convergence issues when simulating with FEPX. Appropriate boundary conditions must be applied, that balance both an accurate reflection of those expected in an experimental setup, as well as conditions which will aid (not hamper) numerical stability. Should you have issues with convergence, please start a discussion in the FEPX discussions page.
I will also step in to preemptively caution that there may be issues with proper constraint of the domain for thin plates/films, leading to convergence issues when simulating with FEPX. Appropriate boundary conditions must be applied, that balance both an accurate reflection of those expected in an experimental setup, as well as conditions which will aid (not hamper) numerical stability. Should you have issues with convergence, please start a discussion in the FEPX discussions page.
This is a very valid point that i'm also thinking about. I opted for thin plates not because of the actual sample size, but for computational efficiency. The most ideal case is that I can just run simulations in 2D, but I know at the moment fepx doesn't allow 2d simulations. The BCs I'm using is simply uniaxial tension on the x(or y) direction. I think the most ideal case would be if I can have some periodical boundary conditions on the z direction, but I'm not yet sure how to do it. So far I have successfully converged with a few thin models, and the results doesn't look too off compared with literature (actually your co-authored paper https://doi.org/10.1016/j.actamat.2018.07.011). I plan to do some thickness convergence study by comparing results from various thicknesses, which I hope would help me find a thickness that makes most sense. Not sure how much sense this approach makes to you, and I would appreciate so much if you can give some insights.
Won't fix as FEPX would not properly support the resulting meshes anyway, and the current meshes seem to work well with other codes.
Discussed in https://github.com/rquey/neper/discussions/370