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

Viscoelastic Fluid Flows using OpenFOAM The solver viscoelasticFluidFoam

Register Blogs Community New Posts Updated Threads Search

Like Tree44Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   March 18, 2010, 09:45
Default
  #101
Disabled
 
Join Date: Jul 2009
Posts: 63
Rep Power: 17
anon_c is on a distinguished road
this error can be

a writing error

in the file

src/transportmodel/viscoelastic/make

there is a data calld files

you have to write there the real path line´s name without wiriting mistake

and then you go inside

src/transportmodel/viscoelastic/viscoelastcilaws

and there the name of the (((target))) the folder/directory must be the same like n the data called files (of the make directory)

after that go out side to

src/transportmodels/viscoelastic/

and write in your shell

wmake libso

(another way is go out to src/transportmodells/ and there typ in shell ./Allmake)

but you really need to be shure that in your new models directory under

src/transportmodel/viscoelastic/viscoelastcilaws

the name of folder is the same like (let us say newmodell)
is in the
path

src/transportmodel/viscoelastic/viscoelastcilaws/newmodell

with

newmodell.C
and
newmodell.H
anon_c is offline   Reply With Quote

Old   March 18, 2010, 13:17
Default Viscoelastic Fluid Flows using OpenFOAM The solver viscoelasticFluidFoam
  #102
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi Tajoooko
Thank you very much for you quick reply. I'll check that and if I have problem I'll inform you.
Thank you very much.
Best regards

Ata
ata is offline   Reply With Quote

Old   June 8, 2010, 22:35
Default Extension of viscoelasticFluidFoam to viscoelasticInterFoam
  #103
New Member
 
pkumar
Join Date: Jun 2010
Posts: 7
Rep Power: 16
purushotam85 is on a distinguished road
Hello everyone,

I want to simulate die swell and jet impact on moving surface. The fluid under consideration is viscoelastic with shear thinning behaviour. I was reading through these posts and got few viscosity models developed by Jovani.

For my case I want to add new viscosity model that will read one viscoelastic fluid and one Newtonian fluid like air or water together. The question is how do I combine these two very different models together.

And finally I want to solve this using viscoelasticInterFoam. So if anybody has done this before please help.

Any help is appreciated.

Thanks
Purushotam Kumar
purushotam85 is offline   Reply With Quote

Old   June 9, 2010, 01:43
Default Viscoelastic Fluid Flows using OpenFOAM The solver viscoelasticFluidFoam
  #104
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi Purushotam Kumar
I hope you are doing very well. I have been done you desired code in OpenFOAM but because I am PhD student I can not release it before end of my PhD. However you can use interFoam and viscoelasticFluidFoam solvers and combine them to achieve your purpose. I'll be very glad if I can help you.
Best regards

Ata
ata is offline   Reply With Quote

Old   June 9, 2010, 01:50
Default Viscoelastic Fluid Flows using OpenFOAM The solver viscoelasticFluidFoam
  #105
New Member
 
pkumar
Join Date: Jun 2010
Posts: 7
Rep Power: 16
purushotam85 is on a distinguished road
Thanks for your concern ata and I do understand your point.

Just tell me how did you add those multi mode viscosity model with newtonian viscosity model.

I was trying to follow "incompressibleTwoPhaseMixture" viscosity and write it for viscoelastic case but I could not get it going. any help on this.

Regards,
Purushotam Kumar
purushotam85 is offline   Reply With Quote

Old   June 10, 2010, 01:09
Default
  #106
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi Purushotam Kumar
For your problem see icoFoam and viscoelasticFluidFoam solvers. And in future I'll explain this much more in my paper.
Best regards

Ata
ata is offline   Reply With Quote

Old   June 10, 2010, 01:37
Default Viscoelastic Fluid Flows using OpenFOAM The solver viscoelasticFluidFoam
  #107
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi Antonio Martins
Thank you very much for your message.
As I know Jovani is working on his PhD thesis and as I know his PhD thesis is on two phase viscoelastic fluid flow. It seems that he can not release his code until end of his PhD thesis.
However is Jovani released his code?
Thank you very much
Best regards

Ata
ata is offline   Reply With Quote

Old   June 24, 2010, 16:02
Default
  #108
Member
 
s.rasoul_varedi
Join Date: Feb 2010
Posts: 82
Rep Power: 15
desert_1250 is an unknown quantity at this point
Send a message via Yahoo to desert_1250
Hello Jovani,how are u?

My name is rasoul and I need PTT model for solving the viscoelastic Fluid,if you help me ,i am very glad,
i am waiting...
desert_1250 is offline   Reply With Quote

Old   June 25, 2010, 03:18
Default Viscoelastic Fluid Flows using OpenFOAM The solver viscoelasticFluidFoam
  #109
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi s.rasoul_varedi
You can find a complete reply to your question in one post that I were asked from Jovani a question like your question.
Best regards

Ata
ata is offline   Reply With Quote

Old   June 25, 2010, 19:19
Default
  #110
Member
 
Jovani L. Favero
Join Date: Mar 2009
Location: Rio de Janeiro, RJ, Brazil
Posts: 45
Rep Power: 18
jovani is on a distinguished road
Send a message via Skype™ to jovani
Hello,

I think there is anything about it in older posts. The line command bellow can download all OF-dev:

svn checkout http://openfoam-extend.svn.sourcefor...nFOAM-1.5-dev/ OpenFOAM-1.5-dev/

and then it need be compiled. For only LPTT the follow line command can be used:

svn checkout http://openfoam-extend.svn.sourcefor...sticLaws/LPTT/ LPTT/


In ubuntu 10.04, there is an easy way to get OF-dev, developed by CAE-Team, see:

http://openfoamwiki.net/index.php/In...ucid_10.04_LTS


Ata,

I am not working with viscoelastic fluids in my PhD thesis, I am working with population balances. The solver based on interFoam, to take account viscoelastic effects, was developded soon I finnished my Mc. There is about one year I dont take it again. I think the solver is not yet closed once I can see for make it better. If you can contribute in this subject in your PhD thesys this will be very good . A small paper with some results for viscoelasticInterFoam you can see here:

http://ayumi106.co.cc/science/articl...ca8189dde0d11f

or,

http://www.aidic.it/escape20/webpapers/87Favero.pdf

Enjoy,

Jovani
jovani is offline   Reply With Quote

Old   June 28, 2010, 02:08
Default Viscoelastic Fluid Flows using OpenFOAM The solver viscoelasticFluidFoam
  #111
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi jovani
Thank you very much and excuse me for my fault about your PhD thesis subject. I have been prepare a code for two phase viscoelastic fluid flows based on your excellent code and interFoam solver for my PhD thesis .Abviously because of your abilities and your relation with Prof. Jasak your code is a better one.
Thank you very much
Best regards

Ata
ata is offline   Reply With Quote

Old   June 29, 2010, 09:46
Default viscoelasticInterFoam Solver
  #112
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Dear Jovani
Hello
I hope you are doing very well.
I have a question. Did you release your viscoelasticInterFoam code?
Thank you very much
Best regards

Ata
ata is offline   Reply With Quote

Old   June 29, 2010, 22:56
Default
  #113
Member
 
Jovani L. Favero
Join Date: Mar 2009
Location: Rio de Janeiro, RJ, Brazil
Posts: 45
Rep Power: 18
jovani is on a distinguished road
Send a message via Skype™ to jovani
Hello Ata,

The solver was not yet released. People from my old work group are using it to proceed with some simulations.

Best regards,
Jovani
jovani is offline   Reply With Quote

Old   June 30, 2010, 01:29
Default Thanks
  #114
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi Jovani
Thank you very much and congratulation for your excellent football team (Brazil is the first team in the word).
Best regards

Ata
ata is offline   Reply With Quote

Old   October 12, 2010, 12:05
Default compiling a code
  #115
Member
 
mohsen kh
Join Date: Nov 2009
Posts: 41
Rep Power: 16
mohsenkh599 is an unknown quantity at this point
Hi every body,
I have a problem when I want to compile a model.
the error is:

************************************************** *********************
************************************************** *********************

viscoelasticLaws/mohsen/mohsen.C:159: error: no match for ‘operator==’ in ‘Foam:perator+(const Foam::tmp<Foam::fvMatrix<Type> >&, const Foam::tmp<Foam::fvMatrix<Type> >&) [with Type = Foam::SymmTensor<double>](((const Foam::tmp<Foam::fvMatrix<Foam::SymmTensor<double> > >&)((const Foam::tmp<Foam::fvMatrix<Foam::SymmTensor<double> > >*)(& Foam::fvm::div(const Foam::surfaceScalarField&, Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&) [with Type = Foam::SymmTensor<double>](((Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh>&)(&((Foam::mohsen*)this)->Foam::mohsen::a_))))))) == Foam:perator+(const Foam::tmp<Foam::GeometricField<TypeR, PatchField, GeoMesh> >&, const Foam::tmp<Foam::GeometricField<Type1, PatchField, GeoMesh> >&) [with Type1 = Foam::Tensor<double>, Type2 = Foam::SymmTensor<double>, PatchField = Foam::fvPatchField, GeoMesh = Foam::volMesh](((const Foam::tmp<Foam::GeometricField<Foam::SymmTensor<do uble>, Foam::fvPatchField, Foam::volMesh> >&)((const Foam::tmp<Foam::GeometricField<Foam::SymmTensor<do uble>, Foam::fvPatchField, Foam::volMesh> >*)(& Foam:perator*(const Foam::dimensioned<double>&, const Foam::tmp<Foam::GeometricField<Type, PatchField, GeoMesh> >&) [with Type = Foam::SymmTensor<double>, PatchField = Foam::fvPatchField, GeoMesh = Foam::volMesh](((const Foam::tmp<Foam::GeometricField<Foam::SymmTensor<do uble>, Foam::fvPatchField, Foam::volMesh> >&)((const Foam::tmp<Foam::GeometricField<Foam::SymmTensor<do uble>, Foam::fvPatchField, Foam::volMesh> >*)(& Foam:perator&(const Foam::tmp<Foam::GeometricField<TypeR, PatchField, GeoMesh> >&, const Foam::tmp<Foam::GeometricField<Type1, PatchField, GeoMesh> >&) [with Type1 = Foam::SymmTensor<double>, Type2 = Foam::SymmTensor<double>, PatchField = Foam::fvPatchField, GeoMesh = Foam::volMesh](((const Foam::tmp<Foam::GeometricField<Foam::SymmTensor<do uble>, Foam::fvPatchField, Foam::volMesh> >&)((const Foam::tmp<Foam::GeometricField<Foam::SymmTensor<do uble>, Foam::fvPatchField, Foam::volMesh> >*)(& Foam:perator-(const Foam::dimensioned<Type>&, const Foam::tmp<Foam::GeometricField<Type1, PatchField, GeoMesh> >&) [with Form = Foam::SymmTensor<double>, Type = Foam::SymmTensor<double>, PatchField = Foam::fvPatchField, GeoMesh = Foam::volMesh](((const Foam::tmp<Foam::GeometricField<Foam::SymmTensor<do uble>, Foam::fvPatchField, Foam::volMesh> >&)((const Foam::tmp<Foam::GeometricField<Foam::SymmTensor<do uble>, Foam::fvPatchField, Foam::volMesh> >*)(& Foam:perator*(const Foam::scalar&, const Foam::GeometricField<Type, PatchField, GeoMesh>&) [with Type = Foam::SymmTensor<double>, PatchField = Foam::fvPatchField, GeoMesh = Foam::volMesh](((const Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh>&)((const Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh>*)(&((Foam::mohsen*)this)->Foam::mohsen::a_))))))))))))))))))))’

************************************************** ************
************************************************** ************

and the model is :

// Velocity gradient tensor
volTensorField L = fvc::grad( U() );

// Convected derivate term
// volTensorField C = tau_ & L;

// vorticity term
volTensorField Vor = L - L.T();

// Twice the rate of deformation tensor
volSymmTensorField twoD = twoSymm( L );


// fc
scalar fc = 0.5; //1 - 27 * det( a_ );

//double dot term

// volSymmTensorField mk = -( (2 / 35) * ( 1 - fc ) * twoD - (2 / 7) * ( a_ & twoD + twoD & a_ + (1 / 2) * tr( twoD & a_ ) * I_ ) - fc * tr( twoD & a_ ) * a_ );

// Stress transport equation
tmp<fvSymmTensorMatrix> aEqn
(
fvm::ddt(a_)
+ fvm::div(phi(), a_)
==
( 1 / 2 ) * ( Vor & a_ - a_ & Vor ) + ( 1 / 2 ) * keisi_ * ( twoD & a_ + a_ & twoD + 2 * ( ( (2 / 35) * ( 1 - fc ) * twoD - (2 / 7) * ( 1 - fc ) * ( a_ & twoD + twoD & a_ + (1 / 2) * tr( twoD & a_ ) * I_ ) - fc * tr( twoD & a_ ) * a_ ) ) + 2 * ci_ * twoD & ( I_ - 3 * a_ )
//+ twoSymm( C )
//- zeta_ / 2 * ( (tau_ & twoD) + (twoD & tau_) )
//- fvm::Sp( epsilon_ / etaP_ * tr(tau_) + 1/lambda_, tau_ )
);

aEqn().relax();
solve(aEqn);
// Viscoelastic stress
tau_ = (etaP_ / keisi_) * (a_ - I_);
}

************************************************** ****************
************************************************** ****************

where "a" , "tau" and "I" are symmetric tensors and "Vor" is asymmetric tensor. and the others are constant parameters.

best
mohsenkh599 is offline   Reply With Quote

Old   October 14, 2010, 03:15
Default
  #116
Senior Member
 
Dr. Alexander Vakhrushev
Join Date: Mar 2009
Posts: 256
Blog Entries: 1
Rep Power: 19
makaveli_lcf is on a distinguished road
Send a message via ICQ to makaveli_lcf
You don't have an operator "+" defined for the operation, which you perform at the line number 159 of your source code. Unfortunately, it is not possible to verify from your post, which line has number 159. Check if you operate there with the variables of the correct dimensions.
Good luck!
__________________
Best regards,

Dr. Alexander VAKHRUSHEV

Christian Doppler Laboratory for "Metallurgical Applications of Magnetohydrodynamics"

Simulation and Modelling of Metallurgical Processes
Department of Metallurgy
University of Leoben

http://smmp.unileoben.ac.at
makaveli_lcf is offline   Reply With Quote

Old   October 15, 2010, 06:07
Default Hi prof. jasak
  #117
Senior Member
 
Join Date: Sep 2010
Posts: 226
Rep Power: 17
T.D. is on a distinguished road
Hi prof. jasak,

My name is Talib, and i am trying to implement a new solver for the Rheology of Suspensions of non-Brownian particles that i'll hope put online as soon as i'm finished.

I'll need some help please?

I have already implemented a Model for the effective viscosity of suspensions which is known as Krieger-Dougherty Model.

I started from using simpleFoam solver to implement the new solver.

As we know in simpleFoam there exists the nuEff() that to be calculated from the defined viscosityModel by user (in my case) the Krieger-Daugherty Model.

My problem is the following:

I need to use in the same solver a new nuEff2() that will accounts for the stress due to the particles and that must be defined by another viscosityModel Law? I am facing a problem in how to imlplement this nuEff2() knowing that it should be called from the turbulence->laminar...etc directory in simpleFoam?

Simply and more clearly, how can i make to use two different effective viscosities "nu1" and "nu2" in the same solver where "nu1" uses a "viscosityModel1" and "nu2" uses a "viscosityModel2" ? ("viscosityModel1" and "viscosityModel2" will be defined by Me)


Thanks a lot
T.D. is offline   Reply With Quote

Old   October 16, 2010, 05:02
Default
  #118
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi T.D.
How are you bro.?
I think you must define a new abstract class for viscosity model and then derive your model from that.
Best regards
ata is offline   Reply With Quote

Old   October 16, 2010, 05:52
Default Hi ata
  #119
Senior Member
 
Join Date: Sep 2010
Posts: 226
Rep Power: 17
T.D. is on a distinguished road
Hi ata
yes i know that but the problem is i am so poor with c++ programming
can you give a small example pleaaaaase

For example let's say, a simple class for nuEff2() to be equal to like that in crosspowerLaw Model, and how to call and use it in the solver pleaaaase.



My Best Regards,

yours,

T.D.
T.D. is offline   Reply With Quote

Old   October 16, 2010, 06:43
Default
  #120
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi T.D
Use viscosityModel folder (as template for your abstract class) and one of the existing models in src/transportModels/incompressible/viscosityModels as your derived class for start.
Is it OK or you need more help?
Best regards
ata is offline   Reply With Quote

Reply


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
VOF simulation of a viscoelastic fluid sinah OpenFOAM Running, Solving & CFD 11 December 25, 2017 04:00
FREE SURFACE VISCOELASTIC FLOWS Valdemir G. Ferreira Main CFD Forum 6 December 18, 2009 07: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 06:09


All times are GMT -4. The time now is 09:40.