How can I put Tn(n+1) and Tn(n-1) values into diff equations?

1 Ansicht (letzte 30 Tage)
Martin Pecha
Martin Pecha am 4 Mai 2018
Bearbeitet: Martin Pecha am 4 Mai 2018
I need to calculate system of equations for transport of heat between the cells - total number of cells is Ncell=19. Problem is that every cell in calculation is taking heat from cell(n-1) and cell(n+1). How can I write it down if these values are basically not calculated before? Is it possible to write it as a matrix where I choose specific values for Tn+1 and Tn-1?
dTdt(3) and dTdt(3+ncell+1) are the edge cells where one part interacts with T of air dTdt(4:3+ncell) are the one I need to write correctly where ncell are the inner cells (Ncell-2)
%parameters
Tinp=T(1);
Tinn=T(2);
T1=T(3);
Tn=T(4:3+ncell);
TN=(3+ncell+1);
Toutp=(4+ncell+1:4+2*ncell)';
Toutn=(4+2*ncell+1:4+3*ncell)';
Ttp=(4+3*ncell+1);
Ttn=(4+3*ncell+2);
TSoutp=1/ncell*(+sum(Toutp));
TSoutn=1/ncell*(+sum(Toutn));
Tnplus1=[Tn(2:17);TN]; %This is how I tried to write it
Tnminus1=[T1;Tn(1:16)]; %This is how I tried to write it
cTV2=y(1);
cTV3=y(2);
cTV4=y(3);
cTV5=y(4);
cCV2n=y(5:4+Ncell);
cCV3p=y(4+Ncell+1:4+2*Ncell);
cCV3n=y(4+2*Ncell+1:4+3*Ncell);
cCV4p=y(4+3*Ncell+1:4+4*Ncell);
cCV4n=y(4+4*Ncell+1:4+5*Ncell);
cCV5p=y(4+5*Ncell+1:4+6*Ncell);
dTdt=zeros(4+3*ncell+4,1);
% mass tank balance
dTdt(1)=(rho*Cp*QS*(Ttinp-Tinp)+Up*Ncell*Ap*(Tair-Tinp)+Wpump)/(rho*Cp*Vp*Ncell);
dTdt(2)=(rho*Cp*QS*(Ttinn-Tinn)+Up*Ncell*Ap*(Tair-Tinn)+Wpump)/(rho*Cp*Vp*Ncell);
%mass cell balance
dTdt(3)=(rho*Cp*QC*(Tinp-T1)+rho*Cp*QC*(Tinn-T1)+Ux*Ax*(Tn(1)-T1)+Uend*Ax*(Tair-T1)+2*Uy*Ay*(Tair-T1)+Uz*Az*(Tair-T1)+k2*cCV2n(1,:)/d*S*(-H24)+k3*cCV3n(1,:)/d*S*(-H34)+k4*cCV4p(1,:)/d*S*(-H43)+k5*cCV5p(1,:)/d*S*(-H53)+i*i*r*Ax)/(rho*Cp*VC);
dTdt(4:3+ncell)=(rho*Cp*QC*(Tinp-Tn)+rho*Cp*QC*(Tinn-Tn)+Ux*Ax*(Tnplus1-Tn)+Ux*Ax*(Tnminus1-Tn)+2*Uy*Ay*(Tair-Tn)+Uz*Az*(Tair-Tn)+k2*cCV2n(2:Ncell-1,:)/d*S*(-H24)+k3*cCV3n(2:Ncell-1,:)/d*S*(-H34)+k4*cCV4p(2:Ncell-1,:)/d*S*(-H43)+k5*cCV5p(2:Ncell-1,:)/d*S*(-H53)+i*i*r*Ax)/(rho*Cp*VC);
dTdt(3+ncell+1)=(rho*Cp*QC*(Tinp-TN)+rho*Cp*QC*(Tinn-TN)+Ux*Ax*(Tn(:,ncell)-TN)+Uend*Ax*(Tair-TN)+2*Uy*Ay*(Tair-TN)+Uz*Az*(Tair-TN)+k2*cCV2n(:,Ncell)/d*S*(-H24)+k3*cCV3n(:,Ncell)/d*S*(-H34)+k4*cCV4p(:,Ncell)/d*S*(-H43)+k5*cCV5p(:,Ncell)/d*S*(-H53)+i*i*r*Ax)/(rho*Cp*VC);
dTdt(4+ncell+1:4+2*ncell)=(rho*Cp*QC*(Tn-Toutp)+Up*Ap*(Tair-Toutp))/(rho*Cp*VC);
dTdt(4+2*ncell+1:4+3*ncell)=(rho*Cp*QC*(Tn-Toutn)+Up*Ap*(Tair-Toutn))/(rho*Cp*VC);
dTdt(4+3*ncell+1)=(rho*Cp*QC*(TSoutp-Ttp)+Ut*At*(Tair-Ttp))/(rho*Cp*VC);
dTdt(4+3*ncell+2)=(rho*Cp*QC*(TSoutn-Ttn)+Ut*At*(Tair-Ttn))/(rho*Cp*VC);

Antworten (0)

Kategorien

Mehr zu Thermal Analysis finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by