CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Community Contributions

[waves2Foam] Mooring Lines waves2Foam How To

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree3Likes
  • 2 Post By mhasif02
  • 1 Post By ngj

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 16, 2018, 11:24
Default Mooring Lines waves2Foam How To
  #1
New Member
 
Mohamad
Join Date: Apr 2017
Location: Oxford, UK
Posts: 10
Rep Power: 8
mhasif02 is on a distinguished road
Dear all,

I have managed to model the mooring lines using waves2foam using OFv2.3.x. I combine the interDyMFoam and waveFoam solver (waveDyMFoam) and use this solver for my case (floatingObject+waveFlume tutorials). You can find the guide on how to compile waveDyMFoam in this forum. For this post, I will only explain how to use the mooring lines in waves2foam. 1st you need to compile the waves2foamMooring in the directory $WAVES/src/waves2FoamMooring. I only made the following changes:

in mooringLine.H, line 88:
delete: const scalar maxAngle_ = 88.0;
paste: scalar maxAngle_;

in mooringLine.C, line 65:
add: maxAngle_(88.0),
below the line: nCells_(101),

Compile using wmake.

Then, in constant/dynamicMeshDict make the following changes:

dynamicFvMesh dynamicMotionSolverFvMesh;
motionSolverLibs ("libwaves2FoamMooring.so");
solver sixDoFRigidBodyMotion;
...
restraints
{
mooringLine1
{
sixDoFRigidBodyMotionRestraint mooringLine;
anchor (24 16 0); // anchor point
refAttachmentPt (28 18 8); // attachment to the floatingObject
massPerLength 950; // mass per unit length
lineLength 10; //length of mooring line
gMag -9.81; // gravity magnitude
gravityVector (0 0 1);
unitVert 10; // unit vertical, vertical length, not sure
mooringState simpleState; // or restingState or hangingState
}
}

in the system/controlDict add the following lines:

libs
(
"libwaves2FoamMooring.so"
);



Cheers,
Mohamad
jinheng and AhmedHamada like this.
mhasif02 is offline   Reply With Quote

Old   July 17, 2018, 07:53
Default
  #2
New Member
 
Mohamad
Join Date: Apr 2017
Location: Oxford, UK
Posts: 10
Rep Power: 8
mhasif02 is on a distinguished road
Hi Niels,

I've managed to use the mooring lines in waves2foam.

But I still don't know how to visualize the mooring lines in Paraview. What else should I add to the dynamicMeshDict and/or controlDict?

Last edited by wyldckat; August 17, 2018 at 17:57.
mhasif02 is offline   Reply With Quote

Old   September 12, 2018, 09:39
Default
  #3
New Member
 
金恒
Join Date: Oct 2012
Posts: 17
Rep Power: 13
jinheng is on a distinguished road
Quote:
Originally Posted by mhasif02 View Post
Hi Niels,

I've managed to use the mooring lines in waves2foam.

But I still don't know how to visualize the mooring lines in Paraview. What else should I add to the dynamicMeshDict and/or controlDict?
hi Mohamad,
did you find any way to visualize the mooring lines in Paraview?
thanks for your any tips
jinheng is offline   Reply With Quote

Old   September 13, 2018, 12:26
Default
  #4
ngj
Senior Member
 
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Copenhagen, Denmark
Posts: 1,900
Rep Power: 37
ngj will become famous soon enoughngj will become famous soon enough
Hi all,


If the 'breeder' part of waves2Foam is compiled correctly, then there should be a utility called 'writeMooringLines'. This writes a 1D mesh of the mooring lines, which can be visualised with ParaView.


Kind regards,


Niels
__________________
Please note that I do not use the Friend-feature, so do not be offended, if I do not accept a request.
ngj is offline   Reply With Quote

Old   September 16, 2018, 12:50
Default
  #5
New Member
 
金恒
Join Date: Oct 2012
Posts: 17
Rep Power: 13
jinheng is on a distinguished road
Quote:
Originally Posted by ngj View Post
Hi all,


If the 'breeder' part of waves2Foam is compiled correctly, then there should be a utility called 'writeMooringLines'. This writes a 1D mesh of the mooring lines, which can be visualised with ParaView.


Kind regards,


Niels
hi Niels,

I have a problem that “keyword thickness is undefined in dictionary "/home/jd2018/OpenFOAM/jd2018/v1606+/applications/utilities/waves2Foam/tutorials/waveFoam/waveFlumeDyMFoam/constant/dynamicMeshDict.sixDoFRigidBodyMotionCoeffs.restra ints.mooringLine1"”
while, I did not find any define or scale about the thickness. Can you kindly tell me what's mean of this problem and how to solve that.

Thanks a lot.

sammy
jinheng is offline   Reply With Quote

Old   September 17, 2018, 10:41
Default
  #6
