计算科学

科学家使用计算机解决科学问题的问答

2
将FEM DG方法与Riemann求解器耦合
是否有将非连续galerkin有限元求解器与Riemann求解器耦合的好的论文和/或代码? 我需要研究耦合椭圆和双曲问题,但是大多数拆分方法都是临时的。由于我有大量的FEniCS代码,因此我想将Riemann求解器与其结合在一起。尽管一个简单的Roe求解器将是一个开始,但我正在寻找使用更复杂方法的指南。

1
对于结构化网格上的3D流场,最精确的插值方法是什么?
我在3D结构化网格上求解多物种可压缩的Navier-Stokes方程。我已经在给定的网格上获得了一个解决方案(假设是一个相对粗糙的网格)。现在,我想在重新启动仿真之前优化网格并在新网格上插入以前的解决方案。当前,我们有一个插值工具,可以构建2个网格的kd树,然后可以使用2种不同的方法来计算新网格上的值: 简单平均 逆距离加权(IDW) 移动最小二乘法(MLS) 我想专注于准确性,因为由于我处理的是大梯度,因此当我重新开始计算时,无法正确捕获它们会产生波动。我首先尝试了简单平均,但准确性不够好。 我认为带有2阶多项式的MLS方法会给我合理的结果,因为它应该是非振荡的。但是,当我查看插值字段时,我看到局部最小值/最大值超出了我的初始字段的值。这是否表示该程序中MLS的实现不正确?我应该小心模板的大小和多项式的顺序吗?您会推荐其他哪种方法? 提前致谢 !

3
数值:如何重新规范以下ODE
这个问题更多地是关于如何从数字上解决问题。 在一个小项目中,我想模拟Janus和Epimetheus的轨道运动。这基本上是一个三体问题。我选择土星固定在原点,令和分别是janus和epimetheus的位置向量。由于这种效果是在Janus和Epimetheus靠得很近时发生的,因此我选择了相对坐标以获得更好的分辨率,即和。现在,我得到以下运动方程:r1r1r_1r2r2r_2r=r1−r2r=r1−r2r=r_1-r_2R=r1+r2R=r1+r2R=r_1+r_2 d2dt2(Rr)=−G(m2±m1)RR3−4MG(r+R(r+R)3∓r−R(r−R)3)d2dt2(Rr)=−G(m2±m1)RR3−4MG(r+R(r+R)3∓r−R(r−R)3) \frac {d^2}{dt^2} \binom{R}{r} = - G (m_2\pm m_1) \frac R {R^3} - 4 M G \left(\frac {r+R}{(r+R)^3} \mp \frac {r-R}{(r-R)^3}\right ) 其中mimim_i对应于卫星的质量,MMM是土星的质量,GGG是引力常数。当我尝试以数值方式解决此问题时,就会出现问题。必须处理完全不同的大小的值,即M∼e28M∼e28M \sim e^{28}和mi∼e17mi∼e17m_i \sim e^{17}。并且rrr,RRR在0到150,000的范围内。 老实说,我不确定这是否是讨论此类数字问题的论坛。 更多信息: 代码是用Matlab编写的,我使用标准的ODE求解器来获取结果。但是,由于无法在机器精度下减小步长,因此这种方法正在崩溃。(我发现这并不奇怪,因为必须处理已经提到的数量级)。
9 ode 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.