?? elasticsteelmat.cpp
字號:
#include "stdafx.h"
//#include "FORCE.h"
#include "ElasticSteelMat.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CElasticSteelMat::CElasticSteelMat()
{
}
CElasticSteelMat::~CElasticSteelMat()
{
}
void CElasticSteelMat::ReadFile(CString m_cFilePath)
{
ifstream fin;
fin.open(m_cFilePath,ios::in);
// 臨時參量
int m_N;
double m_D;
char char1[100];
while(!fin.eof())
{
fin>>char1;
//材料輸入方式一
if(!strcmp(char1,"MATERIAL_1"))
{
m_nMatNum++;
m_aElasticMatPro.SetSize(m_nMatNum);
//讀材料的序號
fin>>char1;
m_N = atoi(char1);
m_aElasticMatPro[m_nMatNum - 1].m_nNo = m_N;
fin>>char1;
if(!strcmp(char1,"E_235"))
{
m_aElasticMatPro[m_nMatNum - 1].m_cMatName = "E_235";
m_aElasticMatPro[m_nMatNum - 1].m_dEO[0] = 29500;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[1] = 29500;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[2] = 29500;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[3] = 29500;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[4] = 11300;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[0] = 36;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[1] = 36;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[2] = 36;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[3] = 36;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[4] = 36*0.6;
m_aElasticMatPro[m_nMatNum - 1].m_N[0] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[1] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[2] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[3] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[4] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_dFu = 58;
m_aElasticMatPro[m_nMatNum - 1].m_dFyMin = 36;
m_aElasticMatPro[m_nMatNum - 1].m_dFuMin = 58;
m_aElasticMatPro[m_nMatNum - 1].m_dFuMax = 58;
m_aElasticMatPro[m_nMatNum - 1].m_dMiu = 0.3;
}
if(!strcmp(char1,"E_345"))
{
m_aElasticMatPro[m_nMatNum - 1].m_cMatName = "E_345";
m_aElasticMatPro[m_nMatNum - 1].m_dEO[0] = 29500;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[1] = 29500;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[2] = 29500;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[3] = 29500;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[4] = 11300;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[0] = 50;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[1] = 50;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[2] = 50;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[3] = 50;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[4] = 50*0.6;
m_aElasticMatPro[m_nMatNum - 1].m_N[0] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[1] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[2] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[3] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[4] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_dFu = 65;
m_aElasticMatPro[m_nMatNum - 1].m_dFyMin = 50;
m_aElasticMatPro[m_nMatNum - 1].m_dFuMin = 65;
m_aElasticMatPro[m_nMatNum - 1].m_dFuMax = 65;
m_aElasticMatPro[m_nMatNum - 1].m_dMiu = 0.3;
}
if(!strcmp(char1,"M_Q235"))
{
m_aElasticMatPro[m_nMatNum - 1].m_cMatName = "M_Q235";
m_aElasticMatPro[m_nMatNum - 1].m_dEO[0] = 206000000;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[1] = 206000000;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[2] = 206000000;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[3] = 206000000;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[4] = 79000000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[0] = 215000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[1] = 215000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[2] = 215000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[3] = 215000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[4] = 235*0.6*1000;
m_aElasticMatPro[m_nMatNum - 1].m_N[0] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[1] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[2] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[3] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[4] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_dFu = 235000;
m_aElasticMatPro[m_nMatNum - 1].m_dFyMin = 215000;
m_aElasticMatPro[m_nMatNum - 1].m_dFuMin = 235000;
m_aElasticMatPro[m_nMatNum - 1].m_dFuMax = 235000;
m_aElasticMatPro[m_nMatNum - 1].m_dMiu = 0.3;
}
if(!strcmp(char1,"M_Q345"))
{
m_aElasticMatPro[m_nMatNum - 1].m_cMatName = "M_Q345";
m_aElasticMatPro[m_nMatNum - 1].m_dEO[0] = 206000000;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[1] = 206000000;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[2] = 206000000;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[3] = 206000000;
m_aElasticMatPro[m_nMatNum - 1].m_dEO[4] = 79000000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[0] = 315000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[1] = 315000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[2] = 315000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[3] = 315000;
m_aElasticMatPro[m_nMatNum - 1].m_dFy[4] = 345*0.6*1000;
m_aElasticMatPro[m_nMatNum - 1].m_N[0] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[1] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[2] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[3] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_N[4] = 0;
m_aElasticMatPro[m_nMatNum - 1].m_dFu = 345000;
m_aElasticMatPro[m_nMatNum - 1].m_dFyMin = 315000;
m_aElasticMatPro[m_nMatNum - 1].m_dFuMin = 345000;
m_aElasticMatPro[m_nMatNum - 1].m_dFuMax = 345000;
m_aElasticMatPro[m_nMatNum - 1].m_dMiu = 0.3;
}
}
//材料輸入方式二
if(!strcmp(char1,"MATERIAL_APPOINT"))
{
//AfxMessageBox("找到了輸入方式二!",MB_OK,0);//*
m_nMatNum++;
m_aElasticMatPro.SetSize(m_nMatNum);
//讀材料的序號
fin>>char1;
m_N = atoi(char1);
m_aElasticMatPro[m_nMatNum - 1].m_nNo = m_N;
//讀材料的名字
fin>>char1;
m_aElasticMatPro[m_nMatNum - 1].m_cMatName = char1;
//讀彈性模量
for(int loop=0;loop<5;loop++)
{
fin>>char1;
m_D = atof(char1);
m_aElasticMatPro[m_nMatNum - 1].m_dEO[loop] = m_D;
}
//讀材料強度
for(loop=0;loop<5;loop++)
{
fin>>char1;
m_D = atof(char1);
m_aElasticMatPro[m_nMatNum - 1].m_dFy[loop] = m_D;
}
//讀應變
for(loop=0;loop<5;loop++)
{
fin>>char1;
m_D = atof(char1);
m_aElasticMatPro[m_nMatNum - 1].m_N[loop] = m_D;
}
//讀Fu
fin>>char1;
m_D = atof(char1);
m_aElasticMatPro[m_nMatNum - 1].m_dFu = m_D;
//讀FyMin
fin>>char1;
m_D = atof(char1);
m_aElasticMatPro[m_nMatNum - 1].m_dFyMin = m_D;
//讀FuMin
fin>>char1;
m_D = atof(char1);
m_aElasticMatPro[m_nMatNum - 1].m_dFuMin = m_D;
//讀FuMax
fin>>char1;
m_D = atof(char1);
m_aElasticMatPro[m_nMatNum - 1].m_dFuMax = m_D;
//讀入Miu
fin>>char1;
m_D = atof(char1);
m_aElasticMatPro[m_nMatNum - 1].m_dMiu = m_D;
}
}
fin.close();
//輸出讀數(shù)結果
OutputParameter();
}
//*****************************************************************************************
void CElasticSteelMat::OutputParameter()
{
ofstream fout;
fout.open("ElasticSteelMat Class Test.tst",ios::out);
fout<<"共有 "<<m_nMatNum<<" 種材料:"<<endl;
fout<<endl;
for(int loop=0;loop<m_nMatNum;loop++)
{
fout.width(12);
fout<<m_aElasticMatPro[loop].m_nNo;
fout.width(12);
fout<<m_aElasticMatPro[loop].m_cMatName<<endl;
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dEO[0];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dEO[1];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dEO[2];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dEO[3];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dEO[4]<<endl;
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFy[0];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFy[1];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFy[2];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFy[3];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFy[4]<<endl;
fout.width(16);
fout<<m_aElasticMatPro[loop].m_N[0];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_N[1];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_N[2];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_N[3];
fout.width(16);
fout<<m_aElasticMatPro[loop].m_N[4]<<endl;
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFu;
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFyMin;
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFuMin;
fout.width(16);
fout<<m_aElasticMatPro[loop].m_dFuMax<<endl;
fout<<endl;
fout<<m_aElasticMatPro[loop].m_dMiu;
fout<<endl;
}
fout.close();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -