Comments (2)
Hi Ahirvoas,
Thanks for reaching out. It's very exciting to see the code being used by more people! Apologies for the delayed response.
In general, MoorPy is still very much in a "development" phase and the documentation is still very much in progress.
It seems like your approach and logic are all correct, but I'll offer some suggestions to get things working:
-
I'm not sure which branch you are using, but the "master" branch has not been updated in a while. The "dev" branch is the most up-to-date.
-
The System.solveEquilibrium() method is very out-of-date. We have been using the System.solveEquilibrium3() method for all of our equilibrium solves
-
I just pushed an update to the dev branch that comments out the solveEquilibrium() method, renames the solveEquilibrium3() method to solveEquilibrium(), and adds in another solveEquilibrium3() method to call the new solveEquilibrium() method to account for our other dependencies. So for now, keep calling solveEquilibrium().
-
I am slightly confused because I don't see the getSystemStiffness() method calling any solveEquilibrium() method
- getSystemStiffness finds the stiffness maxtrix of all "DOFtype" DOFs without equilibrating
- getCoupledStiffness finds the stiffness matrix of all coupled DOFs while equilibrating the free DOFs
- getSystemStiffnessA finds the stiffness matrix of all "DOFtype" DOFs using a purely analytical approach without equilibrating anything
-
Here are my suggestions of what you should do to produce the stiffness matrix of the OC3 spar:
ms = mp.System('NRELOffshrBsline5MW_OC3Hywind_MoorDyn.dat', depth=320)
ms.initialize(plots=0)
print(ms.bodyList[0].type)
If the above printed line is 0, then the body is a free body. If it's 1, it's fixed. If it's -1, it's coupled
ms.solveEquilibrium(DOFtype="free", plots=0, rmsTol=10, maxIter=200)
This call to solveEquilibrium (see the recent commit) will not change anything if the body type is 1 or -1, since there are no free points to equilibrate
If the body type is 0, then the body will want to balance forces, which include weight/buoyancy (see the Body class)
Now that the system is equilibrated, we can calculate the stiffness matrix
If the body type is 0, I would recommend
K_mooring1 = ms.getSystemStiffness(DOFtype="free", dx = 0.1, dth = 0.1, solveOption=1, plots=0)
If the body is -1, I would recommend
K_mooring2 = ms.getCoupledStiffness(any optional inputs you want)
Regardless of the body type, I would still recommend running
K_mooringA = ms.getSystemStiffnessA(options)
And comparing this to any of the other system stiffness matrices, especially in terms of run time (it's a much more efficient method)
Hopefully this clears up any issues between solveEquilibrium and any system stiffness method.
Stein
from moorpy.
Presumably resolve, so closing this issue.
from moorpy.
Related Issues (6)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from moorpy.