📄 crsec3dbeam.cpp
字号:
#include "crsec3dbeam.h"#include "global.h"#include "stochdriver.h"crsec3dbeam::crsec3dbeam (void){ a=0.0; ix=0.0; iy=0.0; iz=0.0; shearcoeffy=0.0; shearcoeffz=0.0; rho=0.0; allocv(3, lcs); fillv(0.0, lcs);}crsec3dbeam::~crsec3dbeam (void){ }/** function read parameters of cross-section of 3D beams @param in - input stream*/void crsec3dbeam::read (XFILE *in){ switch (Mp->tprob){ case linear_statics:{ xfscanf (in,"%lf %lf %lf %lf %lf %lf",&a,&ix,&iy,&iz,&shearcoeffy,&shearcoeffz); readv(in, lcs);// function from the file vector.cpp break; } case eigen_dynamics:{ xfscanf (in,"%lf %lf %lf %lf %lf %lf %lf",&a,&ix,&iy,&iz,&shearcoeffy,&shearcoeffz,&rho); readv(in, lcs);// function from the file vector.cpp break; } case forced_dynamics:{ xfscanf (in,"%lf %lf %lf %lf %lf %lf %lf",&a,&ix,&iy,&iz,&shearcoeffy,&shearcoeffz,&rho); readv(in, lcs);// function from the file vector.cpp break; } case growing_mech_structure: case mech_timedependent_prob:{ xfscanf (in,"%lf %lf %lf %lf %lf %lf",&a,&ix,&iy,&iz,&shearcoeffy,&shearcoeffz); readv(in, lcs);// function from the file vector.cpp break; } case earth_pressure:{ xfscanf (in,"%lf %lf %lf %lf %lf %lf",&a,&ix,&iy,&iz,&shearcoeffy,&shearcoeffz); readv(in, lcs);// function from the file vector.cpp break; } default:{ fprintf (stderr,"\n\n unknown problem type is required in function"); fprintf (stderr,"\n crsec3dbeam::read (%s, line %d).\n",__FILE__,__LINE__); } }}double crsec3dbeam::give_area (){ return a;}void crsec3dbeam::give_moments (double *i){ i[0]=ix; i[1]=iy; i[2]=iz;}void crsec3dbeam::give_shearcoeff (double *sc){ sc[0]=shearcoeffy; sc[1]=shearcoeffz;}double crsec3dbeam::give_density (){ return rho;}void crsec3dbeam::changeparam (atsel &atcs,vector &val){ long i; for (i=0;i<atcs.num;i++){ switch (atcs.atrib[i]){ case 0:{ a=val[i]; break; } case 1:{ ix=val[i]; break; } case 2:{ iy=val[i]; break; } case 3:{ iz=val[i]; break; } case 4:{ shearcoeffy=val[i]; break; } case 5:{ shearcoeffz=val[i]; break; } case 6:{ rho=val[i]; break; } default:{ fprintf (stderr,"\n\n wrong number of atribute in function changeparam (%s, line %d).\n",__FILE__,__LINE__); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -