Elastic: Difference between revisions
No edit summary |
No edit summary |
||
Line 14: | Line 14: | ||
<math> \nabla \cdot \sigma = \rho \nabla^2 u </math>, where <math>\sigma</math> is the strain and is related to the stress by the constituitive relation | <math> \nabla \cdot \sigma = \rho \nabla^2 u </math>, where <math>\sigma</math> is the strain and is related to the stress by the constituitive relation | ||
<math>\sigma=D(\epsilon-\epsilon_0)</math>. | <math> \sigma = D (\epsilon-\epsilon_0) </math>. | ||
The <math>\epsilon_0</math> term is the stress caused by the inverse piezoelectric effect, lattice mismatch, or thermal expansion mismatch. | The <math>\epsilon_0</math> term is the stress caused by the inverse piezoelectric effect, lattice mismatch, or thermal expansion mismatch. |
Revision as of 15:00, 10 August 2011
FLOOXS can solve for stress/strain caused by internal lattice mismatch, coefficient of thermal expansion mismatch, and the inverse piezoelectric effect. An example of the alagator/tcl commands that designate solving for elastic displacement are given below.
pdbSetString metal displacement Equation "elastic(displacement)" pdbSetString AlGaN displacement Equation "elastic(displacement)+IPZ(DevPsi)" pdbSetString AlGaN displacement Equation "elastic(displacement)+BodyStrain(0.002)" pdbSetString GaN displacement Equation "elastic(displacement)+BodyStrain(0.02e-6*(Temp-300.0))+IPZ(DevPsi)"
The command "elastic()" takes the solution variable displacement, only, as its argument and must be present in all equation commands. The additional commands "IPZ()" and "BodyStrain()" add initial stress values to the equilibrium equation and consequently, the displacement due to inverse piezoelectric-induced stress or lattice or thermal expansion mismatch-induced stress is solved for. A detailed description of employing stress/strain physics into your model is described elsewhere. Here, we focus on how the equilibrium equation is implemented using the finite element method in FLOOXS.
As designated in the class diagram on the previous page. BodyStrain and IPZTerm are new classes derived from the ElasticTerm class. The code for these terms are in the file elastic.cc.
<math> \nabla \cdot \sigma = \rho \nabla^2 u </math>, where <math>\sigma</math> is the strain and is related to the stress by the constituitive relation
<math> \sigma = D (\epsilon-\epsilon_0) </math>.
The <math>\epsilon_0</math> term is the stress caused by the inverse piezoelectric effect, lattice mismatch, or thermal expansion mismatch.