[TRNSYS-users] [TRNSYS_users] GenOpt for cost's optimization
Amr Alaaeldin Elesawy
amr.alaaeldin at polimi.it
Wed Aug 6 06:40:17 PDT 2014
Hi Elise,
I'm beginning to work with GenOpt as well, so I'm not sure if I will be
able to help but I'll try...
I believe in order to vary the window size, you should vary as well the
wall size that contains it...
*For example (Just to explain the concept):*
If you have a wall area of 10m^2 and you want to have a window that is 2m^2
and then 4m^2 and then 6m^2... In this case, the wall area should be 10-2 =
8m^2 and consequently 6m^2 and 4m^2, right?
So in this case, you need to define a function that relates both window and
wall area ratios... Let's call the wall variable %wall%.. In this case
would be:
%wall% = 10 - %window%
*Below you can see the code I used:*
*In the .bui file:*
*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
* Z o n e GF_01 / A i r n o d e GF_01
*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ZONE GF_01
AIRNODE GF_01
WALL =WE_M : SURF= 1 : AREA= 12 : EXTERNAL : ORI=NORTH :
FSKY=0.5
WALL =WE_M : SURF= 3 : AREA= 24 : EXTERNAL : ORI=WEST :
FSKY=0.5
WALL =WE_M : SURF= 4 : AREA= *%aWall%* : EXTERNAL : ORI=SOUTH
: FSKY=0.5
WINDOW=WIN : SURF= 5 : AREA= * %aWin%* : EXTERNAL : ORI=SOUTH
: FSKY=0.5 : ESHADE=INPUT 1*SHADE
WALL =WI_L : SURF= 6 : AREA= 24 : ADJACENT=GF_02 : FRONT
WALL =SE_L : SURF= 7 : AREA= 32 : BOUNDARY=INPUT
1*TEMP_GROUND
WALL =SI_L : SURF=145 : AREA= 32 : ADJACENT=1F_01 : FRONT
REGIME
GAIN = PERS_ISO01 : SCALE= SCHEDULE 2*OCC_BEDR
GAIN = LIGHT01_01 : SCALE= 1
VENTILATION = VENT0.5
CAPACITANCE = 115.2 : VOLUME= 96 : TINITIAL= 20 : PHINITIAL=
50 : WCAPR= 1
*In the optimization commands .txt file I wrote*
Vary {
Parameter {
Name = *aWin*;
Ini = 1;
Values = " 7.2, 5.4 , 3 ";
Type = SET;
}
Function {
Name = *aWall*;
Function = *"subtract( 12, %aWin% )*";
}
}
I hope this helped... Let me know if it worked well for you!
All the best,
Amr Alaaeldin
On Fri, Aug 1, 2014 at 6:50 PM, Elise Bernard <e.bernard54 at gmail.com> wrote:
> Hi,
>
> I'm working on the cost's optimization of a building with one termical
> zone using GenOpt with Trnsys17. This cost's optimization has to take into
> account the energetic consumption of the building and the construction's
> cost. I would like to use a logical function (if condition) to define a
> cost in function of the choice of the window.
> I tried to define my function in the ObjectiveFunctionLocation using this
> java code
> Name1= Cost; Function1="if (%window% == 2006) {1 }else {2}";
> But it seems that it doesn't work this way. Could you explain me how to
> handle my problem ?
> Thank you
>
> Elise
>
> _______________________________________________
> TRNSYS-users mailing list
> TRNSYS-users at lists.onebuilding.org
> http://lists.onebuilding.org/listinfo.cgi/trnsys-users-onebuilding.org
>
>
--
--
Amr Alaaeldin Elesawy
*PhD Student | Building Engineering*
*Department of Architecture, Built Environment and Construction Engineering
(A.B.C.)*
Politecnico di Milano, Italy
+39 327 056 0018
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.onebuilding.org/pipermail/trnsys-users-onebuilding.org/attachments/20140806/6e13f54c/attachment-0011.htm>
More information about the TRNSYS-users
mailing list