Skip to content

Using Higher Order Basis Functions

LDTalbot edited this page Sep 10, 2024 · 9 revisions

GIMP

TBA

Quadratic BSpline

To run with quadratic BSpline elements, use: the cell type ED2Q4P2B (2D) or ED3H8P2B (3D), the mesh entity sets file, and additional settings in the "nonlocal_mesh_properties" section of the main .json file.

"mesh": {
          "entity_sets": "entity_sets.json",          
          "cell_type": "ED3H8P2B",
          "nonlocal_mesh_properties": {
			"type": "BSPLINE",
			"node_types": [
				{
					"nset_id": 0,
					"dir": 0,
					"type": 1
				},
                               {...}
                         ]
          }
}

In the "nonlocal_mesh_properties" section the following settings are required:

  • "type" should be "BSPLINE".
  • "node_types" should be defined for each direction.
    • "dir" {0, 1, 2} for {x, y, z}.
    • "nset_id" specified in the mesh entity sets file.
    • "type" according to the following convention:
  //! Regular = 0 //Default
  //! LowerBoundary = 1
  //! LowerIntermediate = 2
  //! UpperIntermediate = 3
  //! UpperBoundary = 4

As an example, for the x-direction:

  • LowerBoundary corresponds to the xmin set of nodes
  • LowerIntermediate corresponds to the xmin+1 set of nodes
  • UpperBoundary corresponds to the xmax set of nodes
  • UpperIntermediate corresponds to the xmax-1 set of nodes

Reference:

  • Steffen, M., Kirby, R. M., & Berzins, M. (2008). Analysis and reduction of quadrature errors in the material point method (MPM). International journal for numerical methods in engineering, 76(6), 922-948.

Local Maximum Entropy (LME)

To run the Local Maximum Entropy (LME) elements: ED2T3L, ED2Q4L (2D), and ED3H8L (3D), additional settings should be added to the main .json file.

"mesh": {
          "cell_type": "ED2Q4L",
          "nonlocal_mesh_properties": {
			"type": "LME",
			"gamma": XX,
			"anisotropy": true, //optional default is false
                        "mesh_size": YY, //optional (if it is not given, an automatic computation will be done)
                        "support_tolerance": ZZ //optional default is 1e-6
          }
}

In the "nonlocal_mesh_properties" section the following settings are required:

  • "type" should be "LME".
  • "gamma" is a non-dimensional thermalization parameter.
  • "anisotropy" boolean to shift the metric tensor within the LME computation.
  • "mesh_size" is the average mesh size, which is assumed to be constant in the current case.
  • "support_tolerance" is the threshold magnitude of the shape function value.

Reference:

  • Arroyo, M., & Ortiz, M. (2006). Local maximum‐entropy approximation schemes: a seamless bridge between finite elements and meshfree methods. International journal for numerical methods in engineering, 65(13), 2167-2202.