
[Sponsors] 
June 16, 2017, 04:09 
Hyperelastic models implementation

#1 
New Member
Behzad Taghilou
Join Date: Jul 2016
Posts: 7
Rep Power: 8 
Hello,
My question is about how a hyperelastic model can be implemented in foamextend? The displacement gradient is needed in hyperelastic models. I was starting with other rheology laws such as PronyViscoelastic model but in this model ((fvc::gradU)) is not used. When I define deformation gradient tensor from volTensorField class I get errors. Could anyone provide me the solution? Thanks a lot Last edited by Behzad Taghilou; June 16, 2017 at 16:21. 

June 19, 2017, 09:11 

#2 
Super Moderator
Tobias Holzmann
Join Date: Oct 2010
Location: Tussenhausen
Posts: 2,680
Blog Entries: 6
Rep Power: 49 
Hi,
if I get it right, you need the displacement field in the hyperelastic model, right? To do that, you can get access to the displacement field using the openfoam database. However, you have to be sure that this field exist, otherwise you will just get an runtime error. Within your own model, you have access to the regIOobjects like: Code:
volVectorField Displacement_ = this>db().lookupObject<volVectorField>("D");
__________________
Keep foaming, Tobias Holzmann 

June 19, 2017, 17:54 

#3 
New Member
Behzad Taghilou
Join Date: Jul 2016
Posts: 7
Rep Power: 8 
Dear Tobias,
I imagine that I should define a elastic modulus (E) which is a function of the left CauchyGreen deformation tensor (B). In PronyViscoelastic.C file, the elastic modulus is a function of time.In $FOAM_SOLVERS/solidMechanics/deprecatedSolvers/materialModels/rheologyModel/rheologyLaws/PronyViscoelastic/PronyViscoelastic.C The part of the definition of prony series is: Code:
Foam::tmp<Foam::volScalarField> Foam::PronyViscoelastic::E(scalar t) const { scalar E = 0.0; E = k_[0]; for (int i=1; i<k_.size(); i++) { E += k_[i]*exp(t/tau_[i]); } if (t < 0) {￼ E = 0; } So if the left CauchyGreen deformation tensor is accessible then how can I define a elastic modulus depending on it? After all I'm not sure that this is the true way to define a hyperelastic material. If you have any solution tricks please let me know to do. Bests 

June 25, 2019, 06:30 

#4  
Member
Emad Tandis
Join Date: Sep 2010
Posts: 77
Rep Power: 14 
Quote:
Dear Behzad, I got interested in your explanation for hyperelastic material. I have implemented a NeoHookean constitutive model and want to extend it for mooneyrivlon material by calculating elasticity (E) as a function of B. So, please let me now if you could implement your idea. 

Tags 
foamextend, hyperelastic 
Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Twofluid models vs mixture models for bubbly flows  Hansong Tang  Main CFD Forum  6  December 8, 2009 04:21 
Implementation of New models in FLuent  Najiha  Fluent UDF and Scheme Programming  1  May 24, 2009 15:56 
How can I use a model's outlet as another model's inlet??  jimmer  STARCD  1  May 4, 2009 12:25 
Turbulence models implementation  vinz  OpenFOAM Running, Solving & CFD  29  April 29, 2008 11:28 
MODELS  Murthy V N  FLUENT  0  February 9, 2008 02:48 