Integral of exponential matrix

10 次查看(过去 30 天)
Federico Celi
Federico Celi 2020-6-19
评论: Vince Toonen 2022-12-11
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!

回答(1 个)

Steven Lord
Steven Lord 2020-6-19
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 个评论
Vince Toonen
Vince Toonen 2022-12-11
Thanks you so much man, I had exactly the same question.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Numerical Integration and Differentiation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by