<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Tiziano,<br>
      Unfortunately, I do not know the answer to your question. However,
    when compiling a Type in an external DLL, you need to provide the
    compiler with a definition of all the external functions that you
    will be using. In your case, the TRNSYS kernel function
    getSimulationStartTime() needs to be defined somewhere. With the CVF
    compiler, it was necessary to add the file TRNDll.lib to the project
    when compiling as that library file contained the definition of all
    the TRNDLL kernel functions that Types could use. In the IVF
    compiler, there are compiler settings that allow you to specify
    where the compiler should go looking for "module files" such as
    TrnsysFunctions.mod. These also contain definitions of the external
    procedures that your Type will need.<br>
    Kind regards,<br>
     david<br>
     <br>
    <br>
    On 4/23/2012 03:40, Tiziano Terlizzese wrote:
    <blockquote
cite="mid:D82E5FC04B1F0548BDEAA105A2ABE6E71200D3F5@E10-MBX1-CS.personale.dir.unibo.it"
      type="cite">
      <pre wrap="">Dear all,

I'm trying to create a new type, a water tank, using g95 as compiler. Running my script into g95 (the script is in attachment) the only error I get now is  "undefined reference to `trnsysfunctions_MP_getsimulationstarttime'”. 
Any suggestion? 
Thanks,

Tiziano 

Università di Bologna
Dipartimento di Ingegneria Energetica Nucleare e del Controllo Ambientale - DIENCA
Via del Risorgimento, 2 - 40136
Bologna - Italia
________________________________________
Inizio: jeannieboef [<a class="moz-txt-link-abbreviated" href="mailto:jeannieboef@googlemail.com">jeannieboef@googlemail.com</a>]
Inviato: venerdì 30 marzo 2012 18.24
Fine: David BRADLEY
Cc: Tiziano Terlizzese; <a class="moz-txt-link-abbreviated" href="mailto:trnsys-users@cae.wisc.edu">trnsys-users@cae.wisc.edu</a>
Oggetto: Re: [TRNSYS-users] Create a new type

Beware! I'm currently trying with g95. As a start the guidelines are
good, but I have found a few problems that are not mentioned there.
Find the gg95 google group. search for DMOD to find my conversation. I
have also posted to this group, but I'm having a bouncing problem atm.
Since that guild has been written there have been updates to the
constants, data, and functions modules  which should be included in
your type code. I would take the source code for these and adjust and
compile them one by one until they compile without error. As I've
said, my type compiles fine and runs, but is not working properly. I
suspect the problem is with the old !DEC$ attributes dllexport::...
statement which is ignored as a comment by g95. The gcc 4.x.x
directive has suggested !gcc$ as an easy replace for !DEC$, which
works a little better, but I'm still having problems. The type
subroutine and some functions are missing an entry point pointer and
information gets lost. I've not solved this issue yet and am a bit out
of my depth here. I think a basic input output function will work fine
without the pointers.

Let me know if anyone has working compiled by g95 source code to
share. I'll post mine when and if it ever works.

goodluck

Sent from my iPhone

On 30.03.2012, at 17:19, David BRADLEY <a class="moz-txt-link-rfc2396E" href="mailto:d.bradley@tess-inc.com"><d.bradley@tess-inc.com></a> wrote:

</pre>
      <blockquote type="cite">
        <pre wrap="">Tiziano,
 I am not entirely sure that I understand your question. Fortran 90
is a language while Compaq Visual Fortran is a compiler. Most Types
in Trnsys16 were written Fortran77 language conventions but some
where written using Fortran90 conventions; the two language
conventions should be able to interact with each other without
problems.

 Whichever set of language conventions you choose, you need some
kind of compiler that can create a DLL containing the source code
for your Type. Some users have succeeded in using the free G95
compiler to make user Types. There is a tutorial available at: <a class="moz-txt-link-freetext" href="http://sel.me.wisc.edu/trnsys/downloads/tutorials_and_examples/tutex17.htm">http://sel.me.wisc.edu/trnsys/downloads/tutorials_and_examples/tutex17.htm</a>
. While the tutorial is written based on Trnsys17, most of it
applies to Trnsys16 as well.

Kind regards,
David

On 3/30/2012 04:14, Tiziano Terlizzese wrote:
</pre>
        <blockquote type="cite">
          <pre wrap="">Dear trnsys users,

I need to create a new type, a rain water tank. It seems that the
only way to create a new type is to have at disposal COMPAQ Visual
Fortran. Is that correct? Can't you use FORTRAN 90 instead of
compaq visual fortran?
The problem I faced in using fortran 90 is that transys constants
are not already implemented into it. Is there a way out that won't
imply to buy Compaq Visual Fortran? I have TRNSYS 16 version.

Thank you in advance for your help.
Greetings,

Tiziano Terlizzese

Università di Bologna
Dipartimento di Ingegneria Energetica Nucleare e del Controllo
Ambientale - DIENCA
Via del Risorgimento, 2 - 40136
Bologna - Italia
_______________________________________________
TRNSYS-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:TRNSYS-users@cae.wisc.edu">TRNSYS-users@cae.wisc.edu</a>
<a class="moz-txt-link-freetext" href="https://mailman.cae.wisc.edu/listinfo/trnsys-users">https://mailman.cae.wisc.edu/listinfo/trnsys-users</a>

</pre>
        </blockquote>
        <pre wrap="">
--
***************************
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
<a class="moz-txt-link-abbreviated" href="mailto:d.bradley@tess-inc.com">d.bradley@tess-inc.com</a>

<a class="moz-txt-link-freetext" href="http://www.tess-inc.com">http://www.tess-inc.com</a>
<a class="moz-txt-link-freetext" href="http://www.trnsys.com">http://www.trnsys.com</a>

_______________________________________________
TRNSYS-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:TRNSYS-users@cae.wisc.edu">TRNSYS-users@cae.wisc.edu</a>
<a class="moz-txt-link-freetext" href="https://mailman.cae.wisc.edu/listinfo/trnsys-users">https://mailman.cae.wisc.edu/listinfo/trnsys-users</a>
</pre>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <br>
        <pre wrap="">_______________________________________________
TRNSYS-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:TRNSYS-users@cae.wisc.edu">TRNSYS-users@cae.wisc.edu</a>
<a class="moz-txt-link-freetext" href="https://mailman.cae.wisc.edu/listinfo/trnsys-users">https://mailman.cae.wisc.edu/listinfo/trnsys-users</a>
</pre>
      </blockquote>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
***************************
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
<a class="moz-txt-link-abbreviated" href="mailto:d.bradley@tess-inc.com">d.bradley@tess-inc.com</a>

<a class="moz-txt-link-freetext" href="http://www.tess-inc.com">http://www.tess-inc.com</a>
<a class="moz-txt-link-freetext" href="http://www.trnsys.com">http://www.trnsys.com</a></pre>
  </body>
</html>