My problem is to implement a thermal ramp ISO834 in convection-radiation code (FreeFem++)
for Fourier’s problem.
I want to obtain a thermal map for a concrete square section, applying the ISO834 ramp to the 4 side boundaries.
I tried to apply the ISO834 ramp to the time loop, but something goes wrong.
//Input
// T:1800 (30 minutes analisys), dt:1 time step
real T = 1800, dt = 1;
real u0 = 20, ac = 25, B = 5.670373e-8, e = 0.56, ar = B*e;
//l:thermal conductivity, c:specific heat, r:density
real l = 1.0, c = 1000, r = 2250;
//Mesh (square section 20x20 cm)
real x0 = 0, x1 = 0.20, y0 = 0, y1 = 0.20;
int nx = x1*100, ny = y1*100;
mesh Th = square(nx, ny, [x0+(x1-x0)*x, y0+(y1-y0)*y]);
//Variational form
fespace Vh(Th,P1);
Vh ue, uek;
Vh vold,w,v=u0-ue,b;
problem therm(v,w) = int2d(Th)(r*c*v*w/dt + l*(dx(v) * dx(w) + dy(v) * dy(w)))
+ int1d(Th,1,2,3,4)(b*v*w)
- int2d(Th)(r*c*vold*w/dt);
for(int t=0;t<T;t+=dt){
vold=v;
for(int m=0;m<5;m++){
ue = 20 + 345*log10(8*t/60+1);
uek = ue + 273.15;
b = ac + ar * (v + 2*uek) * ((v + uek)^2 + uek^2);
therm;
}
vold=v+ue;
plot(vold,nbiso=20,fill=1,value=true,boundary=false);