Instructions for Compiling FAST

Hello,

I continue with the problems in ADAMS and the compatibilities with the comlers, but now, I’ve other problem whith Fast. When I execute the file CompileLinkA2AD.bat , I asociate with the Intel Visual Fortran 2013 and with ADAMS, but in de cmd appears :

Compiling ADAMS2AD and AeroDyn routines to create ADAMS.obj:
“ifort” no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
“ifort” no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
Linking ADAMS2AD and AeroDyn routines with ADAMS 2005r2:
“ADAMS05r2” no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
No se encuentra C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\D
LL*.mod
No se encuentra C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\D
LL*.obj

But I download the compiler that the Fast user guide said, I don’t know why ifort is not recognized.

Thanks.

For clarification, CompileLinkA2AD.bat is not part of FAST; rather it is part of a different simulator called ADAMS2AD (A2AD). So, I assume you mean that you are having trouble with Adams2AD when you say,

ifort won’t be recognized unless you have correctly called the compiler’s batch script, which sets the necessary environment variables. The instructions for compiling FAST from the command line discuss how this should be done; see the section called “Set Compiler Variables” in the document listed in the first post of this thread: http://forums.nrel.gov/t/instructions-for-compiling-fast/514/1

Hi,

I don’t know why I can’t advance. I cotinue with the CompilelinkAD2A. I think that I’ve changed everything that it’s necessary.

[code]@ECHO OFF
REM ----------------------------------------------------------------------------
REM set compiler internal variables
REM ----------------------------------------------------------------------------
REM You can run this bat file from the IVF compiler’s command prompt (and not
REM do anything in this section). If you choose not to run from the IVF command
REM prompt, you must call the compiler’s script to set internal variables.
REM TIP: Right click on the IVF Compiler’s Command Prompt shortcut, click
REM properties, and copy the target (without cmd.exe and/or its switches) here:
REM …
REM See this forum topic for instructions and help with setting the compiler
REM internal variables in this script:
REM http://forums.nrel.gov/t/instructions-for-compiling-fast/514/1
REM …

IF “%INTEL_SHARED%”=="" CALL "CALL “C:\Archivos de programa\Intel\Composer XE 2013\bin\IFORTVARS.bat”

REM ----------------------------------------------------------------------------
REM -------------------- LOCAL VARIABLES ---------------------------------------
REM ----------------------------------------------------------------------------

SET ROOT_NAME=ADAMS

REM ----------------------------------------------------------------------------
REM -------------------- LOCAL PATHS ------------------------------------------
REM ----------------------------------------------------------------------------

REM --USERS WILL NEED TO EDIT THESE PATHS TO POINT TO FOLDERS ON THEIR LOCAL MACHINES:
REM A2AD_Loc is the location of the ADAMS-to-AeroDyn source files.
REM AeroDyn_Loc is the location of the AeroDyn source files.
REM Wind_Loc is the location of the InflowWind souce files.
REM FAST_LOC is the location of the FAST source files: FFTMod.f90, HydroCalc.f90, fftpack.f, UserSubs.f90, and possibly PitchCntrl_ACH.f90, UserVSCont_KP.f90, and/or BladedDLLInterface.f90.
REM NWTC_Lib_Loc is the location of the NWTC subroutine library files.
REM ----------------------------------------------------------------------------

REM NOTE: DO NOT USE QUOTATION MARKS HERE (AROUND THE PATH NAMES)
REM OR THE FILE CONCATENATION BELOW WILL NOT WORK

SET NWTC_Lib_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\NWTC_Lib\source
SET AeroDyn_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\AERODYN\Source
SET Wind_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source
SET FAST_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\FAST\Source
SET A2AD_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\Source

REM ----------------------------------------------------------------------------
REM -------------------- LIST OF ALL SOURCE FILES ------------------------------
REM -------- please note that all source files must have a blank line ----------
REM -------- at the end so that they can be concatenated properly ----------
REM ----------------------------------------------------------------------------

SET NWTC_Files=
SET NWTC_Files=%NWTC_Files% “%NWTC_Lib_Loc%\SingPrec.f90”
SET NWTC_Files=%NWTC_Files% + “%A2AD_Loc%\SysIVF_ADAMS.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\NWTC_IO.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\NWTC_Num.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\NWTC_Aero.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\ModMesh.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\NWTC_Library.f90”

SET Wind_Files=
SET Wind_Files=%Wind_Files% “%Wind_Loc%\SharedInflowDefs.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\HHWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\FFWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\HAWCWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\FDWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\CTWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\UserWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\InflowWindMod.f90”

SET AeroDyn_Files=
SET AeroDyn_Files=%AeroDyn_Files% “%AeroDyn_Loc%\SharedTypes.f90”
SET AeroDyn_Files=%AeroDyn_Files% + “%AeroDyn_Loc%\AeroMods.f90”
SET AeroDyn_Files=%AeroDyn_Files% + “%AeroDyn_Loc%\GenSubs.f90”
SET AeroDyn_Files=%AeroDyn_Files% + “%AeroDyn_Loc%\AeroSubs.f90”
SET AeroDyn_Files=%AeroDyn_Files% + “%AeroDyn_Loc%\AeroDyn.f90”

SET Fixed_Files =
SET Fixed_Files=%Fixed_Files% “%FAST_Loc%\fftpack.f”

SET FAST_Files=
SET FAST_Files=%FAST_Files% “%FAST_Loc%\FFTMod.f90”
SET FAST_Files=%FAST_Files% + “%FAST_Loc%\HydroCalc.f90”
SET FAST_Files=%FAST_Files% + “%A2AD_Loc%\FAST_params.f90”

IF /I “%1”==“DLL” GOTO dllFiles
SET FAST_Files=%FAST_Files% + “%FAST_Loc%\UserSubs.f90”
SET FAST_Files=%FAST_Files% + “%FAST_Loc%\UserVSCont_KP.f90”
SET FAST_Files=%FAST_Files% + “%FAST_Loc%\PitchCntrl_ACH.f90”

GOTO endFASTfiles
:dllFiles
SET FAST_Files=%FAST_Files% + “%FAST_LOC%\UserSubs_forBladedDLL.f90”
SET FAST_Files=%FAST_Files% + “%FAST_LOC%\UserVSCont_KP_forBladedDLL.f90”
SET FAST_Files=%FAST_Files% + “%FAST_LOC%\BladedDLLInterface.f90”

REM NOTE: UserSubs_forBladedDLL.f90 is a copy of UserSubs.f90 with SUBROUTINES UserHSSBr() and UserYawCont() commented out
REM UserVSCont_KP_forBladedDLL.f90 is a copy of UserVSCont_KP.f90 with SUBROUTINE UserVSCont() commented out

:endFASTfiles

SET A2AD_Files=
SET A2AD_Files=%A2AD_Files% “%A2AD_Loc%\A2AD_Mod.f90”
SET A2AD_Files=%A2AD_Files% + “%A2AD_Loc%\Adams_subs.f90”

REM echo File list

REM ----------------------------------------------------------------------------
REM ----------- Concatenate them into one file for free-format -----------------
REM ----------- Fortran and one file for fixed-format Fortran -----------------
REM ----------------------------------------------------------------------------

COPY %NWTC_Files% + %Wind_Files% + %AeroDyn_Files% + %FAST_Files% + %A2AD_Files% %ROOT_NAME%.f90
COPY %Fixed_Files% %ROOT_NAME%.f

REM ----------------------------------------------------------------------------
REM ------- SET CREATE OBJECT FILE BASED ON SPECIFIED COMPILER -----------------
REM ----------------------------------------------------------------------------

REM ----------------------------------------------------------------------------
REM --------------------- Intel visual FORTRAN ---------------------------------
REM --------------------- with Adams 2012R2 ---------------------------------
REM ----------------------------------------------------------------------------

REM …
REM … set compiler options …
REM …

REM SET COPTS= /c /automatic /architecture:pn4 /Ob2 /MD /Gm /O1 /traceback /real_size:32 /assume:byterecl /stand:f95 /check:bounds
REM SET COPTS= /c /automatic /architecture:pn4 /Ob2 /MD /Gm /Ot /O3 /traceback /real_size:32 /assume:byterecl /stand:f95 /Qdiag-disable:5268
SET COPTS= /c /automatic /Ob2 /MD /Gm /traceback /Qzero /Qsave /real_size:32 /assume:byterecl /Qdiag-disable:5268

REM …
REM … compile …
REM …

ECHO.
ECHO Compiling ADAMS2AD and AeroDyn routines to create ADAMS.obj:
ifort %COPTS% /object:%ROOT_NAME%.obj %ROOT_NAME%.f90
ifort %COPTS% /object:%ROOT_NAME%f.obj %ROOT_NAME%.f

REM …
REM … link with Adams …
REM …

ECHO Linking ADAMS2AD and AeroDyn routines with ADAMS 2012r2:
SET DLLName=%ROOT_NAME%12r2
IF /I “%1”==“DLL” SET DLLName=%DLLName%_forBladedDLL

CALL C:\MSC.Software\Adams\2012\common\mdi.bat cr-user n %ROOT_NAME%.obj %ROOT_NAME%f.obj -n %DLLName%.dll exit < NewLine.txt

GOTO end

:end
REM ----------------------------------------------------------------------------
REM ------------------------- CLEAR MEMORY -------------------------------------
REM ------------- and delete all .mod and .obj files ---------------------------
REM ----------------------------------------------------------------------------
REM ECHO

DEL *.mod
DEL *.obj

SET MyCompiler=
SET DF_LOC=

SET IVF_LOC=
SET ROOT_NAME=
SET COPTS=

SET NWTC_Files=

SET Wind_Files=
SET AeroDyn_Files=
SET FAST_Files=
SET A2AD_Files=
SET Fixed_Files=

SET NWTC_Lib_Loc=
SET Wind_Loc=
SET AeroDyn_Loc=
SET A2AD_Loc=
SET FAST_Loc=

SET DLLName=[/code]

But when I try to execute in the command window, I have several problems, so I can’t create my .dll, so I can’t simulate my model in ADAMS because I don’t have the library .dll .

The command window displays:
(These are the last lines that appear after execution)

[code]ADAMS.f90(3758): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [READLVAR]
SUBROUTINE ReadLVar ( UnIn, Fil, LogVar, VarName, VarDescr, ErrStat )
--------------^
ADAMS.f90(4573): catastrophic error: Too many errors, exiting
compilation aborted for ADAMS.f90 (code 1)
Intel(R) Visual Fortran Compiler XE for applications running on IA-32, Version 1
3.1.1.171 Build 20130313
Copyright (C) 1985-2013 Intel Corporation. All rights reserved.
ifort: command line remark #10010: option ‘/automatic’ is deprecated and will be
removed in a future release. See ‘/help deprecated’
ifort: command line warning #10121: overriding ‘/automatic’ with ‘/Qsave’

Linking ADAMS2AD and AeroDyn routines with ADAMS 2012r2:

*** Error: File ADA not found.

Enter name of next user object or source file (=none), or EXIT:
forrtl: severe (24): end-of-file during read, unit -4, file CONIN$
Image PC Routine Line Source
libifcoremd.dll 100A581A Unknown Unknown Unknown
libifcoremd.dll 1009FBC8 Unknown Unknown Unknown
libifcoremd.dll 1001C2AA Unknown Unknown Unknown
libifcoremd.dll 1001B4AB Unknown Unknown Unknown
libifcoremd.dll 1004D761 Unknown Unknown Unknown
cru.exe 00404EBD Unknown Unknown Unknown
cru.exe 00407A23 Unknown Unknown Unknown
cru.exe 00405CA8 Unknown Unknown Unknown
kernel32.dll 7C81776F Unknown Unknown Unknown[/code]

Could you help me, please?

Thanks

Is there any way you can use Adams 2008 with IVF 10.1 or 11? I do not think you are going to be able to get our software to work with Adams 2013, which is significantly different than the Adams versions we developed the software for.

Hi,
Thanks for your reply.
I have the ADAMS 2005, and the ADAMS 2012. The fisrt one is that the university has for the students, and the other gave me one industial company from my city, trying to help me. My compiler is Intel Visual Fortran 2013. I try to find older versions but I don’t find them. My project manager said me that could find me the ADAMS 2010, but I don’t know if this version is compatible with the compiler, and with the Fast software.

Thanks

For those interested I have put a small guide including a patch for FAST such that FAST and TurbSim can be compiled and run in Linux.
The FAST SIMULINK® interface is also compiled and all seems to work.
The guide can be found at here: kom.aau.dk/~anb/fast/fastinstall.html

Dear Borchersen,

Thanks so much for posting this! We’ve been debating porting FAST with the DISCON to Linux, but have not had time to figure out how to turn it into a shared library.

Marshall

Hi,

I’m using:

  1. Adams 2008
  2. Intel Visual Fortran 2013
  3. Microsoft Visual Studio 2010
  4. Fast

I’m triying to create de .dll with de CompileLinkA2AD.bat, mi script is:

[code]ECHO OFF
REM ----------------------------------------------------------------------------
REM set compiler internal variables
REM ----------------------------------------------------------------------------
REM You can run this bat file from the IVF compiler’s command prompt (and not
REM do anything in this section). If you choose not to run from the IVF command
REM prompt, you must call the compiler’s script to set internal variables.
REM TIP: Right click on the IVF Compiler’s Command Prompt shortcut, click
REM properties, and copy the target (without cmd.exe and/or its switches) here:
REM …
REM See this forum topic for instructions and help with setting the compiler
REM internal variables in this script:
REM http://forums.nrel.gov/t/instructions-for-compiling-fast/514/1
REM …

REM IF “%INTEL_SHARED%”=="" CALL “CALL “C:\Archivos de programa\Intel\Composer XE 2013\bin\IFORTVARS.bat”
IF “%INTEL_SHARED%”==”" CALL “C:\Archivos de programa\Intel\Composer XE 2013\bin\IFORTVARS.bat” ia32

REM ----------------------------------------------------------------------------
REM -------------------- LOCAL VARIABLES ---------------------------------------
REM ----------------------------------------------------------------------------

SET ROOT_NAME=ADAMS

REM ----------------------------------------------------------------------------
REM -------------------- LOCAL PATHS ------------------------------------------
REM ----------------------------------------------------------------------------

REM --USERS WILL NEED TO EDIT THESE PATHS TO POINT TO FOLDERS ON THEIR LOCAL MACHINES:
REM A2AD_Loc is the location of the ADAMS-to-AeroDyn source files.
REM AeroDyn_Loc is the location of the AeroDyn source files.
REM Wind_Loc is the location of the InflowWind souce files.
REM FAST_LOC is the location of the FAST source files: FFTMod.f90, HydroCalc.f90, fftpack.f, UserSubs.f90, and possibly PitchCntrl_ACH.f90, UserVSCont_KP.f90, and/or BladedDLLInterface.f90.
REM NWTC_Lib_Loc is the location of the NWTC subroutine library files.
REM ----------------------------------------------------------------------------

REM NOTE: DO NOT USE QUOTATION MARKS HERE (AROUND THE PATH NAMES)
REM OR THE FILE CONCATENATION BELOW WILL NOT WORK

SET NWTC_Lib_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\NWTC_Lib\source
SET AeroDyn_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\AERODYN\Source
SET Wind_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source
SET FAST_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\FAST\Source
SET A2AD_Loc=C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\Source

REM ----------------------------------------------------------------------------
REM -------------------- LIST OF ALL SOURCE FILES ------------------------------
REM -------- please note that all source files must have a blank line ----------
REM -------- at the end so that they can be concatenated properly ----------
REM ----------------------------------------------------------------------------

SET NWTC_Files=
SET NWTC_Files=%NWTC_Files% “%NWTC_Lib_Loc%\SingPrec.f90”
SET NWTC_Files=%NWTC_Files% + “%A2AD_Loc%\SysIVF_ADAMS.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\NWTC_IO.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\NWTC_Num.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\NWTC_Aero.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\ModMesh.f90”
SET NWTC_Files=%NWTC_Files% + “%NWTC_Lib_Loc%\NWTC_Library.f90”

SET Wind_Files=
SET Wind_Files=%Wind_Files% “%Wind_Loc%\SharedInflowDefs.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\HHWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\FFWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\HAWCWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\FDWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\CTWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\UserWind.f90”
SET Wind_Files=%Wind_Files% + “%Wind_Loc%\InflowWindMod.f90”

SET AeroDyn_Files=
SET AeroDyn_Files=%AeroDyn_Files% “%AeroDyn_Loc%\SharedTypes.f90”
SET AeroDyn_Files=%AeroDyn_Files% + “%AeroDyn_Loc%\AeroMods.f90”
SET AeroDyn_Files=%AeroDyn_Files% + “%AeroDyn_Loc%\GenSubs.f90”
SET AeroDyn_Files=%AeroDyn_Files% + “%AeroDyn_Loc%\AeroSubs.f90”
SET AeroDyn_Files=%AeroDyn_Files% + “%AeroDyn_Loc%\AeroDyn.f90”

SET Fixed_Files =
SET Fixed_Files=%Fixed_Files% “%FAST_Loc%\fftpack.f”

SET FAST_Files=
SET FAST_Files=%FAST_Files% “%FAST_Loc%\FFTMod.f90”
SET FAST_Files=%FAST_Files% + “%FAST_Loc%\HydroCalc.f90”
SET FAST_Files=%FAST_Files% + “%A2AD_Loc%\FAST_params.f90”

IF /I “%1”==“DLL” GOTO dllFiles
SET FAST_Files=%FAST_Files% + “%FAST_Loc%\UserSubs.f90”
SET FAST_Files=%FAST_Files% + “%FAST_Loc%\UserVSCont_KP.f90”
SET FAST_Files=%FAST_Files% + “%FAST_Loc%\PitchCntrl_ACH.f90”

GOTO endFASTfiles
:dllFiles
SET FAST_Files=%FAST_Files% + “%FAST_LOC%\UserSubs_forBladedDLL.f90”
SET FAST_Files=%FAST_Files% + “%FAST_LOC%\UserVSCont_KP_forBladedDLL.f90”
SET FAST_Files=%FAST_Files% + “%FAST_LOC%\BladedDLLInterface.f90”

REM NOTE: UserSubs_forBladedDLL.f90 is a copy of UserSubs.f90 with SUBROUTINES UserHSSBr() and UserYawCont() commented out
REM UserVSCont_KP_forBladedDLL.f90 is a copy of UserVSCont_KP.f90 with SUBROUTINE UserVSCont() commented out

:endFASTfiles

SET A2AD_Files=
SET A2AD_Files=%A2AD_Files% “%A2AD_Loc%\A2AD_Mod.f90”
SET A2AD_Files=%A2AD_Files% + “%A2AD_Loc%\Adams_subs.f90”

REM echo File list

REM ----------------------------------------------------------------------------
REM ----------- Concatenate them into one file for free-format -----------------
REM ----------- Fortran and one file for fixed-format Fortran -----------------
REM ----------------------------------------------------------------------------

COPY %NWTC_Files% + %Wind_Files% + %AeroDyn_Files% + %FAST_Files% + %A2AD_Files% %ROOT_NAME%.f90
COPY %Fixed_Files% %ROOT_NAME%.f

REM ----------------------------------------------------------------------------
REM ------- SET CREATE OBJECT FILE BASED ON SPECIFIED COMPILER -----------------
REM ----------------------------------------------------------------------------

REM ----------------------------------------------------------------------------
REM --------------------- Intel visual FORTRAN ---------------------------------
REM --------------------- with Adams 2008R1 ---------------------------------
REM ----------------------------------------------------------------------------

REM …
REM … set compiler options …
REM …

REM SET COPTS= /c /automatic /architecture:pn4 /Ob2 /MD /Gm /O1 /traceback /real_size:32 /assume:byterecl /stand:f95 /check:bounds
REM SET COPTS= /c /automatic /architecture:pn4 /Ob2 /MD /Gm /Ot /O3 /traceback /real_size:32 /assume:byterecl /stand:f95 /Qdiag-disable:5268
SET COPTS= /c /automatic /Ob2 /MD /Gm /traceback /Qzero /Qsave /real_size:32 /assume:byterecl /Qdiag-disable:5268

REM …
REM … compile …
REM …

ECHO.
ECHO Compiling ADAMS2AD and AeroDyn routines to create ADAMS.obj:
ifort %COPTS% /object:%ROOT_NAME%.obj %ROOT_NAME%.f90
ifort %COPTS% /object:%ROOT_NAME%f.obj %ROOT_NAME%.f

REM …
REM … link with Adams …
REM …

ECHO Linking ADAMS2AD and AeroDyn routines with ADAMS 2008r1:
SET DLLName=%ROOT_NAME%08r1
IF /I “%1”==“DLL” SET DLLName=%DLLName%_forBladedDLL

CALL C:\MSC.Software\MD_Adams\R3\common\mdi.bat cr-user n %ROOT_NAME%.obj %ROOT_NAME%f.obj -n %DLLName%.dll exit < NewLine.txt

GOTO end

:end
REM ----------------------------------------------------------------------------
REM ------------------------- CLEAR MEMORY -------------------------------------
REM ------------- and delete all .mod and .obj files ---------------------------
REM ----------------------------------------------------------------------------
REM ECHO

DEL *.mod
DEL *.obj

SET MyCompiler=
SET DF_LOC=

SET IVF_LOC=
SET ROOT_NAME=
SET COPTS=

SET NWTC_Files=

SET Wind_Files=
SET AeroDyn_Files=
SET FAST_Files=
SET A2AD_Files=
SET Fixed_Files=

SET NWTC_Lib_Loc=
SET Wind_Loc=
SET AeroDyn_Loc=
SET A2AD_Loc=
SET FAST_Loc=

SET DLLName=[/code]

When I execute it in the cmd, I find this errors:

[code]C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\DLL>CompileLinkA2
AD.bat
Intel(R) Parallel Studio XE 2013
Copyright (C) 1985-2013 Intel Corporation. All rights reserved.
Intel(R) Composer XE 2013 Update 3 (package 171)
Setting environment for using Microsoft Visual Studio 2010 x86 tools.

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\NWTC_Lib\source\SingPrec.f90

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\Source\SysIVF_ADA
MS.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\NWTC_Lib\source\NWTC_IO.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\NWTC_Lib\source\NWTC_Num.f90

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\NWTC_Lib\source\NWTC_Aero.f9
0
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\NWTC_Lib\source\ModMesh.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\NWTC_Lib\source\NWTC_Library
.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source\SharedInfl
owDefs.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source\HHWind.f90

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source\FFWind.f90

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source\HAWCWind.f
90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source\FDWind.f90

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source\CTWind.f90

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source\UserWind.f
90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\inflowWind\Source\InflowWind
Mod.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\AERODYN\Source\SharedTypes.f
90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\AERODYN\Source\AeroMods.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\AERODYN\Source\GenSubs.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\AERODYN\Source\AeroSubs.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\AERODYN\Source\AeroDyn.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\FAST\Source\FFTMod.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\FAST\Source\HydroCalc.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\Source\FAST_Param
s.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\FAST\Source\UserSubs.f90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\FAST\Source\UserVSCont_KP.f9
0
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\FAST\Source\PitchCntrl_ACH.f
90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\Source\A2AD_Mod.f
90
C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\Source\Adams_Subs
.f90
1 archivos copiados.
1 archivos copiados.

Compiling ADAMS2AD and AeroDyn routines to create ADAMS.obj:
Intel(R) Visual Fortran Compiler XE for applications running on IA-32, Version 1
3.1.1.171 Build 20130313
Copyright (C) 1985-2013 Intel Corporation. All rights reserved.
ifort: command line remark #10010: option ‘/automatic’ is deprecated and will be
removed in a future release. See ‘/help deprecated’
ifort: command line warning #10121: overriding ‘/automatic’ with ‘/Qsave’
30 DAY EVALUATION LICENSE

ifort: NOTE: The evaluation period for this product ends on 7-jun-2013 UTC.
ADAMS.f90(996): error #6848: This attribute specification is valid only in the s
pecification part of a module. [PUBLIC]
TYPE, PUBLIC :: ProgDesc
---------^
ADAMS.f90(1002): error #6848: This attribute specification is valid only in the
specification part of a module. [PUBLIC]
TYPE, PUBLIC :: FASTdataType
! The derived type for holding FAST binary output data.
---------^
ADAMS.f90(1159): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLCARY1]
SUBROUTINE AllCAry1 ( Ary, AryDim, Descr, ErrStat )
--------------^
ADAMS.f90(1192): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLCARY2]
SUBROUTINE AllCAry2 ( Ary, AryDim1, AryDim2, Descr, ErrStat )
--------------^
ADAMS.f90(1225): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLCARY3]
SUBROUTINE AllCAry3 ( Ary, AryDim1, AryDim2, AryDim3, Descr, ErrStat )
--------------^
ADAMS.f90(1261): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLIARY1]
SUBROUTINE AllIAry1 ( Ary, AryDim, Descr, ErrStat )
--------------^
ADAMS.f90(1293): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLIARY2]
SUBROUTINE AllIAry2 ( Ary, AryDim1, AryDim2, Descr, ErrStat )
--------------^
ADAMS.f90(1326): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLIARY3]
SUBROUTINE AllIAry3 ( Ary, AryDim1, AryDim2, AryDim3, Descr, ErrStat )
--------------^
ADAMS.f90(1361): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLLARY1]
SUBROUTINE AllLAry1 ( Ary, AryDim, Descr, ErrStat )
--------------^
ADAMS.f90(1395): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLLARY2]
SUBROUTINE AllLAry2 ( Ary, AryDim1, AryDim2, Descr, ErrStat )
--------------^
ADAMS.f90(1430): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLLARY3]
SUBROUTINE AllLAry3 ( Ary, AryDim1, AryDim2, AryDim3, Descr, ErrStat )
--------------^
ADAMS.f90(1466): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLRARY1]
SUBROUTINE AllRAry1 ( Ary, AryDim, Descr, ErrStat )
--------------^
ADAMS.f90(1500): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLRARY2]
SUBROUTINE AllRAry2 ( Ary, AryDim1, AryDim2, Descr, ErrStat )
--------------^
ADAMS.f90(1535): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLRARY3]
SUBROUTINE AllRAry3 ( Ary, AryDim1, AryDim2, AryDim3, Descr, ErrStat )
--------------^
ADAMS.f90(1571): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [ALLRARY4]
SUBROUTINE AllRAry4 ( Ary, AryDim1, AryDim2, AryDim3, AryDim4, Descr, ErrSta
t )
--------------^
ADAMS.f90(1998): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [DISPNVD0]
SUBROUTINE DispNVD0
--------------^
ADAMS.f90(2012): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [DISPNVD1]
SUBROUTINE DispNVD1 ( ProgInfo )
--------------^
ADAMS.f90(2030): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [DISPNVD2]
SUBROUTINE DispNVD2 ( Name, Ver )
--------------^
ADAMS.f90(2357): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [INT2LSTR]
FUNCTION Int2LStr ( Intgr )
------------^
ADAMS.f90(2990): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [R2LSTR4]
FUNCTION R2LStr4 ( FltNum )
------------^
ADAMS.f90(3025): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [R2LSTR8]
FUNCTION R2LStr8 ( FltNum )
------------^
ADAMS.f90(3060): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [R2LSTR16]
FUNCTION R2LStr16 ( FltNum )
------------^
ADAMS.f90(3096): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [READCARY]
SUBROUTINE ReadCAry ( UnIn, Fil, CharAry, AryLen, AryName, AryDescr, ErrStat
)
--------------^
ADAMS.f90(3140): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [READCARYLINES]
SUBROUTINE ReadCAryLines ( UnIn, Fil, CharAry, AryLen, AryName, AryDescr, Err
Stat )
--------------^
ADAMS.f90(3226): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [READCVAR]
SUBROUTINE ReadCVar ( UnIn, Fil, CharVar, VarName, VarDescr, ErrStat )
--------------^
ADAMS.f90(3570): error #6275: This statement is invalid for an internal procedur
e
CONTAINS
—^
ADAMS.f90(3616): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [READIARY]
SUBROUTINE ReadIAry ( UnIn, Fil, IntAry, AryLen, AryName, AryDescr, ErrStat )

--------------^
ADAMS.f90(3662): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [READIVAR]
SUBROUTINE ReadIVar ( UnIn, Fil, IntVar, VarName, VarDescr, ErrStat )
--------------^
ADAMS.f90(3712): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [READLARY]
SUBROUTINE ReadLAry ( UnIn, Fil, LogAry, AryLen, AryName, AryDescr, ErrStat )

--------------^
ADAMS.f90(3759): error #8095: The name of the internal procedure conflicts with
a procedure name in the MODULE PROCEDURE statement. [READLVAR]
SUBROUTINE ReadLVar ( UnIn, Fil, LogVar, VarName, VarDescr, ErrStat )
--------------^
ADAMS.f90(4574): catastrophic error: Too many errors, exiting
compilation aborted for ADAMS.f90 (code 1)
Intel(R) Visual Fortran Compiler XE for applications running on IA-32, Version 1
3.1.1.171 Build 20130313
Copyright (C) 1985-2013 Intel Corporation. All rights reserved.
ifort: command line remark #10010: option ‘/automatic’ is deprecated and will be
removed in a future release. See ‘/help deprecated’
ifort: command line warning #10121: overriding ‘/automatic’ with ‘/Qsave’

Linking ADAMS2AD and AeroDyn routines with ADAMS 2008r1:

*** Error: File ADA not found.

Enter name of next user object or source file (=none), or EXIT:
forrtl: severe (24): end-of-file during read, unit -4, file CONIN$
Image PC Routine Line Source
libifcoremd.dll 1003E1F6 Unknown Unknown Unknown
libifcoremd.dll 1003B480 Unknown Unknown Unknown
libifcoremd.dll 100034F6 Unknown Unknown Unknown
libifcoremd.dll 10003109 Unknown Unknown Unknown
libifcoremd.dll 1006648A Unknown Unknown Unknown
cru.exe 004038AA Unknown Unknown Unknown
cru.exe 00407350 Unknown Unknown Unknown
cru.exe 00405545 Unknown Unknown Unknown
kernel32.dll 7C81776F Unknown Unknown Unknown

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\ADAMSADAMS\DLL>
[/code]

I don’t know if the error could be of the Compiler, if the IVF 2013 version it’s not compatible with the ADAMS 2008. Could help me, please?

In the other hand, in other older post, you said me:
If you can use Adams 2008 and aren’t making changes to any of the A2AD source code, you can use the dlls supplied in the A2AD archive instead of trying to compile them.
Well, I try to do in this way. I follow this steps:
1- run “ADAMS - Commnad”
2- choose “ru-user”
3- User DLL: “\ADAMS08r1.dll”
4- Adams command file: “\Test01_ADAMS.acf”

The command window closes quickly, and I could not see any error message on it. But I run the normal cmd, and I call the Test01_ADAMS.acf to see the errors and I get:

[code]C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA>test01_ADAMS.acf


  •                                                               *
    
  •                  MSC.Software Corporation                     *
    
  •                                                               *
    
  •                         A d a m s                             *
    
  •                                                               *
    
  •      Automatic Dynamic Analysis of Mechanical Systems         *
    
  •                                                               *
    

  •                                                               *
    
  •                     LEGAL INFORMATION                         *
    
  •                                                               *
    
  • Warning: This computer program is protected by copyright law *
  • and international treaties. Unauthorized reproduction or *
  • distribution of this computer program, or any portion of it, *
  • may result in severe civil and criminal penalties. *
  •                                                               *
    
  • Copyright (C) 2008 MSC.Software Corporation and its licensors. *
  •                    All rights reserved.                       *
    
  •                                                               *
    
  • This computer program may contain certain third-party software *
  • that is protected by copyright and licensed from MSC.Software *
  • suppliers. Portions of this software are owned by UGS Corp. *
  • (C) Copyright 1997. All Rights Reserved. Portions, *
  • (C) 1998 Spacetec IMC Corporation (“Spacetec”). *
  •                                                               *
    
  • The MSC.Software logo, MSC, MSC Adams, MD Adams, Adams and *
  • Adams/ are trademarks or registered trademarks of MSC.Software *
  • Corporation or its subsidiaries in the United States and/or *
  • other countries. FLEXlm is a registered trademark of *
  • Macrovision Corporation. Parasolid is a registered trademark of *
  • UGS Corp. All other trademarks are the property of their *
  • respective owners. *
  •                                                               *
    

  •                                                               *
    
  •                  A d a m s / S o l v e r                      *
    
  •                                                               *
    
  •  2013-05-30 11:17:47              Version MD R3               *
    
  •                                                               *
    
  •  Customer Entitlement ID:         56943D12-BC5G45FC           *
    
  •                                                               *
    

Enter ADAMS model file name or Carriage Return or ? (or STOP):

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.adm

Enter ADAMS output file name or ? (default is same as input):

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.adm

 Adams model file ..
 C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.
 adm

Default file names for output files

 Tabular output file:
 C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.
 out

 Diagnostic file    :
 C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.
 msg

 Message Database file    :
 C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.
 mdb

 Graphics file      :
 C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.
 gra

 Request file       :
 C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.
 req

 Results file       :
 C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA\test01_ADM.
 res

Input Phase - Reading in Model


Adams/Solver dataset Title:
!ADAMS/View model name: FAST certification Test #01: AWT-27CR2 with many DOFs
wi


Reading of model complete.

Input Phase - Populating Solver database

---- WARNING ----
IP data specified for PART test01_ADM.Nacelle_P is not physically
meaningful, since it does not satisfy the requirement
that Ixx + Iyy must be greater than or equal to Izz.
The moments of inertia about the Center of Mass are:
Ixx = 9.9990E-04, Iyy = 9.9990E-04, Izz = 4418.0

---- WARNING ----
IP data specified for PART test01_ADM.Generator_P is not physically
meaningful, since it does not satisfy the requirement
that Iyy + Izz must be greater than or equal to Ixx.
The moments of inertia about the Center of Mass are:
Ixx = 30000., Iyy = 9.9990E-04, Izz = 9.9990E-04

Input Phase Complete.

CPU time is 4.68750E-02 seconds.

---- ERROR ----
Subroutine SFOSUB is not supplied for SFORCE test01_ADM.Generator_SF.

  Adams/Solver execution terminated by subprogram NO_USERSUB

CPU time used = 4.68750E-02 seconds

C:\Documents and Settings\Lucia\Escritorio\PROYECTO\PRUEBA>
[/code]

I don’t know if the error here it’s about de dll.

Please I need your help, I’m very stressed becuase when I can overcome a mistake, I find another.

Thanks of all. Lucia

Hi Lucia.

It looks like Adams can’t find the DLL or can’t load it. Are you using a 32-bit version of Adams 2008? Our DLL was compiled for 32-bits and can’t run on 64-bit versions. (I usually open a command prompt to run Adams [not the Adams-supplied shortcut; you can use Start>Run>Cmd] – that way the window doesn’t close.)

As for the compiling: I have not tried IVF 13, but I have had issues with IVF 12 and Adams 2008. I know IVF 10.1 works, and I’m pretty sure IVF 11.1 will work, too (though you might have to change the optimization levels to -O1 instead of -O2). That said, if there is an incompatibility between the compiler and Adams, it won’t show up until you try to link the compiled source code. Your errors appear before that step, so it looks like there is an issue with the source code.

The errors like the one you are getting are typically caused by

  1. Using incompatible versions of the NREL archives: Make sure you are using the versions of the NREL software listed on the web site where you downloaded Adams2AD
  2. Missing files when you tried to compile the DLL: Verify that the paths listed at the top of the CompileLinkA2AD script point to the correct locations; when files are found, they are listed on the screen, so you can look at the list (compare with files listed in the .bat file) to see if you are missing anything
  3. User modifications: Check any modifications you may have made; also note that each file MUST have an empty line at the end (because all of the files are concatenated into one big .f90 file)

If you haven’t changed any source code, I’d guess the problem is likely a result of (1). Otherwise, your error message says that it occurred at line 996 in ADAMS.f90. You can look at that line and see if anything looks strange before it. Because the error indicates that it isn’t in the specification part of a module (ProgDesc should be in Module NWTC_IO), I would look to see if there was an issue with the file concatenation between SysIVF_ADAMS.f90 and NWTC_IO.f90.

Hope that helps.

P.S. If you are using 64-bit Adams, you will need to compile the DLL using a 64-bit compiler, too.

Bonnie, thanks for your reply.

I try to do everithing that you said me.

  1. About using incompatible versions of the NREL archives, i’m sure that it isn’t the problem. Instead I dowload every archives again, and I continue with the same error.

2.About missing files when I tried to compile the DLL, I checked and it’s good, and the corrects location.

You told me something about the ProgDesc, the error indicates that it isn’t in the specification part of a module but I don’t udnderstand here, what I have to do.I checked that there wasn’t an issue with the file concatenation between SysIVF_ADAMS.f90 and NWTC_IO.f90, and apparently, there isn’t.
I try to create the dll one archive by one and the problems become with the NWTC_IO.

Thanks, Lucia.

Hi, Lucia.

Could you attach the Adams.f90 file that is generated when you run the script?

Hello,

I am a biginner for FAST code.
According to “Instructions for Compiling FAST using IVF for Windows”, there are specifying the version of codes.

In NREL website, only I can download the FAST code, version of 7.02.00 and with this version I tried to compile NREL OffshrBsline 5MW in index/public/jjonkman according to written instruction for the practice.
But I face lots of errors.

Do I have to use only specified version of codes as mentioned in instruction?

Please give any advice.

Best regards.

You should be able to compile FAST v7.02.00 using the instructions posted at the beginning of this topic. When you compile it, you need to make sure that you are using appropriate versions of the other modules (AeroDyn, InflowWind, NWTC Library)–the versions you need are listed on the FAST web site. You may need to add a source file for the new version of the NWTC Library.

