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

📄 triangle.dual.0.bas_fun.c

📁 主要特点 * Flexible finite element space construction based template element library 基于模板单元库灵活的构造有限
💻 C
字号:
/************************************************************************** 	tirangle.dual.0.bas_fun.c : by R.Lie*/#define ZERO (1.0e-8)#ifdef _cplusplusextern "C" {	void chi_0(const double * p, const double ** v, void * value);	void chi_1(const double * p, const double ** v, void * value);	void chi_2(const double * p, const double ** v, void * value);	void gradient_chi_0(const double * p, const double ** v, void * value);	void gradient_chi_1(const double * p, const double ** v, void * value);	void gradient_chi_2(const double * p, const double ** v, void * value);};#endifvoid chi_0(const double * p, const double ** v, void * value){	double * val = (double *)value;	double l0 = (v[1][0] - p[0])*(v[2][1] - p[1]) - (v[1][1] - p[1])*(v[2][0] - p[0]);	double l1 = (v[2][0] - p[0])*(v[0][1] - p[1]) - (v[2][1] - p[1])*(v[0][0] - p[0]);	double l2 = (v[0][0] - p[0])*(v[1][1] - p[1]) - (v[0][1] - p[1])*(v[1][0] - p[0]);	if (l1 - l0 > ZERO || l2 - l0 > ZERO)		val[0] = 0.0;	else if (l1 - l0 >= -ZERO || l2 - l0 >= -ZERO)		val[0] = 0.5;	else		val[0] = 1.0;};void chi_1(const double * p, const double ** v, void * value){	double * val = (double *)value;	double l0 = (v[1][0] - p[0])*(v[2][1] - p[1]) - (v[1][1] - p[1])*(v[2][0] - p[0]);	double l1 = (v[2][0] - p[0])*(v[0][1] - p[1]) - (v[2][1] - p[1])*(v[0][0] - p[0]);	double l2 = (v[0][0] - p[0])*(v[1][1] - p[1]) - (v[0][1] - p[1])*(v[1][0] - p[0]);	if (l0 - l1 > ZERO || l2 - l1 > ZERO)		val[0] = 0.0;	else if (l0 - l1 >= -ZERO || l2 - l1 >= -ZERO)		val[0] = 0.5;	else		val[0] = 1.0;};void chi_2(const double * p, const double ** v, void * value){	double * val = (double *)value;	double l0 = (v[1][0] - p[0])*(v[2][1] - p[1]) - (v[1][1] - p[1])*(v[2][0] - p[0]);	double l1 = (v[2][0] - p[0])*(v[0][1] - p[1]) - (v[2][1] - p[1])*(v[0][0] - p[0]);	double l2 = (v[0][0] - p[0])*(v[1][1] - p[1]) - (v[0][1] - p[1])*(v[1][0] - p[0]);	if (l0 - l2 > ZERO || l1 - l2 > ZERO)		val[0] = 0.0;	else if (l0 - l2 >= -ZERO || l1 - l2 >= -ZERO)		val[0] = 0.5;	else		val[0] = 1.0;};void gradient_chi_0(const double * p, const double ** v, void * value){	double * val = (double *)value;	val[0] = 0.0;	val[1] = 0.0;};void gradient_chi_1(const double * p, const double ** v, void * value){	double * val = (double *)value;	val[0] = 0.0;	val[1] = 0.0;};void gradient_chi_2(const double * p, const double ** v, void * value){	double * val = (double *)value;	val[0] = 0.0;	val[1] = 0.0;};/**  end of file**************************************************************************/

⌨️ 快捷键说明

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