Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenFAST build does not include src to build DISCON dynamic library #6

Closed
HaymanConsulting opened this issue Jan 10, 2017 · 6 comments
Assignees

Comments

@HaymanConsulting
Copy link
Contributor

HaymanConsulting commented Jan 10, 2017

A DISCON dynamic-linked library (DLL) is needed to run OpenFAST if the ServoDyn input file is using option 5 for the PCMode and VSContrl parameters.

The DISCON DLL is built from a fortran file containing the DISCON subroutine with the following interface:

SUBROUTINE DISCON ( avrSWAP, aviFAIL, accINFILE, avcOUTNAME, avcMSG ) BIND (C, NAME='DISCON')
!DEC$ ATTRIBUTES DLLEXPORT :: DISCON

We should probably include a 'dummy' DLL in a standard build via a DISCON.f90 file, and people can replace the dummy DISCON.f90 file with their own if they need a certain controller behavior. Perhaps this DISCON.f90 file lives in modules-local/servodyn/src ?

As a side note, various regression tests need different flavors of the DISCON DLL, what process is responsible for building these prior to launching regression tests? Perhaps this is a separate issue!

@sayerhs
Copy link
Contributor

sayerhs commented Jan 10, 2017

I thought we used the dynamic library loading capability to load the dll instead of compiling openfast with it, so why do we need a dummy DISCON.f90 file?

@HaymanConsulting
Copy link
Contributor Author

HaymanConsulting commented Jan 10, 2017 via email

@gantech
Copy link
Collaborator

gantech commented Jan 10, 2017

So, the DISCON.f90 file was in the CertTest directory in the earlier distributions of FAST. May be we include it in the test repo?

@sayerhs
Copy link
Contributor

sayerhs commented Jan 10, 2017

I see this as part of glue-codes similar to simulink or labview, provide an example of DISCON.f90 example that the user can modify and compile inside glue-codes. Most likely the DISCON interface would link to some matlab/simulink codebase (at least based on my experience at Envision).

@HaymanConsulting
Copy link
Contributor Author

HaymanConsulting commented Jan 10, 2017 via email

ghost pushed a commit that referenced this issue Aug 9, 2017
@rafmudaf
Copy link
Collaborator

This issue has been fixed by pull request #115

bjonkman referenced this issue in bjonkman/openfast Jul 19, 2019
linear: fixed sign error on previous rotation dY calculation
andrew-platt referenced this issue in andrew-platt/openfast Mar 19, 2020
andrew-platt pushed a commit that referenced this issue Jul 31, 2020
mattEhall referenced this issue in mattEhall/openfast Dec 3, 2020
Bug fix: update paths for modules in CMake
nikhar-abbas pushed a commit to nikhar-abbas/openfast that referenced this issue Oct 21, 2021
Merging Andy's MDv2+SrvDLin to Matt's MDv2
deslaughter pushed a commit to deslaughter/openfast that referenced this issue Sep 8, 2022
Fix potential numerical issues with acos in HD/SeaSt
andrew-platt pushed a commit that referenced this issue Jul 3, 2024
MD reg tests: update r-test pointer
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants