Matlab问题求解.我写了个程序e=0.001;c=[5;4;3;2;1]Q=[5 4 3 2 1;4 4 3 2 1;3 3 3 2 1;2 2 2 2 1;1 1 1 1 1];x=[x1;x2;x3;x4;x5];f = @(x) (c.'*x + 1/2 * x.' * Q * x);df = @(x) (c + Q *x);x1=0;x2=0;x3=0;x4=0;x5=0;flag=1;k=0;Q=inv(Q);d=-Q*df(x);while

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/15 14:20:49
Matlab问题求解.我写了个程序e=0.001;c=[5;4;3;2;1]Q=[54321;44321;33321;22221;11111];x=[x1;x2;x3;x4;x5];f=@(x)(c.

Matlab问题求解.我写了个程序e=0.001;c=[5;4;3;2;1]Q=[5 4 3 2 1;4 4 3 2 1;3 3 3 2 1;2 2 2 2 1;1 1 1 1 1];x=[x1;x2;x3;x4;x5];f = @(x) (c.'*x + 1/2 * x.' * Q * x);df = @(x) (c + Q *x);x1=0;x2=0;x3=0;x4=0;x5=0;flag=1;k=0;Q=inv(Q);d=-Q*df(x);while
Matlab问题求解.
我写了个程序
e=0.001;
c=[5;4;3;2;1]
Q=[5 4 3 2 1;4 4 3 2 1;3 3 3 2 1;2 2 2 2 1;1 1 1 1 1];
x=[x1;x2;x3;x4;x5];
f = @(x) (c.'*x + 1/2 * x.' * Q * x);
df = @(x) (c + Q *x);
x1=0;x2=0;x3=0;x4=0;x5=0;
flag=1;k=0;
Q=inv(Q);
d=-Q*df(x);
while flag
k=k+1;
if (norm(d) norm at 28
[varargout{1:nargout}] = builtin('norm',varargin{:});
然后再次用原程序运行(无syms的)就可以正常算出来了
我的Matlab版本是7.0.1的 请问这是什么问题能怎么解决

Matlab问题求解.我写了个程序e=0.001;c=[5;4;3;2;1]Q=[5 4 3 2 1;4 4 3 2 1;3 3 3 2 1;2 2 2 2 1;1 1 1 1 1];x=[x1;x2;x3;x4;x5];f = @(x) (c.'*x + 1/2 * x.' * Q * x);df = @(x) (c + Q *x);x1=0;x2=0;x3=0;x4=0;x5=0;flag=1;k=0;Q=inv(Q);d=-Q*df(x);while
分析
首先,恕我冒昧,这程序真的是你写的?
如果是,这么简单的问题不应该看不出来啊.
 
1、之所以【运行时会出现?Undefined function or variable 'x1'.】,是因为程序中x1(还包括x2 x3 x4 x5)在使用的时候确实未定义.用到x1的最靠前的代码是:
x=[x1;x2;x3;x4;x5];
你可以看看,前面有x1定义吗?
 
2、之所以【加入一个syms x1 x2 x3 x4 x5;再运行,会提示?Function 'norm' is not defined for values of class 'sym'.】,是因为求范数的函数norm对sym类型没有定义,而你用syms命令定义x1-x5是sym类型,进而x、再进而d都是sym类型,对d求范数当然会出错.
 
3、之所以【然后再次用原程序运行(无syms的)就可以正常算出来了】,是因为你前面加了syms命令后,尽管执行到norm的时候出错,但在此之前,已经执行了下面这一行:
x1=0;x2=0;x3=0;x4=0;x5=0;
这样你再次运行的时候,x1-x5都已经定义,当然就不会出现第一个错了;而此时x和d也不再是sym类型,求范数没问题,也就不会出现第二个错了.
 
修改
经过上面的分析,相信你应该知道怎么修改了,对,没错,就是把这一句
x1=0;x2=0;x3=0;x4=0;x5=0;
移到
x=[x1;x2;x3;x4;x5];
的前面就可以了.

Matlab问题求解.我写了个程序e=0.001;c=[5;4;3;2;1]Q=[5 4 3 2 1;4 4 3 2 1;3 3 3 2 1;2 2 2 2 1;1 1 1 1 1];x=[x1;x2;x3;x4;x5];f = @(x) (c.'*x + 1/2 * x.' * Q * x);df = @(x) (c + Q *x);x1=0;x2=0;x3=0;x4=0;x5=0;flag=1;k=0;Q=inv(Q);d=-Q*df(x);while Matlab写简单程序,如下提示,关于求和的问题.A=[1 2 3 4 5]请问怎么写出程序求解(1+2)+(2+3)+(3+4)+(4+5)我写了几个for语句,但好像不符合语法这个应该比较简单的,但就是有些小错误 如何在matlab下求解三角函数方程matlab 三角函数方程求解10 - 离问题结束还有 13 天 13 小时碰到一个问题,想在matlab下求解这样一个方程:tan(k*(1.57E-6))/(k*(1.57E-6))=1/0.2159,我用了solve命令,结果出现 遗传算法matlab编程求函数最大值?我们现在要用MATLAB编程实现遗传算法求解函数最大值问题,不能用MATLAB自带的遗传算法工具箱.现在有个问题就是,要求函数是一个变量X的话,程序我已经编了,但 matlab的问题:关于Index exceeds matrix dimensions.我在编写matlab程序,求解高解微分方程的解时,写到:function dy = weifen (t,x)x=sym('x')dy=[x(2);x(3);x(4);-8*x(4)-36*x(3)-40*x(2)-10*x(1)+10][t,x]=ode45('weifen', [0 20],[0 0])p matlab计算在n个人中有人同一天生日的概率问题要求是用子函数实现 计算每n个人概率时的运算次数是5000次 看一下我的程序哪里错了function birthdays(n);testtime=5000;sametime=0;for i=1:1:nfor t=1:testtime;e= MATLAB物理题问题大家帮忙,要写论文.你们给我找个物理问题,把它用MATLAB写出程序,什么物理问题都可以,数组和积分等等,编1到两个问题 您好我想问一个关于matlab的小问题,我有一段小波去噪的程序,去噪是成功了,但去噪后的数据怎样提取出来这是我的程序:clearF=fopen('60V.txt','r')E=fscanf(F,'%8e')E;A=length(E);X=zeros(1);Y=zeros(1);for ii=1:A/ 如何用matlab标注函数最大值我现在已经作出函数y=1-e(-t)cos2t函数的图形,请问如何在图形上标注最大值点以及其坐标!最好是可以写成程序啊!谢谢了!我写的作图程序如下t=0:pi/100:10;y=1-exp(-0.5* t=0:0.1:8; y=sin.^2(t./8); plot(t,y) matlab画图,程序哪里错了,我觉得问题在第二行, 用matlab求一个序列的所有子序列的那个程序我发现还有问题.如果序列长度为N,则所有求得的子序列的个数是2^N-1.我用nchoosek函数写了一个发现没求完整.对于X=‘abcd’不能求到15个只能到13个. 问一个MATLAB绘制二元三维曲线的问题啊我现在求这个函数z=arctan(sin(r*sin(x))*tan(y))中z随着x和y的值的变化求z的曲线图,然后我按照MATLAB书上的例子自己写了这个程序:clear;close all;x=0:0.01:240;y=0:0. 有关MATLAB用solve函数求解非线性方程组的问题试过fsolve函数,发现对初始值太敏感了,所以想试试solve函数,毕竟不用初始值,但我写了下面的程序,发现会报错:Error:Missing variable or function.我绝对 matlab求解泛函微分方程数值解.我想用matlab求解一个泛函微分方程的数值解,编了个程序总是运行不出来,lags=[1]; sol=dde23('ddefun',lags,'history',[0,100]); plot(sol.x,sol.y); title('ddefun');xlabel('t');ylabel('y'); l matlab 求解此方程组 y=X^-0.7725 ;y=-0.125x+1.51 的matlab程序,注意:我要的是程序 matlab问题,求高手解决.编写程序,用无穷级数计算指数函数, e^x=1+x+x^2/2!+. 多谢了 ,急用 在matlab下使用runge kutta方法求解如下方程?y'[t] = -3/10 (y[t])^2 + 2 y[t]y[0] = 2怎么写程序? matlab非线性代数方程求解!x^4+3*x^3-2*x^2+5*x-10=0 怎么写程序啊~