Integral of exponential matrix

10 Ansichten (letzte 30 Tage)
Federico Celi
Federico Celi am 19 Jun. 2020
Kommentiert: Vince Toonen am 11 Dez. 2022
I am looking into integrating a function of the form
where M is a square matrix. It can either be symbolic or not (t is given at the time of computation).
How should I set up the code? I am using expm to compute the exponent, but the integral gives me an error in the multiplication: Matrix dimensions must agree.
M = [1 2; 3 4];
tf = 1;
Qk=integral(@(t) expm(M.*t),0,tf);
I am aware that a similar question was asked here, but I still can't understand the issue.
Thank you!

Antworten (1)

Steven Lord
Steven Lord am 19 Jun. 2020
Tell MATLAB your integrand doesn't return a vector the same size as the input but should be called with a scalar and will return an array.
Qk=integral(@(t) expm(M.*t),0,tf, 'ArrayValued', true);
  2 Kommentare
Federico Celi
Federico Celi am 19 Jun. 2020
Brilliant, thank you!
Vince Toonen
Vince Toonen am 11 Dez. 2022
Thanks you so much man, I had exactly the same question.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by