fdEvolution_TL.cpp

Go to the documentation of this file.
00001 //===============================================================================
00002 //# COPYRIGHT (C): Woody's license (by BJ):
00003 //                 ``This    source  code is Copyrighted in
00004 //                 U.S.,  for  an  indefinite  period,  and anybody
00005 //                 caught  using it without our permission, will be
00006 //                 mighty good friends of ourn, cause we don't give
00007 //                 a  darn.  Hack it. Compile it. Debug it. Run it.
00008 //                 Yodel  it.  Enjoy it. We wrote it, that's all we
00009 //                 wanted to do.''
00010 //
00011 //# PROJECT:           Object Oriented Finite Element Program
00012 //# PURPOSE:           Finite Deformation Hyper-Elastic classes
00013 //# CLASS:
00014 //#
00015 //# VERSION:           0.6_(1803398874989) (golden section)
00016 //# LANGUAGE:          C++
00017 //# TARGET OS:         all...
00018 //# DESIGN:            Zhao Cheng, Boris Jeremic (jeremic@ucdavis.edu)
00019 //# PROGRAMMER(S):     Zhao Cheng, Boris Jeremic
00020 //#
00021 //#
00022 //# DATE:              July 2004
00023 //# UPDATE HISTORY:
00024 //#
00025 //===============================================================================
00026 
00027 #ifndef fdEvolution_TL_CPP
00028 #define fdEvolution_TL_CPP
00029 
00030 #include "fdEvolution_TL.h"
00031 
00032 //------------------------------------------------------------------------
00033 fdEvolution_TL::fdEvolution_TL(double H_linear_in)
00034 :H_linear(H_linear_in)
00035 {
00036     
00037 }
00038 
00039 //------------------------------------------------------------------------
00040 fdEvolution_T * fdEvolution_TL::newObj() 
00041 {   
00042     fdEvolution_T *newEL = new fdEvolution_TL( *this );    
00043     return newEL;
00044 }
00045 
00046 //------------------------------------------------------------------------
00047 tensor fdEvolution_TL::HModulus(const stresstensor &sts, const FDEPState &fdepstate) const 
00048 {
00049     tensor eta = fdepstate.getStrainLikeKiVar();
00050     tensor I2("I", 2 , def_dim_2);
00051     tensor I4 = I2("ij")*I2("kl"); I4.null_indices();
00052     //I4 = (I4.transpose0110()+I4.transpose0111())*0.5; //For symmetric tensor
00053     I4 = I4.transpose0110();  //For general tensor
00054     return I4*H_linear;
00055 }
00056 
00057 //------------------------------------------------------------------------
00058 void fdEvolution_TL::print()
00059 {
00060     opserr << (*this);
00061 }
00062 
00063 //------------------------------------------------------------------------
00064 OPS_Stream& operator<< (OPS_Stream& os, const fdEvolution_TL & fdetl)
00065 {
00066    os.precision(5);
00067    os.width(10);
00068    os << "Tensor Linear Evolution Law's Modulus: " << "\n";
00069    
00070    return os;
00071 }
00072 
00073 #endif

Generated on Mon Oct 23 15:05:14 2006 for OpenSees by doxygen 1.5.0