Difference between revisions of "Surface Normals"
Line 13: | Line 13: | ||
== Multimaterial Normal Vector Options == | == Multimaterial Normal Vector Options == | ||
[[NairnMPM]] has implemented several methods for finding normals in multimaterial mode contact. No one method works for all problems, which is why multiple options are needed. This section describes the available options. | |||
=== Each Material's Gradient === | === Each Material's Gradient === | ||
When multimaterial mode MPM was initially developed, contact was handled separately for each material's velocity field and the normal vector was found from that material's mass gradient.<ref name="bard">S. G. Bardenhagen, J. E. Guilkey, K. M. Roessig, J. U. Brackbill, W. M. Witzel, and J. C. Foster, "An Improved Contact Algorithm for the Material Point Method and Application to Stress Propagation in Granular Material," <i>Computer Modeling in Engineering & Sciences</i>, <b>2</b>, 509-522 (2001).</ref> | When multimaterial mode MPM was initially developed, contact was handled separately for each material's velocity field and the normal vector was found from that material's mass gradient.<ref name="bard">S. G. Bardenhagen, J. E. Guilkey, K. M. Roessig, J. U. Brackbill, W. M. Witzel, and J. C. Foster, "An Improved Contact Algorithm for the Material Point Method and Application to Stress Propagation in Granular Material," <i>Computer Modeling in Engineering & Sciences</i>, <b>2</b>, 509-522 (2001).</ref>. The alorithm is straightforward and is extended to more than two materials in contact simply for iterating for each material. Experience shows it suffers in accuracy compared to methods desribed below. For one thing, the normals for the two materials when generally not be in equal and opposite directions. When that occurs, the contact algorithm does not conserve momentum. | ||
This method is selected by [[Multimaterial MPM#Multimaterial Mode Input Commands|setting <tt>(normals)</tt>]] to <tt>owngrad</tt> (or numerically to 3). This option is available in [[NairnMPM]] for comparison to improved methods and not recommended for general use. | |||
=== Maximum Gradient === | === Maximum Gradient === | ||
This method is selected by [[Multimaterial MPM#Multimaterial Mode Input Commands|setting <tt>(normals)</tt>]] to <tt>maxgrad</tt> (or numerically to 1). | |||
=== Average Gradient === | === Average Gradient === | ||
This method is selected by [[Multimaterial MPM#Multimaterial Mode Input Commands|setting <tt>(normals)</tt>]] to <tt>avggrad</tt> (or numerically to 2). | |||
=== Maximum Volume === | === Maximum Volume === |
Revision as of 11:56, 26 September 2013
Both multimaterial mode MPM and explicit cracks need to calculate surface normals. These normals are a crucial step in accurate contact physics calculations.
Introduction
The figure shows a surface between two materials (a and b) or between two sides of a crack (above and below). The arrow shows a vector normal to the surface oriented from side a to side b. Finding this normal accurately is a key component of implementing both multimaterial mode contact and crack contact. First, normals are needed to find the component of the velocity in the approaching direction and the separation in the opneing direction, both of which are used to detect contact. Second, the normals are needed to implement contact mechanics such as to model frictional contact or imperfect interfaces.
Practical experience using multimaterial mode MPM simulations has revealed that accuracy of results is very sensitive to the method used to find the normals. In fact, when a multimaterial mode simulation has numerical issues, the causes of those issues is almost always connected to problems in finding surface normals. See below for the various options in multimaterial mode MPM to finding normals. Numerous options are needed because no on option works for all problems.
Simulations that use explicit cracks, have far fewer issues with normals. The normals are still crucial, but because the crack geometry is tracked, the crack normals are more easily calculated. See below for some details on crack surface normals.
Multimaterial Normal Vector Options
NairnMPM has implemented several methods for finding normals in multimaterial mode contact. No one method works for all problems, which is why multiple options are needed. This section describes the available options.
Each Material's Gradient
When multimaterial mode MPM was initially developed, contact was handled separately for each material's velocity field and the normal vector was found from that material's mass gradient.[1]. The alorithm is straightforward and is extended to more than two materials in contact simply for iterating for each material. Experience shows it suffers in accuracy compared to methods desribed below. For one thing, the normals for the two materials when generally not be in equal and opposite directions. When that occurs, the contact algorithm does not conserve momentum.
This method is selected by setting (normals) to owngrad (or numerically to 3). This option is available in NairnMPM for comparison to improved methods and not recommended for general use.
Maximum Gradient
This method is selected by setting (normals) to maxgrad (or numerically to 1).
Average Gradient
This method is selected by setting (normals) to avggrad (or numerically to 2).
Maximum Volume
Just describe
Custom Specified Normal
Developer flags and maybe more options int he future
Rigid Material Bias Option
Volume Screening
Explicit Crack Normal Vector
Found from crack path and often more accurate the multimaterial mode such as for interfaces.
References
- ↑ S. G. Bardenhagen, J. E. Guilkey, K. M. Roessig, J. U. Brackbill, W. M. Witzel, and J. C. Foster, "An Improved Contact Algorithm for the Material Point Method and Application to Stress Propagation in Granular Material," Computer Modeling in Engineering & Sciences, 2, 509-522 (2001).