Using quad or quad2d to evalute a 1-D integral of 2-D function
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi,
I'm trying to evaluate a 1-D integral (single integral, not double integral). The integrand happens to be a function that takes 2 arguments, call it f(x,y). I am fixing one of the arguments as a constant. So I would like to:
Integrate f(x,2) from x=1 to x=10. Is there a way to do this using quad or quad2d? If not, what would you suggest I use to evaluate this integral?
Thanks, David
0 Kommentare
Akzeptierte Antwort
Mike Hosea
am 16 Nov. 2011
You need to "bind" one of the arguments to whatever value you choose. This is done with an "anonymous" function.
fx = @(x)f(x,2)
is a function that takes one input argument, x, and returns f(x,2). I have called it fx here, but of course you could call it any valid variable name. So, fx(pi) = f(pi,2). We don't have to name this function. We can just pass it to the integrator, so the answer to your question is
quadgk(@(x)f(x,2),1,10)
Of course this works with quad as well, but why do people use quad anymore when they have quadgk?
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Numerical Integration and Differentiation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!