Instructions for Compiling FAST

Daniel,

The first warning you receive is because the Visual Studio project in the FAST archive is for an older version of the Intel Fortran compiler integrations than what you are using. It is mostly harmless, but as you found out, it will put the output file in Visual Studio’s default location instead of the FAST/bin folder. If you want to get rid of this warning, you can change use the default linker OutputFile and just change the TargetName in the project properties.

Windows doesn’t care if you use forward or backward slashes in the input file path names, so I’d recommend you not change those. (We set them so they can work on both Windows or Mac/Linux.)

I’d personally just change the path to the executable and not move input files, but that really just comes down to personal preference.

Hallo Mr. Jonkman,

I am new to compiling FAST. First I only want to create the Fast execuable file to get used to compiling. I am using Microsoft Visual Studio 2015 and Fast V7. I followed the instructions of the FASTCompilinginstructions.pdf step by step! But as soon as I start building the project there are several errors and warings. This is the Output:

1>------ Build started: Project: FAST, Configuration: Debug Win32 ------
1>Compiling with Intel(R) Visual Fortran Compiler 16.0 [IA-32]…
1>SingPrec.f90
1>AeroMods.f90
1>SysIVF.f90
1>NWTC_SharedDataTypes.f90
1>NWTC_IO.f90
1>NWTC_Num.f90
1>NWTC_Aero.f90
1>NWTC_Library.f90
1>SharedInflowDefs.f90
1>GenSubs.f90
1>CTWind.f90
1>HHWind.f90
1>SharedTypes.f90
1>UserWind.f90
1>FFTMod.f90
1>HydroCalc.f90
1>FFWind.f90
1>HAWCWind.f90
1>FDWind.f90
1>InflowWindMod.f90
1>AeroSubs.f90
1>AeroDyn.f90
1>FAST_Mods.f90
1>BladedDLLInterface.f90
1>Noise.f90
1>FAST_IO.f90
1>FAST.f90
1>FAST_Lin.f90
1>FAST2ADAMS.f90
1>C:\Users\david.kolodziej\Desktop\SimulinkFASTSC\Fast_v7.01.00\FAST2ADAMS.f90(3974): error #6460: This is not a field name that is defined in the encompassing structure. [INDX]
1>C:\Users\david.kolodziej\Desktop\SimulinkFASTSC\Fast_v7.01.00\FAST2ADAMS.f90(3974): error #6460: This is not a field name that is defined in the encompassing structure. [SIGNM]
1>compilation aborted for C:\Users\david.kolodziej\Desktop\SimulinkFASTSC\Fast_v7.01.00\FAST2ADAMS.f90 (code 1)
1>SetVersion.f90
1>AeroCalc.f90
1>UserSubs.f90
1>PitchCntrl_ACH.f90
1>FAST_Prog.f90
1>C:\Users\david.kolodziej\Desktop\SimulinkFASTSC\Fast_v7.01.00\FAST_Prog.f90(18): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [FAST2ADAMSSUBS]
1>compilation aborted for C:\Users\david.kolodziej\Desktop\SimulinkFASTSC\Fast_v7.01.00\FAST_Prog.f90 (code 1)
1>UserVSCont_KP.f90
1>fftpack.f
1>
1>Build log written to “file://C:\Users\david.kolodziej\Desktop\SimulinkFASTSC\DesignCodes\FAST\FAST\Debug\BuildLog.htm”
1>FAST - 5 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

I dont really find my mistake! I hope you can help me!

Best regard,

David

The errors about INDX and SIGNM not being part of the encompassing structure indicate to me that you are probably using FAST_Mods.f90 from FAST 7.00.x or earlier and FAST2ADAMS.f90 from FAST 7.01.x or later. Make sure all of the source files you are compiling come from the same release.

Hello Mr.Jonkman,

I was able to compile the FastSC.exe. In a next step, I am trying to compile the FAST S-funktion for Simulink! In my understanding I just need to add the provided FASTGateway.f90 and the FASTSimulink.f90 data to the sources folder of Microsoft Visual Studio. But if I do so, I get the following errors:

Severity Code Description Project File Line Suppression State
Error Compilation Aborted (code 1) C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 1
Error Compilation Aborted (code 1) C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTSimulink.f90 1
Error error #6362: The data types of the argument(s) are invalid. [REAL] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 242
Error error #6362: The data types of the argument(s) are invalid. [TRIM] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 296
Error error #6362: The data types of the argument(s) are invalid. [TRIM] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 297
Error error #6362: The data types of the argument(s) are invalid. [TRIM] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 507
Error error #6404: This name does not have a type, and must have an explicit type. [INT2LSTR] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 296
Error error #6633: The type of the actual argument differs from the type of the dummy argument. [TIME] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTSimulink.f90 373
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 52
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 75
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 77
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 80
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 89
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 94
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 106
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 107
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 123
Error error #6683: A kind type parameter must be a compile-time constant. [MXDB] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 242
Error error #7002: Error in opening the compiled module file. Check INCLUDE paths. [FAST_SIMULINK_MOD] C:\Users\david.kolodziej\Desktop\Compiling\FAST-SC_Simulink\Sim_v.7.01.00\FASTGateway.f90 40

Do I need to make some changes to these files or maybe add them to another path?

Best Regards,

David

When you compile the FAST v7 interface for Simulink, the source code actually gets compiled inside Matlab (because you are actually compiling a DLL that includes Matlab libraries). Please see the make_FAST_SFunc.m script in the Simulink/Source folder of the FAST v7 archive. There are some comments at the top of that file to help you get started.

If you want to use Visual Studio, you can compile the majority of FAST as a library and then link with that library in the make_FAST_SFunc script, but we do not have the resources to help you figure that out.

Hello Mr.Jonkman!

with your help I was able to compile the Fast.exe and and the Sfunc successfully! Thank you very much for that! In a further step I compiled the FastDLL.exe successfully by following these instructions:

“(Note that if you choose to use the user-defined control options for interfacing with a GH Bladed-style DLL in FAST v7.01.00a-bjj, your list of FAST source files will include BladedDLLInterface.f90, UserSubs_forBladedDLL.f90, and UserVSCont_KP_forBladedDLL.f90. It will not include PitchCntrl_ACH.f90, UserSubs.f90, or UserVSCont_KP.f90. The file UserSubs_forBladedDLL.f90 is a copy of UserSubs.f90 with subroutines UserHSSBr and UserYawCont commented out. The file UserVSCont_KP_forBladedDLL.f90 is a copy of UserVSCont_KP with subroutine UserVSCont commented out.)”

But as soon as I try to run this executable file within my simulation folder I get the following errors:

speed of 5.9 m/s.
Processed 21092 time steps of 20-Hz full-field data (1054.6 seconds).

forrtl: severe (159): Program Exception - breakpoint
Image PC Routine Line Source
FAST.exe 00B5BFCC Unknown Unknown Unknown
FAST.exe 00B5BC19 Unknown Unknown Unknown
FAST.exe 00B5B56F Unknown Unknown Unknown
FAST.exe 005C2595 _DLL_INTERFACE_mp 174 BladedDLLInterface.f90
FAST.exe 005C3864 _BLADEDDLLINTERFA 472 BladedDLLInterface.f90
FAST.exe 005C4B70 _PITCHCNTRL 615 BladedDLLInterface.f90
FAST.exe 00749B96 _FASTSUBS_mp_CONT 4787 FAST.f90
FAST.exe 0077F904 _FASTSUBS_mp_RTHS 7555 FAST.f90
FAST.exe 00979230 _FASTSUBS_mp_SOLV 11903 FAST.f90
FAST.exe 0098A72C FASTSUBS_mp_TIME 12308 FAST.f90
FAST.exe 00B4F045 MAIN
106 FAST_Prog.f90
FAST.exe 00B591CF Unknown Unknown Unknown
FAST.exe 00B5B94E Unknown Unknown Unknown
FAST.exe 00B5B81A Unknown Unknown Unknown
FAST.exe 00B5B6BD Unknown Unknown Unknown
FAST.exe 00B5B968 Unknown Unknown Unknown
KERNEL32.DLL 75A3DEA4 Unknown Unknown Unknown
ntdll.dll 774400BE Unknown Unknown Unknown
ntdll.dll 7744008D Unknown Unknown Unknown

When I use the FASTv710malx32.exe provided by Prof Lackner no errors occur within the simulation! Have you seen the error before? (As requested "DISCON.dll and DFORRT.dll are in the same folder as the exectuable file). Ialso checked in the “NREL 5MW controls (DLL interface)” forum, but I couldnt really find my mistake!

Thank you very much in advance!

Best regards,

David

If you look at the last line of the stack track that gives you useful information:

you can see that the error occurs on line 174 of BladedDLLInterface.f90. You should verify this with the source code you are actually compiling, but it looks like this is where the code is trying to call to the DLL. This could be caused by a problem in your DLL (though if it runs in Dr. Lackner’s executable, that is probably not the problem); it could be a problem in the way you compiled the executable (is it using the correct calling convention when it calls the DLL?) or it could be something in the source code. That part of the code in FAST v7 uses some non-standard Fortran, so if you’ve used a newer compiler, it may treat it differently. It’s hard for me to tell.

DFFORT.dll is required only if you’ve compiled the DLL with the old Compaq Visual Fortran compiler. If you used the Intel compiler, you shouldn’t need it.

hi Dr. Bonnie ;
I am trying to compile FAST8.10 using visual studio2013 with Intel parallel studio 2016 as per your instructions, but while dubugging i get the following errors, kindly help me to rectify it. I have attached the cmd image:

Hi, Srinivasa.

I have taken a look at your build log and I am a little confused.

The first three errors I see are these:

F:\FAST8.10micro\Source\FAST_Subs.f90(3979): error #6818: The statement following a CONTAINS is not a function-stmt or a subroutine-stmt. TYPE(FAST_MiscVarType), INTENT(IN ) :: m_FAST ! Misc variables (including external inputs) for the glue code --------^ F:\FAST8.10micro\Source\FAST_Subs.f90(4004): error #6218: This statement is positioned incorrectly and/or has syntax errors. SUBROUTINE AD_InputSolve( u_AD, y_ED, MeshMapData, ErrStat, ErrMsg ) -----------^ F:\FAST8.10micro\Source\FAST_Subs.f90(4129): error #6702: END statement confusion. END SUBROUTINE AD_InputSolve ^

However, when I took a look at these specific lines in the FAST v8.10 version of FAST_Subs.f90, they do not match the error messages. (Lines 3979, 6218, and 6702 should match the three lines mentioned in the error.) It looks like you are compiling a different version of the code or have made some changes to the source file(s).

hi Dr. Bonnie ;
I am trying to compile FAST8.10 using visual studio2013 with Intel parallel studio 2016 as per your instructions, but while dubugging i get the following errors, kindly help me to rectify it. I have attached the cmd image:

Hi, Srivnivasa.

It looks like you are not linking with the MAP++ library.

If you use Visual Studio, you need to have the appropriate MAP*.lib file specified under Project → Properties → Linker → Input → Additional Dependencies. In the VS project distributed with FAST, it is “…..\Source\dependencies\MAP\MAP_$(PlatformName).lib”.

I don’t really recommend using the batch file for compiling any more. But if you do use it, make sure the link options point to the MAP library. You should have these lines in your batch file (it’s possible some were missing in 8.10):SET MAP_Loc=%FAST_Loc%\dependencies\MAP <code skipped> SET MAP_Include_Lib=%MAP_Loc%\map_win32.lib IF "%BITS%"=="64" SET MAP_Include_Lib=%MAP_Loc%\map_x64.lib <code skipped> SET LINKOPTS=/link %MAP_Include_Lib% <other link options skipped>

hi Dr. Bonnie;
thank you very much for you reply. As per your instruction i have successfully compiled the FAST8.10 using VS2013 making some changes in source code and FAST_Project_32.exe file is generated. But the thing is how to interface with simulink. Can we use the same FAST_Library.dll, MAP.dll in the bin for this newly compiled FAST exe file. If no then how to make these dll files to use in simulink?? As a whole what is the procedure to link the newly compiled FAST.exe with simulink??? kindly help me in clarifying this doubt…thank you!!!

If you want to use FAST v8 with Simulink, you don’t actually use the FAST executable you just compiled. Instead, you need to compile the FAST source code as a dynamic library (FAST_Library.dll), which the Simulink mex file loads and uses. There are instructions for compiling the DLL in the FAST v8 ReadMe and a Visual Studio project file for compiling it is in the /Simulink/VisualStudio directory.

hi Keshan.He ,
i am trying to enable MultiTab option as per your instruction in post: Instructions for Compiling FAST - #121 by Keshan.He, but iam getting errors as shown in buildlog attached. Is it the total changes required that you mentioned in the post or we need to do more changes to compile FAST_Library.dll without errors???kindly help to rectify the errors in buid log.
buildlog11.txt (4.91 KB)

update: found solution

Hi,
I am trying to compile FAST 7.02.00d-bjj using visual studio2015 with Intel parallel studio 2016. I followed the instructions (wind.nrel.gov/public/bjonkman/De … ctions.pdf). I got a lot of errors during debugging. Majority of them are caused by the followings.
error #7002: Error in opening the compiled module file. Check INCLUDE paths.,
error #6404: This name does not have a type, and must have an explicit type.,
error #6460: This is not a field name that is defined in the encompassing structure.
error #6911: The syntax of this substring is invalid.
error #6457: This derived type name has not been declared.
error #6683: A kind type parameter must be a compile-time constant.
So, I would like to ask how to fix these kind of errors. I have been spending very long time searching for the solution for this but I still have no clue.
Best Regards,
Danupon Subanapong

Hi Bonnie,

I’m currently trying to compile FAST_v8.16.00 in a Linux environment.
As mentioned on the FAST_v8 compiling instructions PDF,

  • I ran the makefile contained in /Source/dependencies/Registry folder, which gave me registry.exe .
  • Then, I downloaded MAP++ and ran the makefile contained in its ‘src’ folder. When I did so, I got ‘/usr/bin/ld: cannot find -llapacke’ errors. (I included a screenshot for you to see the log).

Is it a common problem ? My guess is I don’t have the lapack library installed on my linux environment. I tried to install it but it did not resolved my problem. Could you give me some advice please ?

Thank you very much for your time,

Baptiste.

Hello,

My current question is in regards to additional control inputs for FASTv8 S Function. I read the instruction manual for compiling FAST, and it refers to a section that discusses additional inputs for the S Function. There is not a great deal of information (concerning additional control inputs) in this document and am not sure how to go about declaring additional control inputs for the S Function. Are all possible turbine states allowed to be used as control inputs? When declaring them, do we simply use the channel names preceeding by the number of additions?

Is it possible to create additional control inputs during a linearization routine without recompiling FAST source code?

Regards,
Dana Martin

Dear Dr. Bonnie/Jason Jonkman,

I tried to compile the FAST_Library (FAST V8.16) using visual studio 2015. I followed the compiling instructions provided with the archive.
Unfortunately, i am getting errors when i tried to compile the FAST_library.
I get the following error:

1>------ Build started: Project: FAST_Library_et, Configuration: Debug x64 ------
1>Compiling with Intel(R) Visual Fortran Compiler 17.0.0.109 [Intel(R) 64]…
1>OrcaFlexInterface.F90
1>C:\Users\ferede\Documents\Project_Morphing_WTB\FAST_v8\Source\dependencies\OrcaFlex\OrcaFlexInterface.F90(114): error #6994: A procedure in an ABSTRACT interface must not be specified with DEC$ ALIAS or DEC$ ATTRIBUTES ALIAS. [ORCAFLEXUSERPTFMLDINITIALISE]
1>C:\Users\ferede\Documents\Project_Morphing_WTB\FAST_v8\Source\dependencies\OrcaFlex\OrcaFlexInterface.F90(127): error #6994: A procedure in an ABSTRACT interface must not be specified with DEC$ ALIAS or DEC$ ATTRIBUTES ALIAS. [ORCAFLEXUSERPTFMLD]
1>C:\Users\ferede\Documents\Project_Morphing_WTB\FAST_v8\Source\dependencies\OrcaFlex\OrcaFlexInterface.F90(145): error #6994: A procedure in an ABSTRACT interface must not be specified with DEC$ ALIAS or DEC$ ATTRIBUTES ALIAS. [ORCAFLEXUSERPTFMLDFINALISE]
1>compilation aborted for C:\Users\ferede\Documents\Project_Morphing_WTB\FAST_v8\Source\dependencies\OrcaFlex\OrcaFlexInterface.F90 (code 1)
1>FAST_Solver.f90
1>C:\Users\ferede\Documents\Project_Morphing_WTB\FAST_v8\Source\FAST_Solver.f90(43): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [ORCAFLEXINTERFACE]
1>C:\Users\ferede\Documents\Project_Morphing_WTB\FAST_v8\Source\FAST_Solver.f90(1767): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [ORCAFLEXINTERFACE]
1>compilation aborted for C:\Users\ferede\Documents\Project_Morphing_WTB\FAST_v8\Source\FAST_Solver.f90 (code 1)
1>FAST_Lin.f90
1>C:\Users\ferede\Documents\Project_Morphing_WTB\FAST_v8\Source\FAST_Lin.f90(29): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [FAST_SOLVER]

I also looked at this forum for any compiling error that is similar as the one i get, but i couldn’t find any solution.
Could you please help me with this issue.
Thank you in advance.

Etana Ferede

Dear all,

I have the same problem as Etana (see previous post).

I’ll be very pleased if someone could help us.

Thank you in advance.

----- EDIT: Question Solved -----
The problem is that Intel Parallel Studio XE2017 no longer accepts the attribute ALIAS, so it is necessary to modify OrcaFlexInterface.F90 this way:

   ABSTRACT INTERFACE      ! These are interfaces to the DLL

#ifdef __GFORTRAN__
      SUBROUTINE OrcaFlexUserPtfmLdInitialise(DT,TMax)   BIND(C)
#else
      SUBROUTINE OrcaFlexUserPtfmLdInitialise(DT,TMax)   !!!BIND(C)
#endif
         USE, INTRINSIC :: ISO_C_BINDING, ONLY: C_FLOAT
!         !DEC$ ATTRIBUTES DEFAULT, STDCALL, DECORATE, ALIAS:'OrcaFlexUserPtfmLdInitialise'::OrcaFlexUserPtfmLdInitialise
         !DEC$ ATTRIBUTES DEFAULT, STDCALL, DECORATE ::OrcaFlexUserPtfmLdInitialise ! <<<<<<<<<<<<<<<<<<<<<<< MOD
         !GCC$ ATTRIBUTES STDCALL :: OrcaFlexUserPtfmLdInitialise
         REAL(C_FLOAT),             INTENT(IN   )  :: DT
         REAL(C_FLOAT),             INTENT(IN   )  :: TMax
      END SUBROUTINE OrcaFlexUserPtfmLdInitialise


#ifdef __GFORTRAN__
      SUBROUTINE OrcaFlexUserPtfmLd( X, XD, ZTime, DirRoot, PtfmAM, PtfmFt) BIND(C)
#else
      SUBROUTINE OrcaFlexUserPtfmLd( X, XD, ZTime, DirRoot, PtfmAM, PtfmFt) !!!BIND(C)
#endif
         USE, INTRINSIC :: ISO_C_Binding, ONLY: C_FLOAT, C_CHAR
!         !DEC$ ATTRIBUTES DEFAULT, STDCALL, DECORATE, ALIAS:'OrcaFlexUserPtfmLd'::OrcaFlexUserPtfmLd
         !DEC$ ATTRIBUTES DEFAULT, STDCALL, DECORATE ::OrcaFlexUserPtfmLd ! <<<<<<<<<<<<<<<<<<<<<<< MOD
         !GCC$ ATTRIBUTES STDCALL :: OrcaFlexUserPtfmLd
         CHARACTER(KIND=C_CHAR),    INTENT(IN   )  :: DirRoot
         REAL(C_FLOAT),             INTENT(IN   )  :: X(6)           !< Translational and rotational displacement (m, radians) relative to inertial frame.
         REAL(C_FLOAT),             INTENT(IN   )  :: XD(6)          !< Translational and rotational velocity (m/s, radians/s) relative to inertial frame.
         REAL(C_FLOAT),             INTENT(IN   )  :: ZTime          !< Current time in seconds
         REAL(C_FLOAT),             INTENT(  OUT)  :: PtfmAM(6,6)    !< Added mass matrix (kg, kg-m, kg-m^2)
         REAL(C_FLOAT),             INTENT(  OUT)  :: PtfmFt(6)      !< Platform forces -- [3 translation (N), 3 moments (N-m)] at reference point.
      END SUBROUTINE OrcaFlexUserPtfmLd



#ifdef __GFORTRAN__
      SUBROUTINE OrcaFlexUserPtfmLdFinalise()  BIND(C)
#else
      SUBROUTINE OrcaFlexUserPtfmLdFinalise()  !!!BIND(C)
#endif
         USE, INTRINSIC :: ISO_C_BINDING
!         !DEC$ ATTRIBUTES DEFAULT, STDCALL, DECORATE, ALIAS: 'OrcaFlexUserPtfmLdFinalise'::OrcaFlexUserPtfmLdFinalise
         !DEC$ ATTRIBUTES DEFAULT, STDCALL, DECORATE ::OrcaFlexUserPtfmLdFinalise ! <<<<<<<<<<<<<<<<<<<<<<< MOD
         !GCC$ ATTRIBUTES STDCALL :: OrcaFlexUserPtfmLdFinalise
         ! There is no data to pass.
      END SUBROUTINE OrcaFlexUserPtfmLdFinalise

   END INTERFACE

Best Regards,

1 Like