Integral3 with vector-valued function

10 visualizaciones (últimos 30 días)
Alexander Ruderer
Alexander Ruderer el 21 de Oct. de 2020
Comentada: Walter Roberson el 21 de Oct. de 2020
Hi, I have a qustion regarding the predefined matlab-function integral3.
Is it possible to do a vector-valued 3D integration?
With the one-dimensional function integral it is very easy:
Example:
fun = @(x)sin((1:5)*x);
q = integral(fun,0,1,'ArrayValued',true)
Yet the same syntax is not possible for integral 3.
Example:
fun = @(x,y,z) x.^(1:100) .* y .* z ;
q_array = integral3(fun,0,1,0,1,0,1,'ArrayValued',true);
This throws the error ''ArrayValued' is not a recognized parameter. For a list of valid name-value pair arguments, see the
documentation for this function.''
So is there a way to circumvent this behaviour?
In the moment, I solved it with a simple for-loop. But unfortunately the run-time is quite bad. So I hoped to lower the run-time with an vector-valued 3Dintegration.
  1 comentario
Ameer Hamza
Ameer Hamza el 21 de Oct. de 2020
@Analyst BugB, why are you posting the same image (which opens a pop-up window in the browser), using different account names. Is this some sort of website testing, or are you trying to find a bug?

Iniciar sesión para comentar.

Respuestas (1)

Ameer Hamza
Ameer Hamza el 21 de Oct. de 2020
Not possible with integral3(). Following shows an alternative
fun = @(x,y,z,n) x.^n .* y .* z ;
q_array = arrayfun(@(n) integral3(@(x,y,z) fun(x,y,z,n),0,1,0,1,0,1), 1:100)
  2 comentarios
Alexander Ruderer
Alexander Ruderer el 21 de Oct. de 2020
Thank you very much, for your answer.
Your code works and makes my for loop unnecessary. So I will switch on your lines to make my code simpler. Yet, unfortunately it does not really lower the run-time. The for loop and your code had nearly the same run-time in a short-test.
I also tested the 1D example. There the array-valued option is able to more than half the run-time.
So I hoped, that this is also possible with integral3, but proabably the functions have different implementations regarding vector-valued functions.
Walter Roberson
Walter Roberson el 21 de Oct. de 2020
https://www.mathworks.com/matlabcentral/fileexchange/47919-integraln-m might give ideas

Iniciar sesión para comentar.

Categorías

Más información sobre MATLAB Coder en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by