[Radiance-general] 2.5-phase method and gendaymtx

Axel Jacobs jacobs.axel at gmail.com
Thu Feb 6 09:45:31 PST 2014


Arrrg!!! School boy mistake.  Thank you for spotting this, David.

here is a snippet from the new results file:

month    day    time    in_dir    in_diff    dir    diff    dir+diff    comb
1 1 0.500 0 0    0    0    0    0
1 1 1.500 0 0    0    0    0    0
1 1 2.500 0 0    0    0    0    0
1 1 3.500 0 0    0    0    0    0
1 1 4.500 0 0    0    0    0    0
1 1 5.500 0 0    0    0    0    0
1 1 6.500 0 0    0    0    0    0
1 1 7.500 0 0    0    0    0    0
1 1 8.500 0 19    0.2066706    18.90211    19.1087806    18.90211
1 1 9.500 7 51    1.282733    50.74105    52.023783    51.63825
1 1 10.500 17 88    6.208754    87.54448    93.753234    91.38906
1 1 11.500 22 109    7.98244    108.4224    116.40484    114.1101
1 1 12.500 22 110    8.004499    109.4393    117.443799    114.9813
1 1 13.500 17 91    6.269868    90.53477    96.804638    94.47253
1 1 14.500 4 56    1.028895    55.71151    56.740405    56.35708
1 1 15.500 0 6    0.07238894    5.968799    6.04118794    5.968799
1 1 16.500 0 0    0    0    0    0

There still is a small residual direct irrdiance from the suns when
dir in the wea file is zero, but I guess I can live with that.
Also, diff+dir is always slightly higher than comb, but overall a
fairly good match.

Thanks again

Axel

