-
Notifications
You must be signed in to change notification settings - Fork 22
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
Explicitly consider buoyancy vs. gravity #49
Comments
Everything is more complicated in execution... ;)
We will go with option 3. We will change def my_buoyancy_function(my_wec, x_wec, x_opt):
...
return f_b # of size n_dof x n_collocation_points
f_add = {
'f_b': my_buoyancy_function,
'f_g': my_gravity_function,
'f_pto': my_pto_function,
'f_nlhydro': my_nonlinear_hyrdodynamics_function,
'f_mooring`: my_mooring_function,
} This will allow us to automatically generate an |
|
Per our discussion today, @cmichelenstrofer and I decided we should put effort towards helping merge capytaine #106, as this works based on the unit vectors of the surface mesh and BEM DOFs, thus requiring no additional input from the user. |
@ryancoe Should we re-open this issue since we do want to eventually move to "option 2: Internally calculate |
Let's make a new issue so that the final result is a been between Option 2 and Option 3: we allow user to set functions, but we give them tools for building these functions. |
Currently, we assume equilibrium for the gravity and buoyancy of the body. This can be a bit unintuitive. We want to alter the residual equation to include gravity and buoyancy. In the case that these are not balanced (e.g., a tether or mooring system provides some additional pretension), the user will need to include a
f_add
that balances the gravity and buoyancy forces.https://github.com/SNL-WaterPower/WecOptTool/blob/51c3aea47098ab1a7cf6c2a8f9801ff60de5645e/wecopttool/core.py#L786
f_b = f_b0 + kx
, wherek = 0
for a submerged bodyWe considered altering the impedance, but gravity is not position (state) dependent.
The text was updated successfully, but these errors were encountered: