Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
Share
/
Document
/
Thermal
:
diffusion01.m
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
% Defining grid in the horizontal direction xmin=0.0; xmax=3000.0; xnum=99; xstp=(xmax-xmin)/(xnum-1); ymin=0.0; ymax=3000.0; ynum=99; ystp=(ymax-ymin)/(ynum-1); k=3.0; % Thermal conductivity, W/m/K ro=3000.0; %Density, kg/m^3 cp=1000.0; % Isobaric heat capacity, J/kg kappa=k/ro/cp; % Thermal diffusivity, m^2/s timestep=0.75*((xstp^2+ystp^2)/2.0)/kappa/3.0; % Crucial parameter: Explicit timestep % Defining Initial Temperature structure tmin=500; tmax=1000; for xn = 1:xnum for yn = 1:ynum T0(xn,yn)=tmin; % Background Temperature, K if ((xn-1)/(xnum-1)>0.25 & (xn-1)/(xnum-1)<0.75 & (yn-1)/(ynum-1)>0.25 & (yn-1)/(ynum-1)<0.75) T0(xn,yn)=tmax; % Rectangular Hot body in the middle end end end % Solving temperature equation by explicit method for cycle = 0:25 for xn = 1:xnum for yn = 1:ynum % Boundary nodes: if (xn==1 | xn==xnum | yn==1 | yn==ynum) T1(xn,yn)=tmin; % T=const else kappaX=kappa; kappaY=kappa; T1(xn,yn)=T0(xn,yn)+timestep*kappaX*( T0(xn-1,yn)-2.0.*T0(xn,yn)+T0(xn+1,yn) )/(xstp*xstp); %x contribution T1(xn,yn)=T1(xn,yn)+timestep*kappaY*( T0(xn,yn-1)-2.0.*T0(xn,yn)+T0(xn,yn+1) )/(ystp*ystp); %y contribution end end end T0=T1;% Reloading solutions to T0 % Creating vectors for x and y axes x = xmin:xstp:xmax; y = ymin:ystp:ymax; x=x/1000.;% renormalizes m in km, only for plotting y=y/1000.;% renormalizes m in km, only for plotting % Visualizing results % Ploting RO as colormap figure(1); surf(x,y,T0); view (0,90); caxis([tmin tmax]); colorbar; title(['Temperature, K For time step ',num2str(cycle)]) xlabel('X, km') ylabel('Y, km') end