You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I wanted to make sure you all are in the loop on some developments coming soon here. We are planning to open a PR in the near future that adds a viscoelastic model for synthetic lines and a VIV model for dynamic cables to MD-C. The viscoelastic stuff will just be to match what's in OpenFAST: OpenFAST/openfast#2459
The VIV stuff is a bit more involved, we have a paper in the works now that we are hoping to submit for review this month.
The big reason I wanted to bring this up is that both of these require an additional state variable that needs to be integrated each timestep. I've done this in a hackish way, by introducing another state called Misc that is a line-type state handled every time a line state is handled. Misc.pos[0] contains the state for VIV, Misc.pos[1] contains the state for viscoelastic stuff. This leaves 4 other unused states that are integrated (Misc.pos[2], Misc.vel[0:2]), which is not very efficient. Before I went and changed how we handled states I thought it would be good to discuss with you all thoughts on the best way to do this. I can't imagine this is the last time an additional state will be added, so having an approach to handle this would be good. My initial thought was to add a new Misc state type that only has the number of states needed, but the overwritten operators and time integration schemes are pretty rigid to the pos and vel states being vec3 or vec6. Let me know your thoughts on this!
The text was updated successfully, but these errors were encountered:
Hi @sanguinariojoe and @AlexWKinley,
I wanted to make sure you all are in the loop on some developments coming soon here. We are planning to open a PR in the near future that adds a viscoelastic model for synthetic lines and a VIV model for dynamic cables to MD-C. The viscoelastic stuff will just be to match what's in OpenFAST: OpenFAST/openfast#2459
The VIV stuff is a bit more involved, we have a paper in the works now that we are hoping to submit for review this month.
The big reason I wanted to bring this up is that both of these require an additional state variable that needs to be integrated each timestep. I've done this in a hackish way, by introducing another state called Misc that is a line-type state handled every time a line state is handled. Misc.pos[0] contains the state for VIV, Misc.pos[1] contains the state for viscoelastic stuff. This leaves 4 other unused states that are integrated (Misc.pos[2], Misc.vel[0:2]), which is not very efficient. Before I went and changed how we handled states I thought it would be good to discuss with you all thoughts on the best way to do this. I can't imagine this is the last time an additional state will be added, so having an approach to handle this would be good. My initial thought was to add a new Misc state type that only has the number of states needed, but the overwritten operators and time integration schemes are pretty rigid to the pos and vel states being vec3 or vec6. Let me know your thoughts on this!
The text was updated successfully, but these errors were encountered: