Hi,
I have problems with FAST compiled to use a BladedDLL as controller. I am using Intel Fortran compiler 9.1 with Microsoft Inkremental Linker 9.00.
Then I simulated a wind turbine first with TwrPotent activated, then with TwrPotent deactivated. The first runs fine for the whole 600s, the second stops at 131s. Both simulations look fine until they stop (rpm and pitch angles are not going unstable, but look rather well).
[code] Running FAST (v7.00.00a-bjj, 31-Mar-2010).
Linked with NWTC Subroutine Library (v1.02.00, 16-Mar-2010).
Heading of the FAST input file: XXXXXXXXXXXXXXXXXXXXXXXXX
Aerodynamic loads calculated using AeroDyn (v13.00.00a-bjj, 31-Mar-2010).
Heading of the AeroDyn input file: XXXXXXXXXXXXXXXXXXXXXXXXXX
Assuming Wind\Windfile.wnd is a binary FF wind file.
Reading a 14x14 grid (96 m wide, 47.45 m to 143.45 m above ground) with a characterstic wind
speed of 14 m/s.
Processed 14538 time steps of 20-Hz full-field data (726.85 seconds).
Timestep: 131 of 600 seconds. Estimated final completion at 09:18:58.
Error: FF wind array was exhausted at 131.79 seconds (trying to access data at 0 seconds).
Error getting velocity in AeroDyn/AD_WindVelocityWithDisturbance().
Aborting FAST.
[/code]
I looked into the source code and found the error source to be in FFWind.f90, FUNCTION FF_Interp(…), around line 2000. There I changed the error message to give some more information:
CALL WrScr( ' Error: FF wind array was exhausted at '//TRIM( Flt2LStr( REAL( TIME, ReKi ) ) )// &
' seconds (trying to access data at '//TRIM( Flt2LStr( REAL( TimeShifted, ReKi ) ) )// &
' seconds at position '//TRIM( Flt2LStr( REAL( Position(1), ReKi ) ) )// &
'. TGRID='//TRIM( Flt2LStr( REAL( TGRID, ReKi ) ) )// &
' ITLO='//TRIM( Int2LStr( INT( ITLO ) ) )//'.' )
After compiling again, the error is:
Error: FF wind array was exhausted at 131.79 seconds (trying to access data at 0 seconds at
position 0. TGRID=0 ITLO=-2147483647.
Error getting velocity in AeroDyn/AD_WindVelocityWithDisturbance().
I am new to Fortran, so I hope I used the correct formatting functions for printing the variables. If I am correct the variables are:
TIME = 131.79
TimeShifted = 0
Position(1) = 0
TGRID = 0
ITLO = -2147483647
If you now look at the formulas to calculate the values there seem to happen strange things:
TimeShifted = TIME + ( FFYHWid - Position(1) )*InvMFFWS
= 131.79 + (96/2 - 0) * 1/14 = 135.21 but FAST tells me that is 0 ?!
TGRID = TimeShiftedFFRate = 0??? = 0 seems to be correct
ITLO = INT( TGRID ) + 1 = INT(0)+1 = 1 but FAST tells me thats -2147483647
Can anybody tell me what is happening here?
Thank you very much in advance,
Felix