- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 OpenModelica 对边界条件 u(0,t)=t^2 和 u_x(0,t)=0 的非常简单的偏微分方程 du/dx=du/dt 进行数值求解。我写了下面的代码:
model pdetest_1
parameter Real L=1;
parameter Integer N=100;
parameter Real dx=L/(N-1);
parameter Real[N] x=array(i*dx for i in 0:N-1);
Real u[N],ux[N];
initial equation
for i in 1:N loop
u[i]=0;
end for;
equation
u[1]=(time)^2;
ux[1]=0;
for i in 2:N loop
u[i]=u[i-1]+dx*ux[i-1];
der(u[i])=ux[i];
end for;
end pdetest_1;
它确实可以编译,但没有完成模拟并退出,并出现以下错误:
Blocstdout | OMEditInfo |
C:/Users/.../AppData/Local/Temp/OpenModelica/OMEdit/pdetest_1.exe -port=50450 -logFormat=xmltcp -override=startTime=0,stopTime=1,stepSize=0.002,tolerance=1e-6,solver=dassl,outputFormat=mat,variableFilter=.* -r=pdetest_1_res.mat -jacobian=coloredNumerical -w -lv=LOG_STATS
kquote LOG_INIT | error |The initialization problem is inconsistent due to the following equation: 0 != 0.000204061 = u[4]
stdout | warning |Error in initialization. Storing results and exiting.
stdout | error |
Use -lv=LOG_INIT -w for more information.Simulation process failed. Exited with code -1.
如果您能帮助我了解问题所在以及如何解决它,我将不胜感激?
最佳答案
好吧,首先,看到 Modelica 社区对这个话题如此 NumPy ,我感到非常难过。 SO 或 OpenModelica 论坛中有许多与 PDE 相关的问题,但没有多少有正确的答案。我决定做this Github repo收集我可以在互联网上找到的所有相关 Material ,这样至少其他人就不必四处寻找可行的示例。
但是关于上面的代码。代码几乎没问题,问题在于问题的物理原理。 I asked the question in computational science and got a very good answer .
工作代码是:
model pdetest_1
parameter Real L = 1;
parameter Integer N = 100;
parameter Real dx = L / (N - 1);
parameter Real c = 1;
Real u[N], ux[N];
initial equation
for i in 1:N loop
u[i] = 0;
end for;
equation
if c>0 then
u[N] = time ^ 2;
ux[N] = 0;
for i in 1:N-1 loop
u[i] = u[i + 1] - dx * ux[i];
der(u[i]) = c*ux[i];
end for;
else
u[1] = time ^ 2;
ux[1] = 0;
for i in 2:N loop
u[i] = u[i - 1] + dx * ux[i];
der(u[i]) = c*ux[i];
end for;
end if;
end pdetest_1;
我使用了this presentation by Jan Silar中的代码来解决问题。我还在 the example 4 of the said github repo 中提到了代码.
关于modelica - OpenModelica 解决 PDE 初始化错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45496863/
我目前正在尝试通过实现非标准边界条件来求解 FEniCS 中的 Monge-Ampere 方程。 边界条件,要求解的梯度必须将原域的边界映射到另一个规定的域。 当目标域被规定为单位圆时,实现起来非常简
关于 Eclipse PDE 开发的问题:我为 Eclipse 编写了一个小插件,并具有以下内容 * 一个 org.eclipse.ui.texteditor.ITextEditor * 行号 如何自
我正在尝试使用 FiPy 解决非线性 PDE HJB 方程,但是我在将 PDE 转换为正确的 FiPy 语法时遇到了一些困难: 我试过类似的东西: eqX = TransientTerm() == -
关于Eclipse PDE开发的问题:我为Eclipse写了一个小插件,有以下内容* 一个org.eclipse.ui.texteditor.ITextEditor* 行号 如何自动跳转到该行并标记它
(注意 - 最终解决方案如下) 在我的插件中,我试图创建一个 IJavaProject (使用 Eclipse JDT,代码在最后),它创建一个 Java 项目,几乎完全就像 IJavaProject
我对 Processing 还是比较陌生。我们正在考虑在一个小型展览中循环展示我们的处理工作。有没有办法循环播放多个 PDE?我知道我可以导出为帧,然后将它们组合成更长的可循环播放的 Quicktim
我目前正在尝试让我的 headless (headless) pde-build 工作,但我被困在一个我不知道如何继续的地方。 问题是如何定义相关的目标平台来编译插件。 我有一个带有以下调用的 bui
当您使用 Eclipse PDE(插件开发环境)时,有一个术语“目标平台”。这究竟是什么意思? 最佳答案 目标平台指定您正在为其开发插件的 Eclipse 配置。这是由可用的插件和功能集定义的。它默认
在寻找巴恩斯利蕨分形的实现时,我遇到了一个具有 .pde 扩展名的实现。哪种编程语言使用此扩展? Implementation Page 最佳答案 此代码来自Processing.org,一个基于Ja
在 PDE 项目中,有没有办法从文件系统添加第三方包作为我的项目的依赖项?我希望做 BND 工具允许的相同事情;将一个包添加到本地存储库,然后从该包中导入项目中的包。我不想使用 maven osgi
我有以下基于 ARM 的 SoC 的规范: L1 数据缓存 = 32 KB、64 B/行、2 路、LRU L2 缓存 = 1 MB、64 B/行、16 路 L1 数据 TLB(用于加载):32 个条目
我为 Eclipse 创建了一个 View 插件。我可以从项目中导出 jar,并且运行得很好。我正在尝试创建一个 Ant 构建脚本来自动化它。 我通过执行以下操作从 Eclipse 创建了两个 Ant
我已经安装了面向 Java 开发人员的 eclipse IDE(Helios Service Release 2) 我现在如何在此基础上安装插件开发环境 (PDE)?我认为应该可以从更新站点安装它,就
在 PDE 项目中,有没有办法从文件系统添加第三方包作为我的项目的依赖项?我希望做 BND 工具允许的相同事情;将一个包添加到本地存储库,然后从该包中导入项目中的包。我不想使用 maven osgi
所以我正在读这篇文章FAQ : 它提到了不可用的getLog()方法。我当前的类基本上是扩展AbstractHandler。我该如何使用这个? 最佳答案 如果您让 Eclipse 为您创建 Activ
我是一名学生,作为年度项目的一部分,我正在开发 eclipse 插件。 我遇到了一个奇怪的问题并尝试修复它 2 天: 我在 plugin.xml 中添加了 3 种新类型的标记。 我为每个标记添加了 a
我通过 PDE 创建了一个 Eclipse 插件。我可以通过将项目作为“eclipse 应用程序”运行来尝试该插件,到目前为止没有问题。但是,我想导出项目并收到此错误: C:\Users\ErayT\
我编写了一个函数,对二维列表中的数组元素求和并将它们添加到一维列表中: ArrayList sumList(ArrayList list,int side){ ArrayList sums
我对在相当大的 eclipse 工作区中升级依赖插件、功能和产品中的版本号的过程有很多困惑。 我对现有插件中的 Java 代码进行了 API 更改,因此需要增加版本标识符的主要部分。此插件用作给定功能
这是从 Numerical Computing-Kincaid 的书第 15 章修改的问题。(不是物理学) 如何正确实现边界条件?条件是 u(0,y,t) = u(x,0,t) = u(nx,y,t)
我是一名优秀的程序员,十分优秀!