SLIDE 17 The femfem++ code for the 3 physics equation
The weak/variationnal formulation :
macro dxa(up) (phia*dx(up)+dphiadx*up) // EOM macro dya(up) (phia*dy(up)) // EOM macro Strain(u1,u2,u3) [ dxa(u1),dya(u2),dya(u3), dxa(u3),( dxa(u2)+dya(u1)) ] // EOM macro E(uphi) [-dxa(uphi),-dya(uphi)] // EOM varf vfullK ([u1,u2,u3,uphi],[v1,v2,v3,vphi]) = int2d(Th,regphiP)( Strain(v1,v2,v3)’*(C5x5*Strain(u1,u2,u3) )
- Strain(v1,v2,v3)’*(E5x2*E(uphi))
- E(vphi)’*(E5x2’*Strain(u1,u2,u3))
- E(vphi)’*(Eps*E(uphi)))
+ int2d(Th,regphiE) ( Strain(v1,v2,v3)’*(CAlu5x5*Strain(u1,u2,u3) ) + E(vphi)’*E(uphi)*eeps )
- int2d(Th,regphiD,regphiDD)( (
E(vphi)’*E(uphi) )*Deps + eeps*(u1*v1+u2*v2+u3*v3)) + on(labelec,uphi=phia’); varf vFullM ([u1,u2,u3,uphi],[v1,v2,v3,vphi]) = int2d(Th,regphiP) ( - rho*([v1,v2,v3]’*[u1,u2,u3])) + int2d(Th,regphiE) ( - rhoAlu*([v1,v2,v3]’*[u1,u2,u3]));
ECCM2010, Paris, Mai 2010 17