首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在matlab中求定义为函数句柄的多项式的根

在matlab中求定义为函数句柄的多项式的根
EN

Stack Overflow用户
提问于 2019-12-20 20:13:16
回答 1查看 517关注 0票数 2

我需要能够找到几个多项式的根,它们几乎是特征函数,但不是完全(而不是特征值,它更像是一个特征块矩阵)。函数被定义为函数句柄,因为我对方程上的系数没有解析表达式(我大概可以找到它们,但我的模型中的代数已经很混乱了)。

方程是

代码语言:javascript
运行
复制
charA = @(k1,k2) det([k1*eye(N),zeros(N);zeros(N),k2*eye(N)]*Amatrix - eye(2*N));
charB = @(k1,k2) det([k1*eye(N),zeros(N);zeros(N),k2*eye(N)]*Bmatrix - eye(2*N));

我需要找到每个矩阵的所有根,因为系统的解是满足k1 (k1,k2)=0和charB(k1,k2)=0的对(现在我相信这些矩阵的导子是这样存在的,但是为了这个问题--找到以这种方式定义的多项式的所有根,这是不重要的)。

我有没有办法把这个函数句柄转换成一个系数矩阵,或者在Matlab中有一个多项式的求解器定义为函数句柄?如果它改变了什么,矩阵不是很大,但是它们是84x84,也就是N=42。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-21 08:49:42

就像Daniel说的

polynomials

  • Then使用符号数学工具箱构建使用solve()查找根

示例代码与N = 2 如下所示

代码语言:javascript
运行
复制
rng(0)
%Unknowns
syms k1 k2
N = 2;
Amatrix = rand(2*N);
Bmatrix = rand(2*N);

charA = det([k1*eye(N),zeros(N);zeros(N),k2*eye(N)]*Amatrix - eye(2*N));
charB = det([k1*eye(N),zeros(N);zeros(N),k2*eye(N)]*Bmatrix - eye(2*N));

% solver 
solution = solve(charA == 0, charB == 0);

% Convert syms to numeric, specifying precision as 3 
k1_solution = vpa(solution.k1, 3)
k2_solution = vpa(solution.k2, 3)

% Only real solution
k1_solution_real = vpa(k1_solution(k1_solution == real(k1_solution)), 3)
k2_solution_real = vpa(k2_solution(k2_solution == real(k2_solution)), 3)

溶液

  • All

代码语言:javascript
运行
复制
k1_solution =

          0.475
          -2.52
         0.0161
 - 1.58 + 1.79i
 - 1.6 - 1.79i
 - 2.0 - 0.863i
 - 2.0 + 0.865i
           11.2


k2_solution =

            0.345
           -0.869
            0.946
 - 1.37 + 0.0219i
 - 1.37 - 0.0219i
     1.69 + 3.24i
     1.69 - 3.24i
            -5.65

  • Real

代码语言:javascript
运行
复制
k1_solution_real =

  0.475
  -2.52
 0.0161
   11.2


k2_solution_real =

  0.345
 -0.869
  0.946
  -5.65

  • First根解决方案

代码语言:javascript
运行
复制
k1 = 0.475 and k2 = 0.345
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59430868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档