问题标签 [state-space]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
129 浏览

c++ - 在 C++ 中使用 STL 时解决边界错误

我正在编写通过定义矩阵查找路径的程序。

该程序适用于大多数输入。但给出以下输入的地址边界错误

输入行和列:4 4

ENter初始配置(1表示块,0表示打开):0 0 0 0 0 1 0 1 0 1 1 1 0 0 0 0

在行列中进入初始状态:1 0

在行列中输入最终状态:3 3 鱼:“./a.out”由信号 SIGSEGV 终止(地址边界错误)

请提出此错误的可能原因以及如何纠正它

0 投票
1 回答
596 浏览

c++ - 人工智能拼图程序

我有一个初始状态的谜题

哪里R = Red,G = GreenB = Moveable Blank

和目标状态

我知道为了移动空白,我必须应用搜索算法,如DFS, BFS, A* etc

我知道我必须创建类:

节点

Hash Table 之类的前沿技术,用于检测 O(1) 复杂度的已访问状态。

所以我很困惑我将如何开始实施这个难题的解决方案。谁能指导我?我可以在空白处应用的运算符是上、下、左、右。

0 投票
2 回答
1155 浏览

c++ - 在模块的参数中使用来自输入端口的值 - Simulink

我有一个 simulink 模型,我计划将其转换为 C 代码并在其他地方使用。我已经定义了“输入端口”,以便在 simulink 模型中设置变量。

我正在尝试找到一种将输入变量用作状态空间块的一部分的方法,但是已经尝试了所有方法,但不知道该怎么做。

如前所述,这将被转换为 C/C++ 代码,因此无论如何都没有使用 matlab 的选项。

假设我在状态空间块参数中使用矩阵 A。矩阵 A 被定义为所以 A= [Input1 0; 输入2 0;0输入3]

我希望能够通过设置 Input1 2 3 等的值来通过代码更改输入的值。

0 投票
1 回答
408 浏览

matlab - 为什么我会收到此错误?(状态空间)

有人能解释一下我必须在我的模型中改变什么吗?

模型

0 投票
1 回答
364 浏览

matlab - ss2tf 在 matlab RS2016a 中返回意外值

我正在尝试将状态空间模型转换为 matlab RS2016a 中的传递函数。我正在使用ss2tf(A,B,C,D)根据文档完全符合我需要的功能。例如,我使用 2 的静态增益。

matlab返回的答案:

*edit: [2,0]表示s域中的传递函数2/0。以 0 为分母的传递函数没有多大意义,在这种特殊情况下它是错误的。正确答案是[2,1]表示传递函数 2/1 而不是 2/0。

*original: [2,0] 表示 s 域中的传递函数 2/0。在我看来,答案应该是 [2,1],因此传递函数应该是 2/1 而不是 2/0。

预期答案:

这种行为有解释吗?

0 投票
4 回答
4052 浏览

matlab - 如何将 4 输入和 4 输出系统从状态空间转换为传递函数矩阵?

我试图使用该命令进行转换,ss2tf但该命令的 sintax 显示在何处键入系统的输入数量,而不是输出数量。尽管如此,我还是试图获得我的矩阵传递函数

[num,den]=ss2tf(Ac,Bc,Cc,Dc,4)其中“4”是输入的数量。

结果,向量“num”的维度为 4x9,而我的向量“den”的维度为 1x9,因此使用时出现错误

F=tf(num,den)

因为“den”也应该有 4x9 尺寸。

那么,是否有另一种方法可以从状态空间中获取传递函数(可以选择包括输入和输出的数量)?

obs:Ac、Bc、Cc、Dc的尺寸分别为8x8;8x4、4x8 和 4x4。

编辑:想出了如何解决它。下面有答案。

0 投票
1 回答
6439 浏览

matlab - 如何在 Simulink 中实现具有状态空间块的 MIMO 模型?

我想在 Simulink 中实现一个具有 4 个输入和 4 个输出的状态空间模型。但是状态空间块只有一个输入和一个输出。那么我可以在这里做什么?

Simulink 状态空间模块

0 投票
1 回答
1088 浏览

matlab - 使用 dsolve 求解 ODE 的符号系统时出错

我一直在尝试使用dsolveMatlab 中的命令来解决一组 ODE,但出现以下错误:

dsolve>mupadDsolve 中的错误(第 332 行)T = feval(symengine,'symobj::dsolve',sys,x,options);

dsolve 中的错误(第 193 行) sol = mupadDsolve(args, options);

如果有人想看一下,下面是代码:

有人可以帮我吗?

非常感谢大家

0 投票
1 回答
798 浏览

simulink - 是否可以将初始状态设置为 simulink 模型进行仿真?

考虑到我在 Simulink 构建了一个电路或任何其他系统并进行仿真,Simulink 应该在它构建系统的状态空间模型的意义上工作,对吧?如果是这样,是否可以设置该模型的初始条件?还有,是否可以知道 Simulink 构建的模型的状态变量是什么?

0 投票
1 回答
280 浏览

matlab - 从 SISO 传递函数形成状态空间系统

我想从 SIMO 传递函数形成一个 MIMO 状态空间系统。假设系统有 2 个输入(U1 和 U2)和 2 个状态(X1 和 X2)。

如果我将 U1 应用到 LTI 系统,我会在 SIMO 操作中得到 X1 和 X2。而且,我可以提取 2 个传递函数:T11 (X1/U1) 和 T21 (X2/U1)。

同样,如果我应用 U2 输入,我可以得到 T12 (X1/U2) 和 T22 (X2/U2)。

所以,我有 4 个系统的 SISO 传递函数。

我想用它们来生成系统的状态空间矩阵。我怎样才能做到这一点?

提前致谢。