init
This commit is contained in:
22
FOTF Toolbox/caputosym.m
Normal file
22
FOTF Toolbox/caputosym.m
Normal file
@ -0,0 +1,22 @@
|
||||
function dy=caputosym(f,alpha,t0,t)
|
||||
%caputosym evaluates symbolically Caputo derivatives
|
||||
%
|
||||
% dy=caputosym(f,alpha,t0,t)
|
||||
%
|
||||
% f - symbolic expression or symbolic function
|
||||
% alpha - fractional order, must be a symbolic number
|
||||
% t0 - initial time, default of 0
|
||||
% t - final time, woth default of symbolic t
|
||||
|
||||
% Copyright (c) Dingyu Xue, Northeastern University, China
|
||||
% Last Modified 18 May, 2022
|
||||
arguments, f(1,1), alpha(1,1), t0(1,1)=0, t(1,1)=symvar(f), end
|
||||
if alpha<=0, dy=riemannsym(f,alpha,t0,t); return; end
|
||||
syms tau; alpha=sym(alpha); m=ceil(alpha); gam=m-alpha;
|
||||
switch class(f)
|
||||
case 'sym', F=diff(subs(f,t,tau),m);
|
||||
case 'symfun', F=diff(f(tau),m);
|
||||
otherwise, error('f must be a symbolic expression')
|
||||
end
|
||||
dy=1/gamma(gam)*int(F/(t-tau)^(1-gam),tau,t0,t);
|
||||
end
|
||||
Reference in New Issue
Block a user