3自由度振動シミュレータ

運動方程式
Mn : 質量(kg)
Kn : ばね定数(N/m)
Dn : 粘性減衰(N*sec/m)(速度に比例すると仮定)

M0・x0”+D0(x0’-x1’)+K0(x0-x1) = P0
M1・x1”+D0(x1’-x0’)+D1(x1’-x2’) + K0(x1-x0)+ K1(x1-x2) = P1
M2・x2”+D1(x2’-x1’)+D2・x2’+ K1(x2-x1)+ K2・x2 = P2

※ x0~xnは変位量、xn’は一回微分で速度、xn”は二回微分で加速度を表す
※ 周期関数(例:正弦波)では変位ー速度ー加速度が90度の位相差となり、
※ それぞれゼロクロスとピークの点での位相差が90度となる(サインとコサインの関係)
※ 従って、運動方程式を複素数で作成しその解を計算する
以下では運動方程式を複素数マトリックスとして作成する

ばねの接続情報
ばね 0 : 500000000 (N/m) 質量M 0 と質量M 1 に接続
ばね 1 : 1000000000 (N/m) 質量M 1 と質量M 2 に接続
ばね 2 : 500000000 (N/m) 質量M 2 と固定端に接続

粘性減衰の接続情報
粘性減衰 0 : 500 (N*sec/m) 質量M 0 と質量M 1 に接続
粘性減衰 1 : 1000 (N*sec/m) 質量M 1 と質量M 2 に接続
粘性減衰 2 : 1000 (N*sec/m) 質量M 2 と固定端に接続

ばね配列の要素 [ばね定数(N/m), 接続端番号, 接続端番号]
粘性減衰配列の要素 [粘性減衰(N*sec/m), 接続端番号, 接続端番号]
※接続端番号は接続している質量の番号とし、固定端は-1とする

ばね配列 = [[500000000, 0, 1], [1000000000, 1, 2], [500000000, 2, -1]]
粘性減衰配列 = [[500, 0, 1], [1000, 1, 2], [1000, 2, -1]]
------------------------------------
質量マトリックス(ベクトル)M0の要素
[10, 10, 10]
剛性マトリックスK0の要素
[[500000000, -500000000, 0], [-500000000, 1500000000, -1000000000], [0, -1000000000, 1500000000]]
粘性減衰マトリックスC0の要素
[[500, -500, 0], [-500, 1500, -1000], [0, -1000, 2000]]

連立1次方程式を [ A + jB ]{ x }={ P }
{ x }=[ C + jD ]{ P }=[ E + jF ]
として
[ C + jD ]を求めるために、マトリックス[ A ]及び[ B ]を以下のように配置し
[ A + jB ]の逆マトリックスを計算する
     [A   - B    I    0 ]
     [B    A    0    I ]
  ここで、 [ I ]は単位マトリックス
単位マトリックスi0の要素

=====================
計算結果(Bode plots)
=====================

グラフ表示
amplitude
7.89571140594e-06
0.00113762461657
0.00418555325458
0.00916922439994
0.0161174547122
0.0250706950915
0.036081541859
0.0492154106836
0.0645513892574
0.0821832894235
0.102220924981
0.124791647985
0.150042184338
0.178140819257
0.209279995286
0.243679400641
0.281589644675
0.323296641421
0.369126853002
0.419453584553
0.474704574007
0.535371187943
0.602019624364
0.675304642937
0.755986504502
0.844952021249
0.943240921306
1.05207915281
1.17292134717
1.30750551232
1.45792426335
1.62671872392
1.81700397813
2.03263916284
2.27846188905
2.56061727218
2.88702931385
3.26809204993
3.71771004296
4.25491313678
4.90645262964
5.71115307211
6.72758040519
8.04840306783
9.82941924769
12.3542990025
16.199488002
22.7425565841
36.2883297838
80.4270942114
373.918851336
66.868580027
37.1130489992
26.269733828
20.67975404
17.2813863807
15.0049314428
13.3796052675
12.1659232564
11.229221482
10.4879826959
9.88998624872
9.40024377258
8.99444338641
8.6551757881
8.36965612258
8.12829292894
7.92375822996
7.7503653886
7.60364218455
7.4800312725
7.37667585971
7.29126367853
7.22191164134
7.16707940591
7.12550382914
7.09614874624
7.07816615721
7.07086602119
7.07369263393
7.08620610755
7.10806785971
7.13902930011
7.17892310806
7.2276566485
7.28520719031
7.35161868069
7.42699990063
7.51152388496
7.6054285395
7.70901843196
7.82266777364
7.94682464991
8.08201659891
8.22885768457
8.38805726215
8.56043069718
8.74691237378
8.94857142198
9.16663071124
9.40248980751
9.65775278503
9.93426203721
10.2341395642
10.5598376601
10.9142015193
11.3005470984
11.7227586862
12.1854121991
12.6939324139
13.2547955057
13.8757928211
14.5663785708
15.3381342547
16.2053981616
17.1861325781
18.3031402798
19.5858059378
21.0726466431
22.8151459754
24.8836921994
27.3770990628
30.4385025751
34.2832151263
39.2504600072
45.9066143541
55.2707764817
69.3689415523
92.8250313755
138.453032297
248.734152283
353.486250266
190.412386693
115.678486029
81.8622731239
63.1486127299
51.3651251403
43.2915001344
37.4250195896
32.9749693916
29.4869481028
26.6817024297
24.3783333973
22.4545769014
20.8248650479
19.4275391789
18.2170554064
17.1590497743
16.2271106857
15.4006076296
14.6631940465
14.0017523204
13.4056358121
12.8661147922
12.3759650679
11.9291582189
11.5206253401
11.1460747294
10.8018496912
10.484816532
10.1922755354
9.92188960876
9.67162664905
9.4397126568
9.22459334025
9.02490247916
8.83943571084
8.66712869585
8.50703884552
8.35832996451
8.22025929423
8.09216654581
7.97346459153
7.86363154759
7.76220403108
7.66877141469
7.58297093492
7.50448353615
7.43303035437
7.36836976228
7.31029491241
7.2586317274
7.21323729766
7.17399865577
7.14083190605
7.11368169498
7.09252101609
7.0773513501
7.06820314853
7.06513667697
7.06824324281
7.0776468418
7.09350626885
7.11601775174
7.14541818156
7.181989033
7.22606109048
7.27802012499
7.33831370253
7.40745935065
7.48605436765
7.57478763356
7.674453879
7.78597099416
7.91040112686
8.04897654001
8.20313149613
8.37454183919
8.56517449616
8.77734988439
9.01382128265
9.27787674409
9.57347131819
9.90540054561
10.2795309337
10.7031102814
11.1851917328
11.7372227118
12.3738775719
13.1142582025
13.9836631669
15.0162576373
16.2592096045
17.7792810388
19.6736442476
22.0881333382
25.2486239409
29.5142390169
35.4556362612
43.881592339
55.2062500192
65.8109349689
64.94116185
52.9474396589
40.8236541086
31.9773065463
25.8045667853
21.401142184
18.1517292712
15.6754665803
13.735196112
12.1788493823
10.9056109819
9.84648375635
8.95286877875
8.18964975343
7.53087418311
6.95697635607
6.45294312321
6.00707244698
5.61011437679
5.25466463987
4.93472873471
4.64540339042
4.38264027888
4.14306832637
phase
-0.000720002273925
-0.0086439310064
-0.0165877101688
-0.0245696811312
-0.0326084614015
-0.0407230825964
-0.0489331354478
-0.0572589244437
-0.0657216349989
-0.0743435164354
-0.0831480845567
-0.092160348241
-0.101407065296
-0.110917033845
-0.120721426827
-0.130854178836
-0.141352436653
-0.152257087488
-0.163613382445
-0.17547167718
-0.18788831757
-0.200926705875
-0.214658593013
-0.229165656131
-0.244541438893
-0.26089375681
-0.278347704193
-0.297049447033
-0.317171053562
-0.338916710663
-0.362530814511
-0.388308630821
-0.416610531375
-0.447881290862
-0.482676676115
-0.521700760643
-0.56585937731
-0.616338486389
-0.674722151334
-0.743175626386
-0.824739728798
-0.923824303012
-1.0470778137
-1.20501616948
-1.41531565809
-1.71015989476
-2.15496343245
-2.90615069831
-4.45339103254
-9.50108743954
-132.650596785
-172.764589344
-176.165939886
-177.407946118
-178.053057256
-178.4496584
-178.719282154
-178.915385562
-179.065158948
-179.183895479
-179.280858522
-179.361988726
-179.431273052
-179.491488606
-179.544630813
-179.592171893
-179.635223261
-179.674641081
-179.711096937
-179.745126362
-179.777162943
-179.80756277
-179.836622295
-179.864591586
-179.891684336
-179.918085508
-179.943957283
-179.969443732
-179.994674545
179.980306847
179.955241205
179.930100789
179.904788013
179.879208813
179.853271294
179.826884501
179.799957274
179.77239716
179.74410933
179.714995505
179.684952831
179.653872699
179.621639468
179.588129065
179.553207419
179.516728698
179.478533284
179.438445441
179.39627059
179.351792114
179.304767555
179.254924094
179.201953105
179.14550355
179.085173937
179.020502408
178.950954467
178.87590762
178.79463201
178.706265731
178.609783061
178.503953099
178.387285247
178.257956385
178.113712133
177.951730767
177.768432223
177.559204471
177.318002375
177.036743958
176.704373908
176.30535917
175.81717066
175.205855739
174.417776071
173.363007215
171.878691216
169.637432599
165.875557913
158.360120439
137.872153466
74.7024008092
31.6947687008
18.8169314749
13.327100395
10.338039275
8.46583613373
7.18427277875
6.2517535143
5.5422725478
4.98380380883
4.5322356545
4.15905823751
3.84503213417
3.57670563474
3.34439096545
3.14093348164
2.96093379156
2.80023969895
2.65560479284
2.52445324185
2.40471415922
2.29470266207
2.19303295596
2.09855381405
2.01029999213
1.92745516415
1.84932330705
1.77530636393
1.70488662899
1.63761272263
1.57308832419
1.51096304242
1.45092495725
1.39269447841
1.33601924877
1.2806698818
1.22643636846
1.17312502398
1.12055587138
1.06856037924
1.01697948693
0.965661862795
0.914462350392
0.863240565306
0.81185961087
0.760184885608
0.70808295869
0.655420492239
0.602063191227
0.547874762899
0.492715868384
0.436443049317
0.378907612
0.319954450812
0.259420791298
0.197134831453
0.132914257247
0.0665646051895
-0.00212255935851
-0.0733716845436
-0.147425537874
-0.224547826307
-0.305026191242
-0.38917565139
-0.477342581908
-0.569909337519
-0.667299651756
-0.769984975343
-0.878491956203
-0.993411314122
-1.11540842848
-1.2452360425
-1.38374959894
-1.53192586971
-1.69088573849
-1.86192226039
-2.04653548294
-2.24647600798
-2.46379996305
-2.70093902069
-2.9607904885
-3.24683449644
-3.56328825451
-3.91531175989
-4.30928604425
-4.75319548205
-5.2571622515
-5.83420800997
-6.50136292934
-7.28131985405
-8.20496940648
-9.3154064855
-10.6744872816
-12.3739954379
-14.5555312536
-17.4477447522
-21.4397153769
-27.2316290929
-36.1392823498
-50.5424783994
-73.1723071014
-100.994087798
-123.767248897
-138.290309948
-147.267291402
-153.098026223
-157.112603236
-160.018546376
-162.208649474
-163.913528122
-165.275879974
-166.38813295
-167.312538611
-168.092443852
-168.758905118
-169.334727301
-169.837017921
-170.278852904
-170.67039293
-171.019649822
-171.333024127
-171.615689536
-171.87187258
-172.105059351
-172.318150485
impulse response
0.00446356955578
-0.00319627239494
-0.00333685213167
-0.00628546435168
0.00899072241933
-0.00340828598885
-0.0081052287268
0.000721449976954
-0.000257432386798
0.00491285820953
-0.00732640623936
-0.000794439822895
0.00933091645268
-0.00059645091729
0.000267380213599
-0.00186447426776
0.00625277377963
0.00611491027819
-0.00835519692834
0.00135656290383
0.00174265638328
0.00236208495753
-0.00271027751521
-0.00578145998038
0.00726679763845
-0.000478310514041
-0.00391737639333
-0.00268332568584
-0.000610782946884
0.00511972608645
-0.00457459839707
-0.00188323329383
0.00617233882617
0.000724688726919
0.00188426638931
-0.00572652053473
0.00431253951819
0.00523267104635
-0.00429894440663
-0.000705100835462
-0.001332885982
0.00507814506935
-0.000967990734439
-0.00546785245463
0.00410740385805
0.000767001109277
4.49752670832e-06
-0.00344203489427
-0.00245649216849
0.00685823882486
-0.00381016896233
-0.0021269518535
0.000655633754925
0.00200273916738
0.00265455290729
-0.00394909867855
0.0021471470212
0.00349614612453
-0.000544406434434
-0.000964983319136
-0.0027574369398
0.00371229434177
0.000494172373897
-0.00210227877357
0.00435188406305
-0.000832652326615
0.00226986269631
-0.00389450234915
-0.00293093357916
0.00493104259483
-0.00291307321079
-0.000903226702995
-0.00166436901079
0.00144592881401
0.00357675334452
-0.00396591701783
0.00178215330694
0.001654713195
0.00095695481265
-3.88483405915e-05
-0.00480890680707
0.00497419627723
0.000188061603805
-0.00208388646961
0.000886874597946
-0.000929833113915
0.00302410154747
-0.00212208691549
-0.00223845429826
0.00248526441058
-0.00109340127301
0.000295265410557
-0.00274445635165
0.000696044082419
0.00209878739499
-0.000672696864677
0.0022658885811
-0.000542339985557
0.00124517608898
0.000551772428702
-0.00422794204089
0.00263383827728
-0.00026798246937
-0.000113094496386
0.000187247872793
-0.00160496427078
0.00322983613756
-0.00114133968235
-0.000805239011347
0.000474770764025
-0.000125942488468
0.000856750335967
-0.00339804594207
0.000675030716964
0.00163119370053
-0.000940108251882
0.00130617311522
-0.0014716736633
0.00135375388389
0.000444204923998
-0.00241982799298
0.00113474205361
-0.000644844019275
0.000971556186364
-0.000407204695718
-0.00088230557283
0.00100574345489
0.000694540798849
0.00254218330078
0.00123084116607
-0.00545261897035
0.00271068019243
-0.00391823383572
0.000947839546968
-0.000892471262604
-0.00325715382848
0.00521262251014
-0.00298683364186
0.000901608620964
0.000432643883599
-0.00116875458695
0.00414646713937
-0.00298271728766
0.00134699963597
0.00165989892991
-0.0011498511361
0.00295674610303
-0.0034509973187
0.00312733834745
0.000350335091589
-0.00285770210236
0.00106143793118
-0.00336011353826
0.00229365421131
-0.00157264485378
-0.00223872401998
0.00311857371278
-0.00168579565483
0.000969736033664
-0.000707696270559
-0.000564872437299
0.00434612877685
-0.00456272534271
0.00159993785557
-0.00016767121253
6.55987941378e-06
0.00181912864087
-0.00312576548274
0.00385797386213
-0.000102229752801
-0.00144155939418
0.000799835533471
-0.00256467323557
0.00268993660621
-0.00140639084796
-0.00121670885533
0.0029793710479
-0.00190058535924
0.00209232204454
-0.0020763167164
0.000235535620455
0.00231874772578
-0.00229054636723
0.000724097302422
-0.00125025732707
0.00106383316009
0.00113997432434
-0.00202846266872
0.00228922908796
-0.000198041564864
0.000102427455025
-7.70873485619e-05
-0.00270604866662
0.00440111394747
-0.00415979449251
-0.000614127008702
0.00200141243695
-0.00208128265918
0.00177003394181
-0.00273654714437
0.00181765309578
0.0018486185928
-0.00307414649903
0.00165302586345
-0.00153109692106
0.00182391766613
0.000353964176368
-0.00146096341146
0.0044735648763
-0.00126162982158
0.000683308378602
-0.000504618374244
-0.00144928695072
0.00277922056125
-0.00250724816785
-8.90911838227e-05
0.000441117109555
-0.000652052759819
0.00148330047311
-0.00211587674165
0.00139017808995
0.000529752014481
-0.000973470140621
0.000424376916107
-0.00266350351395
0.0028894445533
-0.000985400711309
-0.00193666039092
0.00271063365226
-0.0013463702631
0.00105744924204
-0.00100864552667
-0.000790518953389
0.00256455721644
-0.00234466683969
0.00050477158014
-0.000371361344887
0.000169177693432
0.00105246600224
-0.00099930529555
0.00236667102093
0.000138156763562
-0.000803579328334
0.000320794404395
-0.00187627587027
0.00155965269475
-0.000730826423638
-0.000507138448354
0.00130173693383
-0.000801067544825
0.000896372311045
-0.000698341402867
-0.000324504174944
0.000509617874466
-0.000845331364529
0.0