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

Visualize mooring lines with VTK #539

Open
bartoszstachowicz opened this issue Aug 30, 2020 · 4 comments
Open

Visualize mooring lines with VTK #539

bartoszstachowicz opened this issue Aug 30, 2020 · 4 comments

Comments

@bartoszstachowicz
Copy link

bartoszstachowicz commented Aug 30, 2020

Is your feature request related to a problem? Please describe.

Describe the solution you'd like
<Dear All,
I would like to be able to visualize the mooring lines as line meshes, through the VTK routines, for TurbineType = Type_Offshore_Floating, when CompMooring == Module_MAP and the VTK_type is set to 3- all meshes>

Describe alternatives you've considered
<From what I gather, point meshes are already available for visualizing the fairleads positions, forces, velocities, and accelerations. I found it in FAST_Subs.f90 (line 5141), in the subroutine WrVTK_AllMeshes where, MAPp%y%PtFairleadLoad is fed into MeshWrVTK subroutine (from ModMesh.f90, line 275) and written into the file RootName.MAP_PtFairlead.VTK_count.vtp. These work great.
I was wondering if it would be possible to add another mesh output, a mesh of the line2 type, which would be a set of intermediate points between the nodes defined in MAP++ input file, satisfying the line catenary equations for each mooring line element, with connectivities. They could be linked by straight lines segments at some given distance from one another, their number being dependent on the length of the line element.
Would you be interested in having such functionality or is it too much bother? If this seems like a good idea, I am very willing to work on developing it, but my skills are very limited and I need help. Or advice about where to start.

I'm reading the Programmer's hanbook now.

Best Regards

Bartosz Stachowicz>

Additional context
<--->

@jjonkman
Copy link
Collaborator

Dear @bartoszstachowicz,

Good question. The inability to visualize the mooring lines is an unfortunate limitation of the current visualization capability of OpenFAST. And not just for MAP++, but also for the other mooring modules of OpenFAST: MoorDyn and FEAMooring. Just a few comments:

  • The mooring lines are not currently visualized because the mooring modules currently interact with other modules through their fairlead connections only (for the mooring-substructure interaction), so, displacement and loading of points along each mooring line are not known by the OpenFAST glue code.

  • To add the visualization capability, it would likely be best to add an output of the mooring modules related to the displacement of nodes along each mooring line (even if this output does not have an associated interaction with other modules). A line2 mesh should be used to ensure that visualization functionality can interpret the interconnection between the point elements.

  • MAP++ solves each mooring line analytically, and so, each line is not numerically discretized (of course, there are nodes at the interconnections between each mooring line). This may make it difficult to visualize the catenary shape of each line in MAP++, unless nodes are artificially added to the solution. MoorDyn and FEAMooring do involve discretization of each mooring line into multiple line segments.

I'll let others comment on how much effort it would be to develop this new functionality.

Best regards,

@bartoszstachowicz
Copy link
Author

bartoszstachowicz commented Sep 15, 2020

Dear OpenFAST team,
I gave a try this weekend and it kind of works. In MAP C++ there is a routine already to evaluate the coordinates of a given number of points along the line: map_plot_x_array
I had to modify outputs, to create a single mesh for all the lines in the simulation, and initial inputs to be able to set the element length.
However, there is a shift in connect nodes, in the local line x-direction, when plotted. I hope this is only true for the plotting routine :).
Maybe someone knows why this is? I couldn't figure this out yet.
I'm attaching some pictures of the shift.

Kindest regards,

B.S.
lines1
linestop
linesside

@andrew-platt
Copy link
Collaborator

andrew-platt commented Sep 15, 2020

@bartoszstachowicz, That's a really nice addition! I'm not entirely sure why there is a shift in the x-direction of the cables. I would have to look at your implementation to tell if it is an artifact of the VTK export, or a bug in MAP++.

Is this feature something you would like to contribute to the OpenFAST community? If so, would you like to create a pull request to the dev branch with your code addition?

@bartoszstachowicz
Copy link
Author

@andrew-platt , Hello, yes sure, as soon as I have a moment to tidy it up a bit and learn how this works with pull requests.

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