User:BademiChetan: Difference between revisions
Jump to navigation
Jump to search
BademiChetan (talk | contribs) No edit summary |
BademiChetan (talk | contribs) No edit summary |
||
| Line 2: | Line 2: | ||
University: [http://www.iitm.ac.in Indian Institute of Technology, Madras]. | University: [http://www.iitm.ac.in Indian Institute of Technology, Madras]. | ||
I've written a simple model of a flat plate solar water heater. | I've written a simple model of a flat plate solar water heater. | ||
| Line 94: | Line 92: | ||
find_heat_loss_coeff_top: | find_heat_loss_coeff_top: | ||
HeatLossCoeffTop = C / TempPlateMean / N * ( ( TempPlateMean - TempAmbient ) / ( 1.07886 * N + 1) )^E | HeatLossCoeffTop = C / TempPlateMean / N * ( ( TempPlateMean - TempAmbient ) / ( 1.07886 * N + 1) )^E | ||
+ 5.67E-8 * (TempPlateMean + TempAmbient) *(TempPlateMean^2 + TempAmbient^2)/( 1 / EmittancePlate - N + ( 2.07886 * N + 0.133 *EmittancePlate ) / EmittanceGlass) ; | + 5.67E-8 * (TempPlateMean + TempAmbient) *(TempPlateMean^2 + TempAmbient^2)/( 1 / EmittancePlate - N + ( 2.07886 * N + 0.133 *EmittancePlate ) / EmittanceGlass) ; | ||
Revision as of 12:27, 6 April 2011
Name: Chetan Suresh Bademi
University: Indian Institute of Technology, Madras.
I've written a simple model of a flat plate solar water heater.
(* Assumptions: Wind transfer coefficient is 0. *) REQUIRE "atoms.a4l"; (* New Definition: for overall collector loss coefficient. *) ATOM heat_loss_coeff REFINES solver_var DIMENSION M/T^3/TMP DEFAULT 10{W/m^2/K}; lower_bound := 0{W/m^2/K}; upper_bound := 1e100 {W/m^2/K}; nominal := 1{W/m^2}; END heat_loss_coeff; ATOM heat_capacity REFINES solver_var DIMENSION L^2/T^2/TMP DEFAULT 4181.3{J/kg/K}; (* heat_capacity of water at 25 degree celcius *) lower_bound := -1e60{J/kg/K}; upper_bound := 1e60{J/kg/K}; nominal := 1{J/kg/K}; END heat_capacity; MODEL FlatPlate; N "number of plates" IS_A factor; beta "collector angle( in degree )" IS_A factor; C "A function of beta, for intermediate calculations." IS_A factor; E "A function of TempPlateMean. For calculations only" IS_A factor; TempAmbient "Ambient temperature" IS_A temperature; TempPlateMean "Mean plate temperature" IS_A temperature; TempFluidInlet "Fluid inlet temperature" IS_A temperature; TempFluidOutlet "Fluid outlet temperature" IS_A temperature; EmittanceGlass "Emittance of glass" IS_A factor; EmittancePlate "Emittance of plate" IS_A factor; HeatLossCoeffTop "Heat loss coefficient of the top surface" IS_A heat_loss_coeff; HeatLossCoeffSide "Heat loss coefficient of the side surface" IS_A heat_loss_coeff; HeatLossCoeffBack "Heat loss coefficient of the back surface" IS_A heat_loss_coeff; HeatLossCoeff "Overall heat loss coefficient of the collector" IS_A heat_loss_coeff; HeatUseful "Useful heat" IS_A energy_rate; MassRate "Rate of flow of mass" IS_A mass_rate; HeatCapacity "Amount of heat required to change temperature" IS_A heat_capacity; RemovalFactor "Heat removal factor" IS_A factor; CollectorArea "Area of the collector" IS_A area; BackConductivity "Conductivity of the back insulation" IS_A thermal_conductivity; SideConductivity "Conductivity of the side insulation" IS_A thermal_conductivity; CollectorLength "Length of the Collector" IS_A distance; CollectorWidth "Width of the Collector" IS_A distance; CollectorThickness "Thickness of the collector" IS_A distance; SideThickness "Thickness of the side insulator" IS_A distance; BackThickness "Thickness of the back insulator" IS_A distance; Efficiency "Efficiency of the collector" IS_A factor; SolarRadiation "Solar Radiation at the surface" IS_A irradiance; NetRadiation "Effective solar radiation" IS_A irradiance; TransmittanceNormal "Normal transmittance of the glass plate" IS_A factor; AbsorptanceNormal "Normal absorptance of the glass plate" IS_A factor; AngleModifier "Incidence angle modifier" IS_A factor; AngleModifierCoeff "Incidence angle modifier coefficient" IS_A factor; IncidenceAngle "Incidence angle" IS_A factor; (* EQUATIONS *) find_area_of_collector: CollectorArea = CollectorLength * CollectorWidth ; find_intermediate_const_C: C = 520 * ( 1 -0.00005 * beta * beta ) ; find_intermediate_const_E: E = 0.430 * ( 1 - 100 / TempPlateMean ) ; find_heat_removal_factor: RemovalFactor = MassRate * HeatCapacity * ( TempPlateMean - TempAmbient ) / CollectorArea / ( NetRadiation - HeatLossCoeff*( TempFluidInlet - TempAmbient) ) ; find_heat_loss_coeff_top: HeatLossCoeffTop = C / TempPlateMean / N * ( ( TempPlateMean - TempAmbient ) / ( 1.07886 * N + 1) )^E + 5.67E-8 * (TempPlateMean + TempAmbient) *(TempPlateMean^2 + TempAmbient^2)/( 1 / EmittancePlate - N + ( 2.07886 * N + 0.133 *EmittancePlate ) / EmittanceGlass) ; find_heat_loss_coeff_back: HeatLossCoeffBack = BackConductivity / BackThickness ; find_heat_loss_coeff_side: HeatLossCoeffSide = SideConductivity * 2 * ( CollectorLength + CollectorWidth ) * CollectorThickness / SideThickness / CollectorArea ; calc_incidence_angle_modifier: AngleModifier = 1 + AngleModifierCoeff * (1 / cos(IncidenceAngle * 1{PI} / 180 ) - 1 ) ; calc_net_radiation_at_collector: NetRadiation = SolarRadiation * TransmittanceNormal * AbsorptanceNormal * AngleModifier ; (* Calculate HeatLossCoefficient and TempPlateMean by solving equations 6.4.9 and 6.9.4 iterativelys(Duffie and Beckman) *) find_overall_heat_loss_coeff: HeatLossCoeff = HeatLossCoeffTop + HeatLossCoeffBack + HeatLossCoeffSide ; find_mean_plate_temperature: TempPlateMean = TempFluidInlet + ( NetRadiation - HeatLossCoeff * ( TempFluidInlet - TempAmbient ) ) * ( 1 - RemovalFactor ) / HeatLossCoeff ; (* Calculating the amount of heat that can be used. *) calc_useful_heat: HeatUseful = CollectorArea * RemovalFactor * ( NetRadiation - HeatLossCoeff * ( TempFluidInlet - TempAmbient ) ) ; (* Calculate efficiency of the collector. *) calc_efficiency: Efficiency = HeatUseful / CollectorArea / SolarRadiation ; METHODS METHOD on_load; FIX N; N := 1 ; FIX beta; beta := 45 ; FIX TempAmbient; TempAmbient := 300{K}; (* Initial guess for the solver. *) TempPlateMean := TempAmbient + 10{K} ; FIX TempFluidInlet; TempFluidInlet := 310{K}; FIX TempFluidOutlet ; TempFluidOutlet := 350{K}; FIX EmittanceGlass; EmittanceGlass := 0.88 ; FIX EmittancePlate; EmittancePlate := 0.95 ; FIX MassRate; MassRate := 0.03{kg/s}; FIX HeatCapacity; HeatCapacity := 4181.3{J/kg/K}; FIX SolarRadiation; NetRadiation := 1400 {kg/s^3} ; FIX CollectorLength; CollectorLength := 2{m}; FIX CollectorWidth ; CollectorWidth := 1{m}; FIX CollectorThickness; CollectorThickness := 7.5{mm}; FIX SideThickness; SideThickness := 25{mm}; FIX BackThickness; BackThickness := 50{mm}; FIX BackConductivity; BackConductivity := 0.045 {kg*m/s^3/K}; FIX SideConductivity; SideConductivity := 0.045 {kg*m/s^3/K}; FIX AbsorptanceNormal; AbsorptanceNormal := 0.96; FIX TransmittanceNormal; TransmittanceNormal := 0.96; (* Enter the angle of incidence in degrees *) FIX IncidenceAngle; IncidenceAngle := 60; FIX AngleModifierCoeff; AngleModifierCoeff := -0.10; END on_load; END FlatPlate;