| EISCRV(H,T,Ta,Ls,W,z,d,Vr,maxiter,maxerr)
|
function [T,M,V,ACH,effi,iter] = EISCRV(H,T,Ta,Ls,W,z,d,Vr,maxiter,maxerr)
% This function implements the calculation of temperature for the paper
% entitled as Experimental investigations on solar chimney for room ventilation
% Jyotirmay Mathur, N K Bansal, Sanjay Mathur, Meenakshi Jain, Anupma.
% http://www.sciencedirect.com/science/article/pii/S0038092X05003014
%
% INPUT:
% H = Solar intensity (Watt/m^2)
% T = Temperature column vector [Tg Tf Tw]'
% Ta = Ambient Temperature (K)
% Ls = Stack Length (m)
% W = width of the Chimney (m)
% d = Gap between Glass and Wall (m)
% z = Opening height of Chimney (m)
% Vr = Room Volume (m^3)
% maxiter = Maximum number of iteration
% maxerr = Maximum error to be incorporated
%
% OUTPUT: T = Temperature column vector [Tg Tf Tw]',
% where
% Tg = mean glass temperature (K)
% Tf = mean temperature of air in channel (K)
% Tw = mean temperature of vertical wall (K)
% M = Mass flow rate (kg/s)
% V = Ventilation rate (m^3/s)
% ACH = Number of air changes per hour
% effi = Instantaneous efficiency
% iter = Number of iteraton
% Implemented by ASHISH MESHRAM
% meetashish85@gmail.com,http://www.facebook.com/ashishmeet
%---Checking input arguments
if nargin<10,maxerr = 0.0001;end
if nargin<9,maxiter = 1000;end
if nargin<8,Vr = 57767;end
if nargin<7,d = 0.145;end
if nargin<6,z = 0.145;end
if nargin<5,W = 0.1724;end
if nargin<4,Ls = 1.9275;end
if nargin<3,Ta = 301;end
if nargin<2,T = [315;318;343];end
if nargin<1,H = 400;end
%-------------------Calculation of temperature----------------------------%
iter = 0;
while iter <= maxiter
%---Initializing Temperature
Tg = T(1,1);
Tf = T(2,1);
Tw = T(3,1);
%---Previous temperature
Tprev = T;
%---Get Properties based on temperature
[c,f,g,w] = Property(Tg,Tf,Tw,Ta,Ls,W,H);
%---Get matrix based on properties
[Temp_Coeff, RH,~, M] = MatCrea(c,f,w,Tf,Ta,Ls,z,W,d);
%---Calculate current temperature
Tcurr = GaussSeidelSOR(Temp_Coeff,RH);
%---Get error between previous and current temperature
error = abs(Tcurr - Tprev);
if max(error)<=maxerr
break
else
iter = iter+1;
T = Tcurr;
end
end
V = M/w.Rof; %---ventilation rate (m^3/s)
ACH = (V*3600)/Vr; %---Number of air changes per hour
Tfo = (Tf - 0.25*Ta)/0.75;
Tfi = Ta;
effi = ((M*g.Cf*(Tfo - Tfi))/(W*Ls*H))*100; %---Instantaneous efficiency
|
|