I would like to solve the following equation system:
where: $\alpha$ is the unknown vector; $M$ and $K$ are constant matrices (8 x 8).
I don't really know how to solve this :/ (LinearSolve
or some loop?)
Any ideas?
Update
Here is my code. Evaluation of the Solve
expression runs indefinitely.
M = {{18.252581868563773`, 0.06705185574759391`,
0.5486060924803138`, -0.039621551123578215`, 0.`, 0.`, 0.`,
0.`}, {0.06705185574759391`, 0.09741329795773487`,
1.3410371149518783`, -0.0027430304624015693`, 0.`, 0.`, 0.`,
0.`}, {0.5486060924803138`, 0.039621551123578215`,
8.858972456348772`, 0.`, -0.039621551123578215`, 0.`, 0.`,
0.`}, {-0.039621551123578215`, -0.0027430304624015693`, 0.`,
0.027796042019002567`, -0.0027430304624015693`, 0.`, 0.`,
0.`}, {0.`, 0.`, -0.039621551123578215`, -0.0027430304624015693`,
0.007314747899737517`,
1.3410371149518783`, -0.0027430304624015693`, 0.`}, {0.`, 0.`, 0.`,
0.`, 0.039621551123578215`, 33.68554113363173`,
0.`, -0.039621551123578215`}, {0.`, 0.`, 0.`,
0.`, -0.0027430304624015693`, 0.`,
0.2974057336718429`, -0.0027430304624015693`}, {0.`, 0.`, 0.`, 0.`,
0.`, -0.039621551123578215`, -0.0027430304624015693`,
0.0036573739498687585`}}
K = {{2.432045103220617`*^7,
3.6480676548309256`*^6, -2.432045103220617`*^7,
3.6480676548309256`*^6, 0, 0, 0, 0}, {3.6480676548309256`*^6,
729613.5309661851`, -3.6480676548309256`*^6, 364806.7654830926`, 0,
0, 0, 0}, {-2.432045103220617`*^7, -3.6480676548309256`*^6,
4.864090206441234`*^7, 0.`, 3.6480676548309256`*^6, 0, 0,
0}, {3.6480676548309256`*^6, 364806.7654830926`, 0.`,
1.4592270619323703`*^6, 364806.7654830926`, 0, 0, 0}, {0, 0,
3.6480676548309256`*^6, 364806.7654830926`,
1.4592270619323703`*^6, -3.6480676548309256`*^6,
364806.7654830926`, 0}, {0, 0, 0, 0, -3.6480676548309256`*^6,
4.864090206441234`*^7, 0.`, 3.6480676548309256`*^6}, {0, 0, 0, 0,
364806.7654830926`, 0.`, 1.4592270619323703`*^6,
364806.7654830926`}, {0, 0, 0, 0, 0, 3.6480676548309256`*^6,
364806.7654830926`, 729613.5309661851`}}
freqs = Table[Subscript[α, i], {i, MatrixRank[M]}];
EqOfFreq = -freqs^2 . M + K;
Solve[Det[EqOfFreq] == 0, freqs];
NSolve
returns an infinite number of solutions. And I suspect your code doesn't reflect what you want: 1) how do you understandfreqs^2.
, and 2) why did you put a dot after the exponent? $\endgroup$freqs^2
and see what's the output. A scalar product (a dot product) is performed with theDot
:freqs.freqs
. Then,Det[EqOfFreq]
is a polynomial with 8 variables with degree 16 and... over 17 thousand terms. $\endgroup$