Gershgorin圈:我怎么能找到的交集圈的联盟吗?

17日视图(30天)
早上好,我想做一个程序,计算Gerschgorin的圆圈(为行和列)。
下面的程序创建Gerschgorin矩阵A的圆,并把它们(在第一图)和矩阵^ T(在第二个图)。
我想做的是找到的结合矩阵的圈子里,找到的结合矩阵的圈子^ T和情节之间的intesection两个工会。我试着与polyshape polyout但似乎不工作。
程序如下:
% gerschgorin.m
函数 gerschgorin (A)
如果 大小(1)~ =大小(A, 2)
错误( “La矩阵deve essere quadrata。” );%的矩阵必须是正方形
返回 ;
结束
图1:% 我计算,代表与矩阵相关的圈子;
图;
i = 1:尺寸(1)
%圆的中心就是h (h, k)的实部(我)和k的虚部(我);
h =真正的((我));k =图像放大((我));
%我觉得圆的半径;
r = 0;
j = 1:尺寸(1)
如果 我~ = j
r = r +(规范((i, j)));
结束
结束
t = 0:0.01:2 *π;
情节(r * cost + h r * sin (t) + k, “- - -” ); %我用极坐标
持有
c =情节(h, k, “波” );
标题( “矩阵A的圈子” )
结束
%现在我们策划的实际特征值矩阵;
ev = eig(一个);
i = 1:尺寸(ev)
牧师=情节(真正的(ev(我)),图像放大(ev (i)), “罗” );
结束
参照线(0);yline (0);
平等的 ;
传奇([c]牧师, “Centri” , “Autovalori” )
网格 ;
包含( “杰克逊Reale” );ylabel ( “杰克逊Immaginaria” )
图2:% 我计算和代表与矩阵相关的圈子^ T;
图;
i = 1:尺寸(1)
h =真正的((我));k =图像放大((我));
r = 0;
j = 1:尺寸(1)
如果 我~ = j
r = r +(规范((j,我)));
结束
结束
t = 0:0.01:2 *π;
情节(r * cost + h r * sin (t) + k, “- - -” );持有 ;
c =情节(h, k, “波” );
标题( “Cerchi associati设计真主安拉矩阵\ itA ^ {T}’ )
结束
%特征值
ev = eig(一个);
i = 1:尺寸(ev)
牧师=情节(真正的(ev(我)),图像放大(ev (i)), “罗” );
结束
参照线(0);yline (0);
平等的 ;
传奇([c]牧师, “Centri” , “Autovalori” )
网格 ;
包含( “杰克逊Reale” );ylabel ( “杰克逊Immaginaria” )
%图3:十字路口
图;
i = 1:尺寸(1)
h =真正的((我));k =图像放大((我));
r1 = 0;r2 = 0;
j = 1:尺寸(1)
如果 我~ = j
r1 = r1 +(规范((i, j)));
r2 = r2 +(规范((j,我)));
x1 = r1 * cost + h;
日元= r1 * sin (t) + k, “- - -” ;
x2 = r2 * cost + h;
y2 = r2 * sin (t) + k, “- - -” ;
pgon1 = polyshape (x1, y1);
pgon2 = polyshape (x2, y2);
polyout1 =联盟(pgon1);
polyout2 =联盟(pgon2);
结束
结束
情节(相交(polyout1 polyout2), “EdgeColor” , “红色” )
持有 ;
c =情节(h, k, “波” );
%的标题(“Intersezione一些由于insiemi di cerchi”)
结束
%特征值
ev = eig(一个);
i = 1:尺寸(ev)
牧师=情节(真正的(ev(我)),图像放大(ev (i)), “罗” );
结束
参照线(0);yline (0);
平等的 ;
网格 ;
包含( “杰克逊Reale” );ylabel ( “杰克逊Immaginaria” )
传奇([c]牧师, “Centri” , “Autovalori” )
结束
谢谢大家谁会回答我!

答案(1)

KALYAN ACHARJYA
KALYAN ACHARJYA 7分钟前
警告;
% gerschgorin.m
一个=魔法(5);
gerschgorin (A)
函数gerschgorin (A)
如果大小(1)~ =大小(A, 2)
错误(“La矩阵deve essere quadrata。”);%的矩阵必须是正方形。
返回;
结束
图1:%计算和代表与矩阵相关的圈子。
图;
i = 1:尺寸(1)
%圆的中心就是h (h, k)的实部(我)和k的虚部(我)。
h =真正的((我));
k =图像放大((我));
%发现圆的半径。
r = 0;
j = 1:尺寸(1)
如果我~ = j
r = r + abs ((i, j));
结束
结束
t = 0:0.01:2 *π;
情节(r * cost + h r * sin (t) + k,“- - -”);%使用极坐标。
持有;
c =情节(h, k,“波”);
结束
%绘制的实际特征值矩阵。
ev = eig(一个);
牧师=情节(真正的(ev),图像放大(ev),“罗”);
参照线(0);
yline (0);
平等的;
传奇([c]牧师,“Centri”,“Autovalori”);
网格;
包含(“杰克逊Reale”);
ylabel (“杰克逊Immaginaria”);
标题(“矩阵A的圈子”);
%图2:计算和代表与矩阵相关的圈子^ T。
图;
i = 1:尺寸(1)
h =真正的((我));
k =图像放大((我));
r = 0;
j = 1:尺寸(1)
如果我~ = j
r = r + abs ((j, i));
结束
结束
t = 0:0.01:2 *π;
情节(r * cost + h r * sin (t) + k,“- - -”);
持有;
c =情节(h, k,“波”);
结束
%绘制的实际特征值矩阵。
ev = eig(一个);
牧师=情节(真正的(ev),图像放大(ev),“罗”);
参照线(0);
yline (0);
平等的;
传奇([c]牧师,“Centri”,“Autovalori”);
网格;
包含(“杰克逊Reale”);
ylabel (“杰克逊Immaginaria”);
标题(“矩阵^ T圈”);
%图3:十字路口联盟的圆和一个^ T。
图;
i = 1:尺寸(1)
h =真正的((我));
k =图像放大((我));
r1 = 0;
r2 = 0;
x = [];
y = [];
j = 1:尺寸(1)
如果我~ = j
r1 = r1 + abs ((i, j));
r2 = r2 + abs ((j, i));
x1 = r1 * cost + h;
日元= r1 * sin (t) + k;
x2 = r2 * cost + h;
y2 = r2 * sin (t) + k;
x = [x, x1);
y = [y, y₁];
结束
结束
polyout1 = polyshape (x, y);
polyout2 = polyshape (x2, y2);
十字路口=相交(polyout1 polyout2);
情节(十字路口,“EdgeColor”,“红色”);
持有;
c =情节(h, k,“波”);
结束
%绘制的实际特征值矩阵。
ev = eig(一个);
牧师=情节(真正的(ev),图像放大(ev),“罗”);
参照线(0);
yline (0);
平等的;
网格;
包含(“杰克逊Reale”);
ylabel (“杰克逊Immaginaria”);
标题(十字路口的联盟的圆和一个^ T ');
传奇([c]牧师,“Centri”,“Autovalori”);
结束

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!