[TRNSYS-users] TR: File handling

marcello.caciolo at aximaseitha-gdfsuez.com marcello.caciolo at aximaseitha-gdfsuez.com
Thu Oct 6 01:17:09 PDT 2011


Dear David and Hermann,

As David says, I run into trouble when opening the file. I send you enclosed two tests in order to better explain my problem.

I created a test component (the proforma is in the corresponding directory) whit two dlls, one with the command "open" and the other without it (directories dll 1 and dll2, the corresponding codes are in the code 1 and code 2 directories).

If you copy the first dll and run the project "test temp" (in the TRNSYS project directory), the result file contains two lines at the end: one indicates the error code which FORTRAN generates when I try to open the file (code 30, which indicates, according to the Compaq visual FORTRAN manual, that is impossible to open the file), the second line gives the values of the three parameters read. This values correspond to the one specified in the file "fort.30", in the project directory, and not the ones contained in the "temp.in" file, which is specified for the component. However, the "filename" string returned by getLUfileName is correct, as you can see if you debug the code!!!

In the case of the second dll, I do not use the open command but the result is exactly the same: my component reads its parameters in the file "fort.30".

I really do not understand what I miss...could you help me please?

Best,

Marcello


De : trnsys-users-bounces at cae.wisc.edu [mailto:trnsys-users-bounces at cae.wisc.edu] De la part de David BRADLEY
Envoyé : mercredi 5 octobre 2011 19:20
À : Hermann Schranzhofer
Cc : trnsys-users at cae.wisc.edu
Objet : Re: [TRNSYS-users] TR: File handling

Marcello and Hermann,
  If you use the method below, you can sometimes run into trouble because TRNSYS already opens all of the files that are ASSIGNed to logical unit numbers. You may be able to just skip the line:

Open(unit=Fid,file=Filename)

or, you can use the access function:

closeFileIVF(Fid)

then reopen it with

Open(unit=Fid,file=Filename)

Best,
 David



On 10/5/2011 08:10, Hermann Schranzhofer wrote:



Dear Marcello,



It should work something like this:



Fid = getParameterValue(1)

Filename = getLUFilename(Fid)

Open(unit=Fid,file=Filename)

Read(Fid,*) value

Close(Fid)



Best regards,

Hermann.



_______________________________________________________________



DI Dr. mont. Hermann Schranzhofer

Institut fuer Waermetechnik / Institute of Thermal Engineering

TU Graz / Graz University of Technology

Inffeldgasse 25 / B, A-8010 Graz



Tel.: +43 316 873 7314

mobil: +43 664 60 873 7314

Fax : +43 316 873 7305

http://www.iwt.tugraz.at/

_______________________________________________________________





-----Ursprüngliche Nachricht-----

Von: trnsys-users-bounces at cae.wisc.edu<mailto:trnsys-users-bounces at cae.wisc.edu> [mailto:trnsys-users-bounces at cae.wisc.edu] Im Auftrag von marcello.caciolo at aximaseitha-gdfsuez.com<mailto:marcello.caciolo at aximaseitha-gdfsuez.com>

Gesendet: Mittwoch, 05. Oktober 2011 13:46

An: trnsys-users at cae.wisc.edu<mailto:trnsys-users at cae.wisc.edu>

Betreff: [TRNSYS-users] TR: File handling



Dear Hermann,



Thank you for your answer. However, the getLUfileName function gives me the name of the file as a string (which is, by the way, the correct one). But how can I use it to access this file?



Is there a form of the "read" instruction taking as parameter the file name instead of the unit number? If yes, could you give me an example of its use?



Thank you,



Marcello



-----Message d'origine-----

De : trnsys-users-bounces at cae.wisc.edu<mailto:trnsys-users-bounces at cae.wisc.edu> [mailto:trnsys-users-bounces at cae.wisc.edu] De la part de Hermann Schranzhofer Envoyé : mercredi 5 octobre 2011 13:38 À : trnsys-users at cae.wisc.edu<mailto:trnsys-users at cae.wisc.edu> Objet : Re: [TRNSYS-users] File handling



