📄 mechmat.cpp
字号:
mpfib = new microfiber [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of microplane material in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } mpfib[k-1].read (in); } break; } case mohrcoul:{ if (Mespr==1) fprintf (stdout,"\n number of Mohr-Coulomb materials %ld",numtype); mcoul = new mohrcoulomb [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Mohr-Coulomb material in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } mcoul[k-1].read (in); } break; } case mohrcoulparab:{ if (Mespr==1) fprintf (stdout,"\n number of parabolic Mohr-Coulomb materials %ld",numtype); mcpar = new mohrcoulombpar [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of parabolic Mohr-Coulomb material in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } mcpar[k-1].read (in); } break; } case boermaterial:{ if (Mespr==1) fprintf (stdout,"\n number of Boer materials %ld",numtype); boerm = new boermat [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Boer material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } boerm[k-1].read (in); } break; } case druckerprager:{ if (Mespr==1) fprintf (stdout,"\n number of Drucker-Prager materials %ld",numtype); drprm = new drprag [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Drucker-Prager material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } drprm[k-1].read (in); } break; } case modcamclaymat:{ if (Mespr==1) fprintf (stdout,"\n number of modified cam-clay materials %ld",numtype); cclay = new camclay [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of modified cam-clay material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } cclay[k-1].read (in); } break; } case shefpl:{ if (Mespr==1) fprintf (stdout,"\n number of Sheffield plasticity materials %ld",numtype); shpl = new shefplast [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Sheffiled material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } shpl[k-1].read (in); } break; } case chenplast:{ if (Mespr==1) fprintf (stdout,"\n number of Chen plasticity materials %ld",numtype); chplast = new chen [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Chen material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } chplast[k-1].read (in); } break; } case glasgowmechmat:{ if (Mespr==1) fprintf (stdout,"\n number of Glasgow plasticity materials %ld",numtype); glasgmat = new glasgmech [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Glasgow material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } glasgmat[k-1].read (in); } break; } case glasgowdamage:{ if (Mespr==1) fprintf (stdout,"\n number of Glasgow damage materials %ld",numtype); glasgdam = new glasgowdam [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Glasgow damage material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } glasgdam[k-1].read (in); } break; } case creep_damage:{ if (Mespr==1) fprintf (stdout,"\n number of artificial material creep-damage %ld",numtype); crdam = new creepdam [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of artificial material creep-damge"); fprintf (stderr,"\n in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } } break; } case time_switchmat:{ if (Mespr==1) fprintf (stdout,"\n number of artificial time-switched material %ld",numtype); tswmat = new timeswmat [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of artificial time-switched material"); fprintf (stderr,"\n in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } } break; } case simvisc:{ if (Mespr==1) fprintf (stdout,"\n number of simple viscous materials %ld",numtype); svis = new simviscous [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of simple viscous material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } svis[k-1].read (in); } break; } case simvisplas:{ if (Mespr==1) fprintf (stdout,"\n number of simple visco-plastic materials %ld",numtype); svipl = new svisplas [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of simple visco-plastic material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } svipl[k-1].read (in); } break; } case lemaitr:{ if (Mespr==1) fprintf (stdout,"\n number of Lemaitre visco materials %ld",numtype); lmtr = new lemaitre [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Lemaitre visco material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } lmtr[k-1].read (in); } break; } case scaldamage:{ if (Mespr==1) fprintf (stdout,"\n number of simple damage materials %ld",numtype); scdam = new scaldam [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of simple damage material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } scdam[k-1].read (in); } break; } case scaldamagecc:{ if (Mespr==1) fprintf (stdout,"\n number of simple damage materials with crack closure %ld",numtype); scdamcc = new scaldamcc [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of simple damage material with crack closure in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } scdamcc[k-1].read (in); } break; } case scaldamage_time:{ if (Mespr==1) fprintf (stdout,"\n number of simple damage time dependent materials %ld",numtype); scdamtime = new scaldamtime [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of simple damage time dependent material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } scdamtime[k-1].read (in); } break; } case anisodamage:{ if (Mespr==1) fprintf (stdout,"\n number of anisotropic damage materials %ld",numtype); anidam = new anisodam [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of anisotropic damage material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } anidam[k-1].read (in); } break; } case aci:{ if (Mespr==1) fprintf (stdout,"\n number of aci78 materials %ld",numtype); aci78mod = new aci78 [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of aci78 material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } aci78mod[k-1].read (in); } break; } case cebfip:{ if (Mespr==1) fprintf (stdout,"\n number of cebfip78 materials %ld",numtype); cebfip78mod = new cebfip78 [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of cebfip78 material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } cebfip78mod[k-1].read (in); } break; } case graphm:{ if (Mespr==1) fprintf (stdout,"\n number of graphic material materials %ld",numtype); grmat = new graphmat [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of graphic material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } grmat[k-1].read (in); } break; } case graphmtime:{ if (Mespr==1) fprintf (stdout,"\n number of graphic material time dependent materials %ld",numtype); grmattime = new graphmattime [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of graphic time dependent material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } grmattime[k-1].read (in); } break; } case geoelast:{ if (Mespr==1) fprintf (stdout,"\n number of geoelast material materials %ld",numtype); geoel = new geoelastmat [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of graphic material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } geoel[k-1].read (in); } break; } case creepb3:{ if (Mespr==1) fprintf (stdout,"\n number of b3 creep material materials %ld",numtype); crb3 = new b3mat [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of b3 creep material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } crb3[k-1].read (in); } break; } case creeprs:{ if (Mespr==1) fprintf (stdout,"\n number of b3 creep material materials %ld",numtype); crrs = new rspecmat [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of b3 creep material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } crrs[k-1].read (in); } break; } case creepdpl:{ if (Mespr==1) fprintf (stdout,"\n number of double-power law creep material materials %ld",numtype); crdpl = new dplmat [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of double-power law creep material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } crdpl[k-1].read (in); } break; } case creepbaz:{ if (Mespr==1) fprintf (stdout,"\n number of creep material materials %ld",numtype); crbaz = new creepb [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of creep material in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } crbaz[k-1].read (in); } break; } case consolidation:{ if (Mespr==1) fprintf (stdout,"\n number of consolidation material materials %ld",numtype); csol = new consol [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of consolidation material model in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } csol[k-1].read (in); } break; } case winklerpasternak:{ if (Mespr==1) fprintf (stdout,"\n number of Winkler-Pasternak material materials %ld",numtype); wpast = new winpast [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of Winkler-Pasternak material model in function"); fprintf (stderr,"\n mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } wpast[k-1].read (in); } break; } case therisodilat:{ if (Mespr==1) fprintf (stdout,"\n number of isotropic thermal dilatancy materials %ld",numtype); tidilat = new therisomat [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of isotropic thermal dilatancy material"); fprintf (stderr,"\n in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } tidilat[k-1].read (in); } break; } case therisodilattime:{ if (Mespr==1) fprintf (stdout,"\n number of isotropic thermal dilatancy materials with time dependent temperature %ld",numtype); tidilattime = new therisomattime [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of isotropic thermal dilatancy material with time dependent temperature"); fprintf (stderr,"\n in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } tidilattime[k-1].read (in); } break; } case nonlocplastmat:{ if (Mespr==1) fprintf (stdout,"\n number of nonlocal plasticity materials %ld",numtype); nlplast = new nonlocplast [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of nonlocal plasticity material in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } nlplast[k-1].read (in); } // nonlocal material model flag is set Mp->matmodel = nonlocal; break; } case nonlocdamgmat:{ if (Mespr==1) fprintf (stdout,"\n number of nonlocal damage materials %ld",numtype); nldamg = new nonlocdamg [numtype]; for (j=0;j<numtype;j++){ k=numtype+1; xfscanf (in,"%ld",&k); if (k>numtype || k<1){ fprintf (stderr,"\n\n wrong number of nonlocal damage material in function mechmat::readmatchar (file %s, line %d).\n",__FILE__,__LINE__); } nldamg[k-1].read (in); } // nonlocal material model flag is set Mp->matmodel = nonlocal; break; } case damage_plasticity:{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -