// femmeDoc.h : interface of the CFemmeDoc class // ///////////////////////////////////////////////////////////////////////////// #define muo 1.2566370614359173e-6 #define Golden 0.3819660112501051517954131656 class CFemmeDocCore { // Attributes public: CFemmeDocCore(); ~CFemmeDocCore(); // General problem attributes double Precision; double Frequency; double Depth; int LengthUnits; BOOL ProblemType; BOOL Coords; // Axisymmetric external region parameters double extRo,extRi,extZo; CcsolvDlg *TheView; // CArrays containing the mesh information int BandWidth; CNode *meshnode; CElement *meshele; int NumNodes; int NumEls; // lists of properties int NumBlockProps; int NumPBCs; int NumLineProps; int NumPointProps; int NumCircProps; int NumBlockLabels; CMaterialProp *blockproplist; CBoundaryProp *lineproplist; CPointProp *nodeproplist; CCircuit *circproplist; CBlockLabel *labellist; CCommonPoint *pbclist; // stuff usually kept track of by CDocument char *PathName; // Operations public: BOOL LoadMesh(); BOOL OnOpenDocument(); BOOL Cuthill(); BOOL SortElements(); BOOL AnalyzeProblem(CBigComplexLinProb &L); CComplex ChargeOnConductor(int OnConductor, CBigComplexLinProb &L); BOOL WriteResults(CBigComplexLinProb &L); void CleanUp(); }; ///////////////////////////////////////////////////////////////////////////// double Power(double x, int n);