Using quad or quad2d to evalute a 1-D integral of 2-D function

1 visualización (últimos 30 días)
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

Respuesta aceptada

Mike Hosea
Mike Hosea el 16 de Nov. de 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?

Más respuestas (0)

Categorías

Más información sobre Numerical Integration and Differentiation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by