On 6 February 2014 17:19, David Geisler-Moroder <david.moroder at gmail.com> wrote:
> I did  not go through all the lines, but don't you want to use the -I swith
> in rcontrib!?
> (I hope I didn't miss anything in the lines I did not properly work
> through...)
>
> Cheers,
> David
>
>
> 2014-02-06 Axel Jacobs <jacobs.axel at gmail.com>:
>>
>> (Couldn't come up with a sillier subject line for this)
>>
>> Dear list,
>>
>> I am trying to use rcontrib and dctimestep in my only-just-invented
>> 2.5-phase method.  The idea is simple: Instead of relying on the patch
>> brightness to represent both sun and sky, I would like to only use the
>> patches for the sky, and rely on 'real' suns for an annual simulation.
>>  This is somewhat related to Andy's 5-phase method, but but I'm still
>> at the stage where I have simple windows and no BSDF or Klems stuff.
>> What I am hoping to find out is whether the inclusion of 'proper' suns
>> makes a difference compared to the old skool rcontrib approach where
>> the sky patches represent the sun + sky.
>>
>> I've tarred up the script and all the input files.  They are available
>> here:
>> http://www.jaloxa.eu/pickup/cbdm4_diffdir.tgz
>>
>> The script is a bit lengthy:
>>
>> ---------------------8<-----------------------
>> #!/bin/bash
>>
>> PROJECT="dds4"
>> OPT="ab7rtc"
>> SKYOCT="octrees/${PROJECT}_sky.oct"
>> SUNOCT="octrees/${PROJECT}_sun.oct"
>> REINHART=1
>> WEA="weather/gatwick.wea"
>> NPROC=5
>>
>> # Sensor results with header
>> stmp="tmp"
>> if [ ! -d $stmp ]; then
>>     mkdir $stmp
>> else
>>     rm -f $stmp/*
>> fi
>>
>> wbase=$(basename $WEA .wea)
>> fsmx="$stmp/${wbase}_m$REINHART.fsmx"     # annual diffuse sky matrix
>> dsmx="$stmp/${wbase}_m$REINHART.dsmx"     # annual direct sun matrix
>> csmx="$stmp/${wbase}_m$REINHART.csmx"     # annual combined matrix
>> suns="$stmp/suns_m${REINHART}.rad"        # annual suns
>>
>> # Build the diffuse sky matrix for Tregenza subdivision
>> # -O1 (total solar irradiance), so we can compare against WEA file
>> echo "  Building annual diffuse sky matrix $fsmx..."
>> gendaymtx -s -m $REINHART -c 1 1 1 -O1 $WEA > $fsmx
>>
>> # Build the direct suns
>> echo "  Building annual suns $suns..."
>> echo "void light solar 0 0 3 1e6 1e6 1e6" > $suns
>> npatch=$( echo 1 |rcalc -e MF:2 -f reinhart.cal -e '$1=Nrbins' )
>> cnt $npatch |rcalc -e MF:$REINHART -f reinsrc.cal -e Rbin=recno \
>>         -o 'solar source sun 0 0 4 ${ Dx } ${ Dy } ${ Dz } 0.533' >> $suns
>> gendaymtx -5 -d -m $REINHART -c 1 1 1 -O1 $WEA > $dsmx
>>
>> # Build direct+diffuse (old skool)
>> echo "  Building annual combined sun+sky matrix $csmx..."
>> gendaymtx -m $REINHART -c 1 1 1 -O1 $WEA > $csmx
>>
>> echo "    Compiling octrees..."
>> oconv skies/sky_white.rad > $SKYOCT
>> oconv $suns > $SUNOCT
>>
>> echo "Grid: roof.pts"
>> grid=roof.pts
>> base=$(basename roof .pts)
>>
>> skdc="$stmp/${PROJECT}_${OPT}_$base.skdc"     # diffuse sky DC
>> sndc="$stmp/${PROJECT}_${OPT}_$base.sndc"     # direct sun DC
>>
>> # Run the DDS calculations: Daylight Matrix with header
>> echo "  Calculating sky DC $skdc..."
>> cat $grid \
>>         |rcontrib -n $NPROC @$OPT.opt \
>>         -e MF:$REINHART -f reinhart.cal -bn Nrbins -b rbin \
>>         -o $skdc -m sky_glow $SKYOCT
>>
>> echo "  Calculating sun DC $sndc..."
>> cat $grid \
>>         |rcontrib -n $NPROC @$OPT.opt \
>>         -e MF:$REINHART -f reinhart.cal -bn Nrbins -b rbin \
>>         -o $sndc -m solar $SUNOCT
>>
>>
>> fimx="$stmp/${PROJECT}_${OPT}_$base.fimx"     # annual diffuse irradiance
>> matrix
>> dimx="$stmp/${PROJECT}_${OPT}_$base.dimx"     # annual direct irradiance
>> matrix
>> cimx="$stmp/${PROJECT}_${OPT}_$base.cimx"     # annual combined
>> irradiance matrix
>>
>> # Produce annual (grey) sensor irradiance matrix
>> echo "  Calculating annual direct irradiance $dimx..."
>> dctimestep -n 8760 $sndc $dsmx |tr '\t' '\n' |sed -e '/^\s*$/d' \
>>         |rcalc -e '$1=$1' > $dimx
>>
>> echo "  Calculating annual diffuse irradiance $fimx..."
>> dctimestep -n 8760 $skdc $fsmx |tr '\t' '\n' |sed -e '/^\s*$/d' \
>>         |rcalc -e '$1=$1' > $fimx
>>
>> echo "  Calculating annual combined irradiance $cimx..."
>> dctimestep -n 8760 $skdc $csmx |tr '\t' '\n' |sed -e '/^\s*$/d' \
>>         |rcalc -e '$1=$1' > $cimx
>>
>> imx2="$stmp/${PROJECT}_${OPT}_$base.imx2"   # annual sky+sun irradiance
>> matrix
>> irr="$stmp/${PROJECT}_${OPT}_$base.irr"    # annual grey irradiance
>>
>> # Add direct and diffuse
>> rlam $fimx $dimx |rcalc -e '$1=$1+$2' > $imx2
>>
>> echo -e "month\tday\ttime\tin_dir\tin_diff\tdir\tdiff\tdir+diff\tcomb" >
>> $irr
>> tail -n +7 $WEA |rlam - $dimx $fimx $imx2 $cimx >> $irr
>>
>> #EOF
>> ---------------------8<-----------------------
>>
>> There is absolutely no geometry at all--just the sky/suns. The final
>> resuls are stored under ./tmp/ in the file with the *.irr extension
>>
>> here are the first few lines:
>>
>> month    day    time    in_dir    in_diff    dir    diff    dir+diff
>> comb
>> 1 1 0.500 0 0    0    0    0    0
>> 1 1 1.500 0 0    0    0    0    0
>> 1 1 2.500 0 0    0    0    0    0
>> 1 1 3.500 0 0    0    0    0    0
>> 1 1 4.500 0 0    0    0    0    0
>> 1 1 5.500 0 0    0    0    0    0
>> 1 1 6.500 0 0    0    0    0    0
>> 1 1 7.500 0 0    0    0    0    0
>> 1 1 8.500 0 19    6.01    6.01    12.02    6.01
>> 1 1 9.500 7 51    16.6    16.6    33.2    16.6
>> 1 1 10.500 17 88    28.2    28.2    56.4    28.2
>> 1 1 11.500 22 109    34.8    34.8    69.6    34.8
>> 1 1 12.500 22 110    35.2    35.2    70.4    35.2
>> 1 1 13.500 17 91    29.2    29.2    58.4    29.2
>> 1 1 14.500 4 56    18.2    18.2    36.4    18.2
>> 1 1 15.500 0 6    2.14    2.14    4.28    2.14
>> 1 1 16.500 0 0    0    0    0    0
>> ...
>>
>> What I am measuring is the horizontal unobstructed irradiance.
>>
>> The first five columns are essentially the wea file:
>> month    day    time    in_dir    in_diff
>> to which the following have been laminated:
>> dir:  gendaymtx -5 -d; no sky, just 145 suns
>> diff:  gendaymtx -s; no suns, Tregenza patches, only diffuse contribution
>> dir+diff: dir + diff
>> comb: gendaymtx; no suns, Tregenza patches, diffuse and direct
>> contribution.  This is old skool for comparison.
>>
>> I simply cannot make any sense of the results,  so I'm wondering
>> whether I am misunderstanding the concept behind the -5 option to
>> gendaymtx.
>>
>> Take, for instance, this row:
>> 1 1 8.500 0 19    6.01    6.01    12.02    6.01
>> There is no direct irradiance recorded in the wea file.  Yet, the
>> gendaymtx/rcontrib calculation produces 6.01 W/m2 (very low-angle
>> sun).
>> Also, I don't get why dir = diff = comb ???
>>
>> I am probably using gendaymtx and rcontrib improperly, but have been
>> staring at this for quite a few hours now, without being able to work
>> out where I am making the mistakes.
>>
>> Would anybody be able to offer assistance with this?
>>
>> I have also tried doing the same think with genskyvec.  It doesn't
>> complain when I give it the -5 option, but the results are simularly
>> confusing.
>>
>> Many thanks for your help
>>
>> Best regards
>>
>> Axel
>>
>> _______________________________________________
>> Radiance-general mailing list
>> Radiance-general at radiance-online.org
>> http://www.radiance-online.org/mailman/listinfo/radiance-general
>
>
>
>
> --
> Dipl.-Ing. Dr. David Geisler-Moroder
> Hofwaldweg 14/20
> 6020 Innsbruck
> Austria
>
> _______________________________________________
> Radiance-general mailing list
> Radiance-general at radiance-online.org
> http://www.radiance-online.org/mailman/listinfo/radiance-general
>



More information about the Radiance-general mailing list