00001
00002
00004
00005 #include "CombinedIsoKin2D01.h"
00006 #include <math.h>
00007
00008 #define evolDebug 0
00009 #define COMBINEDISOKIN2D01_CLASSTAG -1
00011 // Construction/Destruction
00013
00014 CombinedIsoKin2D01::CombinedIsoKin2D01(int tag,
00015 double iso_ratio, double kin_ratio,
00016 double shr_iso_ratio, double shr_kin_ratio,
00017 double min_iso_factor,
00018 PlasticHardeningMaterial &kpx_pos,
00019 PlasticHardeningMaterial &kpx_neg,
00020 PlasticHardeningMaterial &kpy_pos,
00021 PlasticHardeningMaterial &kpy_neg,
00022 bool isDeformable, double dir)
00023 :PlasticHardening2D(tag, COMBINEDISOKIN2D01_CLASSTAG, min_iso_factor,
00024 iso_ratio, kin_ratio, kpx_pos, kpx_neg, kpy_pos, kpy_neg, dir)
00025 {
00026 deformable = isDeformable;
00027 isotropicRatio_shrink = shr_iso_ratio;
00028 kinematicRatio_shrink = shr_kin_ratio;
00029 }
00030
00031 CombinedIsoKin2D01::~CombinedIsoKin2D01()
00032 {
00033
00034 }
00035
00036 YS_Evolution *CombinedIsoKin2D01::getCopy(void)
00037 {
00038 CombinedIsoKin2D01 *theCopy = new
00039 CombinedIsoKin2D01( this->getTag(),
00040 isotropicRatio, kinematicRatio,
00041 isotropicRatio_shrink, kinematicRatio_shrink,
00042 minIsoFactor,
00043 *kpMatXPos, *kpMatXNeg, *kpMatYPos, *kpMatYNeg,
00044 deformable, direction);
00045 if(theCopy==0)
00046 {
00047 opserr << "WARNING - CombinedIsoKin2D01, unable to get copy\n";
00048 }
00049
00050 return theCopy;
00051 }
00052
00053 void CombinedIsoKin2D01::Print(OPS_Stream &s, int flag)
00054 {
00055 s << "CombinedIsoKin2D01 \n";
00056 s << "iso_Ratio = " << isotropicRatio << "\n";
00057 s << "isotropicFactor_hist = " << isotropicFactor_hist;
00058 s << "translateX = " << translate(0) << ",\ttranslateY = " << translate(1) << "\n";
00059 s << "\n";
00060
00061 }
00062