FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

readMechanicalProperties.H

Go to the documentation of this file.
00001     Info<< "Reading mechanical properties\n" << endl;
00002 
00003     IOdictionary mechanicalProperties
00004     (
00005         IOobject
00006         (
00007             "mechanicalProperties",
00008             runTime.constant(),
00009             mesh,
00010             IOobject::MUST_READ,
00011             IOobject::NO_WRITE
00012         )
00013     );
00014 
00015     dimensionedScalar rho(mechanicalProperties.lookup("rho"));
00016     dimensionedScalar rhoE(mechanicalProperties.lookup("E"));
00017     dimensionedScalar nu(mechanicalProperties.lookup("nu"));
00018 
00019     Info<< "Normalising E : E/rho\n" << endl;
00020     dimensionedScalar E = rhoE/rho;
00021 
00022     Info<< "Calculating Lame's coefficients\n" << endl;
00023 
00024     dimensionedScalar mu = E/(2.0*(1.0 + nu));
00025     dimensionedScalar lambda = nu*E/((1.0 + nu)*(1.0 - 2.0*nu));
00026     dimensionedScalar threeK = E/(1.0 - 2.0*nu);
00027 
00028     Switch planeStress(mechanicalProperties.lookup("planeStress"));
00029 
00030     if (planeStress)
00031     {
00032         Info<< "Plane Stress\n" << endl;
00033 
00034         lambda = nu*E/((1.0 + nu)*(1.0 - nu));
00035         threeK = E/(1.0 - nu);
00036     }
00037     else
00038     {
00039         Info<< "Plane Strain\n" << endl;
00040     }
00041 
00042     Info<< "mu = " << mu.value() << " Pa/rho\n";
00043     Info<< "lambda = " << lambda.value() << " Pa/rho\n";
00044     Info<< "threeK = " << threeK.value() << " Pa/rho\n";
00045 
00046 // ************************ vim: set sw=4 sts=4 et: ************************ //
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines