Heat Transfer for Infrastructural
Development
Bachelor of Science
National University of Singapore
Koh Jun Hao
Supervisor: Dr Koh Wee Shing
2019
2
Abstract
Thermal load on buildings is the net accumulation of heat from the Sun, sky and
surrounding surfaces in the built environment. This includes energy balance through
radiation, convection and conduction on the surface of the buildings. In this study,
a simplified heat transfer model was developed to provide an overview of the vari-
ation in surface temperature of conventional and high performance facade used by
industrial estates in Singapore. Singapore experience a tropical climate condition
all year round, characterized by strong solar irradiance and light wind condition on
the surface level. The model demonstrates good agreement with the overall trend
of the measured surface temperatures throughout a day for two different industrial
buildings. An accurate prediction of the surface temperature will enable an accurate
prediction of thermal comfort metric, such as mean radiant temperature (MRT), and
expected impact of radiative thermal loading for different facade technologies in the
tropical outdoor environment. A full simulation on heat transfer was conducted us-
ing the simplified heat transfer model in a container yard setting. Features of heat
transfer within the street canyon was demonstrated with indication of urban heat
island effect observed during the evening period.
I
Dedication
Dedicating this piece of work to my hardworking Dad and Mum, for always being
supportive and understanding, always contributing in one way or another just to
allow me to have smooth University days.
II
Acknowledgments
I want to thank Dr Koh for accepting me to be his FYP student, giving me this op-
portunity to learn more about computational physics and also improving my coding
skills through my 9 months journey. I also like to thank Dr Lai for his patience in
teaching me the basics of heat transfer and also giving me tips to complete my task,
and also helping out in the some of the coding works. Like to thank my grammar
editors for helping check for grammar mistakes for works that was presented.
Sincerely thank JTC for making the information available to be used in this work.
And also thank Mr Muhammad Shah Al-Faisal Bin Rosley for his measurement data
that was used in this study
III
Publication
1. IPS Poster Award 2019 (Poster 12 - Simplified Surface Temperature Mod-
elling)
2. 2nd author for Journal Paper “Effectively modeling surface thermal load and
evaluating mean radiant temperature in tropical industrial environments”(Po-
Yen Lai, 2019) [submitted]. Assisted in determination of appropriate surface
material used for rooftop and comparison of simulation using the simplified
heat transfer model.
IV
Contents
1 Introduction 1
1.1 Heat Transfer Mechanisms . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Heat Transfer in Built-Environment . . . . . . . . . . . . . . . . . . . 3
1.3 Singapore’s Typical Weather and Urban Environment . . . . . . . . . 4
1.4 Outline of this Work . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Simplified Heat Transfer Model 7
2.1 1D Conduction Equation . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Radiative Heat Transfer . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.1 Solar Radiation Geometry . . . . . . . . . . . . . . . . . . . . 8
2.2.2 Perez Sky Model . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.3 Radiative Heat transfer between Surfaces . . . . . . . . . . . . 11
2.2.4 Sky View Factor . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.5 Longwave radiation . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3 Simplified Convection model . . . . . . . . . . . . . . . . . . . . . . . 14
V
2.4 1D Time-dependent Heat Balance Model . . . . . . . . . . . . . . . . 15
3 Heat Transfer in Industrial Estates 17
3.1 Study Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2 Facade Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3 Implementation of Simulation . . . . . . . . . . . . . . . . . . . . . . 23
3.4 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.1 Parametric Study . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.2 Horizontal Surface . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.3 Vertical Surfaces Fitting . . . . . . . . . . . . . . . . . . . . . 32
3.4.4 Implementation of Facade technology at TIB . . . . . . . . . . 36
3.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4 Heat Transfer in Container Yard 40
4.1 Heat Transfer in the system . . . . . . . . . . . . . . . . . . . . . . . 43
4.2 Numerical Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.3 Mean Radiant Temperature . . . . . . . . . . . . . . . . . . . . . . . 45
4.4 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.4.1 3D Temperature Map . . . . . . . . . . . . . . . . . . . . . . . 48
4.4.2 Non-Canyon Facing Walls . . . . . . . . . . . . . . . . . . . . 51
4.4.3 Micro-Climate Condition in Street Canyon . . . . . . . . . . . 53
VI
4.4.4 Mean Radiant Temperature Calculation . . . . . . . . . . . . 58
4.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5 Conclusion 61
Bibliography 65
A Appendix
A.1 View factor Calculation . . . . . . . . . . . . . . . . . . . . . . . . . .
A.2 Script for Container Simulation . . . . . . . . . . . . . . . . . . . . .
VII
Chapter 1
Introduction
Energy presents itself in many different forms, allowing people to harness it to do
useful work. Heat or thermal energy, is a form of thermal energy that we often
experience in our daily lives. Heat transfer describes the rate at which heat is
being transferred from a system with a higher temperature to another system of
lower temperature. Heat can be transferred via the three main mechanisms namely,
Radiation, Convection and Conduction.
1.1 Heat Transfer Mechanisms
Use of radiometry is key in the study of radiative heat transfer in an urban system.
For a radiant flux incident onto the surface, the Irradiance I [W/m2] describes the
radiant flux received by the surface per unit area. Radiative heat transfer is the
main mode of surface heating in urban systems. It consist of three main components:
Solar Shortwave radiation, atmospheric Longwave radiation and emitted Longwave
radiation from urban surfaces. Shortwave radiation is a band of highly radiant
energy in the spectral limits of 250nm to 2500nm, which often presents itself in the
ultraviolet (UV), visible and near-infrared (NIR) region. Longwave radiation consist
of low radiant energy light in the wavelength range of 2,500nm to 50,000nm, which
1
is also known as thermal radiation emitted by bodies at finite temperature [1].
As Earth’s primary heat source, Earth’s surface and atmospheric temperature is
heavily dependent on the solar energy emitted by the Sun incident on Earth. The
majority of its radiant energy emitted is in the form of shortwave radiation. Solar
shortwave radiation that reaches the Earth’s surface can be classified into direct and
diffused components. Total, or global radiation comprises of both direct and diffused
radiation. Direct solar shortwave radiation that reaches Earth’s surface without
getting scattered or absorbed by gas particulates present in the atmosphere. On the
other hand, diffused shortwave radiation reaches Earth’s surface via scattering upon
interaction with the atmosphere.
Atmospheric longwave radiation has significant contribution in keeping Earth’s tem-
perature stable. A fraction of solar radiant energy incident on Earth is absorbed
by the atmosphere and re-emitted as longwave radiation towards space and Earth’s
surface. The presence of greenhouse gases is responsible in trapping longwave radi-
ation in the atmosphere, which have a estimated dependency on humidity level and
air temperature.
Convective heat transfer occurs when there is a transfer of heat from one body via
the movement of fluids. Convective heat transfer can be classified into two different
components, namely, natural and forced convection. For natural convection, fluid
surrounding a heat source absorbs energy, causing it to undergo thermal expansion,
and therefore rises. The density differences caused by temperature difference result
in buoyancy force causing the surrounding cooler fluid to fall and replace the warmer
fluid. Forced convection occurs when fluid flows across a solid body generated by
an external source.
Conduction is the main mode of heat transfer for bulk materials. This is done
through thermal vibration in the microscopic level, where molecules in bulk material
vibrate about its position colliding with neighbouring molecules. The transfer of
heat energy through conduction is highly dependent on the temperature gradient,
2
cross-sectional area, the length and physical properties of the material.
1.2 Heat Transfer in Built-Environment
Urbanisation around the world has seen rapid development of buildings for housing,
commercial and industrial purposes. Urban landscape covered with buildings and
roads are often made of materials that absorb and retain heat, which greatly increase
the thermal load accumulated in urban areas. The increased presence and density of
buildings increases the heat trapped within the built environment [2]. Thus, creating
the well-known Urban Heat Island effect. The increased heat exchange within the
urban landscape contributes greatly to the thermal stress, which has an adverse
impact on the public’s health and thermal comfort level.
The study of heat transfer is important in the effort to reduce energy consumption.
Radiative energy absorbed by the facade is transferred into the building through
conduction, resulting in accumulation of thermal load in the building. To cool the
interior environment, usage of air-conditioning will be required to reduce the interior
temperature of the building.
However, heat exchanges within such systems are not easily mapped out as there is
heat interaction within the micro-climate in the system, as well as heat interaction
between the facade and the interior environment of the building. This will require
the use of sophisticated and computationally exhaustive methods such as Compu-
tational Fluid Dynamics (CFD), ray tracing and finite volume method to describe
radiation, convection and conduction occurring in the system. Furthermore, mete-
orological and building data will be required to develop a model that can describe
the heat exchanges accurately. Hence, such approach to develop an accurate model
to describe heat exchange may not be feasible and efficient to implement for further
applications.
3
1.3 Singapore’s Typical Weather and Urban En-
vironment
Singapore, an island city-state located near the equator, experiences a tropical cli-
mate with high annual mean temperature (27.89oC) and rainfall (2165.9mm). There
are distinct seasonal wet and dry periods, characterized by the monsoon seasons,
with the Northeast monsoon occurring from December and March and the South-
west monsoon from June to September [3]. NE monsoon is characterized with higher
monthly precipitation and surface wind while SW monsoon brings about drier con-
dition with occasional showers/thunderstorms. Owing to the equatorial climate,
Singapore experiences long sunshine hour, with February and March having the
longest sunshine hours, and November and December having the least. The amount
of sunshine hour experienced in an area is heavily dependent on cloud covers. On an
average day, cumulus clouds occupy 3-4 oktas (one okta is equivalent to one eighth
of the sky) in mid day, the amount of solar irradiance incident onto a surface could
vary greatly throughout a day.
With a city-sized space, urban planning has to be carefully done to meet Singapore’s
growing infrastructural and housing needs. This transformed Singapore’s physical
landscape to an ”Urban-scape” filled with high-rise buildings dedicated for various
purposes across the island. Conscientious effort by urban planners has ensured the
presence of flora in the dense urban environment, creating a form of respite for city
dwellers. However, the increase in built-environment that brings along commercial
activities was highlighted to have intensified heat exchanges due to possible contri-
bution of anthropogenic heat into the environment as highlighted in a study of urban
heat island effect on Singapore [4]. Hence, to effectively model heat exchange in the
built environment in Singapore, meteorological, urban geometry and anthropogenic
factors have to be taken into account.
4
1.4 Outline of this Work
In this work, a simplified heat transfer model was developed to investigate heat
transfer in two different infrastructural settings, namely, industrial estates and a
container yard. The infrastructural settings can be characterized by distance be-
tween adjacent objects, where buildings in industrial estates have a wider separation
as compared to the adjacent containers in a container yard, which present a different
degree of heat interaction within the setting. The model utilizes 1D time-dependent
energy balance equation, Perez-sky model to estimate the diffused sky shortwave
radiation, convective term H calibration, and simplified view-factor model, to sim-
ulate the change in surface temperature. Quick and efficient estimation of surface
temperature was demonstrated through the use of the simplified heat transfer model
for both infrastructural settings.
The model aims to simulate surface temperature of industrial estates in Singapore
based on meteorological and surface temperature measurements of the corresponding
days [5]. A full simulation of surface temperature of a container yard was conducted
based on meteorological data for Typical Meteorological Year (TMY) during sum-
mer solstice (21st June). Through the study of the simplified heat transfer model,
the efficiency of the model allows further studies by engineers and researchers to
conduct virtual performance evaluation of facade technologies at various sites, as
well as human thermal comfort level through the study of Mean Radiant tempera-
ture. However, some simplification works were done to increase the efficiency of the
model. Further studies can be conducted to validate and improve the use of such
simplification works.
5
Figure 1.1: Schematic overview of urban-landscape and heat interaction between
buildings through various heat exchange mechanisms.
6
Chapter 2
Simplified Heat Transfer Model
A simplified heat transfer model needs to be able to determine surface temperatures
for both horizontal and vertical surface orientations. This is due to the differences in
meteorological and surrounding surface elements experienced by surfaces of the two
configurations. For a built-environment, horizontal surface (ground) and vertical
surface (wall) are usually made using a slab of material with considerable thickness.
Hence, this sets the starting point in the development of a simplified heat transfer
model with the use of one dimensional conduction equation.
2.1 1D Conduction Equation
Heat balance equation of a solid material can be described with the use of conser-
vation of energy and Fourier’s law which describes the rate of conduction flow in
relation to the temperature gradient in the material. For a plane wall on the outer
facade, heat conduction through the material can be described as one dimensional
as heat propagation is dominant in one direction [6]. The transient one-dimensional
heat conduction equation in a plane wall is given as such:
κ∂2T
∂x2+ Q = Cpρd
∂T
∂t(2.1)
7
where κ is the thermal conductivity of the material, Q is the rate of heat generation
on one end of the slab, Cp is the specific heat capacity of the material, ρ is the mass
density and d is the thickness of the slab. With a steady heat diffusion into the wall,
equation 2.1 can be linearized:
κ
d(Tindoor − Tsurf) + Q = Cpρd
∂Tsurf
∂t(2.2)
2.2 Radiative Heat Transfer
In determining heat transfer in any environment, surface heating by solar radiation
must be accurately described because Singapore experiences long sunshine hours
throughout the year. Global radiation received by horizontal and vertical surfaces
follows a certain set of geometrical relations with the sun and the sky. The use of
solar radiation geometric angles is needed to calculate the amount of solar radia-
tion incident on any given surface with its corresponding orientation, which can be
expressed by:
Itotal = (1− α)Idirect cos θ + IdiffusedRd (2.3)
where θ is the angle between the normal of the surface and the angle of incidence of
the direct sun rays, α is surface albedo and Rd is the diffused transposition factor
for diffused sky component, which will be discussed later.
2.2.1 Solar Radiation Geometry
For horizontal surface (β = 0o), angle θ correspond to the zenith angle θz. For a
vertical surface (β = 90o), it requires knowledge of the location’s latitude angle φ,
the Sun’s declination angle δ of the day, surface azimuth angle γ and also the hour
angle w at the particular timing [7].
Sun’s declination δ follows a sinusoidal pattern throughout a year, which can be
8
Figure 2.1: Solar geometric angles between the sun and the surface of different tilt
angles
expressed in a simple relationship:
δ(o) = 23.45 sin[(360/365)(284 + n)] (2.4)
where n is the day of the year. Surface azimuth angle γ is the angle on the horizontal
plane between the line due south and the projection of the surface’s normal onto the
horizontal plane. γ vary from -180o to 180o. γ is considered positive if the surface
normal is in the southeast direction, and negative in the southwest direction. Lastly,
the hour angle w is the angle Earth must turn to bring the Meridian of a point
directly in line with the sun’s rays. w varies from -180o to 180o, where it is positive
in the morning and negative in the afternoon with 0o occurring during solar noon.
For a vertical plane surface, cos θ in equation 2.3 becomes:
cos θ = sinφ cos δ cos γ cosw − cosφ sin δ cos γ + cos δ sin γ sinw (2.5)
9
2.2.2 Perez Sky Model
Diffused shortwave radiation plays an important role in conditions where direct solar
shortwave radiation is absence due to possible cloud cover or shadowing by surround-
ing buildings. To describe Singapore’s diffused shortwave component, the Perez Sky
model was introduced. The Perez Sky model [8] is a mathematical model that de-
scribes the relative sky luminance distribution of the sky hemisphere. Perez sky
model separates diffused sky irradiance into three different zones, namely isotropic
sky zone, circumsolar zone and horizon band zone, giving a realistic anistropic illu-
minance of the diffused sky component.
Figure 2.2: Schematic description of hemispherical sky illuminance distribution by
Perez sky model
The diffuse transposition factor Rd that describes the amount of diffused irradiance
on a tilted surface can be expressed with:
Rd =[1
2(1− F1)(1 + cos β) + F1
a
b+ F2 sin β
](2.6)
where F1 and F2 are circumsolar and horizon brightness coefficients and β is the tilt
angle between the surface and horizontal. Coefficients a and b are functions of the
incidence angle of the Sun. Determination of the coefficients is stated in Appendix
A.
10
2.2.3 Radiative Heat transfer between Surfaces
In urban environment, radiative heat transfer between surfaces comprise of two main
components, namely, longwave radiation transfer and shortwave reflection.
Longwave radiation emitted by surfaces can be described by the fourth power of
its absolute temperature expressed with Stefan-Boltzmann Law weighted by the
material’s emissivity for a greybody.
Q = εσT 4s (2.7)
Q: Heat transferred per unit time [W/m2]
ε: Emissivity of material [0− 1]
σ: Stefan-Boltzmann Constant 5.67×10−8 [Wm−2K−4]
A: Area of Surface [m2]
Ts: Temperature of surface [K]
To account for radiative heat transfer between surfaces, view factor is needed for
radiative heat transfer between surfaces present in the environment. View factor Fij
is the fraction of energy exiting diffused surface i intercepted by surface j (surface
of interest), which can be used to describe the amount of longwave radiation and
shortwave reflection that is intercepted by another body. The emitting surface must
be Lambertian to describe a perfect diffuser for emission and reflection.
Using the basic definition of view factor, the mathematical expression relating two
infinitesimal area dA can be given as:
F12 =1
A1
∫A1
(∫A2
cos β1 cos β2
πr212
dA2
)dA1 (2.8)
11
Figure 2.3: View-factor definition for infinitesimal area
Hence, total radiative heat transfer from surrounding surfaces to a targeted surface
can be given as follows:
Q =n∑
i=1
(αiIdirect,i + FijεiσT4i ) (2.9)
where n is the total number of surrounding surfaces, Idirect,i, αi and εi is the direct
shortwave irradiance, albedo and emissivity of the corresponding surfaces.
2.2.4 Sky View Factor
Amount of atmospheric Longwave radiation received by surfaces in built-environment
depends greatly on the fraction of sky visible to the surface (e.g building facade, roof
and ground), otherwise known as sky view factor (SVF). This would correspond to
the ratio of radiation received by the planar surface to the radiation emitted by the
entire hemispheric sky [9], which holds a dimensionless value between zero and one,
with zero being a completely obstructed sky view and one representing a full unob-
structed sky view. This would mean that for a system within a built-environment,
radiative heat exchange encompasses both the sky and surfaces present within the
system.
Similar to the definition of view-factor, Sky view-factor is defined as the fraction
of radiant flux leaving a surface element dA intercepted by a hemispherical surface
12
element that represents the visible sky. For a surface element with finite wall sur-
rounding it, the view factor of the wall by the surface element is calculated with the
wall projected onto the hemisphere. However, in the simplified heat balance model,
the sky view-factor utilizes only the non-projected view-factor of the wall given in
the previous section. Hence, the sky view-factor for a horizontal surface is given as
such:
Ψsky,i = 1−n∑
j=0
Fi→j (2.10)
where n is the total number of walls surrounding the surface element. For a vertical
wall, the maximum sky view-factor is given to be 0.5 since its able to observe half
of the hemisphere. Using similar treatment, the sky view-factor for a vertical wall
is given to be:
Ψsky,i = 0.5−n∑
j=0
Fi→j (2.11)
2.2.5 Longwave radiation
Atmospheric downward longwave radiation Isky longwave varies greatly with different
amount of greenhouse gases present in the atmosphere. Pyrgeometer is used to mea-
sure Isky longwave on Earth’s surface, which is expensive and sensitive as compared
to pyranometer that is used to measure shortwave irradiance. Various models have
been developed to estimate the amount of Isky longwave where there is no pyrgeome-
ter present [10], where such models make use of local surface observation, such as
humidity level.
For longwave radiation incident onto a surface, the amount of radiant energy ab-
sorbed by the surface can be described to by Kirchhoff’s law [6], which states that
the emissivity of the object in thermal equilibrium with its surrounding is equal
to the absorptivity of the object. Hence, the amount of radiative heat transferred
through longwave radiation is given to be:
13
Q = εj(ΨskyISky Longwave +n∑
i=1
εiFijT4i ) (2.12)
where εj is the emissivity of the receiving surface.
2.3 Simplified Convection model
Convective heat exchange plays an important role in affecting the surface tempera-
ture of a slab of material. Heat transfer through convection can be described using
Newton’s law of cooling given to be:
Q = HdT (2.13)
Q: Heat transferred per unit time [W/m2]
H: Convective heat transfer coefficient [Wm−2K−1]
A: Area of Surface [m2]
dT: Temperature difference between surface and fluid [K]
Convective term H can be separated in 2 different forms, namely, the natural con-
vection Hnatural and forced convection Hforced. The local Hforced coefficient for a flat
plane with a known wind velocity profile can be determined using the Blasius solu-
tion 0.332Re0.5Pr1/3Kair/L. This can be used when the airflow across the surface
has a low wind velocity (< 6m/s). A mixture of forced and natural convection
happening on a flat plane give rise to a modified Blasius solution [11]. The overall
convective term H is given to be:
Hconvection = 5.6︸︷︷︸Natural Convection
+ 0.332Re0.5Pr1/3κair/L︸ ︷︷ ︸Forced Convection
(2.14)
where κair = 0.027 W/(m K) with Prandtl number Pr is given to be 0.7 and char-
acteristic length L =Vbody/Asurface
14
Reynold number Re is:
Re =vL
µ(2.15)
where v is the local wind velocity, µ is the kinematic viscosity of air given to be
1.608×10−5m2s−1 at 30oC.
Singapore experiences low surface wind speed throughout the year (1.3 − 2.8 m/s)
with occasional gust occurring at approximately 20 m/s. The simplified convective
model is applicable to Singapore’s climate due to low surface windspeed and strong
solar irradiance. The low windspeed corresponds to a small convective coefficient
H, in presence of strong solar irradiance, the overall heat balance equation will
be dominated by net absorption of solar radiant energy, making heat transfer via
convection to be small. The model forms an approximate study for convective heat
transfer occurring on surfaces in absence of information that describes the local
windspeed at any particular moment. Furthermore, the model provides a non-
negligible convection on the surface to describe the large difference in surface and
air temperature during mid day where there is an absence of wind.
2.4 1D Time-dependent Heat Balance Model
In this heat balance model, 1D time-dependent heat balance equation and simplified
convective model was used to simplify and account for the lack in information to
describe convective coefficient H accurately. However, efforts were placed in provid-
ing an accurate description of heat transfer through radiation. Hence, the overall
1D time-dependent heat balance equation is given as follows:
CpρddTsurfdt
= Itotal︸︷︷︸Total
Radiation
Absorbed
− εσT 4surf︸ ︷︷ ︸
Thermal Loss
through
Radiation
+κ
d
(TIndoor − Tsurf
)︸ ︷︷ ︸Thermal
Conduction
into Body
+H(Tair − Tsurf
)︸ ︷︷ ︸Convective
term
(2.16)
15
Itotal = ξIDirect︸ ︷︷ ︸(1-α)Isun cos θ
+ IDiffused sky︸ ︷︷ ︸(1-α)IDiffusedRd
+ΨskyεjISky Longwave+n∑
i=1
( IReflection︸ ︷︷ ︸Fij αiIdirect,i
+ IEmitted︸ ︷︷ ︸εjFij εiσT
4i
)
(2.17)
where ξ is a boolean value value that provides information on the presence (1) or
absence (0) of direct solar irradiance on the surface of interest due to shadowing
effect of surrounding buildings or the sight of sun by vertical surface at different
timing during the day, α and ε is the albedo and emissivity of the surface.
The 1D time-dependent heat balance model sets the basis in providing a computa-
tionally efficient method to understand the workings of heat transfer present in a
complex environment when considering many-body configuration in built environ-
ments.
16
Chapter 3
Heat Transfer in Industrial Estates
The simplified heat transfer model that was developed aims to provide a quick and
efficient method to simulate surface temperature in the environment with known
measurements of meteorological and environmental data in the system. In this study,
the model aims to simulate surface temperature of industrial estates in Singapore
using measurement data [5].
3.1 Study Area
Singapore, a tropical island state located between 1o09’N and 1o09’N, 103o36’E and
104o25’N, experiences light wind condition throughout the year (< 2.5 m/s) except
during the Northeast Monsoon season with mean speeds reaching up to 10m/s.
Singapore experience long sunshine hours throughout the year, receiving up to an
average of 1,580 kWh/m2 of solar irradiance annually.
In the aforementioned study, two industrial estates in Singapore were chosen and
surveyed. The chosen industrial estates have distinct characteristics based on the
designs and construction materials used by the buildings during the period of con-
struction. The buildings that were surveyed at their respective sites can be classi-
17
fied as either Traditional Industrial Building (TIB) and Modern Industrial Building
(MIB). TIBs were built in the 1980s, constructed using building materials and ar-
chitecture designs common in that period. The MIBs surveyed were constructed in
early 2010, adopting the use of green building designs to achieve energy savings.
Field measurements were conducted for TIB on 6th February 2018 and MIBs on
20th February 2018 from 0700hr to 2300hr local time. Measurements of local solar
irradiance, ambient air temperature and humidity were collected on the rooftops at
both industrial estates. Thermal imagers were used to measure surface temperature
of the rooftop, the facade around the building of designated walls, as well as the
peripheral elements.
(a) Industrial estate A
(b) Industrial estate B
Figure 3.1: Schematic view of the surveyed industrial buildings with the main pe-
ripheral elements (e.g Trees, roads and slope) surrounding the buildings. The build-
ing shown in industrial estate A is a form of TIB, where for estate B, MIBs are
presented.
18
For the TIB in industrial estate A, it is located in an urban setting where there
are other buildings present. As for industrial estate B, it is in a semi-isolated estate
where there are no high rise buildings in close proximity (100m radius) to the estate.
Hence, objects in immediate sight of the building’s facade were considered to account
for possible shading, shortwave reflection and thermal heat transfer onto the surface
of interest.
Field measurements of the local humidity and air temperature were used to model
the atmospheric longwave radiation for the day based on the Kruk model [12].
As such, the meteorological measurements (Isun, Idiffused and ISky Longwave) collected
throughout the day are averaged hourly, which will be utilised in the simplified heat
transfer model to calculate the hourly surface temperature.
19
(a) Time-averaged data for industrial Estate A
(b) Time-averaged data for industrial Estate B
Figure 3.2: Irradiance data collected together with the surface temperature and
ambient air temperature on the rooftop of industrial estate A and B
From the meteorological data collected, the day of measurement for industrial estate
B was a warmer day as compared to estate A due to higher solar irradiance and air
temperature measured. Data collected on the rooftop will be utilized in the simula-
tion of the vertical surfaces on the outer facade. For temperature measurements on
the building’s facade, the measured points are located several meters off the ground,
with the points chosen on different facades of the buildings.
20
(a) Top view of Industrial Estate A (b) Top view of Industrial Estate B
Figure 3.3: The marked positions on the building’s facade are the points where
surface temperature was measured.
Industrial Estate A Industrial Estate B
Day of Measurement 6th Feb 2018 Day of Measurement 21st Feb 2018
δ = -16.1o δ = -11.6o
φ = 1.35o φ = 1.35o
γA = 18.7o, γB = -73.5o γA ≈ -90o, γB ≈ 0o
γC = -161o,γD = 107.5o γC = 7o
Table 3.1: Solar geometry angles for the day of measurement and the respective
facades. Determination of γ was carried out with the use of trigonometry and
“Google maps”
21
(a) Industrial Estate A (b) Industrial Estate B
Figure 3.4: Sample surface being measured for both locations. Industrial estate A
makes use of a single colour wall whereas industrial estate B makes use of different
colored panels as its facade
3.2 Facade Technology
For both industrial estates, it can be observed that the TIB and MIBs adopt different
architectural designs and material selections for their respective facades. For TIB,
the outer facade is formed by covering the inner building structure with concrete
plaster. On the other hand, a high performance facade is used in building one for
industrial estate B. It is made of aluminum composite panels with perforated holes,
with an air gap separating the inner wall and the panels; thus providing a form
of natural ventilation. The composite aluminum panels are made by sandwiching
the polyethylene core between aluminum sheets [13]. For building two, aluminum
composite panels are used as a form of surface cladding that has a smaller air gap
and an absence of perforated holes.
22
Figure 3.5: Different forms of facade used, with conventional concrete plaster (left)
used for TIB, high performance facade (middle) and surface cladding (right) used
in MIBs.
Concrete Plaster High Performance
Facade
Surface
Cladding
Material Concrete Aluminum Aluminum
Conductivity (W/mK
)
0.71 180 180
Emissivity 0.9 0.85 0.85
Heat capacity (J/kg-
K)
880 900 900
Density (Kg/m3) 1790 2800 2800
Thickness (m) 0.0949 0.003 0.003
Table 3.2: Thermal properties of the facade materials used for TIB and MIBs [14,
15].
3.3 Implementation of Simulation
Scripting of the simulation was done on the ”Matlab” software with the use of
its in-built Ordinary Differential Equation (ODE) solver to determine the time-
evolution of the surface temperature. The ODE solver make use of fourth order
Runge Kutta, where each time step was set at 1 second, and runs 3600 steps perhour.
23
The calculation was initialized based on the surface temperature measured in the
morning with boundary value of Tindoor set based on the known indoor condition of
the building.
Simple surface configuration were used to provide a simple representation for the pe-
ripheral elements surrounding the buildings. The surfaces are treated to be opaque,
isotherm and diffused to fulfill the necessary conditions needed to make use of view-
factor in determining radiative heat transfer between different surfaces. View-factor
calculation can be done by solving equation 2.8 and obtaining the expression in the
Cartesian coordinate system. However, determining the analytical solution is highly
non-trivial. As such, Monte Carlo integration [16] was used to compute view-factor
numerically, and thus equation 2.8 can be re-expressed as such:
F12 =A2
N
N∑i=1
cos β1 cos β2
πr212
∣∣∣i
(3.1)
For both estates, the buildings are surrounded by a driveway as well as trees provid-
ing interlocking canopy. To model these peripheral elements, a horizontal rectangu-
lar surface adjacent to a vertical rectangular surface was used to model a driveway.
For the interlocking canopy, a parallel rectangular surface was used. Inclusion of
such a view factor model takes into account the radiative heat energy being trans-
ferred onto the wall, thus providing a more accurate representation of heat exchange
in such infrastructural settings.
Figure 3.6: Surface configuration to describe the interface between the building’s
facade and the peripheral elements.
Surface thermal properties presented in table 3.2 were included in the heat balance
24
equation for the respective facades of TIB and MIBs. As both high performance
facade and surface cladding make use of thin aluminum panels, conductivity of
aluminum is assumed to be zero in the implementation. Its assumed that both the
outer and inner surface temperature equilibrate in a short time-span due to the high
conductivity and small thickness of the panels used. Hence, the conduction term in
the heat balance equation will be ignored.
Statistical criteria such as root mean square error (RMSE) and mean absolute error
(MAE) are used to compare surface temperature estimated by the simplified heat
transfer model and the measurement data in the calibration exercise to determine
the convective coefficient H throughout the whole day. It also sets a gauge on the
performance of the model compared to the measured surface data.
RMSE =
√√√√ 1
n
n∑i=1
(Tsim,i − Tmea,i)2 (3.2)
MAE =1
n
n∑i=1
∣∣∣Tsim,i − Tmea,i
∣∣∣ (3.3)
where Tsim,i represent the estimated surface temperature and Tmea,i is the measured
surface temperature in the ith hour
25
3.4 Results
Using the simplified heat transfer model that was developed, validation of model was
carried out in two phases, namely, calibration of convective coefficient H term for
horizontal surface (rooftop) and vertical surface fitting on the industrial buildings
outer facade.
3.4.1 Parametric Study
A parametric study was conducted on the Simplified heat Balance Equation (time-
dependent and steady-state) to gain a deeper insight on possible simplification work
that can be done.
CpρddTsurfdt
= Itotal − εσT 4surf +
κ
d
(TIndoor − Tsurf
)+H
(Tair − Tsurf
)A steady-state version of heat balance equation can be obtained by setting the
time-evolution term to zero:
0 = Itotal − εσT 4surf +
κ
d
(TIndoor − Tsurf
)+H
(Tair − Tsurf
)(3.4)
To determine hourly change in Tsurf, root-finding scheme can be employed to solve
the 4th degree polynomial by having an hourly update on the heat generation terms.
The parametric study was done through varying of key parameters and comparing
the results between time-dependent and steady-state version of the heat balance
equation. Data from Typical Meteorological Year (TMY) for 21st June 2018 (Sum-
mer Solstice) was used to conduct the parametric study. In this study, thickness of
material and convective coefficient H was varied because such data are not easily
determined by field measurements.
26
Figure 3.7: 3D surface plot of the change in surface temperature by varying both
thickness while H = 0 W/m2
By varying thickness d, result has shown that steady-state heat balance equation
follows a different trend as compared to its time-dependent counterpart. Steady-
state equation generates surface temperature that increases almost linearly with
increasing surface thickness. On the other hand, surface temperature generated
by time-dependent solver is observed to follow a non-linear trend with increasing
thickness with a maximum turning point at d = 0.03m. For both solvers, they fol-
lowed a similar trend before deviating at the maximum point of the time-dependent
solver. This can be attributed to thickness d attached to the differential term of
the time-dependent solver. Hence, as d → 0, the time-dependent equation can be
approximated to form equation 3.4.
27
Figure 3.8: 3D surface plot of the change in surface temperature by varying both
thickness and H (0-5W/m2)
For the change in convective term H, surface temperature generated by steady-
state solver has shown to decrease significantly with increasing H. However, surface
temperature obtained through time-dependent solver did not show drastic variation
in surface temperature. Hence, surface cooling effect caused by convection greatly
affects steady state equation.
Parametric study conducted on the heat balance equation has shown that further
simplification can be achieved through the use of steady-state equation when the
surface of interest has a small thickness d. Use of steady-state equation in the imple-
mentation presents a quicker and efficient method to determine surface temperature
since only root finding scheme is required as compared to the time-dependent equa-
tion, where more time is needed for the propagation of time-step. Further validation
of steady-state equation needs to be carried out using field measurements to ensure
that it’s able to describe heat exchanges within a system.
3.4.2 Horizontal Surface
As part of the simplified heat transfer model, calibration of convective term H was
done for both industrial estates on the rooftop based on the measurement collected
28
for both sites. This was done in replacement of a full CFD simulation which is
needed to determine a local H value during the period of measurement. With the
calibrated convective coefficient, the values will be used for vertical surface fitting as
it is assumed that the convective coefficient for possible downdraft of wind caused
by the building is the same for vertical surface.
Figure 3.9: Downdraft of wind caused by man-made structure due to prevailing
wind.
Calibration was done based on hourly update of varied H term and computing
the surface based on the given meteorological measurements. The H values were
determined by comparing the Root-Mean-Square Error (RMSE) between simulated
surface temperature and the measured surface temperature, choosing the H value
that gives the smallest RMSE. Using the H results obtained from the fitting, it will
be used in the steady-state solver for validation. Such calibration procedure can
be used to determine the most probable surface thickness that may result in the
overall change in temperature throughout the day as such information is not easily
available.
Furthermore, exact composition of concrete used for layering of the rooftop cannot be
easily known due to different mixture composition used in the construction process.
29
However, it was known that the rooftop possess waterproofing feature that prevents
leakage of water from the rooftop into the building. Hence, concrete with known
waterproofing feature [15], SF-20% and SF-30% were surveyed to determine the
most probable type of concrete that was used on the rooftop. SF-20% and SF-30%
are known to contain silica fumes in replacement of cement in 20% and 30% weight,
allowing the concrete to have waterproofing feature.
Figure 3.10: Fitted rooftop temperature for Estate A obtained using time-dependent
and steady-state equation with its calibrated H values throughout the day using
material SF-20%
Figure 3.11: Fitted rooftop temperature for Estate A obtained using time-dependent
and steady-state equation with its calibrated H values throughout the day using a
different material SF-30%
For SF-20%, the surface temperature obtained using time-dependent and steady-
30
state equation was found to have RSME of 4.37◦C and 5.92◦C respectively. As
for SF-30%, the RMSE obtained for whole-day fitting was found to be 4.12◦C and
5.92◦C for time-dependent and steady-state equation respectively. The calibrated H
values throughout the day can be observed to fluctuate greatly in the early morning
and evening period, reaching a maximum of 30 W/m2. Using the modified Blasius
solution, the wind speed was found to be approximately 23 m/s.
Figure 3.12: Fitted rooftop temperature for Estate B obtained using time-dependent
and steady-state equation with its calibrated H values throughout the day using SF-
30% concrete
Applying the same procedure at estate B using SF-30% concrete, RMSE obtained
using time-dependent and steady-state equation was found at 1.81◦C and 7.51◦C
respectively. The maximum convective coefficient H was given to be 30 W/m2 in
the evening period.
Through the calibration of H values on the rooftop based on meteorological data
collected for both days, it can be observed that high H values were used for short
period (1 hour timescale), which may correspond to possible presence of high wind
speed experienced during the days of measurement.
In the validation exercise for steady-state equation, it can be seen that the result
obtained for Estate A has good agreement with the measured surface temperature
between 0600hr to 1300hr. In comparison, Estate B has some slight deviations
31
from the measured surface temperature, with a higher RSME value calculated for
the whole-day fitting. Results based from steady-state equation was found to vary
significantly with the change in H values for that particular hour. This can be
observed from the sharp drop or suppression in the rise of surface temperature. As
steady-state equation churns out result based on the given hourly-averaged data
input, use of steady-state equation may not provide a realistic representation in the
temporal variation in surface temperature throughout the whole day as compared
to the time-dependent form. Hence, use of steady-state heat balance equation will
be omitted in the implementation of the simplified heat transfer model for vertical
surfaces.
Use of time-dependent heat balance equation has shown to be in good agreement for
whole-day fitting at Estate B. As for Estate A, time-dependent equation produces
results which are in good agreement with measured data from 1300hr to 2200hr.
This could be due to higher irradiance data collected throughout the day for Estate
B and in the afternoon period for Estate A. Hence, it is noteworthy to highlight
that the time-dependent equation has a better performance when there is strong
solar irradiance and light wind condition during the afternoon period.
3.4.3 Vertical Surfaces Fitting
In the calculation of vertical surfaces temperature, H values obtained from the cali-
bration phase will be used in the time-dependent equation to determine the temper-
ature of the building’s facade. Surface temperature and corresponding view factor
for the peripheral elements are included to account for the heat that is being transfer
onto the facades.
32
Figure 3.13: Simulated surface temperature of the respective facade of TIB at Es-
tate A using the simplified heat transfer model. The direct shortwave irradiance
measured on the rooftop is plotted to set as a reference for the change in surface
temperature on the different facades caused by direct solar radiation throughout the
day.
Site A Site B Site C Site D
RMSE (◦C) 1.529 2.076 1.255 0.932
MAE (◦C) 1.125 1.952 1.192 0.782
Table 3.3: RMSE and MAE calculated for different sites at industrial estate A.
From the calculated RMSE and MAE, surface temperature determined using the
simplified heat transfer model on the facades of TIB at industrial estate A has
shown to be in good agreement with the measured surface temperature throughout
the day. For site B, the simulated surface temperature has shown to have a negative
33
bias as compared to the measured data. This can be attributed to lack of physical
data of the surface temperature of the grass slope opposite site B which result in the
general “under-calculation” by the model. From the simulated surface temperature,
slow rate of heat dissipation was being observed when there’s an absence of direct
solar irradiance for East-facing wall at site A and D in the afternoon. This could be
due to the insulating properties of asphalt as well as concrete , which causes a slow
rate of heat dissipation in the system.
Figure 3.14: Simulated surface temperature of the respective facade of MIBs at
Estate B. Albedo values were varied to produce the optimized simulated surface
temperature.
Site A Site B Site C
RMSE (◦C) 3.097 2.372 2.5543
MAE (◦C) 2.240 1.795 1.813
Table 3.4: RMSE and MAE calculated for different sites at industrial estate B
34
As aluminum panels were used as the facade of the building, simulated surface
temperature obtained has shown a general higher surface temperature as compared
to the concrete facade of TIB. Result obtained from the simplified heat exchange
model has shown good agreement with the measured data for site B and C between
1000hr to 2200hr. For site A, the simulated surface temperature has shown good
agreement for the whole day.
By comparing the south wall of building one and two, the simulated results have
shown to produce a similar trend. In the implementation of the model, even though
building one and two make use of different facade technology, aluminum was the
main material used on the outer facade. Deployment of facade technology that
helps to reduce the thermal load of the building depends heavily on the material
used for the facade as the rate of heating or cooling determines the amount of
radiation transferred from the facade into the building.
35
3.4.4 Implementation of Facade technology at TIB
With the simplified heat transfer model being calibrated for TIB at Industrial Estate
A, different facade technology can be implemented to learn about its performance
if retrofitting work are to done on TIBs. In this work, convective coefficient was set
to the minimum (H = 5.6 W/m2) to find out the change in surface temperature for
the worst case scenario where there is an absence of wind throughout the whole day.
(a) Site A
(b) Site B
36
(c) Site D
Figure 3.15: Simulated surface temperature of the facade technology plotted to-
gether with the measured surface temperature of the concrete facade at different
locations of the TIB.
Due to the high conductivity of aluminum, high surface temperature (> 55 ◦C) can
be observed from the simulation at site A and D. The high rate of heat dissipation
observed was due to absence of direct solar irradiance experienced by the East-
facing facades in the early afternoon. High surface temperature observed in the
afternoon can potentially increase the amount of heat absorption by the building,
which reduces the ability of the facade technology in reducing the thermal load of
the building. However, it can be observed that the simulated surfaces are being
cooled to a temperature lower than the measured concrete surface at night, with the
simulated surface temperature reaching approximately 25◦C by 2200hr. Due to high
heat dissipation, possible reduction in urban heat island effect could be observed if
TIBs are retrofitted with such facade technology. The heat capacity of the facade
plays a contributing factor [17] as the ability of the facade to trap heat is limited
by the thickness of the panels. With a quicker rate of cooling, this could potentially
reduce the amount of heat trapped in an urban environment.
Using a calibrated simplified heat transfer model, it could present as a useful tool
for engineers and architects to have a quick virtual performance evaluation of facade
technology that are considered for retrofitting work on TIB. Through the use of the
37
simplified heat transfer model, further studies on human thermal comfort level along
the perimeters of the building can be conducted by determining the mean radiant
temperature once the surface temperature of the facades can be estimated.
3.5 Discussion
The simplified heat transfer model has demonstrated its ability to estimate surface
temperature in a quick and efficient manner. However, certain results have shown
to deviate from the measured surface temperature. In figure 3.10 and 3.11, results
obtained using the time-dependent heat balance equation have shown to deviate from
the measured surface temperature from 0700hr to 1200hr. This can be attributed
to a few factors, namely, the exact concrete composition used for the layering of the
roof top and over-measurement of surface temperature by the thermal imager.
For TIBs, exact concrete’s thermal properties may not be available in literature due
to the difference in mixture composition that was used during the construction phase
of the building. Even though there were prior knowledge about the roof’s water-
proofing feature, this does not grant exact knowledge on the class of concrete that
was used and its corresponding thermal properties. Secondly, there may be uncer-
tainty in the measurement of surface temperature using the thermal imager, where
it may not be measuring the actual surface temperature due to possible reflected
solar irradiance into the thermal imager. As a result, the measured data may not be
the “true” representation of the surface temperature. Hence, it is important to note
that measurement of surface temperature using thermal imager has to be in absence
of direct solar irradiance in order to determine the actual surface temperature.
Next, the calibrated H coefficient obtained for the rooftop may not be representative
for all the facades of the building due to the difference in the direction of the incoming
wind incident to the building. This can be observed in figure 3.14 that shows a drop
in the simulated surface temperature for site A at 1500hr, where the measured
38
surface temperature continued to increase. Further study using CFD simulation
and compare the calibrated H coefficient to find the criterion in its usage.
39
Chapter 4
Heat Transfer in Container Yard
The simplified heat transfer model that was developed has shown to provide a quick
and efficient method to predict surface temperature using meteorological and surface
temperature data. The model will be extended to simulate surface temperature in
a container yard using TMY data between 0100hr to 2300hr for 21st June (summer
solstice).
Dry containers are manufactured using aluminum and steel, with international rec-
ognized dimensions designed to carry dry goods over long distances through sea
freight. In this simulation, surface temperature in the container yard will be pre-
dicted using the heat simplified heat transfer model. The containers are made of
aluminum wall of thickness d = 3cm, located on asphalt ground thickness d = 10cm.
The containers that are stacked together can be assumed to form a giant container
having a single volume with its dimension given to be 31.34×318.54×18.2m, sepa-
rated by 10.2m apart from one another. The system can be treated to be isolated,
where there are no other buildings or objects present, hence ignoring possible inter-
ference by surrounding buildings.
40
Figure 4.1: Schematic view of the container stacks
Figure 4.2: Dimensions of the container stacks
TMY data for summer solstice in Singapore was used in the full heat transfer simula-
tion of container yard. The total shortwave radiation received is heavily dominated
by diffused shortwave component as compared to direct component. Downward
longwave radiation is approximately stable throughout the day, ranging between
406W/m2 to 440W/m2.
41
Figure 4.3: TMY data for 21st June (summer solstice) as meteorological data input
in the simulation.
To account for the temperature change on the surface of the container stacks, this
involves coupling of air temperature in the container, inner surface and outer surface
temperature. The governing heat balance equations will be modified as follows:
Cp,iρidi2
dTout,idt
= (1−αi)QS↓+εiQL↓−εiσT 4out,i+
λidi
(Tin,i−Tout,i
)+Hout
(Tair,out−Tout,i
)(4.1)
Cp,iρidi2
dTair,indt
=λidi
(Tout,i − Tin,i
)+Hin
(Tair,in − Tin,i
)(4.2)
Cp,airρairVindTair,indt
=∑i
HinAi
(Tin,i − Tair,in
)(4.3)
where Tin/out,i denotes the inner and outer surface temperature of surface i, Tair,in/out
denotes the air temperature inside/outside the container, Hin/out is the convective
coefficient inside/outside of the container, Vair is the volume of the container and
Ai is the area of the ith surface area.
42
In the model, it is assumed that there is negligible radiative heat transfer within the
container as inner surfaces have almost similar surface temperature throughout the
whole day, where the net gain in radiative heat transfer by the inner surface is equal
to the rate of heat loss through radiation. Hence, convection is the only mechanism
of thermal heat transfer present within the containers. To account for the “no wind”
condition (worst case scenario), Hin/out wass set at 5.6 W/m2, using the minimum
value given in the simplified convective model, where natural convection dominates
in the system.
4.1 Heat Transfer in the system
To properly account for the shading effect caused by the container stack on the
adjacent container stacks and the ground, the hourly height and length of shadow
can be calculated using trigonometry.
(a) Shadow on adjacent container (b) Shadow on ground
Figure 4.4: Cross-sectional view of the container stacks with its corresponding panel
length. Shadow formed on the container and ground during different period of the
day forms the corresponding panels for surface temperature calculation.
43
As the model uses 1D time-dependent heat balance equation, the faces in between
the container stacks are segmented according to the height of shadow formed on the
face, similarly for the ground, where they form panels along the face of the container
and ground. For example, panel one gets heated up by direct solar irradiance at
0700hr where as panel four gets heated up at 1000hr. In this simplified model, its
assumed that there will not be any conduction occurring between the panels as this
will require the use of 2D time-dependent heat balance equation which increases the
computational complexity.
To account the full heat transfer (shortwave reflection and surface longwave) between
the panels in the street canyon, angular factor was used instead of view factor due
to geometric symmetry of the container stacks. To make use of angular factor, the
panels have to be isothermal, and the emitting component will be midpoint of the
panels. After accounting angular factors for all panels, its corresponding sky view
factor can be determined.
Figure 4.5: Angle factor shown for between paneli and panelj
Fji =θ
180◦(4.4)
44
4.2 Numerical Method
In this extended simplfied heat transfer model, forward euler method was used
in the prediction of the Tout/in as well as Tair,in. Each time step to update the
temperature is five seconds, where the solver will iterate throughout an hour. TMY
data Idirect, Idiffused and Tair,out will be updated hourly to compute the change in
surface temperatures throughout the hour. The initial temperature of the system
Tout/in as well as Tair,in, Tground will be set to the air temperature at 0100hr in the
TMY data. The boundary condition of this system will be the inner temperature of
the asphalt ground, where it will be set to be 298K throughout the day.
4.3 Mean Radiant Temperature
Mean Radiant Temperature (Tmrt) is one key matrix component in determining
human thermal comfort in outdoor urban environment. Tmrt is defined as “Uniform
temperature of an imaginary enclosure in which radiant heat transfer from the body
equals the radiant heat transfer in the actual non-uniform enclosure” [18]. Tmrt can
be evaluated by summing up the shortwave and longwave radiation fluxes, which
includes direct and reflected shortwave radiation that a human is exposed to. This
longwave radiation from the sky as well as the surrounding surfaces. Hence, Tmrt
can be expressed as follows :
Tmrt = 4
√√√√ 1
σεp(αpFsol→pIsol + Fsky→pIlongwave +
n∑i=1
εiFi→pσT 4i )− 273.15 (4.5)
σ: Stephan-Boltzmann Constant (5.67−8 W/m2K4)
αp: Absorption coefficient of shortwave radiation for a person
Fsol→p: View factor between the shortwave sources to person
Fsky→p View factor between sky and person
εi Emissivity of urban surface i
Ti Temperature of urban surface i
45
Measurement of Tmrt can be done using a standard globe thermometer [19] . A
standard globe thermometer is a black-painted copper sphere with a diameter of
150 mm and a thickness of 0.4 mm, containing a thermometer at its centre. Various
methods of measuring Tmrt can be done [20], however, this requires instruments to
be set up on street-level, which needs large amount of resources if a city-wide study
is conducted.
With the use of simplified heat transfer model to predict surface temperature of
the container stacks, the final aim will be to determine Tmrt within the container
yard, especially in the street canyon of the container stack due to the heat exchanges
between the walls of the container stacks. In equation 4.5, αp is set to be 0.3 for
humans and εp for humans is assumed to be 0.9. Tmrt will be determined for a
person of 2m height, modeled in a cuboid shape, which is placed at the centre of
the system. View factor from direct solar shortwave radiation on a standing person
is a function of solar altitude angle and azimuth angle [21]:
Fdir→p = 0.0355 sin β + 2.33 cos β√
0.0213 cos2 α + 0.0091 sin2 α (4.6)
α= Solar azimuth angle (45◦ for standard person)
β= Solar altitude angle (degree)
Figure 4.6: Imaginary enclosure used to determine Tmrt with the modeled human
placed within the enclosure.
46
In the calculation of Tmrt, an imaginary enclosure of 4×10.2×4m was used, where
angular factor can be calculated to determine the fraction of longwave radiation
incident onto the modeled human.
47
4.4 Results
To study radiative heat transfer present in the system, surface temperature is one
of the key indicators to study the level of heat transfer in the micro-climate of the
street canyon between the container stacks.
4.4.1 3D Temperature Map
(a) Top (b) Side
48
(c) Front (d) Overall
Figure 4.7: Different views of 3D temperature map at 0100hr
As an initial study, the albedo value for the containers is set to 0.4 to simulate the
change in surface temperature throughout the whole day.
Figure 4.8: Cross-sectional view of the container yard, showing the change in surface
temperature from 0700hr to 1200hr.
49
Figure 4.9: Cross-sectional view of the container yard, showing the change in surface
temperature from 1300hr to 1800hr.
Figure 4.10: Cross-sectional view of the container yard, showing the change in sur-
face temperature from 1900hr to 2300hr.
50
Figure 4.8, 4.9 and 4.10 shows the change in temperature on the surfaces of the
containers, ground as well as the air in the containers between 0100hr to 2300hr.
Through the use of the extended simplified heat transfer model, shading effect can
be observed in the simulated system through the different rate of surface heating
and cooling on the ground and containers. It can be observed that the middle
section of the ground in the street canyon has a higher temperature than the section
beside it. This can be attributed to a higher sky view factor observed in the middle
section of the street canyon as compared to the section nearer to the container.
Furthermore, absence of a 2D heat conduction model result constant temperature
difference between the different ground panels.
Tair,in can be observed to increase gradually throughout the day as the surfaces
of the containers get heated up. The rate of heating and cooling for Tair,in can be
observed to be different for container one and two due to different position of the sun
throughout the day. The rate of cooling observed for the air in the container stacks
is slow as natural convection is the only heat transfer mechanism present within the
containers, resulting in the insulating property observed in the early evening.
4.4.2 Non-Canyon Facing Walls
Study of 3D temperature map provides a macroscopic overview of temperature
change of the surfaces simulated by the model. It can be observed that various
shading effect as well as radiative heat transfer between surfaces have been properly
accounted. Street canyon between the container stacks present the area where there
is great amount of heat exchanges taking place between the surfaces. Figure 4.11
and 4.12 shows the surface temperature of the walls (non-canyon facing) of container
one and two for condition where there is no shading on the walls.
51
Figure 4.11: Temperature of the North, South, West and Top wall of container one
Figure 4.12: Temperature of the North, East, West and Top wall of container two
The simulated top walls have shown to have the highest temperature (46.03◦C) as
compared to the other face orientation, which is expected because sky view factor
for unobstructed horizontal surface is given to be one. It can be observed that,
the north facing walls has a higher rate of heating as compared to the south wall.
This is due to presence of direct solar shortwave radiation for the north-facing wall
during summer solstice. Furthermore, the surface temperature of north-facing wall
for container one and two has very slight difference. At 1600hr, the simulated
52
surface temperature for north-facing wall of container one and two was determined
to be 40.55◦C and 42.6◦C respectively. Even though the procedure to determine the
north-facing wall’s temperature is the same, the slight difference could be caused
by Tair,in for the containers, where Tair,in for container two is always greater than
container one before 1600hr. As the west-facing wall of container one experiences
heating during the afternoon period, this causes its Tair,in to be higher in the evening
period.
Figure 4.13: Tair,in for container one and two throughout the day.
4.4.3 Micro-Climate Condition in Street Canyon
With the determination of surface temperature of the non-canyon facing walls, this
provides a gauge for the expected temperature in the street canyon. Due to shad-
ing effect caused by adjacent buildings, this reduces the effective number of hours
the surfaces in the street canyon are exposed to direct solar shortwave radiation,
resulting in the maximum simulated temperature to be lower than the sides with no
obstruction.
53
Figure 4.14: Surface temperature of the different panels of the East-facing wall of
container one from 0100hr to 2300hr.
Figure 4.15: Surface temperature of the different panels of the West-facing wall of
container two from 0100hr to 2300hr.
From figure 4.14 and 4.15, it can be seen that the surface temperature decreases
gradually to a minimum of 23.3◦C at 0800hr before the temperature increases due
to the presence of shortwave radiation. For the East wall of container one, the
maximum simulated temperature due to direct shortwave radiation was found to be
30.25◦C at 1200hr. For the Wast wall of container two, the maximum simulated
temperature was found to be 36.70◦C at 1600hr. Both were the top panel of the
54
container stacks due to higher effective irradiated hours as compared to the panels
within the street canyon.
Figure 4.16: Surface temperature of the different panels of the East-facing wall of
container one from 0600hr to 2100hr.
Figure 4.17: Surface temperature of the different panels of the West-facing wall of
container two from 0600hr to 2100hr.
On a closer look, it can be seen for East wall of container one, instead of observ-
ing an abrupt drop in simulated temperature, the surface temperature was found
to increase between 1300hr to 1500hr before staying approximately constant from
1500hr to 1900. For the bottom-most panel, the temperature continued to increase
55
to a maximum of 35.09◦C at 1700hr. On the other hand, the temperature of west
wall of container two increases gradually between 0900hr to 1200hr before being ex-
posed to direct shortwave radiation. Solar geometrical angle relation cos θ between
the surface and the sun at 1200hr was calculated to be zero. As a result, the west
wall of container two not being irradiated by direct shortwave radiation between
1200hr to 1300hr. It can be observed that the bottom most panel was heated to a
maximum of 35.31◦C, which is slightly higher than panel 3 even though there is an
absence of direct solar irradiance after 1300hr due to shading effect, its surface tem-
perature continued to increase from 1300hr to 1500hr. Cooling of the street canyon
is observable from 1900hrs onwards, where temperature reached approximately 26◦C
at 2300hr for both container stacks.
Figure 4.18: Ground temperature in the street canyon, where “left” represents the
ground segment nearer to container one, “mid” represent the middle segment and
“right” represent the the segment nearer to container two
With the full surface temperature in the street canyon being mapped out, it can be
observed that radiative heat transfer has bolstered the temperature of the East wall
of container one, where the temperature continued to increase, where the bottom-
most panel eventually having the highest temperature. Similarly for container two,
the temperature of the bottom-most panel continued to increase in absence of direct
solar shortwave irradiance, where its temperature rises slightly higher than panel 3,
56
which is directly above it. It can be suggested that radiative heat was “trickled”
down to ground level of the street canyon due to specular refection and longwave
radiation emitted by the surface. Relatively high surface temperatures within the
canyon in the evening (1900hr - 2100hr) could be an indication of urban heat island
effect being demonstrated. Furthermore, the strong diffused sky shortwave radia-
tion throughout the day could have caused the surface temperature of the top few
panels to have a stable increase throughout the day. From the simulated ground
temperature in the street canyon, it can be observed that the segment of the ground
nearer to the containers has temperature greater than the bottom-most panel from
1200hr to 1500hr. Due to boundary condition set for the inner temperature of the
asphalt ground, cooling of the surface can be observed once there is an absence of
direct solar irradiance on the corresponding surfaces.
Effect of varying surface albedo of all the panels in the street canyon can be observed
through the use of the simplified heat transfer model.
(a) 1700hr (b) 2100hr
Figure 4.19: Surface temperature at 1700hr and 2100hr for the bottom-most panel
of West wall of container one and East wall of container two in the street canyon.
Surface temperature of the bottom-most panel of West wall of container one and East
wall have shown to decrease with increasing albedo value for 1700hr and 2100hr. It
can be observed that a difference of approximately 7◦C can be observed between the
use of albedo value of 0.2 and 0.65 at 1700hr, and difference of approximately 3◦C at
57
2100hr. Ways to mitigate possible urban heat island effect includes increasing albedo
of urban surfaces [22]. Hence, the simplified heat transfer model has demonstrated
the reduction in surface temperature in a street canyon, which helps to reduce
possible urban heat island effect.
4.4.4 Mean Radiant Temperature Calculation
After simulating the temperature of the surfaces within the street canyon, Tmrt can
be finally be determined with the use of equation 4.5.
Figure 4.20: Simulated Tmrt from 0600hr to 2200hr.
The modeled human was placed in the middle of the street canyon, above the mid-
dle ground. It can be easily be observed that Tmrt is heavily dominated by solar
shortwave when the modeled human was exposed to direct solar irradiance between
1000hr and 1400hr, with the maximum simulated Tmrt of 62.32◦C at 1300hr. It
can also be observed that radiative heat transfer from the surfaces of the walls
and ground in the street canyon as well as diffused solar irradiance have kept Tmrt
fairly constant between 1400hr and 1500hr, before the street canyon starts cooling.
With the temperature of container yard properly mapped out, Tmrt within the street
canyon can be determined.
58
(a) 1m away from East wall of container one (b) 1m away from West wall of container two
Figure 4.21: Tmrt for different positions along the street canyon
Tmrt along the street canyon can be determined and can be observed to be lower
than in the middle of the canyon due to possible lesser number of hours exposed
to direct solar irradiance and also smaller sky view factor. However, there could be
an overestimation of simulated Tmrt as the surface temperature in the morning was
shown to be lesser than the Tmrt.
4.5 Discussion
The simplified heat transfer model has demonstrated that it’s capable of simulating
heat transfer in a container yard setting with only meteorological data as its pri-
mary input. The use of 1D heat transfer equation has presented its limitations in
figure 4.18, where different ground panels having abrupt differences in the simulated
surface temperature. Furthermore, the simplified model allows simulation of surface
temperature at the centre of the street canyon. Since panels were used to describe
the shadowing effect of containers, it assumes a homogeneous temperature through-
out the length of the canyon. Also, angular factor was used to describe the amount
of radiative heat transfer between the panels on the containers and also sky view
factor. This may not hold true for the surfaces nearer to the ends of street canyon
where there could be a differences in the amount of downward longwave radiation
59
incident at the ends of the canyon due to difference in sky view factor. Hence, the
use of such panel segmentation can only describe the heat transfer deep within the
street canyon. As such, further validation of model can be done through actual site
measurements in a real container yard.
60
Chapter 5
Conclusion
In conclusion, the simplified heat transfer model that was developed based on 1D
time-dependent heat balance equation, was able to simulate surface temperature for
TIB and MIBs, which was found to be in good agreement with the measured surface
temperature, with RMSE of less than 6◦C from measured surface temperature. The
simplified heat transfer model presents a methodology that reduces the need for
computationally expensive CFD simulation, that increases the efficiency of the model
to determine the variation of local convective term H throughout the day. Using the
calibrated model, virtual thermal performance evaluation can be conducted using
different facade technology to gain a deeper understanding on the thermal load of the
building and possible thermal stress outside the building. However, the assumption
and calibration method used in the model is only applicable in condition when there
is a strong solar irradiance and light windspeed, which is a general climate condition
experienced in Singapore. Further studies such as CFD simulation are required to
validate the use of such calibration method.
The model was extended to simulate heat transfer in a container yard and it presents
a quick and efficient method to simulate heat exchanges within a street canyon,
where heat exchanges was observed through the determination of surface temper-
ature as its key indicator. This allows estimation of Tmrt to be conducted after
61
mapping out the surface temperatures within the street canyon. However, some
simplification works and assumptions were made to improve the efficiency of the
model. Hence, field measurements will be needed to validate the assumptions that
were made in the model.
62
Bibliography
[1] J. Brownson. 3.2. basic rules of light quantification. URL https://www.
e-education.psu.edu/eme810/node/455.
[2] Tim R Oke. City size and the urban heat island. Atmospheric Environment
(1967), 7(8):769–779, 1973.
[3] Meteorological Service Singapore. Climate of singapore, N.D. URL http://
www.weather.gov.sg/climate-climate-of-singapore/. Accessed = 2019-
4-2.
[4] Winston TL Chow and Matthias Roth. Temporal dynamics of the urban heat
island of singapore. International Journal of climatology, 26(15):2243–2260,
2006.
[5] Muhammad Shah Al-Faisal Bin Rosley. A study of urban heat island manage-
ment at industrial areas. Honours Year Thesis, 2018.
[6] Yunus A Cengel, Sanford Klein, and William Beckman. Heat transfer: a prac-
tical approach, volume 141. McGraw-Hill New York, 1998.
[7] D Mukherjee. Fundamentals of renewable energy systems. New Age Interna-
tional, 2004.
[8] RSRACSR Perez, R Stewart, C Arbogast, R Seals, and J Scott. An anisotropic
hourly diffuse radiation model for sloping surfaces: description, performance
validation, site dependency evaluation. Solar energy, 36(6):481–497, 1986.
63
[9] ID Watson and GT Johnson. Graphical estimation of sky view-factors in urban
environments. Journal of climatology, 7(2):193–197, 1987.
[10] Carlos Antonio Costa dos Santos, Bernardo Barbosa da Silva, Tantravahi
Venkata Ramana Rao, Prakki Satyamurty, and Antonio Ocimar Manzi. Down-
ward longwave radiation estimates for clear-sky conditions over northeast brazil.
Revista Brasileira de Meteorologia, 26(3):443–450, 2011.
[11] Yinghong Qin and Jacob E Hiller. Ways of formulating wind speed in heat
convection significantly influencing pavement temperature prediction. Heat and
Mass Transfer, 49(5):745–752, 2013.
[12] Nadiane Smaha Kruk, Iria Fernades Vendrame, Humberto Ribeiro Da Rocha,
Sin Chan Chou, and Osvaldo Cabral. Downward longwave radiation estimates
for clear and all-sky conditions in the sertaozinho region of sao paulo, brazil.
Theoretical and Applied Climatology, 99(1-2):115–123, 2010.
[13] Priyanka Mohaney and Gaurav Soni. Aluminium composite panel as a facade
material. International Journal of Engineering Trends and Technology, 55(2):
7580, 2018. doi: 10.14445/22315381/ijett-v55p215.
[14] Material properties database. URL http://www.makeitfrom.com/.
[15] Iman Asadi, Payam Shafigh, Zahiruddin Fitri Bin Abu Hassan, and Norhay-
ati Binti Mahyuddin. Thermal conductivity of concrete-a review. Journal of
Building Engineering, 2018.
[16] John R Howell. A catalog of radiation heat transfer configuration factors, 1982.
URL http://www.thermalradiation.net/tablecon.html.
[17] A Bhargava, S Lakmini, and S Bhargava. Urban heat island effect: Its relevance
in urban planning. J. Biodivers. Endanger. Species, 5:5–187, 2017.
[18] ASHRAE Handbook. Fundamentals 2001. ASHRAE, Atlanta, USA, 2001.
64
[19] HM Vernon et al. The measurement of radiant heat in relation to human
comfort. Journal of Industrial Hygiene, 14:95–111, 1932.
[20] Sofia Thorsson, Fredrik Lindberg, Ingegard Eliasson, and Bjorn Holmer. Differ-
ent methods for estimating the mean radiant temperature in an outdoor urban
setting. International journal of climatology, 27(14):1983–1993, 2007.
[21] Jianxiang Huang, Jose Guillermo Cedeno-Laurent, and John D Spengler. City-
comfort+: A simulation-based method for predicting mean radiant temperature
in dense urban areas. Building and Environment, 80:84–95, 2014.
[22] Haider Taha. Urban climates and heat islands: albedo, evapotranspiration, and
anthropogenic heat. Energy and buildings, 25(2):99–103, 1997.
65
Appendix A
Appendix
A.1 View factor Calculation
For surface interface for parallel panel configuration is given to be:
F12 =A2
N
N∑i=1
1
π
x2
(x2 + (y1 − y2)2 + (z1 − z2)2)2
∣∣∣i
(A.1)
Code for View factor Calculation:
%vv2(3.5,4,1,4,2 )
W=2; L=1; H=2;
% vv1(W,L,H)
function F = vv1(W,L,H)
N=3000; M = 500;
for j=1:M
%f= @(z,y1,x,y2) (1/pi)*(x+3).*(y2-x*tan(20*pi/180))./((3+x).^2+z.^2+...
%(y2-x*tan(20*pi/180)).^2).^2; %Defines the function
f= @(z,y1,x,y2) (1/pi)*(x+0).*(z+0)./((x+0).^2+(z+0).^2+((y2)-y1).^2).^2;
for i=1:N fi(i)=f(rand*H, rand*L, rand*W, rand*L);end; %Computes its values
F12(j) =(H*L/N)*sum(fi); %View factor estimation
end
F = sum(F12)/M;
end
function F = vv2(x,y1,y2,z1,z2)
N=3000; M = 100;
for j=1:M
%%%%%% Rectangle Configuration %%%%%%%%%%%%%%
f= @(z1,z2,y1,y2) (1/pi)*((x.^2 )./(x.^2+((y1)-(y2+1.5)).^2 +...
((z1)-(z2)).^2).^2);
for i=1:N fi(i)=f(rand*z1, rand*z2, rand*y1, rand*y2);end; %Computes its values
F12(j) =(y2*z2/N)*sum(fi); %View factor estimation
end
F = sum(F12)/M;
end
A.2 Script for Container Simulation
%%%%% Update Log Assignment 5 %%%%%%%%%
%1.0 - Re-do code to calculate and feeding of data in a loop for an hour
%1.1 - Updated code for East works
%1.2 - Updated code for North Sout East West Top
%1.3 - Completed code for all surfaces and Inner air Temp
%2.0 - Replaced ODE solver using Finite Difference method
%3.0 - Included radiation from ground + changed the dimension of the
%4.0 - Included Shadow effect on East Wall
%4.5 - Shadow effect for container 2 not completed
%4.6 - Some problem with surftemp_out_east_1
%4.7 - Debugged error Fully operational (Yet to be included: ground to wall and wall to wall)
%container
%5.0 - Included Shading on ground in between containers
%5.1 - Sky View Factor for longwave included (Graph looks weird)
%5.2 - Ground conduction included in sectors (removed)
%5.3 - Included panel to panel radiation transfer
%5.4 - Heat Transfer between surfaces completed
%6.0 - Mean Radiant Calculation (Created function)
%6.1 - Angular Factor Included, fina
%6.0 - Mean Radiant Calculation (Created function)
%6.1 - Angular Factor Included, fina
clear all ; close all;
%---Coefficients of Perez Sky Model --------------------------------------
table = [-0.008 0.588 -0.062 -0.06 0.072 -0.022;...
0.13 0.683 -0.151 -0.019 0.066 -0.029;...
0.33 0.487 -0.221 0.055 -0.064 -0.026;...
0.568 0.187 -0.295 0.109 -0.152 -0.014;...
0.873 -0.392 -0.362 0.226 -0.462 0.001;...
1.132 -1.237 -0.412 0.288 -0.823 0.056;...
1.06 -1.6 -0.359 0.264 -1.127 0.131;...
0.678 -0.327 -0.25 0.156 -1.377 0.251];
%---Zenith Angle ---------------------------------------------------------
theta_Z = [
0
0
0
0
0
102.13755
87.41707
72.72049
58.09897
43.65479
29.6828
17.48998
13.29128
21.77158
34.98012
49.19961
63.73493
78.39891
93.11721
107.84695
122.54743
137.1502
0];
%-------------------------------------------------------------------------
%---Air temperature
Tair = [
28
27.5
27
27
27.6
27
27
27.7
29
30
29.5
30
31
31.5
31
31
31.3
30
29
28.7
28
28
27.8
];
Tair = Tair + 273.15;
%-------------------------------------------------------------------------
%---Direct shortwave radiaiton [W/m2]
IsunSW = [
0
0
0
0
0
0
0
0
59
105
96
107
192
193
109
82
85
65
0
0
0
0
0
];
%-------------------------------------------------------------------------
%---Global diffused shortwave radiaiton [W/m2]
IskySW = [
0
0
0
0
0
0
0
22
129
246
372
451
421
424
463
403
283
153
39
0
0
0
0
];
%-------------------------------------------------------------------------
%---Sky longwave radiation [W/m2]
IskyLW = [
406
403
405
409
416
413
413
418
424
435
431
433
440
442
434
425
423
425
428
430
422
415
404
];
%-------------------------------------------------------------------------
%---Measured Ground surface temperature [C]
Tground = [
25.3
25.53333
27.43333
29.83333
32.73333
36.83333
40.66667
42.1
41.4
40.4
38.3
35.96667
33.43333
31.63333
29.96667
29.43333
28.76667];
%-------------------------------------------------------------------------
%---Measured surface temperature [C]
Tsurf = [
23.36667
25.13333
30.5
34.93333
37.56667
39.46667
41.46667
41.06667
39.53333
39.53333
37.76667
34.8
31.53333
27.9
26.6
25.93333
25.5];
%-------------------------------------------------------------------------
%---useful coefficients (MKS unit)
thickness = 0.03; %[m]
emissivity = 0.9; %=(0,1)
conductivity = 180; %[W/(m K)]
SBconst = 5.67e-8; %[W/(m2 K4)]
HeatCapacity = 900; %[J/(Kg K)]
MassDensity = 2800; %[Kg/(m3)]
albedo = 0.5;
%albedo_detailed(:,1)=linspace(0.1,0.7,100);
alum = sur(0.9, conductivity, albedo,HeatCapacity,thickness, MassDensity, [0 10], [0 10], [0 0], Tsurf(1)+273.15);
mat = alum;
mat_north_south = sur(0.9, conductivity, albedo,HeatCapacity,thickness, MassDensity, [0 31.34], [0 0], [0 18.2], Tsurf(1)+273.15);
mat_east_west = sur(0.9, conductivity, albedo,HeatCapacity,thickness, MassDensity, [0 0], [0 318.54], [0 18.2], Tsurf(1)+273.15);
mat_top_bot = sur(0.9, conductivity, albedo,HeatCapacity,thickness, MassDensity, [0 31.34], [0 318.54], [0 0], Tsurf(1)+273.15);
mat_east_west_1 = sur(0.9, conductivity, albedo,HeatCapacity,thickness, MassDensity, [0 0], [0 318.54], [0 2.73], Tsurf(1)+273.15);
mat_east_west_2 = sur(0.9, conductivity, albedo,HeatCapacity,thickness, MassDensity, [0 0], [0 318.54], [0 3.17], Tsurf(1)+273.15);
mat_east_west_3 = sur(0.9, conductivity, albedo,HeatCapacity,thickness, MassDensity, [0 0], [0 318.54], [0 4.3], Tsurf(1)+273.15);
mat_east_west_4 = sur(0.9, conductivity, albedo,HeatCapacity,thickness, MassDensity, [0 0], [0 318.54], [0 8], Tsurf(1)+273.15);
%--- Solar Radiation Geometry --------
phi = 1.35*pi/180;
delta = 23.43*pi/180;
IskyLWabs = alum.emissivity()*IskyLW;
IskySWabs = (1-alum.albedo())*IskySW;
IsunSWabs = (1-alum.albedo())*IsunSW;
h = 5;
LW = 0.5;
%---Surface/Air Properties ------------------
asphalt_ground = sur(0.93,0.75, 0.16,920,0.1, 2360, [0 10], [0 10], [0 0], 25+273.15);
asphalt_ground_1 = sur(0.93,0.75, 0.16,920,0.5, 2360, [0 10], [0 10], [0 0], 25+273.15);
C_air = 1000;
Massdensity_air = 1.225;
C_air = 1000;
Massdensity_air = 1.225;
Volume = are(mat_north_south) * mat_east_west.width();
%-------------------------------------------------------------------------
%---Data fitting loop initialization
w = 165*pi/180;
T_air(1) = 28;
t0 =28 +273.15;
%%%%%%%%%%%%%%%%%%% First Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
T_air(1) = 28 +273.15 ;
surftemp_out_east(1,1) = t0 - 273.15; surftemp_in_east(1,1) = t0 - 273.15;
surftemp_out_east_1(1,1) = t0 - 273.15; surftemp_in_east_1(1,1) = t0 - 273.15;
surftemp_out_east_2(1,1) = t0 - 273.15; surftemp_in_east_2(1,1) = t0 - 273.15;
surftemp_out_east_3(1,1) = t0 - 273.15; surftemp_in_east_3(1,1) = t0 - 273.15;
surftemp_out_east_4(1,1) = t0 - 273.15; surftemp_in_east_4(1,1) = t0 - 273.15;
surftemp_out_north(1,1) = t0 - 273.15; surftemp_in_north(1,1) = t0 - 273.15;
surftemp_out_west(1,1) = t0 - 273.15; surftemp_in_west(1,1) = t0 - 273.15;
surftemp_out_south(1,1) = t0 - 273.15; surftemp_in_south(1,1) = t0 - 273.15;
surftemp_out_top(1,1) = t0 - 273.15; surftemp_in_top(1,1) = t0 - 273.15;
surftemp_ground(1,1) = 28 ;
surftemp_out_bot(1,1) = t0-273.15;surftemp_in_bot(1,1) = t0-273.15 ;
t0_east = t0; t0_in_east = t0;
t0_east_1 = t0; t0_in_east_1 = t0;
t0_east_2 = t0; t0_in_east_2 = t0;
t0_east_3 = t0; t0_in_east_3 = t0;
t0_east_4 = t0; t0_in_east_4 = t0;
t0_north = t0; t0_in_north = t0;
t0_west = t0; t0_in_west = t0;
t0_south = t0; t0_in_south = t0;
t0_top = t0; t0_in_top = t0;
t0_bot = t0;t0_in_bot = t0;
t0_ground = 28+273.15;
t0_in_ground = 28+273.15;
t0_air = 28+273.15;
%%%%%%%%%%%%%%%%%%% Second Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
T_air_1(1) = 28+273.15 ;
S_surftemp_out_east_1(1,1) = t0 - 273.15; S_surftemp_in_east_1(1,1) = t0 - 273.15;
surftemp_out_west_1_1(1,1) = t0 - 273.15; surftemp_in_west_1_1(1,1) = t0 - 273.15;
surftemp_out_west_1_2(1,1) = t0 - 273.15; surftemp_in_west_1_2(1,1) = t0 - 273.15;
surftemp_out_west_1_3(1,1) = t0 - 273.15; surftemp_in_west_1_3(1,1) = t0 - 273.15;
surftemp_out_west_1_4(1,1) = t0 - 273.15; surftemp_in_west_1_4(1,1) = t0 - 273.15;
surftemp_out_north_1(1,1) = t0 - 273.15; surftemp_in_north_1(1,1) = t0 - 273.15;
surftemp_out_west_1(1,1) = t0 - 273.15; surftemp_in_west_1(1,1) = t0 - 273.15;
surftemp_out_south_1(1,1) = t0 - 273.15; surftemp_in_south_1(1,1) = t0 - 273.15;
surftemp_out_top_1(1,1) = t0 - 273.15; surftemp_in_top_1(1,1) = t0 - 273.15;
surftemp_ground_1(1,1) = 28 ;
surftemp_out_bot_1(1,1) = t0 -273.15; surftemp_in_bot_1(1,1) = t0-273.15 ;
S_t0_east_1 = t0; S_t0_in_east_1 = t0;
t0_north_1 = t0; t0_in_north_1 = t0;
t0_west_1 = t0; t0_in_west_1 = t0;
t0_west_1_1 = t0; t0_in_west_1_1 = t0;
t0_west_1_2 = t0; t0_in_west_1_2 = t0;
t0_west_1_3 = t0; t0_in_west_1_3 = t0;
t0_west_1_4 = t0; t0_in_west_1_4 = t0;
t0_south_1 = t0; t0_in_south_1 = t0;
t0_top_1 = t0; t0_in_top_1 = t0;
t0_bot_1 = t0;t0_in_bot_1 = t0;
t0_ground_1 = 28+273.15;
t0_in_ground_1 = 28+273.15;
t0_air_1 = 28+273.15;
t0_road = 28;
%%%%%%%%%%%%%%%%%%%%% Ground %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
surftemp_out_floor(1,1) = t0_road; surftemp_in_floor(1,1) = t0_road;
surftemp_out_floor(1,2) =t0_road; surftemp_in_floor(1,2) = t0_road;
surftemp_out_floor(1,3) = t0_road; surftemp_in_floor(1,3) = t0_road;
surftemp_out_floor(1,4) = t0_road; surftemp_in_floor(1,4) = t0_road;
surftemp_out_floor_right(1,1) = 28; surftemp_in_floor_right(1,1) = 28;
surftemp_out_floor_right(1,2) =28 ; surftemp_in_floor_right(1,2) = 28 ;
surftemp_out_floor_right(1,3) = 28 ; surftemp_in_floor_right(1,3) = 28;
surftemp_out_floor_right(1,4) = 28 ; surftemp_in_floor_right(1,4) = 28 ;
surftemp_out_floor_left(1,1) = 28; surftemp_in_floor_left(1,1) = 28;
surftemp_out_floor_left(1,2) =28 ; surftemp_in_floor_left(1,2) = 28 ;
surftemp_out_floor_left(1,3) = 28 ; surftemp_in_floor_left(1,3) = 28;
surftemp_out_floor_left(1,4) = 28 ; surftemp_in_floor_left(1,4) = 28;
t0_floor(1) = t0_road+273.15; t0_floor(2) = t0_road+273.15;
t0_floor(3) = t0_road+273.15; t0_floor(4) = t0_road+273.15;
t0_floor_in(1) = t0_road+273.15; t0_floor_in(2) = t0_road+273.15;
t0_floor_in(3) = t0_road+273.15; t0_floor_in(4) =t0_road+273.15;
t0_floor_right(1) = 28+273.15;t0_floor_right(2) = 28+273.15;
t0_floor_right(3) = 28+273.15; t0_floor_right(4) = 28+273.15;
t0_floor_right_in(1) =28+273.15; t0_floor_right_in(2) = 28+273.15;
t0_floor_right_in(3) = 28+273.15; t0_floor_right_in(4) =28+273.15;
t0_floor_left(1) = 28+273.15;t0_floor_left(2) = 28+273.15;
t0_floor_left(3) = 28+273.15; t0_floor_left(4) =28+273.15;
t0_floor_left_in(1) = 28+273.15; t0_floor_left_in(2) = 28+273.15;
t0_floor_left_in(3) = 28+273.15; t0_floor_left_in(4) =28+273.15;
x = 0:h:3600;
%%%%%%%%%%%%% Looping over all hours %%%%%%%%%%%%%%%%
for i = 1:(length(Tair) - 1)
R_d(i) = fun(theta_Z(i), IsunSW(i), IskySW(i), table);
East %%%
gamma_east = 90*pi/180;
theta_in_east(i) = sin(phi)*cos(delta)*cos(gamma_east)*cos(w) -...
cos(phi)*sin(delta)*cos(gamma_east)+...
cos(delta)*sin(gamma_east)*sin(w);
North %%%
gamma_north = 180*pi/180;
theta_in_north(i) = sin(phi)*cos(delta)*cos(gamma_north)*cos(w) - ...
cos(phi)*sin(delta)*cos(gamma_north)+...
cos(delta)*sin(gamma_north)*sin(w);
West %%%
gamma_west = -90*pi/180;
theta_in_west(i) = sin(phi)*cos(delta)*cos(gamma_west)*cos(w) - ...
cos(phi)*sin(delta)*cos(gamma_west)+...
cos(delta)*sin(gamma_west)*sin(w);
South Wall
gamma_south = 0*pi/180;
theta_in_south(i) = sin(phi)*cos(delta)*cos(gamma_south)*cos(w) -...
cos(phi)*sin(delta)*cos(gamma_south)+...
cos(delta)*sin(gamma_south)*sin(w);
if theta_in_north(i) < 0
theta_in_north(i) = 0;
else
theta_in_north(i) = theta_in_north(i);
end
if theta_in_south(i) < 0
theta_in_south(i) = 0;
else
theta_in_south(i) = theta_in_south(i);
end
%%%%%%%%%%%%%%%%%%% First Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if i <=12
for aa=1:(length(x)-1)
t_diff_east = t0_ground^4 - t0_east^4;
t_diff_west = t0_ground^4 - t0_west^4;
t_diff_north = t0_ground^4 - t0_north^4;
t_diff_south = t0_ground^4 - t0_south^4;
t_diff_wall_wall = t0_east_1^4 - t0_west_1_1^4;
L_reflected_east = 0.218*(1-alum.albedo())*asphalt_ground.albedo()*(0.5*IskySW(i) + ...
IsunSW(i));
L_reflected_north = 0.162*(1-alum.albedo())*asphalt_ground.albedo()*(0.5*IskySW(i) +...
IsunSW(i));
L_reflected_south = 0.162*(1-alum.albedo())*asphalt_ground.albedo()*(0.5*IskySW(i) +...
IsunSW(i));
L_reflected_west = 0.218*(1-alum.albedo())*asphalt_ground.albedo()*(0.5*IskySW(i) );
if t_diff_east > 0,
t_diff_east = t_diff_east;
else
t_diff_east = 0;
end
if t_diff_west > 0
t_diff_west = t_diff_west;
else
t_diff_west = 0;
end
if t_diff_north > 0
t_diff_north = t_diff_north;
else
t_diff_north = 0;
end
if t_diff_south > 0
t_diff_south = t_diff_south;
else
t_diff_south = 0;
end
if t_diff_wall_wall >0
t_diff_wall_wall = t_diff_wall_wall;
else
t_diff_wall_wall = 0;
end
if i >= 7
b = 1;
else
b = 0;
end
if i >= 8
bb = 1;
else
bb = 0;
end
if i >= 9
bbb = 1;
else
bbb = 0;
end
if i >= 10
bbbb = 1;
else
bbbb = 0;
end
if i >= 12
bcbc = 1;
else
bcbc = 0;
end
%%%%%%%%%%%%%%%%%% Thermal radiation wall-wall %%%%%%%%%%%%%%%%%%%%%%%%%%%
L_west_east_1_1 = 0.0847*(mat.emissivity()*SBconst*t0_west_1_1^4 );
L_west_east_1_2 = 0.0783*(mat.emissivity()*SBconst*t0_west_1_1^4);
L_west_east_1_3 = 0.0605*(mat.emissivity()*SBconst*t0_west_1_1^4);
L_west_east_1_4 = 0.03294*(mat.emissivity()*SBconst*t0_west_1_1^4);
L_west_east_2_1 = 0.0908*(mat.emissivity()*SBconst*t0_west_1_2^4);
L_west_east_2_2 = 0.0981*(mat.emissivity()*SBconst*t0_west_1_2^4 );
L_west_east_2_3 = 0.0877*(mat.emissivity()*SBconst*t0_west_1_2^4);
L_west_east_2_4 = 0.0517*(mat.emissivity()*SBconst*t0_west_1_2^4);
L_west_east_3_1 = 0.0941*(mat.emissivity()*SBconst*t0_west_1_3^4 );
L_west_east_3_2 = 0.110*(mat.emissivity()*SBconst*t0_west_1_3^4);
L_west_east_3_3 = 0.123*(mat.emissivity()*SBconst*t0_west_1_3^4 );
L_west_east_3_4 = 0.0983*(mat.emissivity()*SBconst*t0_west_1_3^4 );
L_west_east_4_1 = 0.0994*(mat.emissivity()*SBconst*t0_west_1_4^4);
L_west_east_4_2 = 0.1356*(mat.emissivity()*SBconst*t0_west_1_4^4);
L_west_east_4_3 = 0.214*(mat.emissivity()*SBconst*t0_west_1_4^4);
L_west_east_4_4 = 0.237*(mat.emissivity()*SBconst*t0_west_1_4^4);
L_east_west_1_1 = 0.0847*(mat.emissivity()*SBconst*t0_east_1^4 );
L_east_west_1_2 = 0.0783*( mat.emissivity()*SBconst*t0_east_1^4);
L_east_west_1_3 = 0.0605*(mat.emissivity()*SBconst*t0_east_1^4);
L_east_west_1_4 = 0.03294*(mat.emissivity()*SBconst*t0_east_1^4);
L_east_west_2_1 = 0.0908*(mat.emissivity()*SBconst*t0_east_2^4);
L_east_west_2_2 = 0.0981*(mat.emissivity()*SBconst*t0_east_2^4 );
L_east_west_2_3 = 0.0877*(mat.emissivity()*SBconst*t0_east_2^4);
L_east_west_2_4 = 0.0517*(mat.emissivity()*SBconst*t0_east_2^4);
L_east_west_3_1 = 0.0941*(mat.emissivity()*SBconst*t0_east_3^4 );
L_east_west_3_2 = 0.110*(mat.emissivity()*SBconst*t0_east_3^4 );
L_east_west_3_3 = 0.123*(mat.emissivity()*SBconst*t0_east_3^4 );
L_east_west_3_4 = 0.0983*(mat.emissivity()*SBconst*t0_east_3^4 );
L_east_west_4_1 = 0.0994*(mat.emissivity()*SBconst*t0_east_4^4);
L_east_west_4_2 = 0.1356*(mat.emissivity()*SBconst*t0_east_4^4);
L_east_west_4_3 = 0.214*(mat.emissivity()*SBconst*t0_east_4^4);
L_east_west_4_4 = 0.237*(mat.emissivity()*SBconst*t0_east_4^4 );
%%%%%%%%%%%%%%%%%% Reflected Solar irradiance %%%%%%%%%%%%%%%%%%%%%%%%%%%
L_reflected_east_west_1 = 0.0847*(mat.albedo()*b*theta_in_east(i)*IsunSWabs(i)) +...
0.0908*1*mat.albedo()*bb*theta_in_east(i)*IsunSWabs(i)+...
0.0941*mat.albedo()*bbb*theta_in_east(i)*IsunSWabs(i)+...
0.0994*mat.albedo()*bbbb*theta_in_east(i)*IsunSWabs(i);
L_reflected_east_west_2 = 0.0783*( b*mat.albedo()*theta_in_east(i)*IsunSWabs(i))+...
0.0981*(mat.albedo()*bb*theta_in_east(i)*IsunSWabs(i))+...
0.110*mat.albedo()*bbb*theta_in_east(i)*IsunSWabs(i)+...
0.1356*mat.albedo()*bbbb*theta_in_east(i)*IsunSWabs(i);
L_reflected_east_west_3 =0.0877*mat.albedo()*bb*theta_in_east(i)*IsunSWabs(i) +...
0.0605*(b*mat.albedo()*theta_in_east(i)*IsunSWabs(i))+...
0.123*1*(mat.albedo()*bbb*theta_in_east(i)*IsunSWabs(i))+...
0.214*mat.albedo()*bbbb*theta_in_east(i)*IsunSWabs(i);
L_reflected_east_west_4= 0.237*(mat.albedo()*bbbb*theta_in_east(i)*IsunSWabs(i))+...
0.0983*mat.albedo()*bbb*theta_in_east(i)*IsunSWabs(i)+...
+0.0517*mat.albedo()*bb*theta_in_east(i)*IsunSWabs(i)+...
0.03294*(b*mat.albedo()*theta_in_east(i)*IsunSWabs(i));
L_ground_to_4_east = (0.281*SBconst*t0_floor(1)^4+0.0139*SBconst*t0_floor(2)^4+...
0.0859*SBconst*t0_floor(4)^4)*asphalt_ground.emissivity();
L_ground_to_3_east = (0.1227*SBconst*t0_floor(1)^4+0.0103*SBconst*t0_floor(2)^4+...
0.0911*SBconst*t0_floor(4)^4)*asphalt_ground.emissivity();
L_ground_to_2_east = (0.109*SBconst*t0_floor(1)^4 +0.00956*SBconst*t0_floor(2)^4 +...
0.086*SBconst*t0_floor(4)^4)*asphalt_ground.emissivity();
L_ground_to_1_east = (0.0896*SBconst*t0_floor(1)^4 + 0.00798*SBconst*t0_floor(2)^4+...
0.0758*SBconst*t0_floor(4)^4)*asphalt_ground.emissivity();
L_ground_to_4_west = (0.281*SBconst*t0_floor(4)^4+0.0139*SBconst*t0_floor(2)^4+...
0.0859*SBconst*t0_floor(1)^4)*asphalt_ground.emissivity();
L_ground_to_3_west = (0.1227*SBconst*t0_floor(4)^4+0.0103*SBconst*t0_floor(2)^4+...
0.0911*SBconst*t0_floor(1)^4)*asphalt_ground.emissivity();
L_ground_to_2_west = (0.109*SBconst*t0_floor(4)^4 +0.00956*SBconst*t0_floor(2)^4 +...
0.086*SBconst*t0_floor(1)^4)*asphalt_ground.emissivity();
L_ground_to_1_west = (0.0896*SBconst*t0_floor(4)^4 +...
0.00798*SBconst*t0_floor(2)^4+0.0758*SBconst*t0_floor(1)^4)*asphalt_ground.emissivity();
L_east_1 = (L_ground_to_1_east+ L_west_east_2_1 +L_west_east_3_1 +L_west_east_4_1 +...
L_west_east_1_1) +0.458*IskyLW(i); %(1/0.3463)*
L_east_2 = (L_ground_to_2_east+ L_west_east_3_2+L_west_east_4_2+ ...
L_west_east_1_2+L_west_east_2_2) +0.373*IskyLW(i) ; %(1/0.4599)*
L_east_3 = (L_ground_to_3_east+L_west_east_4_3 + L_west_east_3_3+...
L_west_east_1_3+L_west_east_2_3)+0.29*IskyLW(i); %(1/0.6109)*
L_east_4 = (L_ground_to_4_west+L_west_east_4_4 + L_west_east_1_4 +...
L_west_east_2_4 +L_west_east_3_4) +0.199*IskyLW(i); %(1/0.8116)*
L_west_1 = (L_ground_to_1_west+ L_east_west_2_1 +L_east_west_3_1 +...
L_east_west_4_1+L_east_west_1_1) +0.458*IskyLW(i); %%(1/0.3463)*
L_west_2 = (L_ground_to_2_west+L_east_west_3_2 +L_east_west_4_2 +...
L_east_west_1_2+ L_east_west_2_2)+0.373*IskyLW(i);%(1/0.4599)*
L_west_3 = (L_ground_to_3_west+L_east_west_4_3+L_east_west_3_3+...
L_east_west_1_3+L_east_west_2_3) + 0.29*IskyLW(i); %(1/0.6109)*
L_west_4 = (L_ground_to_4_west+L_east_west_4_4+L_east_west_1_4+...
L_east_west_2_4+L_east_west_3_4) +0.199*IskyLW(i); %(1/0.8116)*
L_ground_wall_1 = ((mat.emissivity()*SBconst*(0.25*t0_west_1_4^4 +...
0.066*t0_west_1_3^4 +0.0274*t0_west_1_2^4 +0.0234*t0_west_1_1^4 +...
0.326*t0_east_4^4+0.0318*t0_east_3^4 +0.0111*t0_east_2^4 +...
0.00879*t0_east_1^4 ) + 0.2635*IskyLW(i)));
L_ground_wall_2 = ( mat.emissivity()*SBconst*( 0.0144*(t0_west_1_1^4+...
t0_east_1^4) +...
0.0242*(t0_west_1_2^4+t0_east_2^4) +...
0.0556*(t0_west_1_3^4 + t0_east_3^4) +...
0.32*(t0_west_1_4^4+ t0_east_4^4)) + ...
+0.2886*IskyLW(i));
L_ground_wall_3 = (mat.emissivity()*SBconst*( 0.0144*(t0_west_1_1^4+...
t0_east_1^4) +...
0.0242*(t0_west_1_2^4+t0_east_2^4) + 0.0556*(t0_west_1_3^4 + ...
t0_east_3^4) +...
0.32*(t0_west_1_4^4+ t0_east_4^4)) + ...
+0.2886*IskyLW(i));
L_ground_wall_4 = (mat.emissivity()*SBconst*(0.25*t0_east_4^4 +...
0.066*t0_east_3^4 +...
0.0274*t0_east_2^4 +0.0234*t0_east_1^4 +...
0.326*t0_west_1_4^4 +0.0318*t0_west_1_3^4 +0.0111*t0_west_1_2^4 +...
0.00879*t0_west_1_1^4) + 0.2635*IskyLW(i));
%%%%%%%%%%%%%%%%% First Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
params_out_east = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
IskyLWabs(i)+...
theta_in_east(i)*IsunSWabs(i)+...
0.45*asphalt_ground.emissivity()*SBconst*t_diff_east+...
L_reflected_east+...
(mat.conductivity()/mat.thickness()*t0_in_east)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_east_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
b*theta_in_east(i)*IsunSWabs(i)+...
mat.emissivity()*L_east_1+...
(mat.conductivity()/mat.thickness()*t0_in_east_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east_1)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_east_2 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_east_2+...
bb*theta_in_east(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_east_2)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east_2 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east_2)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_east_3 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_east_3+...
bbb*theta_in_east(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_east_3)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east_3 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east_3)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_east_4 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_east_4+...
bbbb*theta_in_east(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_east_4)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east_4 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east_4)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_north = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_north(i)*IsunSWabs(i)+...
L_reflected_north+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_ground_1^4+...
(mat.conductivity()/mat.thickness()*t0_in_north)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_north = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_north)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
0*theta_in_west(i)*IsunSWabs(i)+...
L_reflected_west+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_floor_left(4)^4+...
(mat.conductivity()/mat.thickness()*t0_in_west) + 5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_south = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_south(i)*IsunSWabs(i)+...
L_reflected_south+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_ground_1^4+...
(mat.conductivity()/mat.thickness()*t0_in_south)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_south = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_south)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_top = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
IskySWabs(i)+...
IskyLWabs(i)+...
cos(theta_Z(i)*pi/180)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_top)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_top = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_top)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_ground = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW(i)+...
0.5*asphalt_ground.emissivity()*IskyLW(i)+...
cos(theta_Z(i)*pi/180)*(1-asphalt_ground.albedo())*IsunSW(i)+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair(i),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_ground),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_bot = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_in_bot)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_in_bot = [asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_bot_1),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_air = [C_air*Massdensity_air*Volume, ...
(5.6*are(mat_east_west_1)*t0_in_east_1 + 5.6*are(mat_east_west_2)*t0_in_east_2+...
5.6*are(mat_east_west_3)*t0_in_east_3+...
5.6*are(mat_east_west_4)*t0_in_east_4+...
are(mat_north_south)*5.6*t0_in_north +...
5.6*are(mat_east_west)*t0_in_west +are(mat_north_south)*5.6*t0_in_south+...
5.6*are(mat_top_bot)*t0_in_top +5.6*are(mat_top_bot)*t0_bot),...
(5.6)*(are(mat_east_west) + 2*are(mat_top_bot) + 2*are(mat_north_south)+...
are(mat_east_west_1)+are(mat_east_west_2)+are(mat_east_west_3)+are(mat_east_west_4)),...
0];
%%%%%%%%%%%%%%%%% Second Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
S_params_out_east_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_east(i)*IsunSWabs(i)+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_floor_right(1)^4+...
0*L_reflected_east+...
(mat.conductivity()/mat.thickness()*S_t0_in_east_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
S_params_in_east_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*S_t0_east_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_west_1+...
(1-mat.albedo())*L_reflected_east_west_1+...
bcbc*theta_in_west(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_west_1_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1_2 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_west_2+...
(1-mat.albedo())*L_reflected_east_west_2+...
bcbc*theta_in_west(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_west_1_2)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1_2 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1_2)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1_3 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_west_3+...
(1-mat.albedo())*L_reflected_east_west_3+...
bcbc*theta_in_east(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_west_1_3)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1_3 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1_3)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1_4 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_west_4+...
bcbc*theta_in_west(i)*IsunSWabs(i)+...
(1-mat.albedo())*L_reflected_east_west_4+...
(mat.conductivity()/mat.thickness()*t0_in_west_1_4)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1_4 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1_4)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_north_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_north(i)*IsunSWabs(i)+...
L_reflected_north+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_ground_1^4+...
(mat.conductivity()/mat.thickness()*t0_in_north_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_north_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_north_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
IskyLWabs(i)+...
0*theta_in_west(i)*IsunSWabs(i)+...
L_reflected_west+...
(mat.conductivity()/mat.thickness()*t0_in_west_1) + 5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_south_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_south(i)*IsunSWabs(i)+...
L_reflected_south+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_ground_1^4+...
(mat.conductivity()/mat.thickness()*t0_in_south_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_south_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_south_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_top_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
IskySWabs(i)+...
IskyLWabs(i)+...
cos(theta_Z(i)*pi/180)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_top_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_top_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_top)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW(i)+...
0.5*asphalt_ground.emissivity()*IskyLW(i)+...
cos(theta_Z(i)*pi/180)*(1-asphalt_ground.albedo())*IsunSW(i)+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_in_ground_1)+5.6*Tair(i),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_ground_1),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_bot_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(),...
(mat.conductivity()/mat.thickness()*t0_in_bot_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_in_bot_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_bot_1),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_air_1 = [C_air*Massdensity_air*Volume, ...
(5.6*are(mat_east_west_1)*t0_in_west_1_1 + 5.6*are(mat_east_west_2)*t0_in_west_1_2+...
5.6*are(mat_east_west_3)*t0_in_west_1_3+...
5.6*are(mat_east_west_4)*t0_in_west_1_4+...
are(mat_north_south)*5.6*t0_in_north_1 +...
5.6*are(mat_east_west)*S_t0_in_east_1 +are(mat_north_south)*5.6*t0_in_south_1+...
5.6*are(mat_top_bot)*t0_in_top_1 +5.6*are(mat_top_bot)*t0_bot_1),...
(5.6)*(are(mat_east_west) + 2*are(mat_top_bot) + 2*are(mat_north_south)+...
are(mat_east_west_3)+are(mat_east_west_2)+are(mat_east_west_4)+are(mat_east_west_1)),...
0];
%%%%%%%%%%%%%%%%%% First Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[t0_east,t0_in_east] = runge(params_out_east, params_in_east, t0_east, t0_in_east, h);
[t0_east_1,t0_in_east_1] = runge(params_out_east_1, params_in_east_1, t0_east_1, t0_in_east_1, h);
[t0_east_2,t0_in_east_2] = runge(params_out_east_2, params_in_east_2, t0_east_2, t0_in_east_2, h);
[t0_east_3,t0_in_east_3] = runge(params_out_east_3, params_in_east_3, t0_east_3, t0_in_east_3, h);
[t0_east_4,t0_in_east_4] = runge(params_out_east_4, params_in_east_4, t0_east_4, t0_in_east_4, h);
[t0_west,t0_in_west] = runge(params_out_west, params_in_west, t0_west, t0_in_west, h);
[t0_north,t0_in_north] = runge(params_out_north, params_in_north, t0_north, t0_in_north, h);
[t0_south,t0_in_south] = runge(params_out_south, params_in_south, t0_south, t0_in_south, h);
[t0_top,t0_in_top] = runge(params_out_top, params_in_top, t0_top, t0_in_top, h);
[t0_ground,t0_in_ground] = runge(params_ground, params_ground, t0_ground, t0_in_ground, h);
[t0_bot, t0_in_bot] = runge(params_bot, params_in_bot,t0_bot, t0_in_bot, h);
t0_air = forward_air(params_air,t0_air,h);
%%%%%%%%%%%%%%%% Second Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[S_t0_east_1,S_t0_in_east_1] = runge(S_params_out_east_1,...
S_params_in_east_1, S_t0_east_1, S_t0_in_east_1, h);
[t0_west_1_1,t0_in_west_1_1] = runge(params_out_west_1_1,...
params_in_west_1_1, t0_west_1_1, t0_in_west_1_1, h);
[t0_west_1_2,t0_in_west_1_2] = runge(params_out_west_1_2, ...
params_in_west_1_2, t0_west_1_2, t0_in_west_1_2, h);
[t0_west_1_3,t0_in_west_1_3] = runge(params_out_west_1_3,...
params_in_west_1_3, t0_west_1_3, t0_in_west_1_3, h);
[t0_west_1_4,t0_in_west_1_4] = runge(params_out_west_1_4,...
params_in_west_1_4, t0_west_1_4, t0_in_west_1_4, h);
[t0_west_1,t0_in_west_1] = runge(params_out_west_1, params_in_west_1, t0_west_1, t0_in_west_1, h);
[t0_north_1,t0_in_north_1] = runge(params_out_north_1, params_in_north_1, t0_north_1, t0_in_north_1, h);
[t0_south_1,t0_in_south_1] = runge(params_out_south_1, params_in_south_1, t0_south_1, t0_in_south_1, h);
[t0_top_1,t0_in_top_1] = runge(params_out_top_1, params_in_top_1, t0_top_1, t0_in_top_1, h);
[t0_ground_1,t0_in_ground_1] = runge(params_ground_1, params_ground_1, t0_ground_1, t0_in_ground_1, h);
[t0_bot_1, t0_in_bot_1] = runge(params_bot_1, params_in_bot_1,t0_bot_1, t0_in_bot_1, h);
t0_air_1 = forward_air(params_air,t0_air_1,h);
%%%%%%%%%%%%%%%% Ground %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[t0_floor(1), t0_floor_in(1),t0_floor(2), ...
t0_floor_in(2),t0_floor(3), t0_floor_in(3),t0_floor(4), t0_floor_in(4)]=...
ground_floor_1(t0_floor(1),t0_floor_in(1), t0_floor(2),t0_floor_in(2),...
t0_floor(3),t0_floor_in(3), t0_floor(4),t0_floor_in(4),h,IskySW(i),...
IskyLW(i),theta_Z(i),IsunSW(i),Tair(i),L_ground_wall_1,L_ground_wall_2,L_ground_wall_4,i);
[t0_floor_right(1), t0_floor_right_in(1),t0_floor_right(2),...
t0_floor_right_in(2),t0_floor_right(3), t0_floor_right_in(3),t0_floor_right(4),...
t0_floor_right_in(4)]=ground_floor_right(t0_floor_right(1),t0_floor_right_in(1),...
t0_floor_right(2),t0_floor_right_in(2),...
t0_floor_right(3),t0_floor_right_in(3), t0_floor_right(4),...
t0_floor_right_in(4),h,IskySW(i),IskyLW(i),theta_Z(i),IsunSW(i),Tair(i),i);
[t0_floor_left(1), t0_floor_left_in(1),t0_floor_left(2),...
t0_floor_left_in(2),t0_floor_left(3), t0_floor_left_in(3),...
t0_floor_left(4), t0_floor_left_in(4)]=ground_floor_left(t0_floor_left(1),...
t0_floor_left_in(1), t0_floor_left(2),t0_floor_left_in(2),...
t0_floor_left(3),t0_floor_left_in(3), t0_floor_left(4),...
t0_floor_left_in(4),h,IskySW(i),IskyLW(i),theta_Z(i),IsunSW(i),Tair(i),i);
end
else
for aa=1:(length(x)-1) % calculation loop
t_diff_east = t0_ground^4 - t0_east^4;
t_diff_west = t0_ground^4 - t0_west^4;
t_diff_north = t0_ground^4 - t0_north^4;
t_diff_south = t0_ground^4 - t0_south^4;
t_diff_wall_wall = t0_west_1_1^4 - t0_east_1^4;
L_reflected_east =...
0.218*(1-alum.albedo())*asphalt_ground.albedo()*(0.5*IskySW(i) );
L_reflected_north =...
0.162*(1-alum.albedo())*asphalt_ground.albedo()*(0.5*IskySW(i) + IsunSW(i));
L_reflected_south = ...
0.162*(1-alum.albedo())*asphalt_ground.albedo()*(0.5*IskySW(i) + IsunSW(i));
L_reflected_west =...
0.218*(1-alum.albedo())*asphalt_ground.albedo()*(0.5*IskySW(i) +IsunSW(i));
if t_diff_east > 0
t_diff_east = t_diff_east;
else
t_diff_east = 0;
end
if t_diff_west > 0
t_diff_west = t_diff_west;
else
t_diff_west = 0;
end
if t_diff_north > 0
t_diff_north = t_diff_north;
else
t_diff_north = 0;
end
if t_diff_south > 0
t_diff_south = t_diff_south;
else
t_diff_south = 0;
end
if t_diff_wall_wall >0
t_diff_wall_wall = t_diff_wall_wall;
else
t_diff_wall_wall = 0;
end
if i >= 13
q = 0;
else
q = 1;
end
if i >= 14
qq = 0;
else
qq = 1;
end
if i >= 15
qqq = 0;
else
qqq = 1;
end
if i >= 16
qqqq = 0;
else
qqqq = 1;
end
%%%%%%%%%% Thermal radiation emitted wall-wall %%%%%%%%%%%%%%%%
L_west_east_1_1 = 0.0847*(mat.emissivity()*SBconst*t0_west_1_1^4 );
L_west_east_1_2 = 0.0783*(mat.emissivity()*SBconst*t0_west_1_1^4);
L_west_east_1_3 = 0.0605*(mat.emissivity()*SBconst*t0_west_1_1^4);
L_west_east_1_4 = 0.03294*(mat.emissivity()*SBconst*t0_west_1_1^4);
L_west_east_2_1 = 0.0908*(mat.emissivity()*SBconst*t0_west_1_2^4);
L_west_east_2_2 = 0.0981*(mat.emissivity()*SBconst*t0_west_1_2^4 );
L_west_east_2_3 = 0.0877*(mat.emissivity()*SBconst*t0_west_1_2^4);
L_west_east_2_4 = 0.0517*(mat.emissivity()*SBconst*t0_west_1_2^4);
L_west_east_3_1 = 0.0941*(mat.emissivity()*SBconst*t0_west_1_3^4 );
L_west_east_3_2 = 0.110*(mat.emissivity()*SBconst*t0_west_1_3^4);
L_west_east_3_3 = 0.123*(mat.emissivity()*SBconst*t0_west_1_3^4 );
L_west_east_3_4 = 0.0983*(mat.emissivity()*SBconst*t0_west_1_3^4 );
L_west_east_4_1 = 0.0994*(mat.emissivity()*SBconst*t0_west_1_4^4);
L_west_east_4_2 = 0.1356*(mat.emissivity()*SBconst*t0_west_1_4^4);
L_west_east_4_3 = 0.214*(mat.emissivity()*SBconst*t0_west_1_4^4);
L_west_east_4_4 = 0.237*(mat.emissivity()*SBconst*t0_west_1_4^4);
L_east_west_1_1 = 0.0847*(mat.emissivity()*SBconst*t0_east_1^4 );
L_east_west_1_2 = 0.0783*( mat.emissivity()*SBconst*t0_east_1^4);
L_east_west_1_3 = 0.0605*(mat.emissivity()*SBconst*t0_east_1^4);
L_east_west_1_4 = 0.03294*(mat.emissivity()*SBconst*t0_east_1^4);
L_east_west_2_1 = 0.0908*(mat.emissivity()*SBconst*t0_east_2^4);
L_east_west_2_2 = 0.0981*(mat.emissivity()*SBconst*t0_east_2^4 );
L_east_west_2_3 = 0.0877*(mat.emissivity()*SBconst*t0_east_2^4);
L_east_west_2_4 = 0.0517*(mat.emissivity()*SBconst*t0_east_2^4);
L_east_west_3_1 = 0.0941*(mat.emissivity()*SBconst*t0_east_3^4 );
L_east_west_3_2 = 0.110*(mat.emissivity()*SBconst*t0_east_3^4 );
L_east_west_3_3 = 0.123*(mat.emissivity()*SBconst*t0_east_3^4 );
L_east_west_3_4 = 0.0983*(mat.emissivity()*SBconst*t0_east_3^4 );
L_east_west_4_1 = 0.0994*(mat.emissivity()*SBconst*t0_east_4^4);
L_east_west_4_2 = 0.1356*(mat.emissivity()*SBconst*t0_east_4^4);
L_east_west_4_3 = 0.214*(mat.emissivity()*SBconst*t0_east_4^4);
L_east_west_4_4 = 0.237*(mat.emissivity()*SBconst*t0_east_4^4 );
%%%%%%%%%% Reflected solar irradiance %%%%%%%%%%%%%%%%%%%%%%%
L_reflected_west_east_1 = 0.0847*mat.albedo()*qqqq*theta_in_west(i)*IsunSWabs(i)+...
0.0908*mat.albedo()*qqq*theta_in_west(i)*IsunSWabs(i)+0.0941*mat.albedo()*qq*theta_in_east(i)*IsunSWabs(i)+...
0.0994*mat.albedo()*(q*theta_in_west(i)*IsunSWabs(i));
L_reflected_west_east_2 = 0.0783*mat.albedo()*qqqq*theta_in_west(i)*IsunSWabs(i)+...
0.0981*mat.albedo()*qqq*theta_in_west(i)*IsunSWabs(i)+...
0.110*mat.albedo()*qq*theta_in_east(i)*IsunSWabs(i) +...
0.1356*mat.albedo()*q*theta_in_west(i)*IsunSWabs(i);
L_reflected_west_east_3 =0.0605*mat.albedo()*qqqq*theta_in_west(i)*IsunSWabs(i)+...
0.0877*mat.albedo()*qqq*theta_in_west(i)*IsunSWabs(i)+...
0.123*mat.albedo()*qq*theta_in_east(i)*IsunSWabs(i) +...
0.214*mat.albedo()*q*theta_in_west(i)*IsunSWabs(i);
L_reflected_west_east_4 =0.03294*mat.albedo()*qqqq*theta_in_west(i)*IsunSWabs(i)+...
0.0517*mat.albedo()*qqq*theta_in_west(i)*IsunSWabs(i)+...
0.0983*mat.albedo()*qq*theta_in_east(i)*IsunSWabs(i)+...
0.237*q*theta_in_west(i)*IsunSWabs(i);
L_ground_to_4_east = (0.281*SBconst*t0_floor(1)^4+0.0139*SBconst*t0_floor(2)^4+...
0.0859*SBconst*t0_floor(4)^4)*asphalt_ground.emissivity();
L_ground_to_3_east = (0.1227*SBconst*t0_floor(1)^4+0.0103*SBconst*t0_floor(2)^4+ ...
0.0911*SBconst*t0_floor(4)^4)*asphalt_ground.emissivity();
L_ground_to_2_east = (0.109*SBconst*t0_floor(1)^4 +0.00956*SBconst*t0_floor(2)^4 +...
0.086*SBconst*t0_floor(4)^4)*asphalt_ground.emissivity();
L_ground_to_1_east = (0.0896*SBconst*t0_floor(1)^4 + 0.00798*SBconst*t0_floor(2)^4+...
0.0758*SBconst*t0_floor(4)^4)*asphalt_ground.emissivity();
L_ground_to_4_west = (0.281*SBconst*t0_floor(4)^4+...
0.0139*SBconst*t0_floor(2)^4+...
0.0859*SBconst*t0_floor(1)^4)*asphalt_ground.emissivity();
L_ground_to_3_west = (0.1227*SBconst*t0_floor(4)^4+...
0.0103*SBconst*t0_floor(2)^4+...
0.0911*SBconst*t0_floor(1)^4)*asphalt_ground.emissivity();
L_ground_to_2_west = (0.109*SBconst*t0_floor(4)^4 +...
0.00956*SBconst*t0_floor(2)^4 +...
0.086*SBconst*t0_floor(1)^4)*asphalt_ground.emissivity();
L_ground_to_1_west = (0.0896*SBconst*t0_floor(4)^4 +...
0.00798*SBconst*t0_floor(2)^4+...
0.0758*SBconst*t0_floor(1)^4)*asphalt_ground.emissivity();
L_east_1 = (L_ground_to_1_east+ L_west_east_2_1 +L_west_east_3_1 +...
L_west_east_4_1 + L_west_east_1_1) +0.458*IskyLW(i); %(1/0.3463)*
L_east_2 = (L_ground_to_2_east+ L_west_east_3_2+L_west_east_4_2+ ...
L_west_east_1_2+L_west_east_2_2) +0.373*IskyLW(i); %(1/0.4599)*
L_east_3 = (L_ground_to_3_east+L_west_east_4_3 + L_west_east_3_3+...
L_west_east_1_3+L_west_east_2_3)+0.29*IskyLW(i); %(1/0.6109)*
L_east_4 = (L_ground_to_4_west+L_west_east_4_4 + L_west_east_1_4 +...
L_west_east_2_4 +L_west_east_3_4) +0.199*IskyLW(i); %(1/0.8116)*
L_west_1 = (L_ground_to_1_west+ L_east_west_2_1 +L_east_west_3_1 +...
L_east_west_4_1+L_east_west_1_1) +0.458*IskyLW(i); %%(1/0.3463)*
L_west_2 = (L_ground_to_2_west+L_east_west_3_2 +L_east_west_4_2 +...
L_east_west_1_2+ L_east_west_2_2)+0.373*IskyLW(i);%(1/0.4599)*
L_west_3 = (L_ground_to_3_west+L_east_west_4_3+L_east_west_3_3+...
L_east_west_1_3+L_east_west_2_3) + 0.29*IskyLW(i); %(1/0.6109)*
L_west_4 = (L_ground_to_4_west+L_east_west_4_4+L_east_west_1_4+...
L_east_west_2_4+L_east_west_3_4) +0.199*IskyLW(i); %(1/0.8116)*
L_ground_wall_1 = ((mat.emissivity()*SBconst*(0.25*t0_west_1_4^4 +...
0.066*t0_west_1_3^4 +0.0274*t0_west_1_2^4 +0.0234*t0_west_1_1^4 +...
0.326*t0_east_4^4+0.0318*t0_east_3^4 +...
0.0111*t0_east_2^4 +0.00879*t0_east_1^4 ) + 0.2635*IskyLW(i)));
L_ground_wall_2 = ( mat.emissivity()*SBconst*( 0.0144*(t0_west_1_1^4+...
t0_east_1^4) + 0.0242*(t0_west_1_2^4+t0_east_2^4) +...
0.0556*(t0_west_1_3^4 + t0_east_3^4) +0.32*(t0_west_1_4^4+ t0_east_4^4))+ ...
+0.2886*IskyLW(i));
L_ground_wall_3 = (mat.emissivity()*SBconst*( 0.0144*(t0_west_1_1^4+...
t0_east_1^4) + 0.0242*(t0_west_1_2^4+t0_east_2^4) + 0.0556*(t0_west_1_3^4 +...
t0_east_3^4) +0.32*(t0_west_1_4^4+ t0_east_4^4)) + ...
+0.2886*IskyLW(i));
L_ground_wall_4 = (mat.emissivity()*SBconst*(0.25*t0_east_4^4 +...
0.066*t0_east_3^4 +0.0274*t0_east_2^4 +0.0234*t0_east_1^4 +...
0.326*t0_west_1_4^4 +0.0318*t0_west_1_3^4 +0.0111*t0_west_1_2^4 +...
0.00879*t0_west_1_1^4) + 0.2635*IskyLW(i));
%%%%%%%%%%%%%%%%%%%% Container 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
params_out_east = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
IskyLWabs(i)+...
0.1372*mat.emissivity()*SBconst*t_diff_wall_wall+...
0*theta_in_east(i)*IsunSWabs(i)+...
L_reflected_east+...
0.45*asphalt_ground.emissivity()*SBconst*t_diff_east+...
(mat.conductivity()/mat.thickness()*t0_in_east)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_east_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
L_reflected_west_east_1+...
mat.emissivity()*L_east_1+...
(mat.conductivity()/mat.thickness()*t0_in_east_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east_1)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_east_2 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
L_reflected_west_east_2+...
mat.emissivity()*L_east_2+...
(mat.conductivity()/mat.thickness()*t0_in_east_2)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east_2 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east_2)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_east_3 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_east_3+...
L_reflected_west_east_3+...
(mat.conductivity()/mat.thickness()*t0_in_east_3)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east_3 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east_3)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_east_4 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
L_reflected_west_east_4+...
mat.emissivity()*L_east_4+...
(mat.conductivity()/mat.thickness()*t0_in_east_4)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_east_4 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_east_4)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_north = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_north(i)*IsunSWabs(i)+...
L_reflected_north+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_ground_1^4+...
(mat.conductivity()/mat.thickness()*t0_in_north)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_north = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_north)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_west(i)*IsunSWabs(i)+...
L_reflected_west+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_floor_left(4)^4+...
(mat.conductivity()/mat.thickness()*t0_in_west) + 5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_south = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_south(i)*IsunSWabs(i)+...
L_reflected_south+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_ground_1^4+...
(mat.conductivity()/mat.thickness()*t0_in_south)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_south = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_south)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_top = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
IskySWabs(i)+...
IskyLWabs(i)+...
cos(theta_Z(i)*pi/180)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_top)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_top = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_top)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_bot = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_in_bot)+5.6*t0_air,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_in_bot = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_bot_1),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_ground = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW(i)+...
asphalt_ground.emissivity()*IskyLW(i)+...
0*cos(theta_Z(i)*pi/180)*(1-asphalt_ground.albedo())*IsunSW(i)+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_in_ground)+5.6*Tair(i),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_ground),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_air = [C_air*Massdensity_air*Volume, ...
(5.6*are(mat_east_west_1)*t0_in_east_1 + 5.6*are(mat_east_west_2)*t0_in_east_2+...
5.6*are(mat_east_west_3)*t0_in_east_3+...
5.6*are(mat_east_west_4)*t0_in_east_4+...
are(mat_north_south)*5.6*t0_in_north +...
5.6*are(mat_east_west)*t0_in_west +are(mat_north_south)*5.6*t0_in_south+...
5.6*are(mat_top_bot)*t0_in_top +5.6*are(mat_top_bot)*t0_bot),...
(5.6)*(are(mat_east_west)+ are(mat_east_west_2)+...
are(mat_east_west_1)+are(mat_east_west_3)+...
are(mat_east_west_4)+ 2*are(mat_top_bot) + 2*are(mat_north_south)),...
0];
%%%%%%%%%%%%%%%%% Second Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
S_params_out_east_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
0*theta_in_east(i)*IsunSWabs(i)+...
0.45*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_floor_right(1)^4+...
0*L_reflected_east+...
(mat.conductivity()/mat.thickness()*S_t0_in_east_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
S_params_in_east_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*S_t0_east_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_west_1+...
qqqq*theta_in_west(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_west_1_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1_2 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_west_2+...
qqq*theta_in_west(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_west_1_2)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1_2 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1_2)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1_3 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_west_3+...
qq*theta_in_west(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_west_1_3)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1_3 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1_3)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1_4 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
mat.emissivity()*L_west_4+...
q*theta_in_west(i)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_west_1_4)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1_4 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1_4)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_north_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_north(i)*IsunSWabs(i)+...
L_reflected_north+...
0.5*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_ground_1^4+...
(mat.conductivity()/mat.thickness()*t0_in_north_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_north_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_north_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_west_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
IskyLWabs(i)+...
theta_in_west(i)*IsunSWabs(i)+...
L_reflected_west+...
0.45*asphalt_ground.emissivity()*SBconst*t_diff_west+...
(mat.conductivity()/mat.thickness()*t0_in_west_1) + 5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_west_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_west_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_south_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
R_d(i)*IskySWabs(i)+...
LW*IskyLWabs(i)+...
theta_in_south(i)*IsunSWabs(i)+...
L_reflected_south+...
0.5*mat.emissivity()*asphalt_ground.emissivity()*SBconst*t0_ground_1^4+...
(mat.conductivity()/mat.thickness()*t0_in_south_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_south_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_south_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_out_top_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
IskySWabs(i)+...
IskyLWabs(i)+...
cos(theta_Z(i)*pi/180)*IsunSWabs(i)+...
(mat.conductivity()/mat.thickness()*t0_in_top_1)+5.6*Tair(i),...
(mat.conductivity()/mat.thickness()+5.6),...
mat.emissivity()*SBconst];
params_in_top_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_top)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW(i)+...
asphalt_ground.emissivity()*IskyLW(i)+...
cos(theta_Z(i)*pi/180)*(1-asphalt_ground.albedo())*IsunSW(i)+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_in_ground_1)+5.6*Tair(i),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_ground_1),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_bot_1 = [0.5*mat.heatcapacity()*mat.massdensity()*mat.thickness(), ...
(mat.conductivity()/mat.thickness()*t0_in_bot_1)+5.6*t0_air_1,...
(mat.conductivity()/mat.thickness()+5.6),...
0];
params_in_bot_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*t0_bot_1),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_air_1 = [C_air*Massdensity_air*Volume, ...
(5.6*are(mat_east_west_1)*t0_in_west_1_1 + 5.6*are(mat_east_west_2)*t0_in_west_1_2+...
5.6*are(mat_east_west_3)*t0_in_west_1_3+...
5.6*are(mat_east_west_4)*t0_in_west_1_4+...
are(mat_north_south)*5.6*t0_in_north_1 +...
5.6*are(mat_east_west)*S_t0_in_east_1 +are(mat_north_south)*5.6*t0_in_south_1+...
5.6*are(mat_top_bot)*t0_in_top_1 +5.6*are(mat_top_bot)*t0_bot_1),...
(5.6)*(are(mat_east_west) + 2*are(mat_top_bot) + 2*are(mat_north_south)+...
are(mat_east_west_3)+are(mat_east_west_2)+are(mat_east_west_4)+are(mat_east_west_1)),...
0];
%%%%%%%%%%%%%%%%%% Container 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[t0_east,t0_in_east] = runge(params_out_east, params_in_east, t0_east, t0_in_east, h);
[t0_east_1,t0_in_east_1] = runge(params_out_east_1, params_in_east_1, t0_east_1, t0_in_east_1, h);
[t0_east_2,t0_in_east_2] = runge(params_out_east_2, params_in_east_2, t0_east_2, t0_in_east_2, h);
[t0_east_3,t0_in_east_3] = runge(params_out_east_3, params_in_east_3, t0_east_3, t0_in_east_3, h);
[t0_east_4,t0_in_east_4] = runge(params_out_east_4, params_in_east_4, t0_east_4, t0_in_east_4, h);
[t0_west,t0_in_west] = runge(params_out_west, params_in_west, t0_west, t0_in_west, h);
[t0_north,t0_in_north] = runge(params_out_north, params_in_north, t0_north, t0_in_north, h);
[t0_south,t0_in_south] = runge(params_out_south, params_in_south, t0_south, t0_in_south, h);
[t0_top,t0_in_top] = runge(params_out_top, params_in_top, t0_top, t0_in_top, h);
[t0_ground,t0_in_ground] = runge(params_ground, params_in_ground, t0_ground, t0_in_ground, h);
[t0_bot, t0_in_bot] = runge(params_bot, params_in_bot,t0_bot, t0_in_bot, h);
t0_air = forward_air(params_air,t0_air,1);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%% Second Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[S_t0_east_1,S_t0_in_east_1] = runge(S_params_out_east_1, S_params_in_east_1, S_t0_east_1, S_t0_in_east_1, h);
[t0_west_1_1,t0_in_west_1_1] = runge(params_out_west_1_1, params_in_west_1_1, t0_west_1_1, t0_in_west_1_1, h);
[t0_west_1_2,t0_in_west_1_2] = runge(params_out_west_1_2, params_in_west_1_2, t0_west_1_2, t0_in_west_1_2, h);
[t0_west_1_3,t0_in_west_1_3] = runge(params_out_west_1_3, params_in_west_1_3, t0_west_1_3, t0_in_west_1_3, h);
[t0_west_1_4,t0_in_west_1_4] = runge(params_out_west_1_4, params_in_west_1_4, t0_west_1_4, t0_in_west_1_4, h);
[t0_west_1,t0_in_west_1] = runge(params_out_west_1, params_in_west_1, t0_west_1, t0_in_west_1, h);
[t0_north_1,t0_in_north_1] = runge(params_out_north_1, params_in_north_1, t0_north_1, t0_in_north_1, h);
[t0_south_1,t0_in_south_1] = runge(params_out_south_1, params_in_south_1, t0_south_1, t0_in_south_1, h);
[t0_top_1,t0_in_top_1] = runge(params_out_top_1, params_in_top_1, t0_top_1, t0_in_top_1, h);
[t0_ground_1,t0_in_ground_1] = runge(params_ground_1, params_in_ground_1, t0_ground_1, t0_in_ground_1, h);
[t0_bot_1, t0_in_bot_1] = runge(params_bot_1, params_in_bot_1,t0_bot_1, t0_in_bot_1, h);
t0_air_1 = forward_air(params_air,t0_air_1,h);
%%%%%%%%%%%%%%%% Ground %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[t0_floor(1), t0_floor_in(1),t0_floor(2), t0_floor_in(2),t0_floor(3),...
t0_floor_in(3),t0_floor(4), t0_floor_in(4)]=ground_floor_2(t0_floor(1),...
t0_floor_in(1), t0_floor(2),t0_floor_in(2),...
t0_floor(3),t0_floor_in(3), t0_floor(4),t0_floor_in(4),h,IskySW(i),IskyLW(i),...
theta_Z(i),IsunSW(i),Tair(i),L_ground_wall_1,L_ground_wall_2,L_ground_wall_4,i);
[t0_floor_right(1), t0_floor_right_in(1),t0_floor_right(2), t0_floor_right_in(2),...
t0_floor_right(3), t0_floor_right_in(3),t0_floor_right(4), t0_floor_right_in(4)]=...
ground_floor_right(t0_floor_right(1),t0_floor_right_in(1), t0_floor_right(2),...
t0_floor_right_in(2),...
t0_floor_right(3),t0_floor_right_in(3), t0_floor_right(4),t0_floor_right_in(4),...
h,IskySW(i),IskyLW(i),theta_Z(i),IsunSW(i),Tair(i),i);
[t0_floor_left(1), t0_floor_left_in(1),t0_floor_left(2), t0_floor_left_in(2),t0_floor_left(3), t0_floor_left_in(3),t0_floor_left(4), t0_floor_left_in(4)]=ground_floor_left(t0_floor_left(1),t0_floor_left_in(1), t0_floor_left(2),t0_floor_left_in(2),...
t0_floor_left(3),t0_floor_left_in(3), t0_floor_left(4),t0_floor_left_in(4),h,IskySW(i),IskyLW(i),theta_Z(i),IsunSW(i),Tair(i),i);
end
end
%%%%%%%%% Container 1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ttt_out_east(i,1) = t0_east; ttt_in_east(i,1) = t0_in_east;
ttt_out_east_1(i,1) = t0_east_1; ttt_in_east_1(i,1) = t0_in_east_1;
ttt_out_east_2(i,1) = t0_east_2; ttt_in_east_2(i,1) = t0_in_east_2;
ttt_out_east_3(i,1) = t0_east_3; ttt_in_east_3(i,1) = t0_in_east_3;
ttt_out_east_4(i,1) = t0_east_4; ttt_in_east_4(i,1) = t0_in_east_4;
ttt_out_north(i,1) = t0_north; ttt_in_north(i,1) = t0_in_north;
ttt_out_west(i,1) = t0_west; ttt_in_west(i,1) = t0_in_west;
ttt_out_south(i,1) = t0_south; ttt_in_south(i,1) = t0_in_south;
ttt_out_top(i,1) = t0_top; ttt_in_top(i,1) = t0_in_top;
ttt_bot(i,1) = t0_bot;ttt_in_bot(i,1) = t0_in_bot;
ttt_ground(i,1) = t0_ground;
ttt_air(i,1) = t0_air;
%%%%%%%%% Container 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
S_ttt_out_east_1(i,1) = S_t0_east_1; S_ttt_in_east_1(i,1) = S_t0_in_east_1;
ttt_out_west_1_1(i,1) = t0_west_1_1; ttt_in_west_1_1(i,1) = t0_in_west_1_1;
ttt_out_west_1_2(i,1) = t0_west_1_2; ttt_in_west_1_2(i,1) = t0_in_west_1_2;
ttt_out_west_1_3(i,1) = t0_west_1_3; ttt_in_west_1_3(i,1) = t0_in_west_1_3;
ttt_out_west_1_4(i,1) = t0_west_1_4; ttt_in_west_1_4(i,1) = t0_in_west_1_4;
surftemp_out_floor(i+1,1) = t0_floor(1);
surftemp_out_floor(i+1,2) = t0_floor(2);
surftemp_out_floor(i+1,3) = t0_floor(3);
surftemp_out_floor(i+1,4) = t0_floor(4);
surftemp_out_floor_right(i+1,1) = t0_floor_right(1);
surftemp_out_floor_right(i+1,2) = t0_floor_right(2);
surftemp_out_floor_right(i+1,3) = t0_floor_right(3);
surftemp_out_floor_right(i+1,4) = t0_floor_right(4);
surftemp_out_floor_left(i+1,1) = t0_floor_left(1);
surftemp_out_floor_left(i+1,2) = t0_floor_left(2);
surftemp_out_floor_left(i+1,3) = t0_floor_left(3);
surftemp_out_floor_left(i+1,4) = t0_floor_left(4);
ttt_out_north_1(i,1) = t0_north_1; ttt_in_north_1(i,1) = t0_in_north_1;
ttt_out_west_1(i,1) = t0_west_1; ttt_in_west_1(i,1) = t0_in_west_1;
ttt_out_south_1(i,1) = t0_south_1; ttt_in_south_1(i,1) = t0_in_south_1;
ttt_out_top_1(i,1) = t0_top_1; ttt_in_top_1(i,1) = t0_in_top_1;
ttt_bot_1(i,1) = t0_bot_1; ttt_in_bot_1(i,1) = t0_in_bot_1;
ttt_ground_1(i,1) = t0_ground_1;
ttt_air_1(i,1) = t0_air_1;
w = w-(15*pi/180);
end
abc = 1:1:23;
%%%%%%%%%%%%%%%%%%% Container One %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
surftemp_out_east(2:23,1) = ttt_out_east(:,1)-273.15; surftemp_in_east(2:23,1) = ttt_in_east(:,1)-273.15;
surftemp_out_east_1(2:23,1) = ttt_out_east_1(:,1)-273.15; surftemp_in_east_1(2:23,1) = ttt_in_east_1(:,1)-273.15;
surftemp_out_east_2(2:23,1) = ttt_out_east_2(:,1)-273.15; surftemp_in_east_2(2:23,1) = ttt_in_east_2(:,1)-273.15;
surftemp_out_east_3(2:23,1) = ttt_out_east_3(:,1)-273.15; surftemp_in_east_3(2:23,1) = ttt_in_east_3(:,1)-273.15;
surftemp_out_east_4(2:23,1) = ttt_out_east_4(:,1)-273.15; surftemp_in_east_4(2:23,1) = ttt_in_east_4(:,1)-273.15;
surftemp_out_north(2:23,1) = ttt_out_north(:,1)-273.15; surftemp_in_north(2:23,1) = ttt_in_north(:,1)-273.15;
surftemp_out_west(2:23,1) = ttt_out_west(:,1)-273.15; surftemp_in_west(2:23,1) = ttt_in_west(:,1)-273.15;
surftemp_out_south(2:23,1) = ttt_out_south(:,1)-273.15; surftemp_in_south(2:23,1) = ttt_in_south(:,1)-273.15;
surftemp_out_top(2:23,1) = ttt_out_top(:,1)-273.15; surftemp_in_top(2:23,1) = ttt_in_top(:,1)-273.15;
surftemp_out_bot(2:23,1) = ttt_bot(:,1)-273.15; surftemp_in_bot(2:23,1) = ttt_in_bot(:,1)-273.15;
surftemp_ground(2:23,1) = ttt_ground(:,1)-273.15;
T_air(2:23,1) = ttt_air(:,1);
T_air = T_air - 273.15;
%%%%%%%%%%%%%%%%%%% Container two %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
S_surftemp_out_east_1(2:23,1) = S_ttt_out_east_1(:,1)-273.15; S_surftemp_in_east_1(2:23,1) = S_ttt_in_east_1(:,1)-273.15;
surftemp_out_west_1_1(2:23,1) = ttt_out_west_1_1(:,1)-273.15; surftemp_in_west_1_1(2:23,1) = ttt_in_west_1_1(:,1)-273.15;
surftemp_out_west_1_2(2:23,1) = ttt_out_west_1_2(:,1)-273.15; surftemp_in_west_1_2(2:23,1) = ttt_in_west_1_2(:,1)-273.15;
surftemp_out_west_1_3(2:23,1) = ttt_out_west_1_3(:,1)-273.15; surftemp_in_west_1_3(2:23,1) = ttt_in_west_1_3(:,1)-273.15;
surftemp_out_west_1_4(2:23,1) = ttt_out_west_1_4(:,1)-273.15; surftemp_in_west_1_4(2:23,1) = ttt_in_west_1_4(:,1)-273.15;
surftemp_out_north_1(2:23,1) = ttt_out_north_1(:,1)-273.15; surftemp_in_north_1(2:23,1) = ttt_in_north_1(:,1)-273.15;
surftemp_out_west_1(2:23,1) = ttt_out_west_1(:,1)-273.15; surftemp_in_west_1(2:23,1) = ttt_in_west_1(:,1)-273.15;
surftemp_out_south_1(2:23,1) = ttt_out_south_1(:,1)-273.15; surftemp_in_south_1(2:23,1) = ttt_in_south_1(:,1)-273.15;
surftemp_out_top_1(2:23,1) = ttt_out_top_1(:,1)-273.15; surftemp_in_top_1(2:23,1) = ttt_in_top_1(:,1)-273.15;
surftemp_out_bot_1(2:23,1) = ttt_bot_1(:,1)-273.15; surftemp_in_bot_1(2:23,1) = ttt_in_bot_1(:,1)-273.15;
surftemp_ground_1(2:23,1) = ttt_ground_1(:,1)-273.15;
T_air_1(2:23,1) = ttt_air_1(:,1);
T_air_1 = T_air_1 - 273.15;
surftemp_out_floor(2:end,1) = surftemp_out_floor(2:end,1) - 273.15;
surftemp_out_floor(2:end,2) = surftemp_out_floor(2:end,2)- 273.15;
surftemp_out_floor(2:end,3) = surftemp_out_floor(2:end,3)- 273.15;
surftemp_out_floor(2:end,4) = surftemp_out_floor(2:end,4)- 273.15;
surftemp_out_floor_right(2:end,1) = surftemp_out_floor_right(2:end,1) - 273.15;
surftemp_out_floor_right(2:end,2) = surftemp_out_floor_right(2:end,2)- 273.15;
surftemp_out_floor_right(2:end,3) = surftemp_out_floor_right(2:end,3)- 273.15;
surftemp_out_floor_right(2:end,4) = surftemp_out_floor_right(2:end,4)- 273.15;
surftemp_out_floor_left(2:end,1) = surftemp_out_floor_left(2:end,1) - 273.15;
surftemp_out_floor_left(2:end,2) = surftemp_out_floor_left(2:end,2)- 273.15;
surftemp_out_floor_left(2:end,3) = surftemp_out_floor_left(2:end,3)- 273.15;
surftemp_out_floor_left(2:end,4) = surftemp_out_floor_left(2:end,4)- 273.15;
%%%%%%%%%%%% First Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
east(:,1) = surftemp_out_east; east(:,2) = surftemp_in_east; east(:,3) = 1;
east_con(:,1) = surftemp_out_east; east_con(:,2) = surftemp_out_east_1; east_con(:,3) = surftemp_out_east_2;
east_con(:,4) = surftemp_out_east_3; east_con(:,5) = surftemp_out_east_4;
north(:,1) = surftemp_out_north ;north(:,2) = surftemp_in_north; north(:,3) =2;
west(:,1) = surftemp_out_west; west(:,2) = surftemp_in_west; west(:,3) =3;
south(:,1) = surftemp_out_south; south(:,2) = surftemp_out_south; south(:,3) =4;
top(:,1) = surftemp_out_top; top(:,2) = surftemp_in_top; top(:,3) = 5;
bot(:,1) = surftemp_out_bot; bot(:,2) = surftemp_in_bot; bot(:,3) = 6;
ground(:,1) = surftemp_ground ;
Tair = Tair - 273.15;
one = container(east_con, west,top,bot,north,south, T_air);
%%%%%%%%%%%% Second Container %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
east_1(:,1) = S_surftemp_out_east_1; east_1(:,2) = S_surftemp_in_east_1; east_1(:,3) = 1;
north_1(:,1) = surftemp_out_north_1 ;north_1(:,2) = surftemp_in_north_1; north_1(:,3) =2;
west_1(:,1) = surftemp_out_west_1; west_1(:,2) = surftemp_in_west_1; west_1(:,3) =3;
west_1_con(:,1) = surftemp_out_west_1; west_1_con(:,2) = surftemp_out_west_1_1; west_1_con(:,3) = surftemp_out_west_1_2;
west_1_con(:,4) = surftemp_out_west_1_3;west_1_con(:,5) = surftemp_out_west_1_4;
south_1(:,1) = surftemp_out_south_1; south(:,2) = surftemp_out_south_1; south_1(:,3) =4;
top_1(:,1) = surftemp_out_top; top_1(:,2) = surftemp_in_top_1; top_1(:,3) = 5;
bot_1(:,1) = surftemp_out_bot; bot_1(:,2) = surftemp_in_bot_1; bot_1(:,3) = 6;
ground_1(:,1) = surftemp_ground_1 ;
two = container(east_1, west_1_con,top_1,bot_1,north_1,south_1,T_air_1);
%%%% container_1 - in top south north west east(bot, bot mid, top mid, top)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%% 3D Model Plotting %%%%%%%%
% for i =6:length(Tair)-1
% j =i-5;
% container_1 = one.get_container_one(i)+273.15 ;
% container_2 = two.get_container_two(i)+273.15;
% % plot33(surftemp_ground(i,1), Tair(i), container_1, container_2,surftemp_out_floor(i,:),surftemp_out_floor_left(i,:),...
% % surftemp_out_floor_right(i,:),150,i);
% MRT(i,1) = mean_radiant(IsunSW(i), IskySW(i), IskyLW(i), container_1, container_2,surftemp_out_floor(i,:),theta_Z(i), theta_in_east(i),theta_in_south(i),theta_in_north(i), theta_in_west(i),mat,asphalt_ground,R_d(i),j);
% txt = [’Time: ’ num2str(i) ];
% % title(txt)
% % pause(0.05)
%
% % fig = gcf;
% % filename = sprintf(’%d.png’,i);
% % saveas(fig, filename);
% % % G(i) = getframe(gcf)
% end
% ccd = 6:1:22;
% plot(ccd,MRT(6:22,1)-273.15,’linestyle’,’-’,’color’,’red’,’linewidth’,2)
% title("Mean Radiant Temperature")
% xlim([6 22]);
% ylim([10 70]);
% set(gca,’XTick’,[6:2:22]);
% set(gca,’YTick’,[10:10:70]);
% set(gca,’TickLength’,[0.02 0.02],’xminortick’,’off’,’yminortick’,’off’);
% set(gca,’FontSize’,20,’LineWidth’,3);
% ylabel(’Temperature(^oC)’);
% xlabel(’Hour’);
% video = VideoWriter(’myvid2’,’MPEG-4’);
% video.FrameRate = 2;
% open(video)
% writeVideo(video,G);
% close(video)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%% Container Surface Plotting %%%%%%%%%%%%%%%%%%
% figure(1)
% plotwall( IsunSW,T_air, east)
% figure(2)
% plotwall( IsunSW,T_air, west)
% figure(3)
% plotwall( IsunSW,T_air, top)
% figure(4)
% plotwall( IsunSW,T_air, bot)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function out = mean_radiant(direct_sun, diffused_sky, long_sky, cont_1,...
cont_2, ground,theta_Z, theta_east,theta_in_south,theta_in_north,...
theta_west,mat,mat_2,R_d,i)
if i >=6 & i <=8
aa = 1;
else
aa = 0;
end
if i>=5 &i<=7
bb= 1;
else
bb=0;
end
if i>=7 & i<=9
cc= 1;
else
cc=0;
end
SBconst = 5.67e-8;
top_radiance = (1-0.3)*(0.0355*sin(theta_Z*pi/180) +...
2.33*cos(theta_Z*pi/180)*0.123)*(aa*direct_sun) + 0.28*(diffused_sky+long_sky);
sides = (0.26*mat.emissivity()*SBconst*((cont_1(6))^4+...
cont_2(6)^4))+...
0.319*(mat_2.emissivity()*SBconst*(ground(1)^4 + ground(4)^4)) +...
0*(0.0945*mat.emissivity()*SBconst*((cont_1(6))^4+ cont_2(6)^4)) ;
front_back = 0.1388*(2*mat_2.emissivity()*SBconst*(ground(2)^4 )) ;
total = top_radiance + sides + front_back;
out = (total/(SBconst*0.90))^(1/4);
end
function [pan_1,pan_1_in, pan_2,pan_2_in, pan_3,pan_3_in, pan_4,pan_4_in] = ...
ground_floor_left(panel_1,panel_1_in, panel_2,panel_2_in,...
panel_3, panel_3_in, panel_4, panel_4_in,h,IskySW,IskyLW,theta_Z,...
IsunSW,Tair,steps)
asphalt_ground = sur(0.93,0.75, 0.16,920,0.1, 2360, [0 10], [0 10], [0 0],...
25+273.15);
asphalt_ground_1 = sur(0.93,0.75, 0.16,920,0.5, 2360, [0 10],...
[0 10], [0 0], 25+273.15);
SBconst= 5.67e-8;
if steps ==10
params_ground_1 = ...
[0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*...
asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+...
5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
1*asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground = [0.5*asphalt_ground.heatcapacity()*asphalt_ground_1.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground, params_in_ground, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_1, params_in_ground_1, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_2, params_in_ground_2, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_3, params_in_ground_3, panel_4, panel_4_in, h);
elseif steps ==11
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground = [0.5*asphalt_ground_1.heatcapacity()*asphalt_ground_1.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground.thickness()),...
0];
params_in_ground_2 = [0.5*asphalt_ground_1.heatcapacity()*asphalt_ground_1.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_3 = [0.5*asphalt_ground_1.heatcapacity()*asphalt_ground_1.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground, params_in_ground, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_1, params_in_ground_4, panel_4, panel_4_in, h);
elseif steps <10
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_3 = [0.5*asphalt_ground_1.heatcapacity()*asphalt_ground_1.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground_1.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground_1.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_4 = [0.5*asphalt_ground_1.heatcapacity()*asphalt_ground_1.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground_1.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground_1.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
else
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground = [0.5*asphalt_ground_1.heatcapacity()*...
asphalt_ground_1.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground_1.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*...
panel_4_in)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground,...
panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2,...
panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3,...
panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4,...
panel_4, panel_4_in, h);
end
end
function [pan_1,pan_1_in, pan_2,pan_2_in, pan_3,pan_3_in, pan_4,pan_4_in] = ground_floor_right(panel_1,panel_1_in, panel_2,panel_2_in,...
panel_3, panel_3_in, panel_4, panel_4_in,h,IskySW,IskyLW,theta_Z,IsunSW,Tair,steps)
asphalt_ground = sur(0.93,0.75, 0.16,920,0.1, 2360, [0 10], [0 10], [0 0], 25+273.15);
asphalt_ground_1 = sur(0.93,0.75, 0.16,920,0.5, 2360, [0 10], [0 10], [0 0], 25+273.15);
SBconst= 5.67e-8;
if steps ==13
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_2, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_3, params_in_ground_4, panel_4, panel_4_in, h);
elseif steps ==14
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground_1.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
elseif steps >14
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
else
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
(1-asphalt_ground.albedo())*IskySW+...
asphalt_ground.emissivity()*IskyLW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
end
end
function [pan_1,pan_1_in, pan_2,pan_2_in, pan_3,pan_3_in, pan_4,pan_4_in] = ground_floor_1(panel_1,panel_1_in, panel_2,panel_2_in,...
panel_3, panel_3_in, panel_4, panel_4_in,h,IskySW,IskyLW,theta_Z,IsunSW,Tair,L_ground_wall_1,L_ground_wall_2,L_ground_wall_4,steps)
asphalt_ground = sur(0.93,0.75, 0.16,920,0.1, 2360, [0 10], [0 10], [0 0], 25+273.15);
asphalt_ground_1 = sur(0.93,0.75, 0.16,920,1, 2360, [0 10], [0 10], [0 0], 25+273.15);
SBconst= 5.67e-8;
sv1 = 0.2635;
sv2 =0.2885;
longw_1 = asphalt_ground.emissivity()*L_ground_wall_1;
longw_2 = asphalt_ground.emissivity()*L_ground_wall_2;
longw_3 = asphalt_ground.emissivity()*L_ground_wall_4;
if steps ==10
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_1+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_3+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
elseif steps ==11
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_1+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+....
longw_2+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_3+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
elseif steps ==12
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_1+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_3+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
else
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_1+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+...
5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_3+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*...
asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, ...
panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2,...
panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3,...
panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, ...
panel_4, panel_4_in, h);
end
end
function [pan_1,pan_1_in, pan_2,pan_2_in, pan_3,pan_3_in, pan_4,pan_4_in] =...
ground_floor_2(panel_1,panel_1_in, panel_2,panel_2_in,...
panel_3, panel_3_in, panel_4, panel_4_in,h,IskySW,IskyLW,theta_Z,...
IsunSW,Tair,L_ground_wall_1,L_ground_wall_2,L_ground_wall_4,steps)
asphalt_ground = sur(0.93,0.75, 0.16,920,0.1, 2360, [0 10], [0 10],...
[0 0], 25+273.15);
asphalt_ground_1 = sur(0.93,0.75, 0.16,920,1, 2360, [0 10], [0 10],...
[0 0], 25+273.15);
SBconst= 5.67e-8;
sv1 = 0.2635;
sv2 =0.2885;
longw_1 = asphalt_ground.emissivity()*L_ground_wall_1;
longw_2 = asphalt_ground.emissivity()*L_ground_wall_2;
longw_3 = asphalt_ground.emissivity()*L_ground_wall_4;
if steps ==13
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_1+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
longw_2+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
longw_3+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
elseif steps ==14
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_1+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
longw_2+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
longw_3+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
else
params_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
longw_1+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_1 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_1),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_2 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_2),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv2*(1-asphalt_ground.albedo())*IskySW+...
longw_2+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_3 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_3),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
params_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground.thickness(), ...
sv1*(1-asphalt_ground.albedo())*IskySW+...
longw_3+...
0*cos(theta_Z*pi/180)*(1-asphalt_ground.albedo())*IsunSW+...
(asphalt_ground.conductivity()/asphalt_ground.thickness()*298)+5.6*Tair,...
(asphalt_ground.conductivity()/asphalt_ground.thickness()+5.6),...
asphalt_ground.emissivity()*SBconst];
params_in_ground_4 = [0.5*asphalt_ground.heatcapacity()*asphalt_ground.massdensity()*asphalt_ground_1.thickness(), ...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()*panel_4),...
(asphalt_ground.conductivity()/asphalt_ground_1.thickness()),...
0];
[pan_1, pan_1_in] = runge(params_ground_1, params_in_ground_1, panel_1, panel_1_in, h);
[pan_2, pan_2_in] = runge(params_ground_2, params_in_ground_2, panel_2, panel_2_in, h);
[pan_3, pan_3_in] = runge(params_ground_3, params_in_ground_3, panel_3, panel_3_in, h);
[pan_4, pan_4_in] = runge(params_ground_4, params_in_ground_4, panel_4, panel_4_in, h);
end
end
function plotwall( IsunSW,T_air, varargin )
x = 6:1:22;
yyaxis left
plot(x,T_air(:,1),’-’,’LineWidth’,3,’color’,’b’);
hold on
for i =1:length(varargin)
abc = varargin{i} ;
plot(x,varargin{i}(:,1),’-’,’LineWidth’,3,’color’,’k’);
hold on;
plot(x,varargin{i}(:,2) ,’-’,’LineWidth’,3,’color’,’r’);
hold on;
end
face = varargin{1};
ylabel(’Temperature / ^o C’)
xlim([6 22]);
ylim([20 60]);
yyaxis right
x = 6:1:22;
plot(x,IsunSW, ’linestyle’,’--’,’linewidth’,3.5,’color’,’r’)
hold on
ylabel(’Radiation/(Wm^{-2})’)
ylim([0 800]);
%
set(gca,’FontSize’,30,’LineWidth’,2.5);
set(gca,’TickLength’,[0.0275 0.0275],’xminortick’,’off’,’yminortick’,’on’);
set(gca,’FontSize’,30,’LineWidth’,2.5);
box on;
%
% print(gcf,’-dpng’, ’-r300’,[’Fig2.png’]);
%
xlabel(’Hour’);
if face(1,3) == 1
Location = ’East Wall ’;
elseif face(1,3)== 2
Location = ’North Wall ’;
elseif face(1,3) == 3
Location = ’West Wall ’;
elseif face(1,3) == 4
Location = ’South Wall ’;
elseif face(1,3) == 5
Location = "Top Wall";
else
Location = "Bottom Wall";
end
title([Location])
box on;
aaa = legend(’Air temperature’, ’Outer Wall’, ’Inner Wall’, "I_{sun}");
set(aaa, ’FontSize’ , 10);
legend(’boxoff’);
end
function f = fun(theta_Z, direct, diff, table)
eps = (((direct+diff)/diff) + 5.535E-6 * theta_Z^3)/(1+5.535E-6 * theta_Z^3);
delta = (1/cos(theta_Z*pi/180))*diff/1367;
if (eps>=1) && (eps<=1.065)
f11 = table(1,1);f12 = table(1,2);f13 = table(1,3);f21 = table(1,4);f22 = table(1,5);f23 = table(1,6);
elseif (eps>=1.065) && (eps<=1.23)
f11 = table(2,1);f12 = table(2,2);f13 = table(2,3);f21 = table(2,4);f22 = table(2,5);f23 = table(2,6);
elseif (eps>1.23) && (eps<=1.5)
f11 = table(3,1);f12 = table(3,2);f13 = table(3,3);f21 = table(3,4);f22 = table(3,5);f23 = table(3,6);
elseif (eps>1.5) && (eps<=1.95)
f11 = table(4,1);f12 = table(4,2);f13 = table(4,3);f21 = table(4,4);f22 = table(4,5);f23 = table(4,6);
elseif (eps>1.95) && (eps<=2.8)
f11 = table(5,1);f12 = table(5,2);f13 = table(5,3);f21 = table(5,4);f22 = table(5,5);f23 = table(5,6);
elseif (eps>2.8) && (eps<=4.5)
f11 = table(6,1);f12 = table(6,2);f13 = table(6,3);f21 = table(6,4);f22 = table(6,5);f23 = table(6,6);
elseif (eps>4.5) && (eps<=6.2)
f11 = table(7,1);f12 = table(7,2);f13 = table(7,3);f21 = table(7,4);f22 = table(7,5);f23 = table(7,6);
else
f11 = table(8,1);f12 = table(8,2);f13 = table(8,3);f21 = table(8,4);f22 = table(8,5);f23 = table(1,6);
end
F = f11 + delta*f12 + (pi*theta_Z/180)*f13;
F1 = max(0,F);
FF = f21 + delta*f22 + (pi*theta_Z/180)*f23;
F2 = max(0,FF);
f = 0.5*(1-F1) + F2;
end
% View factor model
function F = vv1(W,L,H)
N=1024; M = 100;
for j=1:M
%f= @(z,y1,x,y2) (1/pi)*(x+3).*(y2-x*tan(20*pi/180))./((3+x).^2+z.^2+(y2-x*tan(20*pi/180)).^2).^2; %Defines the function
f= @(z,y1,x,y2) (1/pi)*x.*z./(x.^2+z.^2+(y2-y1).^2).^2;
for i=1:N fi(i)=f(rand*H, rand*L, rand*W, rand*L);end; %Computes its values
F12(j) =(H*L/N)*sum(fi); %View factor estimation
end
F = sum(F12)/M;
end
function F = vv2(x,y1,y2,z1,z2)
N=3000; M = 100;
for j=1:M
%%%%%% Rectangle Configuration %%%%%%%%%%%%%%
a = 0;%z1/2;
f= @(z1,z2,y1,y2) (1/pi)*((x.^2 )./(x.^2+(y1-(y2)).^2 + ((z1)-(z2-a)).^2).^2);
for i=1:N fi(i)=f(rand*z1, rand*z2, rand*y1, rand*y2);end; %Computes its values
F12(j) =(y2*z2/N)*sum(fi); %View factor estimation
end
F = sum(F12)/M;
end
function [out,in] = runge(params1, params2, t0_out, t0_in, h)
out = (h/params1(1))*(params1(2) - params1(3)*t0_out - params1(4)*t0_out^4) + t0_out;
in = (h/params2(1))*(params2(2) - params2(3)*t0_in) + t0_in;
end
function out = forward_air(params, t0_air,h)
out = (h/params(1))*(params(2)-params(3)*t0_air) + t0_air;
end
function plot33(t_ground, t_air, container_1, container_2 ,ground_mid,ground_left, ground_right, b,i)
%%%% container_1 - in top south north west east(bot, bot mid, top mid, top)
x = linspace(1,b,b);
y = linspace(1,100,100);
c= round(b/5);
[X Y Z] = meshgrid(x,x,y);
a(b,b,100) = 0;
% a(:,:,:) = t_air;
a(:,:,1:5) = t_ground; %ground
a(:,c +33:c +43,1:5) = ground_mid(1); %ground mid
a(:,c +44:c +48,1:5) = ground_mid(2); %ground mid
a(:,c +49:c +58,1:5) = ground_mid(4); %ground mid
a(:,124:133,1:5) = ground_right(1); %ground right
a(:,134:144,1:5) = ground_right(2); %ground right
a(:,145:end,1:5) = ground_right(4); %ground right
a(:,1:11,1:5) = ground_left(1); %ground left
a(:,12:23,1:5) = ground_left(2); %ground left
a(:,24:c -1,1:5) = ground_left(4); %ground left
a(3:b-3,c:c +31,5:40) = container_1(1); %volume
a(3:b-3,c:c +31,40+1:40+2) = container_1(2); %Top
a(3:b-3,c-2:c +33,1:5) = container_1(10); %Bot
a(1:2,c:c +31,5:40) = container_1(3); %South
a(end-1:end,c:c +31,5:40) = container_1(4); %North
a(3:b-3,c-2:c-1,5:40) = container_1(5); %West
a(3:b-3,c +32:c +33,5:21) = container_1(6); %East
a(3:b-3,c +32:c +33,22:30) = container_1(7); %East
a(3:b-3,c +32:c +33,31:37) = container_1(8); %East
a(3:b-3,c +32:c +33,38:40) = container_1(9); %East
%%%%%Container 2
%%%% container_2 - in top south north east west(bot, bot mid, top mid, top)
a(3:b-3,3*c:3*c +31,5:40) = container_2(1); %volume
a(3:b-3,3*c:3*c +31,40+1:40+2) = container_2(2); %Top
a(3:b-3,3*c-2:3*c +33,1:5) = container_2(10); %Bot
a(1:2,3*c:3*c +31,5:40) = container_2(3); %South
a(end-1:end,3*c:3*c +31,5:40) = container_2(4); %North
a(3:b-3,3*c +32:3*c +33,5:40) = container_2(5); %East
a(3:b-3,3*c-2:3*c -1,5:21) = container_2(6); %west
a(3:b-3,3*c-2:3*c -1,22:30) = container_2(7); %west
a(3:b-3,3*c-2:3*c -1,31:37) = container_2(8); %west
a(3:b-3,3*c-2:3*c -1,38:40) = container_2(9); %west
d = pcolor3(X,Y,Z,a);
colorbar
caxis([20 45])
view([0,0])
end