CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

Wave Tank

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

Like Tree2Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   April 20, 2007, 11:04
Default http://www.cfd-online.com/Open
  #21
Senior Member
 
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,758
Rep Power: 21
hjasak will become famous soon enough
What you are looking at is a 2-zone FVM flow solver, a FEM mesh motion solver and a finite area solver doing the surfactant transport. All with mesh motion, coupling etc (running in parallel!) - I still find it amazing.

This will all get merged with the new stuff that came out as 1.4 (in any case, this is just a part of the additions accumulated from 1.3). If you want to run it right now, just use the 1.3 I've pointed to; otherwise, give me some time and I'll announce the merge when I'm happy it is running correctly.

Hrv
__________________
Hrvoje Jasak
Providing commercial FOAM/OpenFOAM and CFD Consulting: http://wikki.co.uk
hjasak is offline   Reply With Quote

Old   April 23, 2007, 10:39
Default I'm having some trouble gettin
  #22
New Member
 
Kester Gunn
Join Date: Mar 2009
Posts: 10
Rep Power: 8
kester is on a distinguished road
I'm having some trouble getting the interTrackFoam to run. I get the error "getApplication::Invalid application class name 'interTrackFoam'.". I assume something needs compiling. Any suggestions??
kester is offline   Reply With Quote

Old   May 9, 2007, 09:04
Default I recently got back to this pr
  #23
egp
Senior Member
 
egp's Avatar
 
Eric Paterson
Join Date: Mar 2009
Location: Blacksburg, VA
Posts: 197
Blog Entries: 1
Rep Power: 9
egp is on a distinguished road
I recently got back to this problem, and was able to get Eugene's boundary conditions (surfaceWavePhase and surfaceWaveVelocity) working for a simple "wave-in-Box" test case.

I put both in OpenFOAM-1.3/src/finiteVolume/fields/fvPatchFields/derivedFvPatchFields and recompiled the finiteVolume library. After the fact, I realized that I probably should have done this using the foamUser lib.

Anyway, I am able to access the b.c.'s when running interFoam, but now all of the post-processing tools are broken, for example, I get the following error when running foamToEnsight,

--> FOAM FATAL ERROR :
request for dictionary environmentalProperties from objectRegistry region0 failed
available objects of type dictionary are

2
(
fvSolution
fvSchemes
)

From function objectRegistry::lookupObject<type>(const word&) const
in file /home/egp11/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/objectRegistryTemplates .C at line 122.

Given that I put these routines in the finiteVolume lib, does anyone have a suggestion how to fix the post-processing tools so that they recognize the output files? I should note that I can edit the gamma and U output files (change the type to fixedValue and delete depth, etc.) to make them readable by the tools, however, this is not a good solution!
egp is offline   Reply With Quote

Old   May 9, 2007, 13:26
Default Ok, the problem here is that I
  #24
Senior Member
 
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 12
eugene is on a distinguished road
Ok, the problem here is that I put the wind speed, ocean depth etc. in the environmentalProperties dictionary and then assumed (incorrectly) that any code which uses these boundaries would have this dictionary loaded into the objectRegistry.

What you have to do to make it work with post-processors and other utilities is to find the line in the boundary condition which is used to lookup the environmentalProperties dictionary in the object registry. Now modify it to check whether the environmentalProperties dictionary is available in the object registry. If its available, use it, if not, read it from file.
eugene is offline   Reply With Quote

Old   May 18, 2007, 06:50
Default Eugene, Can you be more exp
  #25
egp
Senior Member
 
egp's Avatar
 
Eric Paterson
Join Date: Mar 2009
Location: Blacksburg, VA
Posts: 197
Blog Entries: 1
Rep Power: 9
egp is on a distinguished road
Eugene,

Can you be more explicit on how to "check whether the environmentalProperties dictionary is available in the object registry. If its available, use it, if not, read it from file"?

I looked for an example elsewhere (e.g. wallBuoyantPressure), but I couldn't find anything.

Good news is that I my wave model is working.







The reflection of waves at the outflow boundary is an issue, but fixable.
egp is offline   Reply With Quote

Old   May 18, 2007, 08:01
Default Nice pictures. Re the envir
  #26