Dear Marcello,



I think you have to use the getLUfileName function. See Programmers Guide page 7-46.



Best regards,

Hermann Schranzhofer.





_______________________________________________________________



DI Dr. mont. Hermann Schranzhofer

Institut fuer Waermetechnik / Institute of Thermal Engineering TU Graz / Graz University of Technology Inffeldgasse 25 / B, A-8010 Graz



Tel.: +43 316 873 7314

mobil: +43 664 60 873 7314

Fax : +43 316 873 7305

http://www.iwt.tugraz.at/

_______________________________________________________________











________________________________



Von: trnsys-users-bounces at cae.wisc.edu<mailto:trnsys-users-bounces at cae.wisc.edu> [mailto:trnsys-users-bounces at cae.wisc.edu] Im Auftrag von marcello.caciolo at aximaseitha-gdfsuez.com<mailto:marcello.caciolo at aximaseitha-gdfsuez.com>

Gesendet: Mittwoch, 05. Oktober 2011 11:19

An: trnsys-users at cae.wisc.edu<mailto:trnsys-users at cae.wisc.edu>

Betreff: [TRNSYS-users] File handling







Dear TRNSYS users,







I would like to write a component for TRNSYS 17 which reads its parameters from an external file. In the proforma of my type, I specified a parameter "Logical unit", linked to the name of the file in the "File" tab.







In the FORTRAN code, at the iteration zero, my type simply use the read instruction as it follows:







unit_fichier_sortie = jfix(getParameterValue(4) + 0.1)







! Lecture de la version du fichier



read(unit_fichier_descriptif,*, iostat = erreur_lecture) par_1







However, instead of reading in the correct file, this instruction reads in a file called "fort.30" (where 30 is the logical unit number assigned by TRNSYS).







If I write my parameters in "fort.30", the type reads its parameters correctly. However, I would really like that it reads in the file I specify in the proforma ("exemple.in")!







If I debug the code, the function getLUfileName(unit_fichier_descriptif) returns the correct name of the file (example.in).







Has someone experienced the same kind of problem? For information, I use Compaq Visual Fortran.







Thank you for your help!







Marcello CACIOLO

Responsable Outils et Méthodes d'Analyse Energétique ___________________________________________________



logo AximaSeitha



Cellule Efficacité Energétique



Direction Commerciale

46 Boulevard de la Prairie au Duc BP 40119 44000 Nantes Cédex 2 Tel. 02 40 41 06 57





mail: marcello.caciolo at aximaseitha-gdfsuez.com<mailto:marcello.caciolo at aximaseitha-gdfsuez.com>





www.aximaseitha-gdfsuez.com<http://www.aximaseitha-gdfsuez.com>







P Pensez à l'environnement avant d'imprimer ce message













GDF SUEZ Mail Disclaimer: http://www.gdfsuez.com/disclaimer/disclaimer-fr.html









GDF SUEZ Mail Disclaimer: http://www.gdfsuez.com/disclaimer/disclaimer-fr.html







_______________________________________________

TRNSYS-users mailing list

TRNSYS-users at cae.wisc.edu<mailto:TRNSYS-users at cae.wisc.edu>

https://mailman.cae.wisc.edu/listinfo/trnsys-users




_______________________________________________

TRNSYS-users mailing list

TRNSYS-users at cae.wisc.edu<mailto: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<mailto:d.bradley at tess-inc.com>



http://www.tess-inc.com

http://www.trnsys.com



GDF SUEZ Mail Disclaimer: http://www.gdfsuez.com/disclaimer/disclaimer-fr.html


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.onebuilding.org/pipermail/trnsys-users-onebuilding.org/attachments/20111006/d4afe60e/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: file handling.zip
Type: application/x-zip-compressed
Size: 70653 bytes
Desc: file handling.zip
URL: <http://lists.onebuilding.org/pipermail/trnsys-users-onebuilding.org/attachments/20111006/d4afe60e/attachment-0001.bin>


More information about the TRNSYS-users mailing list