# How to implement NDsolve for thermo structural code? finite - element - method

I used the following equations to solve a structural problem:

{ufun,vfun, σxif, σyif, σxyif, σzif} = NDSolveValue[{

{planeStrainOperator[YM,ni]==ΓN},
σx[x, y] == YM/((1+ni)(1 - 2ni)) ((1-ni)D[u[x, y], x] + ni D[v[x, y], y] ),
σy[x, y] == YM/((1+ni)(1 - 2ni)) ((1-ni)*D[v[x, y], y] + ni D[u[x, y], x] ),
σxy[x, y] == YM/((1+ni)(1 - 2ni)) (1 - 2ni)/2 (D[u[x, y], y] + D[v[x, y], x] ),
σz[x, y]==ni(YM/((1+ni)(1 - 2ni)) ((1-ni)D[u[x, y], x] + ni D[v[x, y], y] )+
YM/((1+ni)(1 - 2ni)) ((1-ni)*D[v[x, y], y] + ni D[u[x, y], x] )), ΓD} ,
{u,v, σx, σy, σxy, σz}, {x, y} ∈ Ω];


Now I want to solve a termostructural problem. Can anyone help me to understand how to introduce the new terms?

For example, for the plane strain case, I would like to introduce the following relation between stresses and displacements:

planeStrainOperatorTS[Y_,ν_,CoeffDilat_,T_]:=
+({{-((Y (1-ν))/((1-2 ν) (1+ν))),0},
-(Y*CoeffDilat*T[x,y]/(1-2ν))*{{1},{0}},
({{0,-(Y/(2 (1+\[Nu])))},{-((Y ν)/((1-2 ν) (1+ν))),0}}.
+({{-(Y/(2 (1+ν))),0},{0,-((Y (1-ν))/((1-2 ν) (1+ν)))}}.
-(Y*CoeffDilat*T[x,y]/(1-2ν))*{{0},{1}}};


I am trying to mesh the region below, but an error occur: "Mesh contains no elements." Could anyone help me?

R1=5;
R2=5.5;
R3=5.7;
R4=6.0;

Theta1=0.0227;
Theta2=0.00915094;

\[CapitalOmega]=ImplicitRegion[
!(x^2 + y^2>R2^2 && x^2 + y^2< R3^2 && 0<y<x*Tan[Theta2])&&
(y>=0 && x^2 + y^2>=R1^2 && x^2 + y^2<=R4^2 && y<=x Tan[Theta1]),{x, y}];

Show[ RegionPlot[\[CapitalOmega]], ImageSize -> 300]

ToElementMesh[\[CapitalOmega]2,
"BoundaryMeshGenerator" -> {"Continuation"}]["Wireframe"]

• – user9660 Mar 9 '16 at 14:40

• @ABCDEMMM, try \[Kappa] = If[y <= hi, Subscript[TC, Al], Subscript[TC, CS]]; – user21 Jul 31 '19 at 4:34