⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 structure.h

📁 本人自编的另一个有限元软件
💻 H
字号:
// Structure.h: interface for the CStructure class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_STRUCTURE_H__4A29E9BB_F60D_4B8F_8168_FA94FB13D305__INCLUDED_)
#define AFX_STRUCTURE_H__4A29E9BB_F60D_4B8F_8168_FA94FB13D305__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "Example.h"

//结构类,定义整个区域结构,分析,输出结果文件
class CStructure : public CObject  
{
public:
	CExample m_model;		//模型生成类,样例和自定义模型
	//成员变量
	int m_halfband;				//半带宽
	double** m_aStiffMatrix;	//刚度矩阵-半带宽
	double** m_aStiffMatrixAll;	//刚度矩阵-全存储
	double*	 m_aLoadVector;		//荷载向量
	int m_done;					//数据是否加载成功
	int m_solved;				//问题是否成功解决
	CString m_strExamName;	//实例名称
	int m_elementcount;		//单元总数
	int m_nodecount;		//结点总数
	CObArray m_nodeArray;	//结点数组
	CObArray m_elementArray;//单元数组
	CString m_strStructureData;//结构描述数据文件
	//成员函数
	void Init();			//初始化
	CStructure();
	void InitEquation(int create);//初始化矩阵
	virtual ~CStructure();
	int GetHalfBand();		//求半带宽
	void GetStiffMatrix(double **stiffmatrix);//求刚度矩阵
	void SetSupport(double** stiffmatrix);	//设置零边界,即支承
	void GetLoadVector(double* loadvector);	//取得荷载向量
	int SolveEquationGroup(double** matrixKE, double* vectorP);//解方程组
	int AnalysisStructure();		//总调用函数,进行分析
	/////////////////
	int GetDataFromModal();	//从建模器获取数据
	//读取数据
	int FindKeyWordsPos(CString& sKeyWords, CString& sData);
	int ReadInt(int& iCurCharPos, const CString &sData);
	double ReadDouble(int& iCurCharPos, const CString &sData);
	int DataInput(CString &sData);
	void Serialize(CArchive &ar);
};

#endif // !defined(AFX_STRUCTURE_H__4A29E9BB_F60D_4B8F_8168_FA94FB13D305__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -