繁体   English   中英

我如何使用NxM矩阵作为我在`pdepe`中的初始条件

How can I use NxM matrix to be my initial condition in `pdepe`

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我使用Matlab解算器pdepe解决了PDE。 初始条件是ODE的解决方案,我在另一个m.file中解决了该问题。 现在,我有了大小为NxM的矩阵形式的ODE解决方案。 我如何使用它作为pdepe中的IC? 那有可能吗? 当我使用for loop ,pdepe仅将最后一次迭代作为初始条件。 任何帮助表示赞赏。

2 个回复

根据pdepe文档 ,求解器的初始条件函数具有以下语法:

u = icFun(x);

在列向量u返回指定x的PDE初始值。 因此,只有当PDE是具有M空间网格点的N未知数的系统时,初始条件才会是N x M矩阵。

因此,可以使用N x M矩阵来填充初始条件,但是将需要一些映射将给定列与x的特定值相关联。 例如,在调用pdepe的main函数中,可能存在

% icData is the NxM matrix of data
% xMesh is an 1xM row vector that has the spatial value for each column of icData
icFun = @(x) icData(:,x==xMesh);

这种方法的唯一缺点是初始条件的网格以及因此的pdepe解都受到初始数据的约束。 这可以通过使用如下插值方案来克服:

% icData is the NxM matrix of data
% xMesh is an 1xM row vector that has the spatial value for each column of icData
icFun = @(x) interp1(xMesh,icData',x,'pchip')';

其中存在转置以符合interp1对数据的interp1

u使用“线法”样式在每个网格上定义不同条件比使用pdepe更容易

MOL还可以更灵活地用于诸如3D问题之类的不同情况下:))

1 如何在'pdepe'中使用NxM矩阵作为初始条件

我正在使用pdepe求解器同时解决4个PDE。 现在我想使用该解决方案作为下一步的初始边界条件,例如u0(1,:)= sol(end,:,1)这很有效,只要我只使用单个值作为初始值条件,例如u0(1)= sol(end,end,1),但是一旦我尝试整个向量就失败了。 这似乎实际上非常相似 ...

2 如何将函数传递给pdepe初始条件函数

我已经使用曲线拟合工具箱根据点集创建了函数。 我使用了生成代码函数和称为createFit(a,b)生成函数,其中a和b是用于插值的点集。 结果, createFit返回我的内插函数。 现在,我想将此函数用作PDE方程的u0 (初始条件)(我正在使用pdepe求解PDE)。 为此,在 ...

4 如何使用列表项中的 numpy 创建 NxM 数组/矩阵

我有一个包含以下数字的文件 我想使用 numpy 创建 2 个矩阵。 矩阵 1 将有第 8 行和第 1 列(这将使用文件中数据的前 8 行),矩阵 2 将具有 8x8 形状(这将使用文件中的下 64 行数据) 现在我已经将数字保存在一个列表中,并使用一个函数来创建矩阵 1。我如何使用 nump ...

5 使用Python Numpy,我如何最有效地从Nx1矩阵逐元素减去NxM矩阵?

令x为3x4的Numpy矩阵,定义如下: 令y为3x1矩阵,定义为: 我如何最有效地将y - x元素相减,这样结果将是: 我发现做到这一点的唯一方法是: 但是,在进行概要分析时,我发现由于我多次进行上述计算并且使用大矩阵,因此最后一行证明是我的应用程序的瓶颈。 ...

6 给定大小为nxm的矩阵,我们如何打印子矩阵?

给定这个6x5(nxm)矩阵,我该如何遍历并获得平方子矩阵即(在这种情况下为1x1,2x2、3x3、4x4) 我先获得所有1x1矩阵,然后获得2x2 .... sqrMxsqrM。 但是我需要O / p为1x1,2x2来自同一元素,3x3来自元素....(直到可能的情况) 我尝试了这种方法, ...

8 如何实现NxM CUDA矩阵乘法?

我已经在几页上进行了搜索,但是我只找到了NxN矩阵的实现。 如何定义dimBlock和dimGrid来计算? 另外,如何玩: 有各自的限制? ...

2016-03-04 15:14:33 1 221   c/ cuda
9 如何从numpy数组创建NxM矩阵?

我正在研究从 NumPy 数组形成大约 60 行和 11 列的矩阵。 我研究了几种方法,但我无法让它工作。 我尝试了以下代码并收到此错误, 错误信息: (1) (2) 有没有办法创建一个 60x11 的数组? 编辑1: 感谢@Krish,它似乎工作正常。 我只是有另一个问题,我 ...

10 给定一个大小为 nxm 的矩阵,我们如何计算所有可能的大小为 (L) 的方阵的总和?

给定这个 3x3(nxm) 矩阵,我如何遍历并获得所有可能的平方子矩阵的总和,即(在这种特殊情况下为 1x1,2x2) 我在这里知道,每个元素都是一个单独的子矩阵(1x1),其余的方子矩阵如下: 我尝试过我的方法并多次失败,主要原因是我对编程中的矩阵感到困惑。 我的方法:这里,'l' ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM