Too many inputs to inline function

2 vues (au cours des 30 derniers jours)
Pramit Biswas
Pramit Biswas le 19 Juin 2013
Modifié(e) : Anay Aggarwal le 12 Juil 2022
fcnstr=input('Put Desired Function: dy/dx=', 's') ; f=inline(fcnstr) ;
x0=input('x(0)=') ;
y0=input('y(0)=') ;
xf=input('x(f)=') ;
n=2 ;
h=(xf-x0)/n
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
format long g
xa(1)=x0 ;
ya(1)=y0 ;
for i=1:n
xa(i+1)=xa(i)+h ;
k1 = h*f(xa(i),ya(i));
gives error:
"??? Error using ==> inline.subsref at 17
Too many inputs to inline function.
Error in ==> FODESu4oRKv1 at 43
k1 = h*f(xa(i),ya(i));"
  1 commentaire
Pramit Biswas
Pramit Biswas le 19 Juin 2013
well i used this
x0=input(sprintf('x(0)=', '%g'))

Connectez-vous pour commenter.

Réponses (1)

Anay Aggarwal
Anay Aggarwal le 10 Juil 2022
Modifié(e) : Anay Aggarwal le 12 Juil 2022
Hi Pramit
I have an understanding that you want to make use of the inline function in your code; but you are not able to and it is giving an error "Too many inputs to inline function".
You need to specify the variables (and the order of the variables) explicitly when you use inline().
See the bottom example in the reference page:
Regards

Catégories

En savoir plus sur Function Creation dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by