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

📄 cogmap.cxx

📁 有限元学习研究用源代码(老外的),供科研人员参考
💻 CXX
字号:
#include "cogmap.hxx"

CogeometryBox::CogeometryBox(cogeometry geom)
:CogeometryByMap(*(cogPointToPoint*)this,geom)
{
 x0=y0=z0=0; x1=y1=z1=1;
}

void CogeometryBox::operator()(cogPoint& y, const cogPoint& x) const
  //void CogeometryBox::box(cogPoint& y, const cogPoint& x) const
{
 if(x[0]<x0){y[0]=x0;}else if(x[0]>x1){y[0]=x1;}else{y[0]=x[0];}
 if(x[1]<y0){y[1]=y0;}else if(x[1]>y1){y[1]=y1;}else{y[1]=x[1];}
 if(x[2]<z0){y[2]=z0;}else if(x[2]>z1){y[2]=z1;}else{y[2]=x[2];}
}

CogeometryPeriodic::CogeometryPeriodic(cogeometry geom)
:CogeometryByMap(*(cogPointToPoint*)this,geom)
{
 x0=0; dx=0.5; dx2=2*dx;
}

void CogeometryPeriodic::operator()(cogPoint& y, const cogPoint& x) const
  //void CogeometryPeriodic::period(cogPoint& y, const cogPoint& x) const
{wzFloat xx=x[0]-x0;
 if(xx<0) xx = -xx;
 int i= (int)(xx/dx2); 
 cogFloat rx=xx-i*dx2;
 if(rx>dx) rx=dx2-rx;
 y[0]=rx+x0;
 y[1]=x[1];
 y[2]=x[2];
}

⌨️ 快捷键说明

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