Tri_a_fail_crit_YS.h

Go to the documentation of this file.
00001 
00002 //################################################################################
00003 //# COPYRIGHT (C):     :-))                                                      #
00004 //# PROJECT:           OpenSees                                                  #
00005 //# PURPOSE:           Triaxial Failure Criterion for Concrete - yield criterion #
00006 //# CLASS:             TriFCYieldSurface                                         #
00007 //#                                                                              #
00008 //# VERSION:           1.0                                                       #
00009 //# LANGUAGE:          C++ (ili tako nesto)                                      #
00010 //# TARGET OS:                                                                   #
00011 // DESIGNER(S):       Boris Jeremic and Zhaohui Yang [jeremic,zhyang]@ucdavis.edu|
00012 // PROGRAMMER(S):     Vlado Vukadin                                              |
00013 //#                                                                              #
00014 //#                                                                              #
00015 //# DATE:             June 01, 2002                                              #
00016 //# UPDATE HISTORY:    bice tako dobr da nece biti potreban update :)            #
00017 //#                                                                              #
00018 //#                                                                              #
00019 //#                                                                              #
00020 //#                                                                              #
00021 //# SHORT EXPLANATION:                                                           #
00022 //#                                                                              #
00023 //# Yield surface is based on article by Menetrey, P. and William, K.J.          #
00024 //# published in 1995 in  ACI Structural Journal pp 311-318. Purpose of the     #
00025 //# Yield surface is to model triaxial strenght of concrete                      #
00026 //#                                                                              #
00027 //#                                                                              #
00028 //################################################################################
00029 //*/
00030 
00031 #ifndef Tri_a_fail_crit_YS_H
00032 #define Tri_a_fail_crit_YS_H
00033 
00034 #include <stresst.h>
00035 #include <BJtensor.h>
00036 #include "EPState.h"
00037 #include "YS.h"
00038 
00039 class TriFCYieldSurface : public YieldSurface
00040 {
00041   // Private vars to define the TriFCYieldSurface Yield Surface
00042   private:
00043      double fcomp;
00044      double ftens;
00045      double el; 
00046      double c;
00047   public:
00048     YieldSurface *newObj();  //create a clone of itself
00049     
00050     TriFCYieldSurface (double fc, double ft, double e, double coh );   // Default constructor
00051 
00052      
00053 
00054     virtual ~TriFCYieldSurface  ( );     // Destructor
00055 
00056     double f(const EPState *EPS) const;
00057     tensor dFods(const EPState *EPS) const;
00058 
00059     // Redefine 1st derivative of F over scalar internal variables
00060     //double xi_s1( const EPState *EPS ) const;
00061     //double xi_s2( const EPState *EPS ) const;
00062 
00063     // Redefine 1st derivative of F over tensorial internal variables
00064     //tensor xi_t1(const EPState *EPS) const
00065     //{
00066     
00067     //}
00068     
00069     double getfcomp() const;
00070     double getftens() const;
00071     double getel() const;
00072     double get_c() const;
00073 
00074     void print() {opserr << *this; }; 
00075   
00076     //================================================================================
00077     // Overloaded Insertion Operator
00078     // prints an XX YieldSurface's contents 
00079     //================================================================================
00080     friend OPS_Stream& operator<< (OPS_Stream& os, const TriFCYieldSurface & YS);
00081 
00082 };
00083 
00084 #endif
00085 

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