|
[Sponsors] | |||||
Viscoelastic Fluid Flows using OpenFOAM The solver viscoelasticFluidFoam |
![]() |
|
|
LinkBack | Thread Tools | Display Modes |
|
|
|
#241 |
|
New Member
salame ama
Join Date: Dec 2012
Posts: 15
Rep Power: 2 ![]() |
To Tushar:
thank you for your advise. in my files, the two lines was already existed. EXE_INC = \ -I$(LIB_SRC)/twoPhaseViscoelasticMixture \ ... -I$(LIB_SRC)/transportModels/viscoelastic/lnInclude \ ... EXE_LIBS = \ ... -ldynamicFvMesh \ -ltopoChangerFvMesh \ -lviscoelasticTransportModels \ -llduSolvers .So... still upset. To adambarfi: Thank u first. I met these questions: I changed the towphaseMixture file, but did not change the transportModel.H file. today I #include the viscoelasticModel.H and Giesekus.H in the file transportModel.H file, and change the input file transportProperties, like : phase1 { transportModel Giesekus; type multiMode; models ( first { type Giesekus; rho rho [1 -3 0 0 0 0 0] 803.87097; ..... It told me: visitymodel have no Giesekus... I didn't know where should i change.... |
|
|
|
|
|
|
|
|
#242 |
|
Senior Member
|
@salame's question: I changed the towphaseMixture file, but did not change the transportModel.H file. today I #include the viscoelasticModel.H and Giesekus.H in the file transportModel.H file, and change the input file transportProperties, like : phase1 { transportModel Giesekus; type multiMode; models ( first { type Giesekus; rho rho [1 -3 0 0 0 0 0] 803.87097; ..... It told me: visitymodel have no Giesekus... I didn't know where should i change.... ------------------------ Hello salame, In your problem, you are editing the transportProperties of your case file, but for this particular case you need to edit viscoelasticProperties file. Option1: This can only be overcome as described in brief by Adambarfi too.. You need to do lot of modification in your case, try something like combining the libraries of both solvers.. Best of luck for that, as it is not that easy.. Option2: Other option is to add Giesekus model in the already available transportModel.. For both the options, you need to be extra careful as there are very high chances of incorporation of errors. Best of luck.. Last edited by Tushar@cfd; March 21, 2013 at 04:09. |
|
|
|
|
|
|
|
|
#243 |
|
Senior Member
|
dear salame,
viscoelasticFluidFoam just returns the div(tau). so it is not a viscosity model. if you set this solver as a base, you can modify it in a manner that could be used for multiphase problems. my idea is: make a new solver containing both viscoelasticFluidFoam and interFoam. but that is just my opinion ;-) |
|
|
|
|
|
|
|
|
#244 |
|
New Member
salame ama
Join Date: Dec 2012
Posts: 15
Rep Power: 2 ![]() |
Thank u again, Tushar and adambarfi.
Yes, I had a new solver which combine the two solvers. At this stage, it seems to need a right file(transportProperties) to let the new solver read the properties of two phases in. In the InterFoam, the transportProperties files write as: phase1 { transportModel Newtonian; nu nu [ 0 2 -1 0 0 0 0 ] 1e-06; rho rho [ 1 -3 0 0 0 0 0 ] 1000; CrossPowerLawCoeffs { nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06; nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06; m m [ 0 0 1 0 0 0 0 ] 1; n n [ 0 0 0 0 0 0 0 ] 0; } ..... At the same time, the viscoelasticProperties file in the viscoelasticFluidFoam write like: rheology { type multiMode; models ( first { type Giesekus; rho rho [1 -3 0 0 0 0 0] 803.87097; etaS etaS [1 -1 -1 0 0 0 0] 0.002; etaP etaP [1 -1 -1 0 0 0 0] 0.04; lambda lambda [0 0 1 0 0 0 0] 0.6855; alpha alpha [0 0 0 0 0 0 0] 0.5; } .... Today, i copy the Giesekus folder in the viscosity folder as Tushar said, and change the properies file, still wrong. I felt troubled about the right style. |
|
|
|
|
|
|
|
|
#245 |
|
Senior Member
|
I didn't exprienced in multiphase flows. but one idea is that you can define a new viscosity model. just modify an exist viscosityModel. then you can use it in transportProperties and in momentum equation the div(tau) ca be used.
|
|
|
|
|
|
|
|
|
#246 |
|
Senior Member
|
Try to look out for the solution by applying any of the option which I have mentioned in my earlier thread.
Both the options are different: Option2, doesn't need any viscoelasticProperties file Option1, do need both the files but with lot of modifications As for now, I would advice you to go for "ProgrammersGuide" for better understanding of the programing in OF. |
|
|
|
|
|
|
|
|
#247 |
|
New Member
salame ama
Join Date: Dec 2012
Posts: 15
Rep Power: 2 ![]() |
Thank u! I will try the way you mentioned.
|
|
|
|
|
|
|
|
|
#248 | |
|
New Member
salame ama
Join Date: Dec 2012
Posts: 15
Rep Power: 2 ![]() |
Quote:
|
||
|
|
|
||
|
|
|
#249 |
|
New Member
salame ama
Join Date: Dec 2012
Posts: 15
Rep Power: 2 ![]() |
Still, about the viscoelastcproperties of tutorials of viscoelasticFluidFoam, why it say wrong if change the name "rheology" to others? i try to change the Line 58 in viscoelasticModel.C
lawPtr_(viscoelasticLaw::New(word::null, U, phi, subDict("rheology"))) to lawPtr_(viscoelasticLaw::New(word::null, U, phi, subDict("phase1"))) and i change the viscoelasticProperties file, "rheology" to "phase1". but it still say wrong. why? I just want to know how the viscoelasticModel work, can someone explain that? I contacted the solver just a few days, so ....maybe the question is very simple, your patience always be appreciated! |
|
|
|
|
|
|
|
|
#250 |
|
New Member
Erick Lorenzato
Join Date: Mar 2013
Posts: 4
Rep Power: 2 ![]() |
Hello
My name is Erick and I'm doing my thesis using OpenFoam. It's my first contact with the program and am having some difficulties. I want to use viscoelasticFluidFoam, programmed by Jovani. First I run like any other program: ~ / $ OpenFoam/erika2.1.1/tutorials2/viscoelastic/viscoelasticFluidFoam/Giesekus After running the command blockMesh. Some folders should appear, but nothing appears. After not know what to do. Was using the methodology of the guide (icoFoam), but shows no result. When I put paraFoam, the mesh appears, but nothing happens in the apply Anyone know where is my mistake or what is missing? thank you Erick Last edited by EricKl.; March 26, 2013 at 16:38. |
|
|
|
|
|
|
|
|
#251 |
|
New Member
salame ama
Join Date: Dec 2012
Posts: 15
Rep Power: 2 ![]() |
To Erick:
Hi, i did not know "Some folders should appear" means. If you mean the files about results, you need run the command viscoelasticFluidFoam , just running "blockMesh" is not enough. Like you say, you can see the mesh from paraView, i guess you forget the step. good luck! |
|
|
|
|
|
|
|
|
#252 |
|
New Member
Erick Lorenzato
Join Date: Mar 2013
Posts: 4
Rep Power: 2 ![]() |
Hi
Thank you for your help. I managed to install the program, but I have a problem. I'm trying to run the example Giesekus When I run the program blockMesh the wheel, but does not generate the time steps (in the tutorial folder). Mando run solver, viscoelasticFluidFoam, an error appears. -> FOAM FATAL IO ERROR: Unknown asymmetric matrix solver BiCGStab Valid asymmetric matrix solvers are: 4 ( BICCG GAMG PBiCG smoothSolver ) file: from line 47 to line 56. From solver function lduMatrix :: New :: in file matrices / lduMatrix / lduMatrix / lduMatrixSolver.C at line 106. FOAM exiting What can I do to solve? The version of veff is the 2.1.x and 2.1.1 is my OpenFoam I thank |
|
|
|
|
|
|
|
|
#253 | |
|
Senior Member
|
Quote:
Check the Solution algorithm. In your case, you are mistaking with the symmetric & asymmetric matrices. For more detail refer: http://www.openfoam.org/docs/user/fvSolution.php
|
||
|
|
|
||
|
|
|
#254 |
|
New Member
Erick Lorenzato
Join Date: Mar 2013
Posts: 4
Rep Power: 2 ![]() |
Hello
Thanks for the tip. Understand what was wrong and I'm changing. I started reading about the solvers. Now is understanding the difference of each.
|
|
|
|
|
|
|
|
|
#255 |
|
New Member
Erick Lorenzato
Join Date: Mar 2013
Posts: 4
Rep Power: 2 ![]() |
Good afternoon
I'm trying to install ViscoelasticInterFoam written by Jovani, but am having problems. Anyone have any tutorial on where to download and how to install? I downloaded some files scattered but when I run it did not work. The only command that he accepted solver is viscoelasticFluidFoam. Anyone have any ideas? thank you |
|
|
|
|
|
|
|
|
#256 |
|
Senior Member
|
Hi everybody,
I want to add the dissipation term to my T equation. I did it as follows: Code:
dimensionedScalar kappa=(etaS+etaP)/(rho*Pr);
fvScalarMatrix TEqn
(
fvm::div(phi, T)
- fvm::Sp(fvc::div(phi), T)
- fvm::laplacian(kappa, T)
- (visco.tau() && (fvc::curl(U))) //Dissipation Term
);
when I wmake my solver the following errros appeared: Code:
In file included from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/Field.C:735:0,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/Field.H:360,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/labelField.H:39,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/primitiveFields.H:37,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/pointField.H:36,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/edge.H:40,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/edgeList.H:32,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/primitiveMesh.H:57,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/polyMesh.H:44,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/finiteVolume/lnInclude/fvMesh.H:50,
from /home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/finiteVolume/lnInclude/fvCFD.H:7,
from bbvffPerfectTdepDiss2.C:36:
/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/FieldFunctions.C: In function ‘void Foam::dotdot(Foam::Field<typename Foam::scalarProduct<Type1, Type2>::type>&, const Foam::UList<T>&, const Foam::UList<Key>&) [with Type1 = Foam::SymmTensor<double>, Type2 = Foam::Vector<double>, typename Foam::scalarProduct<Type1, Type2>::type = double]’:
/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/GeometricFieldFunctions.C:956:1: instantiated from ‘void Foam::dotdot(Foam::GeometricField<typename Foam::scalarProduct<Type1, Type2>::type, PatchField, GeoMesh>&, const Foam::GeometricField<TypeR, PatchField, GeoMesh>&, const Foam::GeometricField<Type1, PatchField, GeoMesh>&) [with Type1 = Foam::SymmTensor<double>, Type2 = Foam::Vector<double>, PatchField = Foam::fvPatchField, GeoMesh = Foam::volMesh, typename Foam::scalarProduct<Type1, Type2>::type = double]’
/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/GeometricFieldFunctions.C:956:1: instantiated from ‘Foam::tmp<Foam::GeometricField<typename Foam::scalarProduct<Type1, Type2>::type, PatchField, GeoMesh> > Foam::operator&&(const Foam::tmp<Foam::GeometricField<TypeR, PatchField, GeoMesh> >&, const Foam::tmp<Foam::GeometricField<Type1, PatchField, GeoMesh> >&) [with Type1 = Foam::SymmTensor<double>, Type2 = Foam::Vector<double>, PatchField = Foam::fvPatchField, GeoMesh = Foam::volMesh, typename Foam::scalarProduct<Type1, Type2>::type = double]’
TEqn.H:22:38: instantiated from here
/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/FieldFunctions.C:705:1: error: no match for ‘operator&&’ in ‘*(f2P ++) && *(f3P ++)’
/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/FieldFunctions.C:705:1: note: candidates are: operator&&(bool, bool) <built-in>
/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/src/OpenFOAM/lnInclude/dimensionSet.H:293:29: note: Foam::dimensionSet Foam::operator&&(const Foam::dimensionSet&, const Foam::dimensionSet&)
make: *** [Make/linuxGccDPOpt/bbvffPerfectTdepDiss2.o] Error 1
thanks Mostafa |
|
|
|
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| VOF simulation of a viscoelastic fluid | sinah | OpenFOAM Running, Solving & CFD | 10 | November 25, 2010 11:02 |
| FREE SURFACE VISCOELASTIC FLOWS | Valdemir G. Ferreira | Main CFD Forum | 6 | December 18, 2009 06:14 |
| Viscoelastic flow modeling in OpenFOAM | vulda | OpenFOAM Running, Solving & CFD | 1 | March 17, 2008 08:32 |
| Polyflow & OpenFoam on Viscoelastic flow modeling | Sumeshen | Main CFD Forum | 0 | March 14, 2008 09:29 |
| Viscoelastic fluid codes | joel davison | Main CFD Forum | 0 | November 6, 2001 05:09 |