Why can't I put two equations in one function file?
Afficher commentaires plus anciens
function a,b=myfunction(x)
a= @(x) 5-5*exp((1/3)*x) + (16- x^2)^(1/2)
b= @(x) (-5/3)*exp((1/3)*x) - (16- x^2)^(-1/2)
I basically want this function to give me f(x) value (equation listed next to a), and I want it to give me the f'(x) value (equation listed next to b).
Why is it that I can't have my input value go into two separate equations and come out as two outputs?
----
I know that I can create a function file f(x) with equation '5x^2 + 10' and then create its derivative function file:
function result= fd(x)
f(x)
result=10x;
and it will print out both values that I want (f(x) and f'(x)). But, do I really have to make two files for these two equations instead of just grouping them in one file?
Réponses (1)
the cyclist
le 28 Fév 2018
Modifié(e) : the cyclist
le 28 Fév 2018
It's just a simple syntax error. Try
function [a,b]=myfunction(x)
Note the square brackets around the outputs. You will get two outputs from this function.
4 commentaires
Rachel Dawn
le 28 Fév 2018
the cyclist
le 28 Fév 2018
Happy to help. The best form of thanks is to upvote and/or accept an answer, which rewards the contributor, and can guide future users to helpful responses.
PRED LIU
le 1 Mai 2020
If a,b are matrix or ,how to do ??
IF a is matrix b is var ,how to do??
the cyclist
le 1 Mai 2020
It's still the same syntax. You will get outputs that are scalars or matrices.
Catégories
En savoir plus sur Ordinary Differential Equations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!