Hi, all, I am trying to get a temperature field for laser heating process. I manage to get the PDE equation (guess the PDE code is OK since I ran it successfully without plot command), but I can't plot the result. Hope someone can help me with this.
p = 2931.5;
c = 335;
k = 1.45;
\[Alpha] = 0.64;
\[Beta] = 1/(260*10^-6);
w = 0.0018;
L = 0.005;
tend = 10;
P = 20;
M = 0.005;
dd = NDSolve[{cp*\!\(
\*SubscriptBox[\(\[PartialD]\), \(t\)]\(T1[t, x, z]\)\) == k*(\!\(
\*SubscriptBox[\(\[PartialD]\), \({z, 2}\)]\(T1[t, x, z]\)\) + \!\(
\*SubscriptBox[\(\[PartialD]\), \({x, 2}\)]\(T1[t, x,
z]\)\)) + \[Beta]*\[Alpha]*(2*P)/(Pi*w^2)*
Exp[-((2*(x - 0.0025)^2)/w^2)]*Exp[-\[Beta]*z],
T1[0, x, z] == 293.13, -
\!\(\*SuperscriptBox[\(T1\),
TagBox[
RowBox[{"(",
RowBox[{"0", ",", "0", ",", "1"}], ")"}],
Derivative],
MultilineFunction->None]\)[t, x, 0] ==
0.64*5.67*10^-8*(293.13^4 - T1^4),
\!\(\*SuperscriptBox[\(T1\),
TagBox[
RowBox[{"(",
RowBox[{"0", ",", "0", ",", "1"}], ")"}],
Derivative],
MultilineFunction->None]\)[t, x, L] == 0,
\!\(\*SuperscriptBox[\(T1\),
TagBox[
RowBox[{"(",
RowBox[{"0", ",", "1", ",", "0"}], ")"}],
Derivative],
MultilineFunction->None]\)[t, 0, z] == 0,
\!\(\*SuperscriptBox[\(T1\),
TagBox[
RowBox[{"(",
RowBox[{"0", ",", "1", ",", "0"}], ")"}],
Derivative],
MultilineFunction->None]\)[t, M, z] == 0},
T1, {t, 0, tend}, {z, 0, L}, {x, 0, M},
Method -> {"MethodOfLines",
"SpatialDiscretization" -> {"TensorProductGrid",
"MinPoints" -> 2000, "MaxPoints" -> 9999}}];
Plot[Evaluate[T1[t, x, z] /. dd /. t -> 2], {x, 0, M}, {z, 0, L}]`
There are errors like :
ReplaceAll::reps: {NDSolve[{cp (T1^(1,0,0))[t,x,z]==9.67323*10^9 E^Plus[<<2>>]+1.45 ((<<1>>^(<<3>>))[<<3>>]+(<<1>>^(<<3>>))[<<3>>]),T1[0,x,z]==293.13,-(T1^(0,0,1))[t,x,0]==3.6288*10^-8 (7.38314*10^9-Power[<<2>>]),(T1^(0,0,1))[t,x,0.005]==0,(T1^(0,1,0))[t,0,z]==0,(T1^(0,1,0))[t,0.005,z]==0},T1,{t,0,10},{z,0,0.005},{x,0,0.005},Method->{MethodOfLines,SpatialDiscretization->{TensorProductGrid,MinPoints->2000,MaxPoints->9999}}]} is neither a list of replacement rules nor a valid dispatch table, and so cannot be used for replacing.
NDSolve::dsvar: 2 cannot be used as a variable.
I need to draw a 3D figure of temperature field at certain moment and also the temperature history at certain point. The code: Evaluate[T1[t, x, z] /. dd /. {x -> 0.0025,z -> 0} ], {t, 0, tend}] doesn't work either.