hansukyang / UWG_Matlab

Urban Weather Generator
11 stars 7 forks source link

"FATAL ERROR" Occurs Whenever There are Constructions with Low Albedos and Low Mass #2

Open chriswmackey opened 8 years ago

chriswmackey commented 8 years ago

This may be related to the TCP error posted previously: https://github.com/hansukyang/UWG_Matlab/issues/1

However, this does not cause the process to terminate in the same way that the previous error does and simple results in the program spitting out a lot of "FATAL ERROR" 's in the command prompt. Here is an XML that demonstrates the problem: https://www.dropbox.com/s/w538uie4vp891v9/BackBayStation_Bug.xml?dl=0

And here is a GH definition with the problem: https://www.dropbox.com/s/qauq820aquncamy/UWGWorkflow9_FATAL_ERROR_Bug.gh?dl=0

-Chris

hansukyang commented 8 years ago

Hi Chris,

I probably won't be able to take a look at this in detail until Thursday, but one thing that I noticed and wanted to ask quickly, is the assumption behind the value used for albedo. I had spoken to Les about it and I think ASHRAE definition is a bit confusing. Basically, the 'albedo' definition the model assumes is the solar reflectivity, which is slightly different than solar reflectance index. This is because of the normalization of 0 and 1 against black and white paint for the solar reflectance index, rather than blackbody, but they seemed to be used interchangeably.

Also - some of the albedo values used are quite high for some, and low for others - if they are meant to be internal surfaces (e.g. wall/floor radiation exchange - although I didn't think this is modelled in UWG?) the coefficient for absortivity and emissivity should be same (based on spectral absorptivity/emissivity - they are same for any given frequency). On the other than, for something like asphalt roof (copied the XML file section below) the albedo should be based on solar values, and if the asphalt roof color is black, the value of 0.8 would be quite high.

I don't know how to open grasshopper file - I guess that's what .gh extension is for?

Joseph

  <roof>
    <albedo>0.8</albedo>
    <emissivity>0.9</emissivity>
    <materials name="ASPHALTROOF">
      <names>
        <item>ASPHALTMEMBRANE</item>
        <item>IEAD ROOF INSULATION R-19.72 IP</item>
        <item>METAL DECKING</item>
      </names>
      <thermalConductivity>
        <item>2.0</item>
        <item>0.049</item>
        <item>45.006</item>
      </thermalConductivity>
      <volumetricHeatCapacity>
        <item>1</item>
        <item>221752.0</item>
        <item>3213312.0</item>
      </volumetricHeatCapacity>
      <thickness>[0.10000000000000001, 0.17013720650643099, 0.0015]</

thickness>

0
    <inclination>1.0</inclination>
    <initialTemperature>20.0</initialTemperature>
  </roof>

On 18 October 2015 at 23:51, Chris Mackey notifications@github.com wrote:

This may be related to the TCP error posted previously:

1 https://github.com/hansukyang/UWG_Matlab/issues/1

However, this does not cause the process to terminate in the same way that the previous error does and simple results in the program spitting out a lot of "FATAL ERROR" 's in the command prompt. Here is an XML that demonstrates the problem: https://www.dropbox.com/s/w538uie4vp891v9/BackBayStation_Bug.xml?dl=0

And here is a GH definition with the problem:

https://www.dropbox.com/s/qauq820aquncamy/UWGWorkflow9_FATAL_ERROR_Bug.gh?dl=0

-Chris

— Reply to this email directly or view it on GitHub https://github.com/hansukyang/UWG_Matlab/issues/2.

chriswmackey commented 8 years ago

@hansukyang ,

Thank you for the reply and I am sorry for getting back so late. I am pulling vales for albedo by taking the inverse of the solar absorptance as defined in EnergyPlus constructions. As such, I believe that EnergyPlus is also defining albedo as solar reflectance and not solar reflective index so we should be good here.

As for the asphalt roof, I must have uploaded a file before I corrected the bug I mentioned where I was sending in the solar absorptance Insead of the solar reflectance (it is supposed to be 0.2). I will upload a corrected version soon.

Also, if you don't get around to looking I to it (as I know midterms are haooe ing now) I assigned this issue to myself and I will look into it at some point.

-Chris

chriswmackey commented 8 years ago

@hansukyang , I feel that this issue has mostly been addressed by changing the material properties to make sense. As such, I would be ok with closing out this issue. The only thing that I could imagine might be useful is, if we know the lower limit of thermal capacity at which point the UWG would complain, I can give the user a warning if they input a thermal capacity that is below that number (or make the same mistake that I did with being off by a factor of 1000). Do you have any idea what this lower limit of thermal capacity might be or how low a thermal capacity might be before it is considered unreasonable? I can use the heat capacity of air as this lower limit unless you can think of anything that has a smaller heat capacity. -Chris

hansukyang commented 8 years ago

I spent some time into this and I think I will need to come up with some estimate because there are cases that make my runs unstable. This does require digging a more deeply into the math than I was hoping to, but should be doable. Let's leave it open for now. In any case, it will likely be a function of layer thermal capacity (i.e. if the thermal capacity is reasonable but the layer is super thin, we may have the same issue) and the time step.

Joseph

On 23 November 2015 at 11:07, Chris Mackey notifications@github.com wrote:

@hansukyang https://github.com/hansukyang , I feel that this issue has mostly been addressed by changing the material properties to make sense. As such, I would be ok with closing out this issue. The only thing that I could imagine might be useful is, if we know the lower limit of thermal capacity at which point the UWG would complain, I can give the user a warning if they input a thermal capacity that is below that number (or make the same mistake that I did with being off by a factor of 1000). Do you have any idea what this lower limit of thermal capacity might be or how low a thermal capacity might be before it is considered unreasonable? I can use the heat capacity of air as this lower limit unless you can think of anything that has a smaller heat capacity. -Chris

— Reply to this email directly or view it on GitHub https://github.com/hansukyang/UWG_Matlab/issues/2#issuecomment-158981317 .