返回   MATLAB中国论坛|MATLAB爱好者之家—不仅仅是MATLAB! > 基础科学-不仅仅是MATLAB! > 数学


数学 A discussion board for Mathematics.

挖掘已有资源,发帖前请先搜索!
虚拟主机 域名注册 香港空间
回复
 
LinkBack 主题工具 显示模式
旧 2009-12-23, 10:19 PM   #1
初级会员
 
注册日期: 2009-12-23
年龄: 22
帖子: 1
感谢他人: 0
有 0 帖获得 0 感谢
声望力: 0
华英雄 正向着好的方向发展
默认 一元多项式的性态

function y=douxiangshi(f)
f=inline(f); %定义函数
% 先定义一个函数 对函数求导 ,极值点拐点 先判断最左边的增减凹凸性 在判断中间的
% 增减凹凸性 最后判断最右边的凹凸性 然后画图
n=length(p)-1;
a=n:-1:0;
syms x;
xx=(x.^a)*p';
r=roots(p);
real(r);%求零解
syms x
z=diff(sym(f),x); %求导
erdao=diff(sym(z),x); %求二阶导

% 求极值点及拐点
i=subs(erdao,'x',dian(k));
if double(i)>0
fprintf('\n函数在 %s 处取得极大值\n',char(dian(k)));
elseif double(i)<0
fprintf('\n函数在 %s 处取得极小值\n',char(dian(k)));
else
end
fprintf('\n (%s,%s) 为拐点\n',char(dian(k)),f(dian(k)));
end

zuo=double(dian(1))-1; %取点
%判断最左区间的增减性及凹凸性
if subs(z,'x',zuo)>0; %判断增
if subs(erdao,'x',zuo)>0; % 判断凸
fprintf('(-∞,%s)为增区间 此区间为凸\n',char(dian(1)));
else subs(erdao,'x',zuo)<0; % 判断凹
fprintf('(-∞,%s)为增区间 此区间为凹\n',char(dian(1)));
end
else subs(z,'x',zuo)>0; % 判断减
if subs(erdao,'x',zuo)>0; % 判断凸
fprintf('(-∞,%s)为减区间 此区间为凸\n',char(dian(1)));
else subs(erdao,'x',zuo)<0; % 判断凹
fprintf('(-∞,%s)为减区间 此区间为凹\n',char(dian(1)));
end
end
%判断中间的区间的增减性及凹凸性
for m=1:len-1
n=double((dian(m)+dian(m+1))/2); %取点
if subs(z,'x',n)>0 % 判断增
if subs(erdao,'x',n)>0; % 判断凸
fprintf('(%s,%s)为增区间 此区间为凸\n',char(dian(m)),char(dian(m+1)));
else subs(erdao,'x',n)<0; % 判断凹
fprintf('(%s,%s)为增区间 此区间为凹\n',char(dian(m)),char(dian(m+1)));
end
else subs(z,'x',n)<0; % 判断减
if subs(erdao,'x',n)>0; % 判断凸
fprintf('(%s,%s)为减区间 此区间为凸\n',char(dian(m)),char(dian(m+1)));
else subs(erdao,'x',n)<0; % 判断凹
fprintf('(%s,%s)为减区间 此区间为凹\n',char(dian(m)),char(dian(m+1)));
end
end
end
% 判断最右区间的增减性及凹凸性
you=double(dian(len))+1;%取点
if subs(z,'x',you)>0 %判断增
if subs(erdao,'x',you)>0; %判断凸
fprintf('(%s,+∞)为增区间 此区间为凸\n',char(dian(len)));
else subs(erdao,'x',you)<0; %判断凹
fprintf('(%s,+∞)为增区间 此区间为凹\n',char(dian(len)));
end
else subs(z,'x',you)>0; %判断减
if subs(erdao,'x',you)>0; %判断凸
fprintf('(%s,+∞)为减区间 此区间为凸\n',char(dian(len)));
else subs(erdao,'x',you)<0; %判断凹
fprintf('(%s,+∞)为减区间 此区间为凹\n',char(dian(len)));
end
end
% end
ezplot(f);
grid

急求,麻烦有能力的大虾帮我修正一下。要求的是:单调区间.零点.极值.凹凸区间.最值.拐点坐标
华英雄 当前离线   回复时引用此帖
回复

书签

标签
拐点坐标 单调区间 极值 凹凸区间 零点

主题工具
显示模式

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

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



所有时间均为北京时间。现在的时间是 11:04 PM


Powered by vBulletin
版权所有 ©2000 - 2012,Jelsoft Enterprises Ltd.
陕ICP备07001583号
感谢MEyu科技提供优质空间

SEO by vBSEO ©2009, Crawlability, Inc.