CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Pre-Processing

DirectionMixed mixed bc

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

Like Tree28Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   November 7, 2013, 00:55
Default
  #41
Senior Member
 
Srivathsan N
Join Date: Jan 2013
Location: India
Posts: 101
Rep Power: 4
Sherlock_1812 is on a distinguished road
Hi Philip,

I have been trying to re-write valueFraction for each face of my patch as symm(n*n). I have a very basic doubt.
Is it better to write a new BC (derived from directionMixed (maybe?)) where this definition of valueFraction is changed as symm(n*n) while looping over all faces of the patch? If yes, where do I make the changes? In the 'updateCoeffs' section?

Thanks.
__________________
Regards,

Srivaths
Sherlock_1812 is offline   Reply With Quote

Old   September 15, 2014, 11:28
Default
  #42
New Member
 
Join Date: Jul 2013
Posts: 6
Rep Power: 3
Sliwa is on a distinguished road
Hi,

Quote:
Originally Posted by hjasak View Post
4) If this is not enough for you (there is another possibility), I have written a newDirectionMixedFvPatchField boundary condition, with 4 components. Unlike the above one, this b.c. allows both the normal and tangential condition to be mixed separately between the fixedValue and fixedGradient b.c. with two blending factors. You need this kind of thing for contact problems with friction and large deformation and similar. In my version, the stuff lives in:
OpenFOAM-1.2/applications/solvers/newStressAnalysis/materialModels/newDirectionM ixed
In my problem, I would like to specify on one of my boundaries:
- a zero gradient for the normal component of the displacement
- a zero displacement in the tangential direction
The newDirectionMixed looked like the perfect solution. However, when I ran it with my solver, I got the following error:

Code:
--> FOAM FATAL IO ERROR: 

    Cannot find 'value' entry on patch symr of field U in file "/home/salwa/OpenFOAM/salwa-extend-3.0/run/tutorials/solidMechanics/elasticThermalSolidFoam/flosse_test1/0/U"
    which is required to set the values of the generic patch field.
    (Actual type newDirectionMixed)

    Please add the 'value' entry to the write function of the user-defined boundary-condition
    or link the boundary-condition into libfoamUtil.so

file: /home/salwa/OpenFOAM/salwa-extend-3.0/run/tutorials/solidMechanics/elasticThermalSolidFoam/flosse_test1/0/U::boundaryField::symr from line 64 to line 69.

    From function genericFvPatchField<Type>::genericFvPatchField(const fvPatch&, const Field<Type>&, const dictionary&)
    in file fields/fvPatchFields/basic/generic/genericFvPatchField.C at line 71.

FOAM exiting
Adding a 'value' entry gave this error:
Code:
gradientInternalCoeffs cannot be called for a genericFvPatchField (actual type newDirectionMixed)
    on patch symr of field U in file "/home/salwa/OpenFOAM/salwa-extend-3.0/run/tutorials/solidMechanics/elasticThermalSolidFoam/flosse_test1/0/U"
    You are probably trying to solve for a field with a generic boundary condition.

    From function genericFvPatchField<Type>::gradientInternalCoeffs() const
    in file fields/fvPatchFields/basic/generic/genericFvPatchField.C at line 811.

FOAM exiting
This is my U file:
Code:
symr
    {

        type                                newDirectionMixed;
        refValue                           uniform    0;
        refGrad                            uniform    0;
        nHat                               (1 0 0);
        normalValueFraction            0;
        tangentialValueFraction       1;
        value                               uniform (0 0 0);
  }
Does anyone know where the problem might come from? Is there something wrong with my U file?

Thanks,
Sliwa is offline   Reply With Quote

Old   September 17, 2014, 10:02
Default
  #43
Senior Member
 
bigphil's Avatar
 
Philip Cardiff
Join Date: Mar 2009
Location: Dublin,Ireland
Posts: 565
Rep Power: 19
bigphil will become famous soon enoughbigphil will become famous soon enough
Hi Sliwa,

Quote:
In my problem, I would like to specify on one of my boundaries:
- a zero gradient for the normal component of the displacement
- a zero displacement in the tangential direction
directionMixed can do this: the capabilities of newDirectionMixed have essentially been included in the current directionMixed boundary condition, as valueFraction is a symmTensor now instead of a scalar.

To achieve what you want, use directionMixed like this:
Code:
myPatch
{
    type              directionMixed;
    refValue          uniform ( 0 0 0 );
    refGradient       uniform ( 0 0 0 );
    valueFraction     uniform ( 0 0 0 1 0 1 ); // (I - sqr(n))
    value             uniform ( 0 0 0 );
where I have assumed n = ( 1 0 0 ) above.
You can see that to fix the value in the normal direction valueFraction = sqr(n), whereas to fix the value in the tangential directions valueFraction = I - sqr(n).

Best regards,
Philip
tom ato likes this.
bigphil is offline   Reply With Quote

Old   September 17, 2014, 10:03
Default
  #44
Senior Member
 
bigphil's Avatar
 
Philip Cardiff
Join Date: Mar 2009
Location: Dublin,Ireland
Posts: 565
Rep Power: 19
bigphil will become famous soon enoughbigphil will become famous soon enough
Quote:
Originally Posted by Sherlock_1812 View Post
Hi Philip,

I have been trying to re-write valueFraction for each face of my patch as symm(n*n). I have a very basic doubt.
Is it better to write a new BC (derived from directionMixed (maybe?)) where this definition of valueFraction is changed as symm(n*n) while looping over all faces of the patch? If yes, where do I make the changes? In the 'updateCoeffs' section?

Thanks.
Hi Srivaths,

yes you should derive a new boundary condition from directionMixed and set the valueFraction in the constructor or, if the mesh is moving/changing, in updateCoeffs.

See for example, fixedDisplacementZeroShear in $FOAM_SRC/solidModels.fvPatchVectorFields in foam extend.

Best regards,
Philip
bigphil is offline   Reply With Quote

Old   September 18, 2014, 10:55
Default
  #45
New Member
 
Join Date: Jul 2013
Posts: 6
Rep Power: 3
Sliwa is on a distinguished road
Thank you, Philip! That worked.
Sliwa is offline   Reply With Quote

Reply

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
mixed difference Shuo Main CFD Forum 1 September 3, 2008 01:25
mixed convection sumesh FLUENT 0 March 7, 2008 01:00
Mixed CPU/GPU computing Joe Main CFD Forum 4 September 20, 2006 12:04
Direction mixed bc evgenii OpenFOAM Pre-Processing 1 November 30, 2005 05:37
mixed convection raj calay Main CFD Forum 6 April 21, 1999 22:33


All times are GMT -4. The time now is 00:52.