I am not exactly sure what this means:

Are you trying to compile the FAST so that you can use the Bladed DLL Interface? (and comparing with the executables Jason provides?) If so, you will need to make some changes to the source code–those changes are documented in the compiling instructions.

I can’t give more help without seeing specific compiling errors (if you receive many errors, the first errors are the most important to list here).

Hello all,

I am trying to compile Fast.
Where can I download the AeroDyn v13.00.00a-bjj source files? (I need this version v13.00.00a-bjj)

Thanks.

Kaveh,

The current release of AeroDyn is v13.00.02a-bjj. The fact that only the last digit was changed should mean that nothing that would significantly affect the results was changed. You can get the latest release here:

http://wind.nrel.gov/designcodes/simulators/aerodyn/

Dear Marshall,

Thank you for your reply. Generally are you going to put the older versions of Fast and other files which are required for making the S_Function on the website?

Best Regards,
Kaveh

Hi Bonnie,

Thanks for your old answers.
Now I trying to get the .out file of the Test17, with the specific characteristics of my wind turbine. One of this characteristics is that my wind turbine isn’t onshore, it’s offshore. For that I’ve changed:

---------------------- PLATFORM ------------------------------------------------ 3 PtfmModel - Platform model {0: none, 1: onshore, 2: fixed bottom offshore, 3: floating offshore} (switch) "Platform.dat" PtfmFile - Name of file containing platform properties (quoted string) [unused when PtfmModel=0]

And my “Platform.dat” is:

-------------------------------------------------------------------------------- ---------------------- FAST PLATFORM FILE -------------------------------------- Platform characteristics ---------------------- FEATURE FLAGS (CONT) ------------------------------------ True PtfmSgDOF - Platform horizontal surge translation DOF (flag) True PtfmSwDOF - Platform horizontal sway translation DOF (flag) True PtfmHvDOF - Platform vertical heave translation DOF (flag) False PtfmRDOF - Platform roll tilt rotation DOF (flag) False PtfmPDOF - Platform pitch tilt rotation DOF (flag) False PtfmYDOF - Platform yaw rotation DOF (flag) ---------------------- INITIAL CONDITIONS (CONT) ------------------------------- 20.0 PtfmSurge - Initial or fixed horizontal surge translational displacement of platform (meters) 20.0 PtfmSway - Initial or fixed horizontal sway translational displacement of platform (meters) 20.0 PtfmHeave - Initial or fixed vertical heave translational displacement of platform (meters) 0.0 PtfmRoll - Initial or fixed roll tilt rotational displacement of platform (degrees) 0.0 PtfmPitch - Initial or fixed pitch tilt rotational displacement of platform (degrees) 0.0 PtfmYaw - Initial or fixed yaw rotational displacement of platform (degrees) ---------------------- TURBINE CONFIGURATION (CONT) ---------------------------- 7.5 TwrDraft - Downward distance from the ground level [onshore] or MSL [offshore] to the tower base platform connection (meters) 15.0 PtfmCM - Downward distance from the ground level [onshore] or MSL [offshore] to the platform CM (meters) 30.0 PtfmRef - Downward distance from the ground level [onshore] or MSL [offshore] to the platform reference point (meters) ---------------------- MASS AND INERTIA (CONT) --------------------------------- 7466.330 PtfmMass - Platform mass (kg) 4229230.0 PtfmRIner - Platform inertia for roll tilt rotation about the platform CM (kg m^2) 4229230.0 PtfmPIner - Platform inertia for pitch tilt rotation about the platform CM (kg m^2) 164230.0 PtfmYIner - Platform inertia for yaw rotation about the platform CM (kg m^2) ---------------------- PLATFORM (CONT) ----------------------------------------- 1 PtfmLdMod - Platform loading model {0: none, 1: user-defined from routine UserPtfmLd} (switch)

When I include this part I get some error like:

Error: FF wind array was exhausted at 0 seconds <trying to access data at -0.95724 seconds>. Error getting velocity in AeroDyn/AD_WindVelocityWIthDisturbance<>.

I found for this error in this forum, and I found it here: http://forums.nrel.gov/t/error-from-ff-wnd-file-when-running-fast/491/1

I’ve changed that, but I have the same error.

Hope you can help me.

Thanks for all.

Hi, Lucia.

I doubt that your issue is related to dynamic inflow. I don’t recommend commenting out the section you quoted unless you want to specifically investigate that part of the code. Many things can cause the simulation to produce an error about the wind array being exhausted.

If you are modifying CertTest #17, I’m assuming you used the same wind file, which has a width and height of only 8 meters. If you put that turbine offshore, you’ll likely need to increase the size of the wind file grid. (The initial conditions you list give an initial displacement of 20 meters.) See this post for help figuring out how large your TurbSim grid should be: http://forums.nrel.gov/t/turbsim-grid-sizes/718/1

Hi Neelabh

Sorry to dig into this old post since that I faced the same problem when compiling FAST in order to use Bladed DLL.
I guess you only used the executable file produced in the Debug mode, and I got the same error messages as yours.
You may try to switch into Release mode when compiling. It works well for me.

Kind regards
Yulin

Hello Bonni
I compile FAST(v8.03.02b-bjj) based on the steps(wind.nrel.gov/public/bjonkman/De … ctions.pdf
).But there is something wrong. I want to ask whether the compile steps of FAST(v8.03.02b-bjj) are the same with the described above.
Thank You.
Warm Regards,
Yiqing Xia