|
[Sponsors] |
September 9, 2008, 18:42 |
Hi,
It looks like the oscil
|
#1 |
Member
Mathieu Olivier
Join Date: Mar 2009
Location: Quebec City, Canada
Posts: 77
Rep Power: 17 |
Hi,
It looks like the oscillatingFixedValue boundary condition does not work properly when it is used in the motionU file to apply a movement. See the case in attachment (moveDynamicMesh <root> <case>). Regards, Mathieu |
|
September 10, 2008, 03:05 |
Hi,
I can't get the attachm
|
#2 |
Member
Etienne Lorriaux
Join Date: Mar 2009
Location: Compiegne, France
Posts: 45
Rep Power: 17 |
Hi,
I can't get the attachment. Anyway, i'm using oscillatingFixedValue in motionU, and it works. Can you detail your problem ? Etienne. |
|
September 10, 2008, 10:09 |
Hi,
Here is a smaller case
|
#3 |
Member
Mathieu Olivier
Join Date: Mar 2009
Location: Quebec City, Canada
Posts: 77
Rep Power: 17 |
Hi,
Here is a smaller case that should upload. Use fluentMeshToFoam to generate the mesh (cylindre.msh). cylindre.tgz It looks like that the motion of the boundary is the half of what it is supposed to be, but the rest of the mesh moves like it should. See the picture : Mathieu |
|
September 10, 2008, 15:39 |
Hi Mathieu,
take a look at
|
#4 |
Member
Etienne Lorriaux
Join Date: Mar 2009
Location: Compiegne, France
Posts: 45
Rep Power: 17 |
Hi Mathieu,
take a look at this file src/fvMotionSolver/lnInclude/oscillatingDisplacementPointPatchVectorField.C Your boundary motion is computed in this code part. Note that motionU is a velocity and not a displacement, and the velocity imposed is '1.0 + amplitude * sin (2 * pi * frequency * t). You'll have to rebuild your library if you don't want the '1.0'. |
|
September 10, 2008, 15:44 |
Humm sorry, i gave you the wro
|
#5 |
Member
Etienne Lorriaux
Join Date: Mar 2009
Location: Compiegne, France
Posts: 45
Rep Power: 17 |
Humm sorry, i gave you the wrong path.
Check src/OpenFOAM/fields/PointPatchFields/derived/oscillatingFixedValue/OscillatingFi xedValuePointPatchField.C Etienne. |
|
September 10, 2008, 16:39 |
Hi Etienne,
Thank you for y
|
#6 |
Member
Mathieu Olivier
Join Date: Mar 2009
Location: Quebec City, Canada
Posts: 77
Rep Power: 17 |
Hi Etienne,
Thank you for your reply. Did my case work correctly on your OpenFOAM installation ? Mathieu |
|
September 11, 2008, 07:53 |
Hello Matthieu,
i'm getting
|
#7 |
Member
Etienne Lorriaux
Join Date: Mar 2009
Location: Compiegne, France
Posts: 45
Rep Power: 17 |
Hello Matthieu,
i'm getting the same issue with my installation. In fact, i think your timestep is too long. Try with smaller deltaT (ie 0.05 or 0.1). Here is an attempt with deltat=0.05 : http://etienne.lorriaux.free.fr/OF_stuff/cylindre.avi Etienne. |
|
September 11, 2008, 10:22 |
Hi Etienne,
I also tried a
|
#8 |
Member
Mathieu Olivier
Join Date: Mar 2009
Location: Quebec City, Canada
Posts: 77
Rep Power: 17 |
Hi Etienne,
I also tried a smaller timestep (in fact, I put a big time step in my case to clearly show the problem) and as one can see on your video, there is still a "distortion" of the mesh near the boundary which becomes an important issue for meshes with fine discretization on boundary layers. On the opposite, if you try the uniformFixedValue BC (with a constant non-zero velocity) instead of oscillatingFixedValue you'll see that it works perfectly. By the way, I don't think the timestep size is important for dynamic mesh purposes since the Laplace equation is steady state (however it might affect the computation time within each timestep). Thanks again ! Mathieu |
|
September 11, 2008, 10:46 |
I don't think the problem come
|
#9 |
Member
Etienne Lorriaux
Join Date: Mar 2009
Location: Compiegne, France
Posts: 45
Rep Power: 17 |
I don't think the problem comes from oscillatingFixedValue condition. The mesh solver seems to have difficulties when there are variations of velocity. It seems to work properly with constant velocity.
Etienne. |
|
September 11, 2008, 12:24 |
Hi people, hi Etienne,
It l
|
#10 |
Member
Mathieu Olivier
Join Date: Mar 2009
Location: Quebec City, Canada
Posts: 77
Rep Power: 17 |
Hi people, hi Etienne,
It looks like I am very lucky... I removed lines 313 and 314 in src/OpenFOAM/fields/PointPatchFields/derived/oscillatingFixedValue/OscillatingFi xedValuePointPatchField.C : // FixedValuePointPatchField // <patchfield,>::initEvaluate(); Then, I recompile the tetDecompositionFiniteElement librairy : cd ~/OpenFOAM/OpenFOAM-1.4.1-dev/src/tetDecompositionFiniteElement ./Allwmake After those modifications, my case works perfectly with the oscillationgFixedValue BC in the motionU file. However, I am not an expert with the code and it would be nice if an OpenFOAM expert could take a look at this issue. Kind regards, Mathieu |
|
November 12, 2008, 17:12 |
I used openfoam 1.5. The file
|
#11 |
New Member
Peter Lian
Join Date: Mar 2009
Posts: 12
Rep Power: 17 |
I used openfoam 1.5. The file OscillatingFi xedValuePointPatchField.C is not in the directory mentioned here but it was located at src/finiteVolume/fields/fvPatchFields/derived/oscillatingFixedValue/oscillatingF ixedValueFvPatchField.C
Implement the oscillating boundary in the files pointMotionU and cellMotionU as follows. But I get the error message like Selecting dynamicFvMesh dynamicMotionSolverFvMesh Selecting motion solver: velocityLaplacian Not Implemented Trying to construct an genericFvPatchField on patch movingWall of field cellMotionU#0 Foam::error::printStack(Foam:stream&) in "/home/yslian/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so" #1 Foam::error::abort() in "/home/yslian/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so" #2 Foam::genericFvPatchField<foam::vector<double> >::genericFvPatchField(Foam::fvPatch const&, Foam::DimensionedField<foam::vector<double>, Foam::volMesh> const&) in "/home/yslian/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libfiniteVolume.so" It seems the boundary condition is not implemented in the new version. I appreciate any suggestions. Thanks, Peter boundaryField { movingWall { type oscillatingFixedValue; refValue uniform (0 0 0); amplitude uniform (0 2 0); frequency 50; curTimeIndex 0.0; } |
|
November 12, 2008, 18:07 |
What BC have you specified for
|
#12 |
Senior Member
Join Date: Mar 2009
Posts: 854
Rep Power: 22 |
What BC have you specified for the movingWall in the file pointMotionU?
H |
|
November 12, 2008, 19:06 |
The bc posted there is just on
|
#13 |
New Member
Peter Lian
Join Date: Mar 2009
Posts: 12
Rep Power: 17 |
The bc posted there is just one example. Basically, I want to oscillate one object around certain point, meanwhile, the object will move up and down.
h(t)=c*cos(omega*t) alfa(t)=alfa_0+alfa_1*cos(omega*t+beta) The problem is the the oscillatingFixedValue does not work with OF1.5. |
|
November 13, 2008, 04:36 |
oscillatingFixedValue is not a
|
#14 |
Senior Member
Join Date: Mar 2009
Posts: 854
Rep Power: 22 |
oscillatingFixedValue is not a valid BC for pointMotionU which is a pointField not a volField. Look at the avalable BCs for pointMotionU in
OpenFOAM-1.5/src/fvMotionSolver/pointPatchFields/derived and if none of these suit your needs you can easily roll your own based on these examples. H |
|
November 13, 2008, 08:49 |
Henry,
Thanks. I noticed t
|
#15 |
New Member
Peter Lian
Join Date: Mar 2009
Posts: 12
Rep Power: 17 |
Henry,
Thanks. I noticed that last night and I copied the oscillatingFixedValue from the src/finiteVolume/fields/fvPatchFields/derived/oscillatingFixedValue/ After comparing (timeVaryingUniformFixedValue Fv PatchField.C) ( Point ) I noticed the difference between these two is one use Fv and another use Point in the .C and .H file. So I change that the oscillating**.C. When I compile the file, I get the error message that fields/pointPatchFields/derived/oscillatingFixedValue/oscillatingFixedValuePoint PatchField.C:159: error: expected initializer before ā<ā token fields/pointPatchFields/derived/oscillatingFixedValue/oscillatingFixedValuePoint PatchField.C:39: error: redefinition of āFoam::scalar Foam::oscillatingFixedValuePointPatchField<type>:: currentScale() constā fields/pointPatchFields/derived/oscillatingFixedValue/oscillatingFixedValuePoint PatchField.C:39: error: āFoam::scalar Foam::oscillatingFixedValuePointPatchField<type>:: currentScale() constā previously declared here I just start to learn C++ and so I search the internet for help but still cannot find a solution yet. |
|
November 13, 2008, 18:25 |
I reduced the error to only on
|
#16 |
New Member
Peter Lian
Join Date: Mar 2009
Posts: 12
Rep Power: 17 |
I reduced the error to only one: refined variables. If someone wants to take a look and fixed this bug, please send me email so I will send the files to you.
y0lian05@louisville.edu Peter |
|
January 31, 2009, 11:08 |
Hello Foamers,
i have a que
|
#17 |
New Member
patrick riemer
Join Date: Mar 2009
Location: Uni Stuttgart, Germany
Posts: 19
Rep Power: 17 |
Hello Foamers,
i have a question concerning the formula for oscillatingfixedvalue in 1.4.1-dev. At the top posting, you said that the velocity imposed is '1.0 + amplitude * sin (2 * pi * frequency * t). I“m not a C++ crack, but in my files it seems to be U = amplitude * cos(2*pi*frequency*t) I just don“t understand follwing: If you have a simple oscillating motion, it can be described as x=amplitude*sin(2*pi*frequency*t) then the velocity is v=dx/dt=amplitude*2*frequency*t*cos(2*f*t) Where is the 2*frequency*t in OscillatingFi xedValuePointPatchField.C? Can anyone explain me the differencies between the last and the first formula? Thank you! |
|
January 31, 2009, 13:01 |
Yes, that would be my fault.
|
#18 |
Senior Member
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,907
Rep Power: 33 |
Yes, that would be my fault. I've been playing with various forms, depending on whether you want the mean value in the oscillation to be zero or not and whether you prefer to start from zero (sin) or from extreme (cos).
I have no strong opinions on what this should be and soon we will have an intepreted formula here instead. Do you hav a preference? It would be easy to simply change your local version of the code (no consequences). Apologies, Hrv
__________________
Hrvoje Jasak Providing commercial FOAM/OpenFOAM and CFD Consulting: http://wikki.co.uk |
|
January 31, 2009, 14:08 |
Still thinking about the frequ
|
#19 |
New Member
patrick riemer
Join Date: Mar 2009
Location: Uni Stuttgart, Germany
Posts: 19
Rep Power: 17 |
Still thinking about the frequency.
Is that the number of oscillations per one second or the number of oscillations per given intervall (between starttime and stoptime)? Thank you very much for answering. I“m just getting familiar with the topic movingmesh, dynamicmesh and oscillation b.c. I also read your dissertations about the fem moving mesh solvers etc. I want to calculate a test case and present OF to my institute (part of the University Stuttgart) In like the oscillatingFixedValue b.c. and maybe i want to couple it with a topological layer add/removal. But i“m just working in, so a little help is useful even if some questions may be stupid;) |
|
February 3, 2009, 16:12 |
Hallo Foamers!
At the momen
|
#20 |
New Member
patrick riemer
Join Date: Mar 2009
Location: Uni Stuttgart, Germany
Posts: 19
Rep Power: 17 |
Hallo Foamers!
At the moment i use laplacefacedecomposition and a motonU file with oscillatingFixedValue b.c. to define mesh-motion. Version 1.4.1-dev. But i am not sure about the appropriate files: src/finiteVolume/fields/fvPatchFields/derived/oscillatingFixedValue/ Is the internal-meshpoint motion dscribed here? src/OpenFOAM/fields/PointPatchFields/derived/oscillatingFixedValue/OscillatingFi xedValuePointPatchField.C Is the movement/velocity of the oscillating b. c. described here? Thank you very much for answers, the movement of my mesh seems to be too small... |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Piston motion with time varying experimental data oscillatingFixedValue | eno | OpenFOAM Running, Solving & CFD | 3 | March 19, 2009 11:06 |
Piston motion with time varying experimental data oscillatingFixedValue | eno | OpenFOAM Running, Solving & CFD | 0 | March 12, 2009 18:31 |
OscillatingFixedValue in OpenFOAM 141dev | mathieu | OpenFOAM Bugs | 0 | September 9, 2008 18:50 |
141dev svn repository | egp | OpenFOAM Installation | 1 | August 25, 2008 17:10 |
SonicFoam 141dev changes what do they mean | mike_jaworski | OpenFOAM Running, Solving & CFD | 0 | December 30, 2007 16:55 |