0%

线性欧拉方程里面的c0

Nektar++中算例LEE_2DVariableC_WeakDG_MODIFIED.xml输入文件里面给出了c0sq
,但线性欧拉方程是没有C0项的,这里还是个变量,这一变量最后是怎么处理的?

1
2
3
4
5
6
7
<FUNCTION NAME="Baseflow">
<E VAR="c0sq" VALUE="(1 + 0.25 * tanh(3*(x-5))) * 1.4 * Pinfinity / Rho0"/>
<E VAR="rho0" VALUE="Rho0"/>
<E VAR="u0" VALUE="100" />
<E VAR="v0" VALUE="0" />
<E VAR="gamma" VALUE="1.4" />
</FUNCTION>

Create session reader

1
2
LibUtilities::SessionReaderSharedPtr session;
session = LibUtilities::SessionReader::CreateInstance(argc, argv);

Create MeshGraph

1
graph = SpatialDomains::MeshGraph::Read(session);
阅读全文 »

这是个悲伤的故事。。。
先说一下问题出现的大背景,我将ICEM导出的cfl3d.xyz格式的网格转化为cgns格式,并将cgns格式的网格导入CFX计算。为什么要转化网格,而不是直接导出CFX支持的网格呢?这是因为动网格程序读入读出的3d格式,其实一本万利的应该是为程序写个cgns输入输出的接口,懒人总是会遭报应的。。。
下图是cgns格式叶片网格导入CFX的结果,看似没有问题,,,我也兴冲冲的算了,然后细节决定成败。。。

阅读全文 »

成员函数在定义的时候常常遇到下面的状态,对于我这个小白,完全不明白这一个冒号后面跟着这么一坨是为啥。其实,他的意图很简单,相当于初始化的作用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
template <int dim>
ConservationLaw<dim>::ConservationLaw (const char *input_filename)
:
mapping (),
fe (FE_Q<dim>(1), EulerEquations<dim>::n_components),
dof_handler (triangulation),
quadrature (2),
face_quadrature (2),
verbose_cout (std::cout, false)
{
ParameterHandler prm;
Parameters::AllParameters<dim>::declare_parameters (prm);
prm.parse_input (input_filename);
parameters.parse_parameters (prm);
verbose_cout.set_condition (parameters.output == Parameters::Solver::verbose);
}

enum枚举量

1
enum spectrum {red, orange, yellow, green, blue, violet, indigo, ultraviolet}

上述语法spectrum为枚举,被称为enumerationred被称为enumerator。他们为符号常量,对应着从0开始的数值。
枚举量是整型,可被提升为int类型,但int类型不能自动转换为枚举类型。如下代码段所示:

1
2
int color = blue;
color =3 + blue;

阅读全文 »

类继承

派生类

派生类继承了私有的成员,但是不能直接访问;公有成员被继承,可以通过公有函数间接访问私有成员。

  • 派生类对象存储了基类的数据程序(派生类继承了基类的实现);
  • 派生类对象可以使用基类的方法(派生类继承了基类的接口)。

Nektar++

Nektar++ is an open-source software framework designed to support the
development of high-performance scalable solvers for partial differential
equations (PDEs) using the spectral/hp element method.

阅读全文 »

1. 使用标签插件引用图片

1.1. 配置post_asset_folder

首先在_config.yml中找到post_asset_folder,然后选择true。当新建md文件时将在source里新建与title名字一直的文件夹

1
post_asset_folder: ture

1.2. 安装hexo-asset-image

阅读全文 »

如何设置链接BLAS和LAPACK库
据官网上的介绍,LAPACK库在MINGW上的链接目前采用的是动态链接的方式,需要下载指定的文件libblas.lib, liblapack.lib, libblas.dll和liblapack.dll(注意Code::Blocks默认编译32位程序,下载对应的库文件)。
右击项目,选择Build options,然后在Linker setting中编辑路径。

阅读全文 »