Open Ketucalibur opened 8 years ago
Hi Xichao: I agree. DICe needs some improvement in this regard. Did you have a particular formulation or shape function in mind? Perhaps a reference in the literature?
I would recommend using a reproducing kernel formulation to create shape functions of arbitrary order.
John: Any thoughts on NURBS for interpolants? There's a paper out there for DIC with NURBS, but I wonder if it's worth the effort
@dicengine NURBS could be done and should provide a nice high-order interpolant, but is probably not worth the effort.
I suggested the reproducing kernel shape functions because they fit into your data structures nicely, your already doing nearest neighbor searches on a circle, etc. and the RK-shape functions can be constructed to arbitrary order. In fact, if you perform a first-order RK displacement field approximation from a set of discrete points and take the spatial gradient (plus the identity matrix) you get back exactly Silling's nonlocal deformation gradient. Of course, the advantage is you can go to any order you want depending on the smoothness of the kernel in the RK formulation. There are also methods to approximate the gradient directly, see Eq. 2.13 in "An implicit gradient model by a reproducing kernel strain regularization in strain localization problems" by Chen et al.
Second order shape functions have been added and are accessible in the command line execution of DICe. I haven't exposed a user option in the GUI yet because I need to do more testing. It seems like th quadratic shape functions are harder to get to converge in some cases. I'll continue to look into this.
Hi,
To use the second order shape functions, you have to create a “shape_function_type” parameter of type “string" in the params.xml file and set it to value “quadratic”. You also need to use the command line for executing DICe. If you use the GUI, the input files will be overwritten when you run the DICe analysis.
The implementation of the quadratic shape functions are in the DICe_LocalShapeFunction.cpp/.h files which are in the src/base directory.
Thanks, Dan
On Feb 12, 2019, at 7:22 AM, iniyanakila notifications@github.com<mailto:notifications@github.com> wrote:
I could not find the Second order shape function implementation. Could you please help me with using second order shape function?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/dicengine/dice/issues/38#issuecomment-462777949, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AOf5usyOJKo9kt2TcLltTcy-BlsCukgJks5vMs4-gaJpZM4IVEUb.
Thanks you, for your post and the code!
Thanks for the great source. I think it will be great to add shape function with second order displacement gradient.