Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2009-04-12, 08:56   #1
nut0197
初级会员
 
注册日期: 2009-04-12
帖子: 5
声望力: 0
nut0197 正向着好的方向发展
默认 求助各位运用MATLAB的几道数学问题

最近刚学matlab,遇到几道数学题实在是做不来啊,各位高手帮忙看看吧,不胜感激!!

1
1)
“对矩阵A=(-4 14 0;-5 13 0;-1 0 2)用幂法求最大特征值与特征向量”
2)直线X=X0 X0∈R 一族直线
Y=Y0 Y0∈R 一族直线
求经W=Z^2映射为什么曲线(画出)


2
设计一个求平方根的算法,并制作一个1~10000的整数平方根表(精确到小数点后5位)


3
设半径为r的圆Cr内切于半径为R的圆CR(R>r),当Cr在CR内作无滑动的滚动时,求Cr上一固定点P的轨道方程并绘出Cr, CR及P的轨迹的图形
1)R=2r 2) R=3r 3) R=(8/5)r
nut0197 当前离线   回复时引用此帖
旧 2009-04-12, 13:51   #2
hrt
初级会员
 
注册日期: 2009-03-11
年龄: 38
帖子: 9
声望力: 0
hrt 正向着好的方向发展
默认 回复: 求助各位运用MATLAB的几道数学问题

1)可用函数[V,D]=eig(A);
V:特征向量矩阵;
D:特征值矩阵。

~ ~
hrt 当前离线   回复时引用此帖
旧 2009-04-12, 18:56   #3
nut0197
初级会员
 
注册日期: 2009-04-12
帖子: 5
声望力: 0
nut0197 正向着好的方向发展
微笑 回复: 求助各位运用MATLAB的几道数学问题

引用:
作者: hrt 查看帖子
1)可用函数[V,D]=eig(A);
V:特征向量矩阵;
D:特征值矩阵。

~ ~
谢谢啊 后面那些题能指点下吗?
nut0197 当前离线   回复时引用此帖
旧 2009-04-12, 20:38   #4
laosam280
高级会员
 
注册日期: 2008-11-07
住址: 湖南长沙
帖子: 233
声望力: 21
laosam280 正向着好的方向发展
默认 回复: 求助各位运用MATLAB的几道数学问题

1、幂法的函数文件
function[z,m] = power_m(A,max_it,tol)
[n,nn]=size(A); z= ones(n,1);%定义初始迭代值
it=0; error=100;
disp('it, m z(1) z(3) z(4) z(5)') %要计算超过5阶的矩阵,则修改此处的z(i)的值
while it<max_it && error>tol
%幂法的迭代核心步骤
w = A*z; ww=abs(w);
[k,kk] = max(ww); %kk为ww的最大元素的标号
m = w(kk); %特征值的近似值
z = w/w(kk); %特征向量的近似值
out = [it+1 m z'];
disp(out)
error=norm(A*z-m*z);
it=it+1;
end
error
laosam280 当前离线   回复时引用此帖
旧 2009-04-12, 20:45   #5
laosam280
高级会员
 
注册日期: 2008-11-07
住址: 湖南长沙
帖子: 233
声望力: 21
laosam280 正向着好的方向发展
默认 回复: 求助各位运用MATLAB的几道数学问题

2、设计一个求平方根的算法,并制作一个1~10000的整数平方根表(精确到小数点后5位)
我的想法如下:
首先你可以直接用sqrt这个命令。Matlab已经可以给出15位的精度。
如果你要自己写一个算法的话,仍然是开方运算的步骤。以b=a*a为例
(1)找某个a1,使得a1*a1<b<(a1+1)*(a1+1),作为整数部分;
(2)找某个a2,使得(a1+0.1*a2)*(a1+0.1*a2)<b<(a1+1+0.1*a2)*(a1+1+0.1*a2),作为十分位;
。。。。。。
(5)一直重复到找到a6,disp('a1.a2a3a4a5a6'),就是你需要的结果。
不过我认为这完全没有必要。
laosam280 当前离线   回复时引用此帖
旧 2009-04-12, 21:04   #6
laosam280
高级会员
 
注册日期: 2008-11-07
住址: 湖南长沙
帖子: 233
声望力: 21
laosam280 正向着好的方向发展
默认 回复: 求助各位运用MATLAB的几道数学问题

画直线的部分:
plot([xmin,xmax],[ymin,ymax])这个命令可以满足你的要求。如果要画与x轴平行的直线,只需要使得ymin=ymax,如果要画与y轴平行的直线,只需要使得xmin=xmax.

再用W=Z.^2,直接画图就是啊

另外,那个轨迹的问题我暂时没有想出解析表达式,但是画图不困难,因为是单摆方程。
laosam280 当前离线   回复时引用此帖
旧 2009-04-13, 09:32   #7
nut0197
初级会员
 
注册日期: 2009-04-12
帖子: 5
声望力: 0
nut0197 正向着好的方向发展
默认 回复: 求助各位运用MATLAB的几道数学问题

谢谢各位了

最后一道题目还是解不出来
nut0197 当前离线   回复时引用此帖
旧 2009-04-13, 16:30   #8
nut0197
初级会员
 
注册日期: 2009-04-12
帖子: 5
声望力: 0
nut0197 正向着好的方向发展
默认 回复: 求助各位运用MATLAB的几道数学问题

顶顶。。。。。。。。。。。。。
nut0197 当前离线   回复时引用此帖
旧 2009-04-14, 18:20   #9
silas_xue
高级会员
 
注册日期: 2008-11-01
年龄: 39
帖子: 406
声望力: 26
silas_xue 是一个将要出名的人
默认 回复: 求助各位运用MATLAB的几道数学问题

lz 第3题的思路 个人见解
initialize: 建立以CR圆心为原点的rectangular coordinates
思路a
1 表达p的坐标与Cr圆心上坐标的关系, 即若Cr圆心的坐标为(Xc,Yc),p点坐标为(Xp,Yp),Cr半径为r,则p关于Cr的轨迹为Xp = Xc + r*cos(beta_1),Yp = Yc + r*sin(beta_1)...(1);
2 同理,我们很容易的知道Cr圆心关于CR(即原点)的轨迹(圆,不是么?)为,Xc = (R-r)*cos(beta_2),Yc = (R-r)*sin(beta_2)...(2);
3 消去(1),(2)式中的(Xc,Yc);

思路b
类似 不过是通过切点建立关系 这是的角度beta_1'为思路a中beta_1的一半。

Thx for reading.
PS:若还算满意,直接点击“Thanks”,再次登陆时亦便于查看回答是否真的帮到你了。
个人观点 仅供参考 多多交流 相互学习
silas_xue 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 21:43


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.