Senior Member
 
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 12
eugene is on a distinguished road
Nice pictures.

Re the environmental properties thing.

Check the first entry in the main constructor for surfaceWaveVelocityFvPatchVectorField (line 157 in my copy). It is looking up the environmentalProperties dictionary from the database.

Instead of "lookupObject", you can use "foundObject" to check whether "environmentalProperties" exists.

If the environmentalProperties object doesn't exist, you will have to read it from file just like the top level code of interFoam does.

Good luck with the wave outlets. If you get it working, I wouldn't mind a peek.
eugene is offline   Reply With Quote

Old   November 1, 2007, 21:12
Default try InInclude -> lnInclude, wh
  #27
Member
 
Richard Kenny
Join Date: Mar 2009
Posts: 59
Rep Power: 9
richpaj is on a distinguished road
try InInclude -> lnInclude, where the first letter is a small "L".
Good luck, RGK.
richpaj is offline   Reply With Quote

Old   November 4, 2007, 22:29
Default Hi, Thank you very much Richa
  #28
New Member
 
Christopher Cooper
Join Date: Mar 2009
Posts: 5
Rep Power: 8
christopher is on a distinguished road
Hi,
Thank you very much Richard, kind of a basic problem, but I'm just beginning in this. However I'm still having problems, when I compile, this error message comes out:
surfaceWavePhasePatchScalarField.C:37: error: no match for 'operator+' in 'Foam::fvPatch::Cf() const() + Foam::operator*(const Foam::VectorSpace<form,>&, const Foam::dimensioned<type>&) [with Type = double, Form = Foam::Vector<double>, Cmpt = double, int nCmpt = 3](((const Foam::dimensioned<double>&)(&((const Foam::Time*)((const Foam::objectRegistry*)((Foam::surfaceWavePhaseFvPa tchScalarField*)this)->Foam::s urfaceWavePhaseFvPatchScalarField::<anonymous>.Foa m::mixedFvPatchField<double>:: <anonymous>.Foam::fvPatchField<type>::db [with Type = double]())->Foam::objectRegistry::time())->Foam::Time::<anonymous>.Foam::TimeSta te::<anonymous>)))'
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/dimensionedScalar.H:53 : note: candidates are: Foam::dimensionedScalar Foam::operator+(Foam::scalar, const Foam::dimensionedScalar&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/dimensionedScalar.H:52 : note: Foam::dimensionedScalar Foam::operator+(const Foam::dimensionedScalar&, Foam::scalar)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/labelField.H:52: note: Foam::tmp<foam::field<int> > Foam::operator+(const Foam::tmp<foam::field<int> >&, const Foam::label&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/labelField.H:52: note: Foam::tmp<foam::field<int> > Foam::operator+(const Foam::UList<int>&, const Foam::label&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/labelField.H:52: note: Foam::tmp<foam::field<int> > Foam::operator+(const Foam::label&, const Foam::tmp<foam::field<int> >&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/labelField.H:52: note: Foam::tmp<foam::field<int> > Foam::operator+(const Foam::label&, const Foam::UList<int>&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/dictionary.H:219: note: Foam::dictionary Foam::operator+(const Foam::dictionary&, const Foam::dictionary&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/scalarField.H:73: note: Foam::tmp<foam::field<double> > Foam::operator+(const Foam::tmp<foam::field<double> >&, const Foam::scalar&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/scalarField.H:73: note: Foam::tmp<foam::field<double> > Foam::operator+(const Foam::UList<double>&, const Foam::scalar&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/scalarField.H:73: note: Foam::tmp<foam::field<double> > Foam::operator+(const Foam::scalar&, const Foam::tmp<foam::field<double> >&)
/home/cooper/OpenFOAM/OpenFOAM-1.3/src/OpenFOAM/lnInclude/scalarField.H:73: note: Foam::tmp<foam::field<double> > Foam::operator+(const Foam::scalar&, const Foam::UList<double>&)
surfaceWavePhasePatchScalarField.C:39: error: '((Foam::surfaceWavePhaseFvPatchScalarField*)this)->Foam::fvPatchField<type>:: patch [with Type = double]' does not have class type
surfaceWavePhasePatchScalarField.C:53: error: cannot convert 'Foam::dimensionedScalar' to 'double' for argument '1' to 'double sin(double)'
surfaceWavePhasePatchScalarField.C: In constructor 'Foam::surfaceWavePhaseFvPatchScalarField::surface WavePhaseFvPatchScalarField( const Foam::fvPatch&, const Foam::Field<double>&)':
surfaceWavePhasePatchScalarField.C:82: error: 'Type' was not declared in this scope

Does this mean that I have to change something in surfaceWavePhasePatchScalarField.C?, or something is missing?
Many thanks in advance.
Best regards,
Christopher
christopher is offline   Reply With Quote

Old   November 5, 2007, 00:28
Default Looks like you've got a probl
  #29
Member
 
Richard Kenny
Join Date: Mar 2009
Posts: 59
Rep Power: 9
richpaj is on a distinguished road
Looks like you've got a problem of mismatched types at lines 37 and 53.

For lines 39 and 82: I suspect there's a missing ";" or some such before "Type".

RGK
richpaj is offline   Reply With Quote

Old   November 23, 2007, 19:43
Default Hi, I've checked the programmi
  #30
New Member
 
Christopher Cooper
Join Date: Mar 2009
Posts: 5
Rep Power: 8
christopher is on a distinguished road
Hi, I've checked the programming, and it seems to be fine, so I'm guessing it might be a compiler problem. With what compiler were those compiled? 1.3.3 is the version of FOAM which has the compiler that was used? I'm using gcc-4.1.0, could this be the problem?
Thank you very much in advance
Christopher
christopher is offline   Reply With Quote

Old   November 26, 2007, 23:57
Default I see what you mean. I can get
  #31
Member
 
Richard Kenny
Join Date: Mar 2009
Posts: 59
Rep Power: 9
richpaj is on a distinguished road
I see what you mean. I can get rid of some of the errors (under OpenFoam 1.3 using gcc 4.0.1 on a Mac!)
but, really, these files should probably be embedded in an analogous structure to the "finiteVolume library" as suggested above
by Eric i.e.

"I put both in OpenFOAM-1.3/src/finiteVolume/fields/fvPatchFields/derivedFvPatchFields and recompiled
the finiteVolume library. After the fact, I realized that I probably should have done this using the foamUser lib. "


You could try something somewhat leaner.

1) copy&rename the whole finiteVolume directory to your apps folder (WM_PROJECT_USER_DIR/applications/myFiniteVolume)
and include your new bdy condition as directed above.

2) throw out the many files you won't be using (cf. src/finiteVolume/Make/files) and then compile to
LIB = $(FOAM_USER_LIBBIN)/libmyFiniteVolume. Assuming you have the patience.

Good luck,

RGK
richpaj is offline   Reply With Quote

Old   December 15, 2007, 17:08
Default Hi, Thank you very much Richa
  #32
New Member
 
Christopher Cooper
Join Date: Mar 2009
Posts: 5
Rep Power: 8
christopher is on a distinguished road
Hi,
Thank you very much Richard, I'm really sorry for my delayed answer, but I've been really occupied and trying to figure it out on my own, but I haven't been able. I tried to do exactly what Eric did, and I still had the same problems. In fact, I tried to compile the surfaceWaveVelocity BC, and this appear in the end:
surfaceWaveVelocityFvPatchVectorField.C.gnu.linkonce.t._ZNK4Foam17mixedFvPatchFieldINS_6V ectorIdEEE6snGradEv+0x6a): undefined reference to `Foam::fvPatch::deltaCoeffs() const'
collect2: ld returned 1 exit status
make: *** [OpenFOAM.out] Error 1
Which makes me more suspicious that its a compiler problem.
I hope to hear from you soon.
Thank you very much
Best regards
Christopher
christopher is offline   Reply With Quote

Old   December 16, 2007, 04:18
Default did you try the above library
  #33
Member
 
Richard Kenny
Join Date: Mar 2009
Posts: 59
Rep Power: 9
richpaj is on a distinguished road
did you try the above library structure I wonder?

linker errors (collect2: ld ....) tend to occur (from what I've experienced with turbulence
and thermophysical libraries) in the final step of compilation when the top-level solver is bound
to the relevant libraries and binaries of any classes. For some reason the final step of this compilation
process can't 'see' some of the constructors of classes which by themselves compile fine. The idea
seems to be then to pack in as many related classes as possible into a library and hope it links
correctly to the solver in the final compilation step. If you follow the OpenFoam library structure
it should work.

I'll have a go myself to see if it's as 'easy' in this case as I've made out (!) It worked (after some pain)
with the thermo libraries, and also the turbulence-related ones too.

I presume you want to bind in the lot to interFoam. Hopefully I'll be able to get back to you
later this week.

Richard
richpaj is offline   Reply With Quote

Old   December 24, 2007, 03:15
Default Hello,all. I am new to OpenFO
  #34
New Member
 
Bowlderster
Join Date: Mar 2009
Posts: 6
Rep Power: 8
bowlderster is on a distinguished road
Hello,all.
I am new to OpenFOAM, and I want to set up a numerical wave tank by the interFoam solver.

The first question appeared is that how the set the wave maker BC.Based on the wave theory, the U verying with time should be used as the wave maker BC.

I know there is a kind of BC timeVaryingUniformFixedValue. Is it okay for the wave maker BC? Or which tutorial introducts this kind of BC?

Thank you for your help.

Regards.
bowlderster is offline   Reply With Quote

Old   January 1, 2008, 14:25
Default Christopher, sorry, it took a
  #35
Member
 
Richard Kenny
Join Date: Mar 2009
Posts: 59
Rep Power: 9
richpaj is on a distinguished road
Christopher, sorry, it took a week longer to get around to doing this.

I followed my prescription above and indeed it does work out. In fact, I should've been
bolder in throwing out many more items from "myfiniteVolume" but was a bit
pressed for time to check on the many possibilities.

If you like, you can have the solver+lib (compressed to 16M) which compile using OF 1.3.

Richard K.
richpaj is offline   Reply With Quote

Old   February 7, 2008, 21:13
Default Hi, all of you, I want to m
  #36
New Member
 
xiuying
Join Date: Mar 2009
Posts: 24
Rep Power: 8
xiuying is on a distinguished road
Hi, all of you,

I want to model a wave tank, just like in the above case. I downloaded the bc's from this forum 'surfaceWavePhase' and 'surfaceWaveVelocity', but I'm having problems compiling them as follows. Could you inform me how to deal with this problem? Thank you so much.

Regards,

Xiuying



[xiuying@kiwi ~]$ cd /share/kiwiraid/xiuying/OpenFOAM/OpenFOAM-1.4.1/src/finiteVolume
[xiuying@kiwi finiteVolume]$ wmake
SOURCE=fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScal arField.C ; g++ -m64 -Dlinux64 -DDP -Wall -Wno-strict-aliasing -Wextra -Wno-unused-parameter -Wold-style-cast -march=opteron -O3 -DNoRepository -ftemplate-depth-40 -I/share/kiwiraid/xiuying/OpenFOAM/OpenFOAM-1.4.1/src/triSurface/lnInclude -I/share/kiwiraid/xiuying/OpenFOAM/OpenFOAM-1.4.1/src/meshTools/lnInclude -IlnInclude -I. -I/share/kiwiraid/xiuying/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/lnInclude -fPIC -c $SOURCE -o Make/linux64GccDPOpt/surfaceWavePhaseFvPatchScalarField.o
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C: In member function 'void Foam::surfaceWavePhaseFvPatchScalarField::extrapol ateGradient()':
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C:87: error: 'lookupPatchField' was not declared in this scope
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C:87: error: expected primary-expression before ',' token
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C:87: error: expected initializer before '>' token
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C: In constructor 'Foam::surfaceWavePhaseFvPatchScalarField::surface WavePhaseFvPatchScalarField(co nst Foam::fvPatch&, const Foam::Field<double>&)':
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C:113: error: no matching function for call to 'Foam::mixedFvPatchField<double>::mixedFvPatchFiel d(const Foam::fvPatch&, const Foam::Field<double>&)'
lnInclude/mixedFvPatchField.C:101: note: candidates are: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&, const Foam::DimensionedField<type,>&) [with Type = double]
lnInclude/mixedFvPatchField.C:87: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&) [with Type = double]
lnInclude/mixedFvPatchField.C:57: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&, const Foam::fvPatch&, const Foam::DimensionedField<type,>&, const Foam::fvPatchFieldMapper&) [with Type = double]
lnInclude/mixedFvPatchField.C:72: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::fvPatch&, const Foam::DimensionedField<type,>&, const Foam::dictionary&) [with Type = double]
lnInclude/mixedFvPatchField.C:41: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::fvPatch&, const Foam::DimensionedField<type,>&) [with Type = double]
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C: In constructor 'Foam::surfaceWavePhaseFvPatchScalarField::surface WavePhaseFvPatchScalarField(co nst Foam::surfaceWavePhaseFvPatchScalarField&, const Foam::fvPatch&, const Foam::Field<double>&, const Foam::fvPatchFieldMapper&)':
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C:138: error: no matching function for call to 'Foam::mixedFvPatchField<double>::mixedFvPatchFiel d(const Foam::surfaceWavePhaseFvPatchScalarField&, const Foam::fvPatch&, const Foam::Field<double>&, const Foam::fvPatchFieldMapper&)'
lnInclude/mixedFvPatchField.C:101: note: candidates are: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&, const Foam::DimensionedField<type,>&) [with Type = double]
lnInclude/mixedFvPatchField.C:87: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&) [with Type = double]
lnInclude/mixedFvPatchField.C:57: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&, const Foam::fvPatch&, const Foam::DimensionedField<type,>&, const Foam::fvPatchFieldMapper&) [with Type = double]
lnInclude/mixedFvPatchField.C:72: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::fvPatch&, const Foam::DimensionedField<type,>&, const Foam::dictionary&) [with Type = double]
lnInclude/mixedFvPatchField.C:41: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::fvPatch&, const Foam::DimensionedField<type,>&) [with Type = double]
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C: In constructor 'Foam::surfaceWavePhaseFvPatchScalarField::surface WavePhaseFvPatchScalarField(co nst Foam::fvPatch&, const Foam::Field<double>&, const Foam::dictionary&)':
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C:158: error: no matching function for call to 'Foam::mixedFvPatchField<double>::mixedFvPatchFiel d(const Foam::fvPatch&, const Foam::Field<double>&)'
lnInclude/mixedFvPatchField.C:101: note: candidates are: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&, const Foam::DimensionedField<type,>&) [with Type = double]
lnInclude/mixedFvPatchField.C:87: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&) [with Type = double]
lnInclude/mixedFvPatchField.C:57: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&, const Foam::fvPatch&, const Foam::DimensionedField<type,>&, const Foam::fvPatchFieldMapper&) [with Type = double]
lnInclude/mixedFvPatchField.C:72: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::fvPatch&, const Foam::DimensionedField<type,>&, const Foam::dictionary&) [with Type = double]
lnInclude/mixedFvPatchField.C:41: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::fvPatch&, const Foam::DimensionedField<type,>&) [with Type = double]
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C: In constructor 'Foam::surfaceWavePhaseFvPatchScalarField::surface WavePhaseFvPatchScalarField(co nst Foam::surfaceWavePhaseFvPatchScalarField&, const Foam::Field<double>&)':
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C:274: error: no matching function for call to 'Foam::mixedFvPatchField<double>::mixedFvPatchFiel d(const Foam::surfaceWavePhaseFvPatchScalarField&, const Foam::Field<double>&)'
lnInclude/mixedFvPatchField.C:101: note: candidates are: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&, const Foam::DimensionedField<type,>&) [with Type = double]
lnInclude/mixedFvPatchField.C:87: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&) [with Type = double]
lnInclude/mixedFvPatchField.C:57: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::mixedFvPatchField<type>&, const Foam::fvPatch&, const Foam::DimensionedField<type,>&, const Foam::fvPatchFieldMapper&) [with Type = double]
lnInclude/mixedFvPatchField.C:72: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::fvPatch&, const Foam::DimensionedField<type,>&, const Foam::dictionary&) [with Type = double]
lnInclude/mixedFvPatchField.C:41: note: Foam::mixedFvPatchField<type>::mixedFvPatchField(c onst Foam::fvPatch&, const Foam::DimensionedField<type,>&) [with Type = double]
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C: In member function 'virtual void Foam::surfaceWavePhaseFvPatchScalarField::updateCo effs()':
fields/fvPatchFields/derived/surfaceWavePhase/surfaceWavePhaseFvPatchScalarField .C:288: error: 'class Foam::surfaceWavePhaseFvPatchScalarField' has no member named 'lookupPatchField'
make: *** [Make/linux64GccDPOpt/surfaceWavePhaseFvPatchScalarField.o] Error 1
[xiuying@kiwi finiteVolume]$
xiuying is offline   Reply With Quote

Old   March 17, 2008, 15:30
Default Dear all, I am trying to make
  #37
New Member
 
Luca Liberti
Join Date: Mar 2009
Location: Rome, Italy
Posts: 22
Rep Power: 8
fugu is on a distinguished road
Dear all,
I am trying to make a wave flume simulation myself but I am mainly interested in solitary waves.
Basically I need a moving mesh on one side of the
flume where I can specify the motion of a piston providing its displacements in time. I have only been playing with OF and interFoam for a while and I found very difficult to get started with moving meshes (no changes in topology are required in my case)
My questions are:
1) Is it possible to run interFoam with moving meshes (I suspect it is since there is a dynamicMeshDict in the interFoam tutorial folder) ?
2) Is it possible to specify a moving wall as a boundary and have its positions in time be read from an external file ?
3)Is there a reference material on moving meshes
(i.e. a list of the mesh generation algorithms with their options) ?
4) Has anyone done a similar case?
I would really appreciate any kind of help in the matter. Actually, if I ever figure out how this can work I am planning to write a basic tutorial.
Thank you
fugu is offline   Reply With Quote

Old   March 17, 2008, 15:53
Default Yeah, I have done lots of thos
  #38
Senior Member
 
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,758
Rep Power: 21
hjasak will become famous soon enough
Yeah, I have done lots of those: have a look at the swirling glass movie.

Enjoy,

Hrv
__________________
Hrvoje Jasak
Providing commercial FOAM/OpenFOAM and CFD Consulting: http://wikki.co.uk
hjasak is offline   Reply With Quote

Old   March 17, 2008, 17:07
Default Hi Luca and everyone else S
  #39
ngj
Senior Member
 
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Deltares, Delft, The Netherlands
Posts: 1,608
Rep Power: 25
ngj will become famous soon enoughngj will become famous soon enough
Hi Luca and everyone else

Sounds very interesting! Should you by any chance be modeling tsunamis!?!

Well, what is the reasoning behind wanting a moving boundary? Wouldn't that give much more computational time to overcome compared to a 'constant in time mesh'?

From solitary theory you would know velocities, pressure gradient and surface elevation at a certain location. Thus it should be easily implemented in a stationary boundary approach (just doing a little advertising for my reasonly uploaded BC ... see: http://www.cfd-online.com/OpenFOAM_D...tml?1205695477)

Actually I would very much like to hear what people have to say on the moving mesh vs. stationary approach. What are the benefits you are not getting from the stationary approach but is obtained in the moving mesh approach?
Certainly if you are studying the paddle movement and shape to calculate how to evaluate certain wave types in a laboratory flume, then a moving mesh seems to be a proper way to go, but otherwise?

Best 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   March 17, 2008, 17:34
Default Btw: Spectacular movie, Hrv!
  #40
ngj
Senior Member
 
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Deltares, Delft, The Netherlands
Posts: 1,608
Rep Power: 25
ngj will become famous soon enoughngj will become famous soon enough
Btw: Spectacular movie, Hrv!
/ 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

Reply

Tags
wavetank

Thread Tools
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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Help! Compiled UDF problem 4 Wave tank tutorial Shane FLUENT 1 September 3, 2010 02:32
Numerical wave tank michaelp OpenFOAM Installation 1 December 17, 2008 09:27
Numerical wave tank Bridget FLUENT 0 March 27, 2006 16:09
Sea Waves/Wave tank Phil FLUENT 3 October 9, 2003 06:55
Virtual wave tank Murali.K Main CFD Forum 1 March 17, 1999 03:18


All times are GMT -4. The time now is 16:30.