-
Notifications
You must be signed in to change notification settings - Fork 31
Description
Description of feature
I am wondering if there are any plans to extend RAFT to multiple hydrodynamic bodies, and if not how easy it would be for me to do this myself? This would be useful for simulating wave energy converters. I would want to do this in RAFT instead of some other code like WEC-Sim or WecOptTool because the frequency domain with the drag linearization is faster than the time/pseudospectral domains and I'm doing optimization.
Potential solution
I see that there is an ndof property set to 6* number of turbines, but I assume that simulating a 2-body system would be more complicated than just setting ndof=12. Here are my initial thoughts on what would need to be done, please let me know what I am missing because I haven't read through the RAFT source in detail yet.
- adjust calcBEM to run multiple bodies and get/save interaction coefficients (although for my specific usecase I plan to override HAMS and use hydro coeffs that I calculate with a different package that is faster - matched eigenfunction expansion method)
- find places in the code that 6 dofs are implicitly assumed, ie in RAO plots, and modify accordingly
- account for constrained motion in the dynamics (ie after constraints the two-body RM3 WEC has 7 DOF because the float can only translate wrt the spar, but the hydro coefficients are computed for the 12 DOF system). This seems like the hard part. The DTOcean+ project has code for multibody hydrodynamics in the frequency domain, which I would try to replicate. I think I would prefer to start with RAFT and add multibody than to start with DTOcean+ and add drag iteration and open MDAO integration, because RAFT seems better maintained and has a more permissive license.
Open to any additional thoughts you have. I'm a PhD student and able to develop this if it makes sense within the time constraints of my project. Thanks.