# I have matrix A and I need to find (e^(At)) where t is the sampling time. How to find that? Also what is the difference between exp(A) and expm(A)?

조회 수: 5(최근 30일)
VARSHA J LAL 2021년 10월 20일
댓글: VARSHA J LAL 2021년 10월 22일
How to find (e^(At)) that? Also what is the difference between exp(A) and expm(A)?

댓글을 달려면 로그인하십시오.

### 채택된 답변

James Tursa 2021년 10월 20일
편집: James Tursa 2021년 10월 20일
exp(A) just takes the exp( ) of the scalar elements individually. I.e., exp(A(1,1)), exp(A(1,2)), etc.
expm(A) takes the matrix exponential. I.e., conceptually the equivalent of eye(n) + A + A^2/2! + A^3/3! + ...
These are two very different operations. From your description it looks like you should be using expm( ).
##### 댓글 수: 1표시숨기기 없음
VARSHA J LAL 2021년 10월 22일
thank you @James Tursa

댓글을 달려면 로그인하십시오.

### 추가 답변(2개)

KSSV 2021년 10월 20일
A = rand(2) ;
t = linspace(0,1) ;
iwant = zeros(2,2,100) ;
for i = 1:100
iwant(:,:,i) = exp(A*(t(i))) ;
end
exp might give less accurate values for [0,1]; in that case expm will be accurate
##### 댓글 수: 0표시숨기기 이전 댓글 수: -1

댓글을 달려면 로그인하십시오.

Bruno Luong 2021년 10월 20일
편집: Bruno Luong 2021년 10월 20일
Math notation e^(At) is computed in MATLAB with
expm(A*t)
or equivalently
expm(A)^t

댓글을 달려면 로그인하십시오.

R2017a

### Community Treasure Hunt

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

Start Hunting!