U-value and Skin List Label for Composite Walls

Home Forums Problems and solutions in GDL Documentation elements, text handling U-value and Skin List Label for Composite Walls

Viewing 7 reply threads
  • Author
    Posts
    • #3770
      Balázs Fürtön
      Participant

      Hi,

      So I’ve started to play with obtaining material-level information from composite walls.
      Although the Energy Evaluation module is capable to calculate the U-value of a given wall, it is not a parameter accessible to scheduling or to show in labels.

      It would look something like the picture in the attachment.

      My problem is, that I cannot get the proper values stored in the building material physical properties (as you can see, the thermal conductivity is properly assigned, but after that the density gets the same value…).

      	for i=1 to n
      	
      	! building material name
      		_wallSkins[i][1] = WALL_SKINS_BMAT_NAMES[i][1]
      		text2 0,-i*0.1, _wallSkins[i][1]
      	
      	! building material width in cm
      		_wallSkins[i][2] = WALL_SKINS_PARAMS[i][2]
      		text2 dist_thickness,-i*0.1, STR ("%m", _wallSkins[i][2]*100) + " cm"
      
      	! thermal conductivity
      		thermCond = REQUEST{2} ("Building_Material_info", _wallSkins[i][1], "gs_bmat_physical_properties", thermalConductivity)
      		_wallSkins[i][3] = thermalConductivity
      		text2 dist_thermCond,-i*0.1, STR ("%m", _wallSkins[i][3]) + " W/mK"
      
      	! density
      		matDensity = REQUEST{2} ("Building_Material_info", _wallSkins[i][1], "gs_bmat_physical_properties", density)
      		_wallSkins[i][4] = density
      		text2 dist_density,-i*0.1, STR ("%m", _wallSkins[i][4]) + " kg/m³"
      	
      	! heat capacity
      		heatCap = REQUEST{2} ("Building_Material_info", _wallSkins[i][1], "gs_bmat_physical_properties", heatCapacity)
      		_wallSkins[i][5] = heatCapacity
      		text2 dist_heatCap,-i*0.1, STR ("%m", _wallSkins[i][5]) + " J/kgK"
      
      	! embodied energy
      		embEnergy = REQUEST{2} ("Building_Material_info", _wallSkins[i][1], "gs_bmat_physical_properties", embodiedEnergy)
      		_wallSkins[i][6] = embodiedEnergy
      		text2 dist_embEnergy, -i*0.1, STR ("%m", _wallSkins[i][6]) + " MJ/kg"
      
      !	! embodied carbon
      !		embCarb = REQUEST{2} ("Building_Material_info", _wallSkins[i][1], "gs_bmat_physical_properties", embodiedCarbon)
      !		_wallSkins[i][7] = embodiedCarbon
      !		text2 dist_embCarbon, -i*0.1, STR ("%m", _wallSkins[i][7]) + " kgCO2/kg"
      
      	
      	next i
      

      For some reason I thought, if I store the request in a variable and use that, it would work, but it works when the requested physical property (e.g. thermalConductivity instead thermCond) is used. Which confuses me, that I used the same logic with the density, but no success.:(

      For the U-value calculation itself these values are not that important, but to double check the used composites, I would say it is useful. (Wish: if the U value of the layers would show up in the composite editor, that would be awesome!)

      If the U-value is stored in a label object, is it possible to assign this value back to the wall? Theoretically, there would be a ,,calculated U-value” property, and a ,,required U-value” (already given) property, and a third value, ,,U-value is sufficient” boolean to create graphic overrides.

      Balazs Furton

      Student of architecture @ Budapest University of Technology and Economics

    • #3772
      Balázs Fürtön
      Participant

      Oh, is it just me, that the code block gets messed up and renders unreadable? (macOS, Safari)

      Another thing, that remains blurry: how do I request the bMat description or manufacturer?

      REQUEST Options

      ! description
      matDescription = REQUEST{2} (“Building_Material_info”, _wallSkins[1], “gs_bmat_description”)
      _wallSkins[3] = matDescription

      In my head the requested string is now stored in the array I’m building (_wallSkins), and I should be able to use it in a text2 command. It doesn’t work though.

      Any suggestions?

      Balazs Furton

      Student of architecture @ Budapest University of Technology and Economics

    • #3773
      Barry Kelly
      Participant

      Oh, is it just me, that the code block gets messed up and renders unreadable? (macOS, Safari)

      It is all there if you select over the text in your message.
      I have noticed this in other posts as well.

      Barry.

      Versions 6.5 to 22
      Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
      Dell Precision M6800 - i7 4700MQ @ 2.40GHz, 16GB RAM, AMD FirePro M6100 (2GB), Windows 7 64bit

    • #3774
      Gergely Fehér
      Keymaster

      You need to use a single request with the exact number of variables, to get all the physical properties in one step:
      n = REQUEST{2} (“Building_Material_info”, “Brick”, “gs_bmat_physical_properties”, thermalConductivity, density, heatCapacity, embodiedEnergy, embodiedCarbon)
      You can not split it up to 5 requests…

      Gergely Fehér
      Team Leader, Library Team
      GRAPHISOFT SE

    • #3776
      Balázs Fürtön
      Participant

      Actually it’s not there:

      e.g. these lines from above:
      ! thermal conductivity
      thermCond = REQUEST{2} (“Building_Material_info”, _wallSkins[1], “gs_bmat_physical_properties”, thermalConductivity)
      _wallSkins[3] = thermalConductivity
      text2 dist_thermCond,-i*0.1, STR (“%m”, _wallSkins[3]) + ” W/mK”

      but the _wallSkins array is two dimensional, so instead e.g. _wallSkins[3] it should look like _wallSkins[i][3], etc.

      ! thermal conductivity
      thermCond = REQUEST{2} (“Building_Material_info”, _wallSkins[i][1], “gs_bmat_physical_properties”, thermalConductivity)
      _wallSkins[i][3] = thermalConductivity
      text2 dist_thermCond,-i*0.1, STR (“%m”, _wallSkins[i][3]) + ” W/mK”

      I don’t know why it happened. Can I edit an older post, or is it disabled by design?

      —–

      In the previous post, I asked how to obtain the description or manufacturer: I had a problem with the apostrophes, I didn’t notice, that they were different… The GDL error said ,,missing comma”, but apparently the upper ones count as comma as well.

      The physical properties apart from conductivity are still a mistery though.

      Balazs Furton

      Student of architecture @ Budapest University of Technology and Economics

    • #3777
      Balázs Fürtön
      Participant

      [ i ] doesn’t show up for me in the posts (Chrome, Windows). I thought it’s a problem with the code block in my post, but plain text is wrong as well.

      _wallSkins[ 3 ] should be _wallSkins[ i ][ 3 ], etc.

      You need to use a single request with the exact number of variables, to get all the physical properties in one step:

      Thanks, I will try to get them at once.

      Balazs Furton

      Student of architecture @ Budapest University of Technology and Economics

    • #3778
      Gergely Fehér
      Keymaster

      [ i ] doesn’t show up for me in the posts (Chrome, Windows). I thought it’s a problem with the code block in my post, but plain text is wrong as well.

      It is caused by the BBCode formatting: [ i ] stands for italic, read more here: http://gdl.graphisoft.com/forum-functions

      Gergely Fehér
      Team Leader, Library Team
      GRAPHISOFT SE

    • #3779
      Balázs Fürtön
      Participant

      It is caused by the BBCode formatting: [ i ] stands for italic, read more here: http://gdl.graphisoft.com/forum-functions

      Thank you Gergo, I will keep this in mind. Perhaps I should name my running indeces appropriately…:)

      I rewrote the part to pull all physical properties in a single request, now it works!
      From the GDL Guide it wasn’t clear that you don’t request the specific values by name, rather it’s an array that will always contain all the values in the given order.

      Balazs Furton

      Student of architecture @ Budapest University of Technology and Economics

Viewing 7 reply threads
  • The forum ‘Documentation elements, text handling’ is closed to new topics and replies.