제가 50자유도 진동해석을 해야되서

symbolic  매트릭스50x50역행렬을 해야 하는데 이를 실행시키면 하루가 지나도 결과가 안 나오네요



시간을 단축시키는 코딩 방법이나 cpu 할당 개수를 늘리는 방법이 있나요?


%% 다중동흡진기 연구

clc
clear

%% Define M K

M=155*eye(50);
l([1:49])=-4.287*10^6;                                                      % 행렬을 만들기 위한 전처리행렬
K=4.287*10^6*2*eye(50)+diag(l,-1)+diag(l,1);                                %
K(50,50)=4.287*10^6;                                                        % 최고층 부분을 고려하기 위해 K(50,50)을

%% 고유값 고유벡터 고유진동수 정의

[S D]=eig(K,M);                                                                  
on([1:50])=1;                                                               % W행렬을 nx1형태로 만들기 위한 전처리행렬
W=sqrt(D)*on';
Hz=W/(2*pi);                                                                % Hz로 단위 변환

%% TF & FRF

syms s f w
A=M*s^2+K;
F=sym(zeros(50,1));
F(1)=f;

X=A^-1*F