找回密码
 注册
Simdroid-非首页
查看: 58|回复: 0

matlab求导求教,木有定义diff_par函数

[复制链接]
发表于 2017-11-9 17:42:34 | 显示全部楼层 |阅读模式 来自 四川成都
定义了Evolute_Draw函数,没有定义diff_par函数,程序依旧可以运行,请问是咋回事,哪个大神解答一下,现附上命令流

function Evolute_Draw(varargin)
args=varargin;
range=args{end};
if nargin==2
    y=args{1};
    x=sym('x','real');
    x=symvar(y);
    if length(s)>1
        error('函数fun必须只包含一个符号变量.')
    end
    if ~isequal(x,s)
        y=subs(fun,s,x);
    end
    df=simple(diff(y,x));
    d2f=simple(diff(df,x));
elseif nargin==3
    x=args{1};y=args{2};
    t=sym('t','real');
    s=unique([symvar(x),symvar(y)]);
    if length(s)>1
        error('函数funx和funy必须只包含一个符号变量.')
    end
    if ~isequal(t,s)
        x=subs(x,s,t);
        y=subs(y,s,t);
    end
    df=simple(diff_para(y,x,t,1));
    d2f=simple(diff_para(y,x,t,2));
else
    error('The number of input arguments is illegal.')
end
X=inline(x);
Y=inline(y);
alpha=inline(simple(x-df*(1+df^2)/d2f));
beta=inline(simple(y+(1+df^2)/d2f));
theta=linspace(range(1),range(2),300);
plot(X(theta),Y(theta),'k',alpha(theta),beta(theta),'r--')
xx=sort([X(range),alpha(range)]);
xlim([xx(1) xx(end)])
end
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-5-3 08:38 , Processed in 0.028158 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表