[TRNSYS-users] A question about using cycles of variables

David BRADLEY d.bradley at tess-inc.com
Tue Feb 8 08:14:27 PST 2011


Mehdi,
  That is a good question and there are a number of ways that you can 
solve it. The most "correct" would probably be to define your arrays as 
"allocatable" and then create them and fill them in once your simulation 
has started. However, that is a bit too formal sometimes so what I have 
often done is to set a maximum allowable number of inputs in the Fortran 
code and size your arrays based on that maximum. Then you can read from 
the Trnsys input file how many inputs there actually are and check to 
make sure that it doesn't exceed the maximum. For example:

       PARAMETER (NIMAX=21)
       DIMENSION XIN(NIMAX),YCHECK(NIMAX)
...
       DATA YCHECK /'CF1','CF1','TE1','TE1','TE1','HT1','HT1','HT1','HT1'
      1            ,'HT1','IR1','IR1','IR1','IR1','DG1','DG1','DG1','DG1'
      1            ,'MF1','PW1','HT1'/

...

         !CALL THE TYPE CHECK SUBROUTINE TO COMPARE WHAT THIS COMPONENT 
REQUIRES TO WHAT IS SUPPLIED
        IF (INFO(4).EQ.28) THEN
         NP=28 ; NI=20
       ELSE
         NP=34 ; NI=21
       ENDIF

       !CALL TYPECK TO CHECK FOR CORRECT INPUT FILE SPECIFICATIONS
       CALL TYPECK(1,INFO,NI,NP,ND)

         !CALL THE RCHECK SUBROUTINE TO SET THE CORRECT INPUT AND OUTPUT 
TYPES FOR THIS COMPONENT
         CALL RCHECK(INFO,YCHECK,OCHECK)

I took the code above from the Type37 subroutine (in Trnsys16) which can 
have either 28 or 34 parameters and either 20 or 21 inputs.
Best,
  David



On 2/7/2011 17:15, Mehdi Shahrestani wrote:
>
> Dear everybody
>
> I have a question about using cycles of variables (Vol2 of manual page 
> 26).
>
> Is it possible to create cycle for inputs instead of parameters?
>
> I am writing a new component for different arrangements. This new 
> component would be well organised if the cycle can be created for inputs.
>
> If you are saying yes; how can I manage the "DATA YCHECK" in FORTRAN 
> script? Is it possible that I put "IF" in "DATA YCHECK" line?
>
> Many thanks for your time spending on it.
>
> Regards
>
> Mehdi
>
>
> _______________________________________________
> TRNSYS-users mailing list
> TRNSYS-users at cae.wisc.edu
> https://mailman.cae.wisc.edu/listinfo/trnsys-users

-- 
***************************
David BRADLEY
Principal
Thermal Energy Systems Specialists, LLC
22 North Carroll Street - suite 370
Madison, WI  53703 USA

P:+1.608.274.2577
F:+1.608.278.1475
d.bradley at tess-inc.com

http://www.tess-inc.com
http://www.trnsys.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.onebuilding.org/pipermail/trnsys-users-onebuilding.org/attachments/20110208/5d55869e/attachment-0001.htm>


More information about the TRNSYS-users mailing list