Currently I’m working on a coupling project with AeroDyn. In broad strokes, the project is to write an interface for AeroDyn using AeroDyn_Driver as the starting point, modify it to allow the hub kinematics and inflow velocities to be set from subroutine arguments, and then put it into a DLL for another piece of software to link to.
My question has to do with the fact that the piece of software that is going to use this DLL interface has a variable time-step, and will therefore be providing the kinematic inputs at varying times. So my question is: is it okay for the current integrator used in AeroDyn to change the internal dt variables during a simulation? To illustrate, my initial idea was to establish a maximum dt that AeroDyn will take, so that if the time-step taken by the interfacing software is too big, AeroDyn will break the time-steps into integer multiples of that maximum dt and call AD_UpdateStates using each one, and then set all the dt variables to one last remainder (if needed) so that the last call to AD_UpdateStates brings the states to the same time as the latest inputs provided by the interfacing software. I’d also have to modify the two subroutines AD_UpdateStates, and Set_AD_Inputs to take an actual time instead of a step number, but after this then it should work, depending on if the integrator used in AeroDyn can deal with a varying dt.
I have read this post http://forums.nrel.gov/t/aerodyn-feedback/57/1 which states that the integrator in the unsteady airfoil aerodynamics model needs a fixed time-step, but the post is from 2016, so I’m not sure if the integrator implementation has changed since then.
Thank you for any help.