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

📄 nosebl.h

📁 一个2D电磁场FEM计算的VC++源程序
💻 H
字号:
namespace femmedata
{

/////////////////////////////////////////////////////////////////////////////
// CNode -- structure that holds information about each control point.

class CNode
{
	public:
		CNode();
			
		double x,y;
		int xs,ys;
		BOOL IsSelected;
		CString BoundaryMarker;
		int InGroup;

		double GetDistance(double xo, double yo);
		CComplex CC();
		void ToggleSelect();

	private:

};

/////////////////////////////////////////////////////////////////////////////
// CSegment -- structure that holds information about lines joining control pts

class CSegment
{
	public:
		CSegment();
			
		int n0,n1;
		BOOL IsSelected;
		BOOL Hidden;
		double MaxSideLength;
		CString BoundaryMarker;
		int InGroup;
		
		void ToggleSelect();

	private:

};

class CArcSegment
{
	public:
		CArcSegment();
			
		int n0,n1;
		BOOL NormalDirection;
		BOOL IsSelected;
		BOOL Hidden;
		double MaxSideLength,ArcLength;
		CString BoundaryMarker;
		int InGroup;

		void ToggleSelect();
	
	private:

};
/////////////////////////////////////////////////////////////////////////////
// CBlockLabel -- structure that holds block label information

class CBlockLabel
{
	public:
		CBlockLabel();
				
		double x,y;
		double MaxArea;
		double MagDir;
		int    Turns;
		BOOL IsSelected;
		CString BlockType;
		CString InCircuit;
		int InGroup;
		BOOL IsExternal;

		void ToggleSelect();
		double GetDistance(double xo, double yo);

	private:

};

class CMaterialProp
{
	public:

		CMaterialProp();
		~CMaterialProp();
		void StripBHData(CString &b, CString &h);
		void BHDataToCString(CString &b, CString &h);

		CString BlockName;
		double mu_x,mu_y;		// permeabilities, relative
	
		int    BHpoints;		// number of B-H datapoints;
		CComplex *BHdata;		// array of B-H pairs;

		int    LamType;			// flag that tells how block is laminated;
								//	0 = not laminated or laminated in plane;
								//  1 = laminated in the x-direction;
								//  2 = laminated in the y-direction;
		double LamFill;			// lamination fill factor, dimensionless;
		double Theta_m;			// direction of the magnetization, degrees
		double H_c;				// magnetization, A/m
		double Jr,Ji;			// applied current density, MA/m^2
		double Cduct;		    // conductivity of the material, MS/m
		double Lam_d;			// lamination thickness, mm
		double Theta_hn;		// max hysteresis angle, degrees, for nonlinear problems
		double Theta_hx;		// hysteresis angle, degrees, x-direction
		double Theta_hy;		// and y-direction, for anisotropic linear problems.
		int    NStrands;		// number of strands per wire
		double WireD;			// strand diameter, mm

	private:
};

class CBoundaryProp
{
	public:
	
		CBoundaryProp();

		CString BdryName;
		int BdryFormat;			// type of boundary condition we are applying
								// 0 = constant value of A
								// 1 = Small skin depth eddy current BC
								// 2 = Mixed BC
								// 3 = SDI
								// 4 = Periodic
								// 5 = Antiperiodic
		
		double A0,A1,A2,phi;	// set value of A for BdryFormat=0;
	
		double Mu,Sig;			// material properties necessary to apply
								// eddy current BC
		
		double c0,c1;			// coefficients for mixed BC

		// TO DO:  ``flux pipe?'' and ''line currents''
		// Line currents might be redundant, since we already have magnetization.

	private:
};

class CPointProp
{
	public:

		CPointProp();

		CString PointName;
		double Jr,Ji;			// applied point current, A 
		double Ar,Ai;				// prescribed nodal value;

	private:
};

class CCircuit
{
	public:

		CCircuit();

		CString CircName;
		CComplex Amps;
		int		CircType;

	private:

};

class CPeriodicBoundary
{
	public:
	
		CPeriodicBoundary();

		CString BdryName;
		int BdryFormat;			// 0 = Periodic
								// 1 = Antiperiodic
		int nseg;				// number of segs with this bc
		int narc;				// number of arcs with this bc
		int seg[2];				// (arc)segments to which is applied
		
	private:
};

class CCommonPoint
{
	public:
		
		CCommonPoint();
		void Order();

		int x,y,t;

	private:
};

}

using namespace femmedata;

⌨️ 快捷键说明

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