ngj
Senior Member
 
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Copenhagen, Denmark
Posts: 1,900
Rep Power: 37
ngj will become famous soon enoughngj will become famous soon enough
Hi Sammy,


The thickness has to do with the visual representation of the mooring line, when you use the post-processing tool. E.g. thickness 1, would give a thickness of 1 m, while thickness 0.1 would give a thickness of 0.10 m. Therefore, an appropriate value depends on the dimensions of your problem.


The value of 'thickness' does not affect the physical behavior of the mooring line, because the loading on the mooring line from the surrounding water is not accounted for.



Kind regards,


Niels
fumiya likes this.
__________________
Please note that I do not use the Friend-feature, so do not be offended, if I do not accept a request.
ngj is offline   Reply With Quote

Old   November 8, 2019, 15:47
Default
  #7
New Member
 
Tanvir Sayeed
Join Date: Jan 2015
Posts: 9
Rep Power: 11
tms120 is on a distinguished road
Quote:
Originally Posted by jinheng View Post
hi Niels,

I have a problem that “keyword thickness is undefined in dictionary "/home/jd2018/OpenFOAM/jd2018/v1606+/applications/utilities/waves2Foam/tutorials/waveFoam/waveFlumeDyMFoam/constant/dynamicMeshDict.sixDoFRigidBodyMotionCoeffs.restra ints.mooringLine1"”
while, I did not find any define or scale about the thickness. Can you kindly tell me what's mean of this problem and how to solve that.

Thanks a lot.

sammy

It seems like in order to visualize, there are other parameters need to be defined like centreofMass, orientation etc... in dynamicMeshDict file. Can you please share one example to visualize mooring line using writeMooringLines. I will appreciate...
tms120 is offline   Reply With Quote

Old   December 2, 2020, 11:04
Default
  #8
New Member
 
Arun Kumar
Join Date: Sep 2019
Location: Dundee, Scotland
Posts: 15
Rep Power: 6
AR91 is on a distinguished road
Quote:
Originally Posted by mhasif02 View Post
Dear all,

I have managed to model the mooring lines using waves2foam using OFv2.3.x. I combine the interDyMFoam and waveFoam solver (waveDyMFoam) and use this solver for my case (floatingObject+waveFlume tutorials). You can find the guide on how to compile waveDyMFoam in this forum. For this post, I will only explain how to use the mooring lines in waves2foam. 1st you need to compile the waves2foamMooring in the directory $WAVES/src/waves2FoamMooring. I only made the following changes:

in mooringLine.H, line 88:
delete: const scalar maxAngle_ = 88.0;
paste: scalar maxAngle_;

in mooringLine.C, line 65:
add: maxAngle_(88.0),
below the line: nCells_(101),

Compile using wmake.

Then, in constant/dynamicMeshDict make the following changes:

dynamicFvMesh dynamicMotionSolverFvMesh;
motionSolverLibs ("libwaves2FoamMooring.so");
solver sixDoFRigidBodyMotion;
...
restraints
{
mooringLine1
{
sixDoFRigidBodyMotionRestraint mooringLine;
anchor (24 16 0); // anchor point
refAttachmentPt (28 18 8); // attachment to the floatingObject
massPerLength 950; // mass per unit length
lineLength 10; //length of mooring line
gMag -9.81; // gravity magnitude
gravityVector (0 0 1);
unitVert 10; // unit vertical, vertical length, not sure
mooringState simpleState; // or restingState or hangingState
}
}

in the system/controlDict add the following lines:

libs
(
"libwaves2FoamMooring.so"
);



Cheers,
Mohamad
Hello Mohamad,
Thank you for the explanation of the mooring setup. I was wondering if you have figured out what the term unitVert means and how should one approach it. I am trying to recreate a catenary mooring line but I am not sure what this term is and how to decide what value it should take.
Thanks,
Arun.
AR91 is offline   Reply With Quote

Old   January 31, 2021, 22:03
Default
  #9
New Member
 
Ji
Join Date: Oct 2013
Posts: 5
Rep Power: 12
aisy is on a distinguished road
Quote:
Originally Posted by mhasif02 View Post
Dear all,

I have managed to model the mooring lines using waves2foam using OFv2.3.x. I combine the interDyMFoam and waveFoam solver (waveDyMFoam) and use this solver for my case (floatingObject+waveFlume tutorials). You can find the guide on how to compile waveDyMFoam in this forum. For this post, I will only explain how to use the mooring lines in waves2foam. 1st you need to compile the waves2foamMooring in the directory $WAVES/src/waves2FoamMooring. I only made the following changes:

in mooringLine.H, line 88:
delete: const scalar maxAngle_ = 88.0;
paste: scalar maxAngle_;

in mooringLine.C, line 65:
add: maxAngle_(88.0),
below the line: nCells_(101),

