matlab实现参数方程求导(paradiff函数)

总述

在这里插入图片描述 在这里插入图片描述

函数说明

function result=paradiff(y, x, t, n) 
%paradiff
%参数方程求导的递归实现
%  调用格式:
%    y1 = paradiff(y, x, t, n)
%  其中:y=f(t), x=g(t), t为参数, n为导数阶次
%
% Examples:
%  已知参数方程 y=sin(t)/(t+1)^3; x=cos(t)/(t+1)^3
%  求d3y/dx3
% MATLAB求解语句:
%  syms t; y=sin(t)/(t+1)^3; x=cos(t)/(t+1)^3;
%  f = paradiff(y,x,t,3); 
%  [n,d]=numden(f);   %分离分子分母
%  F=simplify(n)/simplify(d)  %分子分母各自化简

应用举例

问题: 已知参数方程
y = s i n t ( t + 1 ) 3 , x = c o s t ( t + 1 ) 3 y=\frac{sint}{(t+1)^3}, x=\frac{cost}{(t+1)^3} y=(t+1)3sint,x=(t+1)3cost
d 3 y / d x 3 d^3y/dx^3 d3y/dx3

代码如下:

syms t 
y=sin(t)/(t+1)^3; x=cos(t)/(t+1)^3; 
f=paradiff(y,x,t,3); 
[n,d]=numden(f);              % //分离分子分母
F=simplify(n)/simplify(d)     % //分子分母各自化简

最终结果为:
在这里插入图片描述

函数实现

function result=paradiff(y, x, t, n) 
if mod(n,1)~=0
    error('n should positive integer, please correct') 
else 
    if n==1
        result = diff(y,t)/diff(x,t); 
    else
        result = diff(paradiff(y,x,t,n-1),t)/diff(x,t); 
    end
end

此函数源文件可前往下面网址下载:

paradiff.m下载通道

  • 4
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_43964993

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值