Open
Conversation
Contributor
|
@thiagordonho I merged my |
kks32
requested changes
Mar 23, 2021
Contributor
kks32
left a comment
There was a problem hiding this comment.
Add a figure like the one in MPM25 years paper to show the algorithm
theory/contact.md
Outdated
|
|
||
| # Contact Algorithm {docsify-ignore} | ||
|
|
||
| > at each time step $\Delta t$ from $t$ to $t + \Delta t$, the nodal kinematics are initially computed similarly to the conventional MPM algorithm but considering the distinct materials: |
Contributor
There was a problem hiding this comment.
Suggested change
| > at each time step $\Delta t$ from $t$ to $t + \Delta t$, the nodal kinematics are initially computed similarly to the conventional MPM algorithm but considering the distinct materials: | |
| > at each time step $\Delta t$ from $t$ to $t + \Delta t$, the nodal kinematics are computed similar to the conventional MPM algorithm while considering distinct materials: |
theory/contact.md
Outdated
| @@ -0,0 +1,208 @@ | |||
| # Contact Mechanics Between Distinct Bodies | |||
|
|
|||
| The Material Point Method is naturally capable of modelling distinct bodies because each material point holds the information of its own material. However, the conventional MPM alone does not handle contact mechanics as the surface of distinct bodies meet. Additionally, one may need to identify contact interfaces without the need of prescribing their geometry at the start of a simulation. Therefore, the MPM requires a contact algorithm capable of identifying the contact of distinct bodies and applying their contact relationship. A first approach to deal with frictional contact was introduced by Bardenhagen et. al. (2000). This approach is the one presented within this document. Bardenhagen et. al. (2000) also describes the normal to the interface surface for each material as the normalized gradients of the volume. However, the authors method can lead to normal vectors of both materials that are not always aligned -- i.e., opposite to each other for two materials in contact -- which can lead to further errors of the contact relationship. Therefore, a slight change, as proposed by Nairn (2013), was introduced to the algorithm to handle such cases. | |||
Contributor
There was a problem hiding this comment.
Revise as per comments posted on Google Docs
theory/contact.md
Outdated
|
|
||
| * The state parameters at the material points are initialised at the beginning of every time step in the same manner as it is in the conventional MPM. | ||
|
|
||
| * The shape functions $N_i(x_p^t)$ and the gradient of the shape functions $B_i (x_p^t)$ are also computed at each material point as the conventional MPM dictates, with no changes due to the contact algorihtm. |
Contributor
There was a problem hiding this comment.
Suggested change
| * The shape functions $N_i(x_p^t)$ and the gradient of the shape functions $B_i (x_p^t)$ are also computed at each material point as the conventional MPM dictates, with no changes due to the contact algorihtm. | |
| * The shape functions $N_i(x_p^t)$ and the gradient of the shape functions $B_i (x_p^t)$ are also computed at each material point like in conventional MPM. |
theory/contact.md
Outdated
|
|
||
| * The shape functions $N_i(x_p^t)$ and the gradient of the shape functions $B_i (x_p^t)$ are also computed at each material point as the conventional MPM dictates, with no changes due to the contact algorihtm. | ||
|
|
||
| * A nodal set of all the material ids (with no repetition) is created by identifying the material ids of all the material points in the cell. Each new material id is appended to this set. The size of this set will indicate whether the node is located at an interface of two or more materials or not. |
Contributor
There was a problem hiding this comment.
Suggested change
| * A nodal set of all the material ids (with no repetition) is created by identifying the material ids of all the material points in the cell. Each new material id is appended to this set. The size of this set will indicate whether the node is located at an interface of two or more materials or not. | |
| * To identify a contact node, the material ids of all the material points in a cell are mapped to the associated nodes, where a list of unique material ids is maintained. Any node which has more than two material ids is identified as a contact node. |
theory/contact.md
Outdated
|
|
||
| * A nodal set of all the material ids (with no repetition) is created by identifying the material ids of all the material points in the cell. Each new material id is appended to this set. The size of this set will indicate whether the node is located at an interface of two or more materials or not. | ||
|
|
||
| * The nodal mass and momentum are calculated separately for each body $k$. They are based on the mass and velocity of all the material points in the cell that belong to their respective body and are mapped to the nodes using the shape functions. |
Contributor
There was a problem hiding this comment.
Suggested change
| * The nodal mass and momentum are calculated separately for each body $k$. They are based on the mass and velocity of all the material points in the cell that belong to their respective body and are mapped to the nodes using the shape functions. | |
| * The nodal mass and momentum are calculated separately for each body $k$ based on the mass and velocity of all the material points corresponding to the body $k$ in the cell. The properties are then mapped to the nodes using the shape functions. |
|
|
||
| * The nodal mass and momentum are calculated separately for each body $k$. They are based on the mass and velocity of all the material points in the cell that belong to their respective body and are mapped to the nodes using the shape functions. | ||
|
|
||
| * Compute nodal mass of each body |
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Describe the PR
This contribution incorporates the theory behind the Contact Algorithm to the MPM documentation.
https://deploy-preview-58--mpm.netlify.app/#/theory/contact