Compile using wmake.

Then, in constant/dynamicMeshDict make the following changes:

dynamicFvMesh dynamicMotionSolverFvMesh;
motionSolverLibs ("libwaves2FoamMooring.so");
solver sixDoFRigidBodyMotion;
...
restraints
{
mooringLine1
{
sixDoFRigidBodyMotionRestraint mooringLine;
anchor (24 16 0); // anchor point
refAttachmentPt (28 18 8); // attachment to the floatingObject
massPerLength 950; // mass per unit length
lineLength 10; //length of mooring line
gMag -9.81; // gravity magnitude
gravityVector (0 0 1);
unitVert 10; // unit vertical, vertical length, not sure
mooringState simpleState; // or restingState or hangingState
}
}

in the system/controlDict add the following lines:

libs
(
"libwaves2FoamMooring.so"
);



Cheers,
Mohamad
Thanks for your share!
Did you try the mooring line in a new version OF and waves2foam? I want to compile them in OFv1912, but the mooringline can not compile.
aisy is offline   Reply With Quote

Old   May 25, 2021, 04:15
Default
  #10
New Member
 
Carlos Eduardo Simőes de Almeida
Join Date: May 2021
Location: Lisboa, Portugal
Posts: 16
Rep Power: 4
cesa is on a distinguished road
Quote:
Originally Posted by aisy View Post
Thanks for your share!
Did you try the mooring line in a new version OF and waves2foam? I want to compile them in OFv1912, but the mooringline can not compile.

Hello, were you able to compile waveDyMFoam using OF-v1912? I'm getting some strange error when I try to compile this new solver using this version of OF.




Best regards,
Carlos
cesa is offline   Reply With Quote

Old   August 5, 2021, 05:33
Question waves2FoamMooring compilation on recent OF version
  #11
New Member
 
Join Date: Mar 2021
Posts: 11
Rep Power: 6
4lix is on a distinguished road
Hi Carlos and all,
Did you find a way to compile waves2FoamMooring on recent OpenFOAM version ?
I'm very interesting to hear about your solution if you find one.
Thanks in advance for your help !
Best regards,
Alix
4lix is offline   Reply With Quote

Old   May 17, 2022, 13:45
Default waves2Foam Mooring Lines Foam Extend 4.0
  #12
New Member
 
Jacob Fontaine
Join Date: Apr 2022
Posts: 3
Rep Power: 3
fontainej16 is on a distinguished road
Hello,

I am trying to compile the waves2Foam mooring for FE4.0, however, even after making the changes mentioned in the first post, I am still getting an error message.

I believe it has something to do with polyPatch syntax maybe changing from versions, and something in my dynamicMesh. I am not too sure how to approach fixing this problem, so any help would be appreciated.

I am going to dive into my waveDymFoam solver I have working for FE4.0 and see if I can catch any changes.

Attached is my log file
Attached Files
File Type: txt logMooring.txt (7.8 KB, 22 views)
fontainej16 is offline   Reply With Quote

Old   December 27, 2023, 02:59
Default VTK files generation for waves2FoamMooring
  #13
New Member
 
Hf
Join Date: Nov 2012
Posts: 27
Rep Power: 13
jasonchen is on a distinguished road
Quote:
Originally Posted by 4lix View Post
Hi Carlos and all,
Did you find a way to compile waves2FoamMooring on recent OpenFOAM version ?
I'm very interesting to hear about your solution if you find one.
Thanks in advance for your help !
Best regards,
Alix
The compilation issue with recent OF versions is probably due to the visualization part of the waves2FoamMooring code. I simplified and expanded the mooring restraint, which enables definition of multiple mooring lines and runtime generation of VTK files for visualization. More tests are needed though.

https://gitlab.com/hfchen20/foamMoor...ref_type=heads
https://hfchen20.gitlab.io/foamMoori.../#__tabbed_1_4

Last edited by jasonchen; December 28, 2023 at 02:50.
jasonchen is offline   Reply With Quote

Reply

Tags
mooring waves2foam

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Tutorials] Tutorial of how to plot residuals ! wolle1982 OpenFOAM Community Contributions 171 February 20, 2024 03:55
[DesignModeler] Failed to select lines to make projections in 2D: Design Modeler hcaribe ANSYS Meshing & Geometry 0 June 9, 2016 20:02
[OpenFOAM.org] Compile OF 2.3 on Mac OS X .... the patch gschaider OpenFOAM Installation 225 August 25, 2015 20:43
[DesignModeler] Need to create construction lines to plot data along them in cfd-post Soheyl.ysf ANSYS Meshing & Geometry 0 April 29, 2014 03:42
Plotting Residuals ata OpenFOAM 12 July 8, 2011 03:50


All times are GMT -4. The time now is 11:03.