|
# Computation micro-mechanics
|
|
# I) Computation micro-mechanics
|
|
In the computational micromechanics, we need to evaluate the stress tensor $`\mathbf{P}_M(t)`$ as a function of the strain path $`\mathbf{F}_M(t)`$. With a representative volume elmeent (RVE) $`V_0`$, a microscopic boundary value problem (mBVP) is defined as
|
|
In the computational micromechanics, we need to evaluate the stress tensor $`\mathbf{P}_M(t)`$ as a function of the strain path $`\mathbf{F}_M(t)`$. With a representative volume elmeent (RVE) $`V_0`$, a microscopic boundary value problem (mBVP) is defined as
|
|
- Local balance:
|
|
- Local balance:
|
|
```math
|
|
```math
|
... | @@ -23,7 +23,10 @@ In the computational micromechanics, we need to evaluate the stress tensor $`\ma |
... | @@ -23,7 +23,10 @@ In the computational micromechanics, we need to evaluate the stress tensor $`\ma |
|
In general, the strain averaging theorem and the Hill-Mandel condition are sastified a priori using a microscopic boundary condition. The solution of this mBVP is carried out using nonLinearMechSolver, in wihch the relation between $`\mathbf{P}_M(t)`$
|
|
In general, the strain averaging theorem and the Hill-Mandel condition are sastified a priori using a microscopic boundary condition. The solution of this mBVP is carried out using nonLinearMechSolver, in wihch the relation between $`\mathbf{P}_M(t)`$
|
|
and $`\mathbf{F}_M(t)`$ can be obtained by different ways.
|
|
and $`\mathbf{F}_M(t)`$ can be obtained by different ways.
|
|
|
|
|
|
## 1. Microscopic boundary condition
|
|
# II) Microscopic boundary condition (micro-BC)
|
|
|
|
|
|
|
|
## 1) General options for all micro-BCs
|
|
|
|
### Definition
|
|
A micro BC is defined as follows:
|
|
A micro BC is defined as follows:
|
|
```python
|
|
```python
|
|
microBC = *microBCName*(tag, dim, addDofPerVertex)
|
|
microBC = *microBCName*(tag, dim, addDofPerVertex)
|
... | @@ -44,14 +47,28 @@ microBC = *microBCName*(tag, dim, addDofPerVertex) |
... | @@ -44,14 +47,28 @@ microBC = *microBCName*(tag, dim, addDofPerVertex) |
|
- **dim** : 2 for two-dimensional problems and 3 for three-dimensional problems.
|
|
- **dim** : 2 for two-dimensional problems and 3 for three-dimensional problems.
|
|
- **addDofPerVertex** (0 by default) : when it requires to constrain additional dofs (e.g. nonlocal) are not associated with any macroscopic kinematic variable.
|
|
- **addDofPerVertex** (0 by default) : when it requires to constrain additional dofs (e.g. nonlocal) are not associated with any macroscopic kinematic variable.
|
|
|
|
|
|
|
|
### General options
|
|
### General options for all microBC:
|
|
|
|
- **microBC.setOrder(order)**:
|
|
- **microBC.setOrder(order)**:
|
|
- **microBC.setBCPhysical(g1,g2,g3,g4)**:
|
|
- **microBC.setBCPhysical(g1,g2,g3,g4)**:
|
|
- **microBC.setBCPhysical(g1,g2,g3,g4,g5,g6)**:
|
|
- **microBC.setBCPhysical(g1,g2,g3,g4,g5,g6)**:
|
|
- **microBC.setDofPartition(mechaDofPerNode,conDofPerNode,nonConDofPerNode,addDofPerNode)**:
|
|
- **microBC.setDofPartition(mechaDofPerNode,conDofPerNode,nonConDofPerNode,addDofPerNode)**:
|
|
- **microBC.clearAllConstraintDofs()**
|
|
- **microBC.clearAllConstraintDofs()**
|
|
|
|
|
|
## 2. Using macroscopic BC
|
|
|
|
|
|
## 2) Periodic BC
|
|
|
|
### 2.1) **nonLinearPeriodicBC**
|
|
|
|
|
|
|
|
### 2.2) **nonLinearPeriodicBC**
|
|
|
|
|
|
|
|
### 2.3) **nonLinearPeriodicBC**
|
|
|
|
|
|
|
|
|
|
|
|
## 3) Displacement BC
|
|
|
|
|
|
|
|
## 4) Minimal kinematic BCs
|
|
|
|
|
|
|
|
## 4) Mixed BC
|
|
|
|
|
|
|
|
# III) Microscopic boundary condition
|
|
|
|
|
|
|
|
|