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

📄 ibg2.hxx

📁 有限元学习研究用源代码(老外的),供科研人员参考
💻 HXX
字号:
#ifndef ibg2_hxx
#define ibg2_hxx

#include "wzgrid.hxx"
#include "wzmetric.hxx"
#include "ibgtypes.hxx"
#include "wztensorgrid.hxx"
#include "ibgcriteria.hxx"

#include "cogfunction.hxx"

#define ibg2Success	0
#define ibg2Warning	(-1)
#define ibg2Error	(-2)
#define ibg2Fatal	(-3)

typedef void	*ibg2PtObject;
typedef	int	(*ibg2Function)(...);

typedef wzPointList 		wzPoints;

typedef struct _ibg2Geometry	ibg2GeometryRec,*ibg2Geometry;

const ibg2PtObject	ibg2NULL=0;
extern wzName		ibg2NoName;
extern wzGrid*		ibg2NoGrid;
const ibgBoolean	ibg2False=0;
const ibgBoolean	ibg2True=1;
const ibg2Function	ibg2NoFunction=0;
const wzFloat		ibg2Infty=1.e32;

const wzInteger		ibg2DIM=wzPointDim;
const wzInteger		wzFloatValues=wzPointDimFloat;
const wzInteger		wzIntegerValues=wzPointDimIndex;
const wzInteger		IBG2STMAX=5;

extern int	wzCellTypepoints[IBG2CTMAX];
extern int	wzCellTypelines[IBG2CTMAX];
extern int	wzCellTypesides[IBG2CTMAX];
extern int	wzCellTypeudim[IBG2CTMAX];
extern int	wzCellTypegdim[IBG2CTMAX];
extern int	wzCellTypecdim[IBG2CTMAX];
extern char*	wzCellTypename[IBG2CTMAX];
extern int	wzCellTypeepoint1[IBG2CTMAX][IBG2CEMAX];
extern int	wzCellTypeepoint2[IBG2CTMAX][IBG2CEMAX];
extern int	wzCellTypeesidel[IBG2CTMAX][IBG2CEMAX];
extern int	wzCellTypeesider[IBG2CTMAX][IBG2CEMAX];
extern int	wzCellTypessize[IBG2CTMAX][IBG2CSMAX];
extern int	wzCellTypesside[IBG2CTMAX][IBG2CSMAX][4];
extern int	wzCellTypesline[IBG2CTMAX][IBG2CSMAX][4];
extern int	wzCellTypespoint[IBG2CTMAX][IBG2CSMAX][5];

extern int		ibg2gFace;
extern int		ibg2gEdge;
extern int		ibg2gNode;

wzGrid	*ibg2OldGridGenerate(const Cogeometry&,
				     const wzTensorGrid&, 
				     const ibgcriteria);

#define	ibg2FileModMAX	50
extern	char*	 wzNameFile;
extern	int  	 ibg2FileMode;
extern	int  	 ibg2FileModFree;
extern	char*	 ibg2FillType[ibg2FileModMAX];
extern	char*	 ibg2FileModName[ibg2FileModMAX];


wzGrid* ibg2DelaunayAlgorithm(int dim,
				wzPoints *p,
				cogeometry cog);

extern wzPoints ibg2gExternaePoints;
int   ibg2AppendPoint(wzPoints *list, wzPoint *p);
int   ibg2AppendPoints(wzPoints *list, wzPoints *rest);

#define wzCellTypeSize(type) wzCellTypesize[type]
#define wzCellTypePoints(type) wzCellTypepoints[type]
#define wzCellTypeSides(type) wzCellTypesides[type]
#define wzCellTypeLines(type) wzCellTypelines[type]
#define wzCellTypeCODIM(type) wzCellTypeudim[type]
#define wzCellTypeGDIM(type) wzCellTypegdim[type]
#define wzCellTypeCDIM(type) wzCellTypecdim[type]
#define wzCellTypeName(type) wzCellTypename[type]
#define wzCellTypeEPoint1(type,line) wzCellTypeepoint1[type][line]
#define wzCellTypeEPoint2(type,line) wzCellTypeepoint2[type][line]
#define wzCellTypeESideL(type,line) wzCellTypeesidel[type][line]
#define wzCellTypeESideR(type,line) wzCellTypeesider[type][line]
#define wzCellTypeSSize(type,side) wzCellTypessize[type][side]
#define wzCellTypeSSide(type,side,nr) wzCellTypesside[type][side][nr]
#define wzCellTypeSLine(type,side,nr) wzCellTypesline[type][side][nr]
#define wzCellTypeSPoint1(type,side,nr) wzCellTypespoint[type][side][nr]
#define wzCellTypeSPoint2(type,side,nr) wzCellTypespoint[type][side][nr+1]
#define wzCellTypeSExt(type)		 (wzCellTypesize[type]-2)
#define wzCellTypeSExtL(type)	 (wzCellTypesize[type]-2)
#define wzCellTypeSExtR(type)	 (wzCellTypesize[type]-1)
#define wzCellTypeSExtF(type)	 (wzCellTypesize[type]-1)
#define wzGridCellLeft(g,c,t)	((g).Data[(g).CellData[c]+wzCellTypeSExtL(t)])
#define wzGridCellRight(g,c,t)	((g).Data[(g).CellData[c]+wzCellTypeSExtR(t)])

#endif


⌨️ 快捷键说明

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