How do I solve 'Not enough input arguments'

17 views (last 30 days)
Khili Khamesra
Khili Khamesra on 27 Feb 2018
Edited: Stephen23 on 28 Feb 2018
This is my code for solving the fick's equation. I am unsure as to what is my mistake. Any help is appreciated.
m=1;
xspan=linspace(0,30,300);
tspan=linspace(0,10,100);
sol=pdepe(m,pdefun,pdeinc,pdebound,xspan,tspan);
surf(xspan,tspan,u);
function [c,f,s]=pdefun(x,t,u,dudx)
c=1;
f=(0.02).* dudx ;
s=1;
end
function [uo]=pdeinc(~)
uo=1;
end
function [pl,ql,pr,qr] = pdebound(~,~,~,~,~)
pl=0;
ql=1;
pr=0;
qr=0;
end
I am getting the following error
Not enough input arguments.
Error in partialtrial>pdefun (line 14)
f=(0.02).* dudx ;
Error in partialtrial (line 9)
sol=pdepe(m,pdefun,pdeinc,pdebound,xspan,tspan);

Answers (1)

Walter Roberson
Walter Roberson on 27 Feb 2018
sol=pdepe(m,@pdefun,@pdeinc,@pdebound,xspan,tspan);
  1 Comment
Khili Khamesra
Khili Khamesra on 28 Feb 2018
Now I am receiving this error-
Error using pdepe (line 293) Spatial discretization has failed. Discretization supports only parabolic and elliptic equations, with flux term involving spatial derivative.
Error in partialtrial (line 9) sol=pdepe(m,@pdefun,@pdeinc,@pdebound,xspan,tspan);
the equation is clearly parabolic, what can be my mistake?

Sign in to comment.

Categories

Find more on Mathematics and Optimization in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!