How to integrate for each row of parameters in a matrix, rather than using a loop
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hello,
I have been the following code to calculate an integral:
Price = @(z, pg0, pf0, epsilon) ...
(pg0.^(1-z) + pf0 .^(1-z)).^(1./(1-z)).^(1-epsilon); %
AvgPrice = integral(@(z) Price(z, pg0, pf0, epsilon), 0 ,20) ;
where pg0, pf0, epsilon are scalars. Is there a way to do this when the inputs are in a matrix, for instance when each input is a 5 by 1 matrix, to calculate the integral by using inputs from each row? So the output (AvgPrice) will also be a colum vector (5 by 1) with each element being the value of the integral? I can use a loop and run it five times but I wonder if there's a more efficient way to do it.
Thanks very much for your time!
0 Commenti
Risposta accettata
Paul
il 12 Gen 2022
integral() can integrate a vector function of a scalar. It sounds like this is what you're looking for.
Whether or not it's more efficient is an interesting question.
0 Commenti
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!