Solve integral in nested function

2 vues (au cours des 30 derniers jours)
Payjay
Payjay le 6 Mar 2017
Réponse apportée : Meet le 26 Juil 2024
hello there, i am trying to build something like this:
if true
function x = first
x = 5*y
function y = nested
I = @(x) x^2
y = integral(I,0,1)
end
end
end
but there occurs an error stating: 'Error: Function definitions are not permitted in this context.'
Does anyone know an alternative or sees the misstake i made?
thanks!

Réponses (1)

Meet
Meet le 26 Juil 2024
Hi Payjay,
According to the MATLAB R2024a documentation, you cannot define a nested function inside any of the control statements, such as if, elseif, else, switch, case, for, while, or try/catch.
What you can do is define the nested function outside the if control statement and then call the function inside this control statement. For example:
function x = first
% Your code logic
function y = nested
% Your code logic
end
end
if true
result = first
end
For more information on the usage of nested function, you can refer to the following documentation: Nested Functions

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by