expm.c
来自「C语言实现的矩阵的常用计算!包括:矩阵乘法」· C语言 代码 · 共 36 行
C
36 行
void expm(
Matrix A,
Matrix B,
int m)
{
Matrix AT,s;
int i,j;
double k;
for(i=0;i<m;i++)
for(j=0;j<m;j++)
{
if((i-j)==0)
{s[i][j]=1;AT[i][j]=1;}
else
{s[i][j]=0;AT[i][j]=0;}
} //产生单位阵
for(i=1;i<=50;i++)
{
MMmul(A,AT,AT,m,m,m,m);
k=(double)i;
MNmul(AT,1/k,AT,m,m);
MMadd(s,AT,s,m,m,m,m);
if(judgement(AT,m,m)==0)
break;
} //求矩阵exp(AT)
for(i=0;i<m;i++)
for(j=0;j<m;j++)
B[i][j]=s[i][j];
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?