[Napomene o programskom kôdu u Sage-u:
Ćelije u kojima je prvi redak %auto ne trebate izvoditi ( evaluate ); one se izvode „same” pri otvaranju radnoga lista.Funkcije, programska realizacija kojih nije bitna za razumijevanje gradiva Mehanike 1., „skrivene” su.]
|
Mehanika 1.
Statički određeni ravninski rešetkasti nosači
[Ovaj radni list sadrži program Truss_2D za izračunavanje sila u štapovima statički određenih ravninskih rešetkastih nosača i primjere njegove primjene. Teorijske natuknice možete naći u datoteci Jednostavni statički određeni rešetkasti nosači u Bilješkama i skicama s predavanja iz Mehanike 1.
Primjer 1.
Opis rešetke:
Zadavanje čvorova:
{ oznaka0: (x0, y0), oznaka1: (x1, y1), oznaka2: (x2, y2), ... }
Zadavanje štapova:
{ oznaka0: (čvor00, čvor10), oznaka1: (čvor01, čvor11), oznaka2: (čvor02, čvor12), ... }
Zadavanje ležajeva:
[ oznaka0, oznaka1, ... ]
Zadavanje opterećenja u čvorovima:
{ oznaka0: (Fx0, Fy0), oznaka1: (Fx1, Fy1), oznaka2: (Fx2, Fy2), ... }
joints: 0: (0.000000000000000, 0.000000000000000) 1: (3.00000000000000, 0.000000000000000) 2: (6.00000000000000, 0.000000000000000) 3: (1.50000000000000, 2.50000000000000) 4: (4.50000000000000, 2.50000000000000) 5: (-0.500000000000000, 0.000000000000000) 6: (0.000000000000000, -0.500000000000000) 7: (6.00000000000000, -0.500000000000000) bars: 0: (0, 1) 1: (1, 2) 2: (0, 3) 3: (3, 1) 4: (1, 4) 5: (4, 2) 6: (3, 4) 7: (5, 0) 8: (6, 0) 9: (7, 2) supports: [5, 6, 7] loads: 1: (0.000000000000000, -100.000000000000) joints: 0: (0.000000000000000, 0.000000000000000) 1: (3.00000000000000, 0.000000000000000) 2: (6.00000000000000, 0.000000000000000) 3: (1.50000000000000, 2.50000000000000) 4: (4.50000000000000, 2.50000000000000) 5: (-0.500000000000000, 0.000000000000000) 6: (0.000000000000000, -0.500000000000000) 7: (6.00000000000000, -0.500000000000000) bars: 0: (0, 1) 1: (1, 2) 2: (0, 3) 3: (3, 1) 4: (1, 4) 5: (4, 2) 6: (3, 4) 7: (5, 0) 8: (6, 0) 9: (7, 2) supports: [5, 6, 7] loads: 1: (0.000000000000000, -100.000000000000) |
Grafički prikaz rešetke:
![]() |
Izračunavanje sila u štapovima:
truss2D (joints, bars, supports, loads) — rezultat: rječnik s komponentama oznakai: silai
0: 30.0 1: 30.0 2: -58.3095189485 3: 58.3095189485 4: 58.3095189485 5: -58.3095189485 6: -60.0 7: -0.0 8: -50.0 9: -50.0 0: 30.0 1: 30.0 2: -58.3095189485 3: 58.3095189485 4: 58.3095189485 5: -58.3095189485 6: -60.0 7: -0.0 8: -50.0 9: -50.0 |
Grafički prikaz rješenja:
![]() |
Rješavanje u koracima:
others (a1, a2) — rezultat: komponente liste ili rječnika a2 koje nisu u listi ili rječniku a1
[0, 1, 2, 3, 4] [0, 1, 2, 3, 4] |
2n−b=0
n — broj slobodnih čvorova
b — broj štapova
2 * 5 - 10 == 0 2 * 5 - 10 == 0 |
(1.0000.00000.51450.00000.00000.00000.0000−1.0000.00000.00000.00000.00000.85750.00000.00000.00000.00000.0000−1.0000.0000−1.0001.0000.0000−0.51450.51450.00000.00000.00000.00000.00000.00000.00000.00000.85750.85750.00000.00000.00000.00000.00000.0000−1.0000.00000.00000.0000−0.51450.00000.00000.00000.00000.00000.00000.00000.00000.00000.85750.00000.00000.0000−1.0000.00000.0000−0.51450.51450.00000.00001.0000.00000.00000.00000.00000.0000−0.8575−0.85750.00000.00000.00000.00000.00000.00000.00000.00000.00000.0000−0.51450.5145−1.0000.00000.00000.00000.00000.00000.00000.0000−0.8575−0.85750.00000.00000.00000.0000)
|
(0.0000,0.0000,−0.0000,100.0,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000)
|
dict_bar_force (bars, forces) — rezultat: rječnik s komponentama oznakai: silai
(29.999999999999996, 29.999999999999996, -58.309518948453004, 58.30951894845301, 58.30951894845301, -58.30951894845301, -60.0, -0.0, -49.99999999999999, -49.99999999999999) (29.999999999999996, 29.999999999999996, -58.309518948453004, 58.30951894845301, 58.30951894845301, -58.30951894845301, -60.0, -0.0, -49.99999999999999, -49.99999999999999) |
0: 30.0 1: 30.0 2: -58.3095189485 3: 58.3095189485 4: 58.3095189485 5: -58.3095189485 6: -60.0 7: -0.0 8: -50.0 9: -50.0 0: 30.0 1: 30.0 2: -58.3095189485 3: 58.3095189485 4: 58.3095189485 5: -58.3095189485 6: -60.0 7: -0.0 8: -50.0 9: -50.0 |
Primjer 2.
joints: 0: (1.60000000000000, 3.00000000000000) 1: (4.80000000000000, 3.00000000000000) 2: (8.00000000000000, 3.00000000000000) 3: (0.000000000000000, 0.000000000000000) 4: (3.20000000000000, 0.000000000000000) 5: (6.40000000000000, 0.000000000000000) 6: (9.60000000000000, 0.000000000000000) 7: (-0.500000000000000, 0.000000000000000) 8: (0.000000000000000, -0.500000000000000) 9: (6.40000000000000, -0.500000000000000) bars: 0: (0, 1) 1: (1, 2) 2: (3, 0) 3: (0, 4) 4: (4, 1) 5: (1, 5) 6: (5, 2) 7: (2, 6) 8: (3, 4) 9: (4, 5) 10: (5, 6) 11: (7, 3) 12: (3, 8) 13: (9, 5) supports: [7, 8, 9] loads: 1: (0.000000000000000, -22.0000000000000) 6: (22.4000000000000, 16.8000000000000) joints: 0: (1.60000000000000, 3.00000000000000) 1: (4.80000000000000, 3.00000000000000) 2: (8.00000000000000, 3.00000000000000) 3: (0.000000000000000, 0.000000000000000) 4: (3.20000000000000, 0.000000000000000) 5: (6.40000000000000, 0.000000000000000) 6: (9.60000000000000, 0.000000000000000) 7: (-0.500000000000000, 0.000000000000000) 8: (0.000000000000000, -0.500000000000000) 9: (6.40000000000000, -0.500000000000000) bars: 0: (0, 1) 1: (1, 2) 2: (3, 0) 3: (0, 4) 4: (4, 1) 5: (1, 5) 6: (5, 2) 7: (2, 6) 8: (3, 4) 9: (4, 5) 10: (5, 6) 11: (7, 3) 12: (3, 8) 13: (9, 5) supports: [7, 8, 9] loads: 1: (0.000000000000000, -22.0000000000000) 6: (22.4000000000000, 16.8000000000000) |
![]() |
2 * 7 - 14 == 0 2 * 7 - 14 == 0 |
0: -14.8266666667 1: -17.92 2: -15.7533333333 3: 15.7533333333 4: -15.7533333333 5: -9.18 6: 19.04 7: -19.04 8: 29.8133333333 9: 44.64 10: 31.36 11: 22.4 12: -13.9 13: 8.7 0: -14.8266666667 1: -17.92 2: -15.7533333333 3: 15.7533333333 4: -15.7533333333 5: -9.18 6: 19.04 7: -19.04 8: 29.8133333333 9: 44.64 10: 31.36 11: 22.4 12: -13.9 13: 8.7 |
![]() |
Primjer 2., još jednom
joints: 0: (1.60000000000000, 3.00000000000000) 1: (4.80000000000000, 3.00000000000000) 2: (8.00000000000000, 3.00000000000000) 3: (0.000000000000000, 0.000000000000000) 4: (3.20000000000000, 0.000000000000000) 5: (6.40000000000000, 0.000000000000000) 6: (9.60000000000000, 0.000000000000000) 9: (6.40000000000000, -0.500000000000000) bars: 0: (0, 1) 1: (1, 2) 2: (3, 0) 3: (0, 4) 4: (4, 1) 5: (1, 5) 6: (5, 2) 7: (2, 6) 8: (3, 4) 9: (4, 5) 10: (5, 6) 13: (9, 5) supports: [3, 9] loads: 1: (0.000000000000000, -22.0000000000000) 6: (22.4000000000000, 16.8000000000000) joints: 0: (1.60000000000000, 3.00000000000000) 1: (4.80000000000000, 3.00000000000000) 2: (8.00000000000000, 3.00000000000000) 3: (0.000000000000000, 0.000000000000000) 4: (3.20000000000000, 0.000000000000000) 5: (6.40000000000000, 0.000000000000000) 6: (9.60000000000000, 0.000000000000000) 9: (6.40000000000000, -0.500000000000000) bars: 0: (0, 1) 1: (1, 2) 2: (3, 0) 3: (0, 4) 4: (4, 1) 5: (1, 5) 6: (5, 2) 7: (2, 6) 8: (3, 4) 9: (4, 5) 10: (5, 6) 13: (9, 5) supports: [3, 9] loads: 1: (0.000000000000000, -22.0000000000000) 6: (22.4000000000000, 16.8000000000000) |
![]() |
2 * 6 - 12 == 0 2 * 6 - 12 == 0 |
0: -14.8266666667 1: -17.92 2: -15.7533333333 3: 15.7533333333 4: -15.7533333333 5: -9.18 6: 19.04 7: -19.04 8: 29.8133333333 9: 44.64 10: 31.36 13: 8.7 0: -14.8266666667 1: -17.92 2: -15.7533333333 3: 15.7533333333 4: -15.7533333333 5: -9.18 6: 19.04 7: -19.04 8: 29.8133333333 9: 44.64 10: 31.36 13: 8.7 |
![]() |
Primjer 3.
joints: 1: (0.000000000000000, 0.000000000000000) 2: (3.00000000000000, 4.00000000000000) 3: (0.000000000000000, 4.00000000000000) 4: (-6.00000000000000, 6.50000000000000) 5: (-6.00000000000000, -0.500000000000000) 6: (3.00000000000000, 0.000000000000000) 7: (10.5000000000000, 0.000000000000000) bars: 1: (1, 3) 2: (1, 2) 3: (6, 2) 4: (2, 7) 5: (3, 5) 6: (3, 4) supports: [4, 5, 6, 7] loads: 1: (-30.0000000000000, 0.000000000000000) 2: (60.0000000000000, 0.000000000000000) 3: (0.000000000000000, -90.0000000000000) joints: 1: (0.000000000000000, 0.000000000000000) 2: (3.00000000000000, 4.00000000000000) 3: (0.000000000000000, 4.00000000000000) 4: (-6.00000000000000, 6.50000000000000) 5: (-6.00000000000000, -0.500000000000000) 6: (3.00000000000000, 0.000000000000000) 7: (10.5000000000000, 0.000000000000000) bars: 1: (1, 3) 2: (1, 2) 3: (6, 2) 4: (2, 7) 5: (3, 5) 6: (3, 4) supports: [4, 5, 6, 7] loads: 1: (-30.0000000000000, 0.000000000000000) 2: (60.0000000000000, 0.000000000000000) 3: (0.000000000000000, -90.0000000000000) |
![]() |
2 * 3 - 6 == 0 2 * 3 - 6 == 0 |
1: -40.0 2: 50.0 3: -24.0 4: -34.0 5: -53.5714285714 6: 46.4285714286 1: -40.0 2: 50.0 3: -24.0 4: -34.0 5: -53.5714285714 6: 46.4285714286 |
![]() |
Primjer 4.
Tvorba rječnika čvorova:
make_joints (j0, generator)
nastaje niz čvorova s koordinatama (x0, y0), (x0 + dx, y0 + dz), (x0 + 2⋅dx, y0 + 2⋅dz), ..., (x0 + (nj-1)⋅dx, y0 + (nj-1)⋅dy)
0: [0.000000000000000, 0.000000000000000] 1: [1.50000000000000, 0.000000000000000] 2: [3.00000000000000, 0.000000000000000] 3: [4.50000000000000, 0.000000000000000] 4: [6.00000000000000, 0.000000000000000] 5: [7.50000000000000, 0.000000000000000] 6: [9.00000000000000, 0.000000000000000] 7: [10.5000000000000, 0.000000000000000] 8: [12.0000000000000, 0.000000000000000] 9: [13.5000000000000, 0.000000000000000] 10: [15.0000000000000, 0.000000000000000] 11: [0.000000000000000, 2.00000000000000] 12: [1.50000000000000, 2.00000000000000] 13: [3.00000000000000, 2.00000000000000] 14: [4.50000000000000, 2.00000000000000] 15: [6.00000000000000, 2.00000000000000] 16: [7.50000000000000, 2.00000000000000] 17: [9.00000000000000, 2.00000000000000] 18: [10.5000000000000, 2.00000000000000] 19: [12.0000000000000, 2.00000000000000] 20: [13.5000000000000, 2.00000000000000] 21: [15.0000000000000, 2.00000000000000] 22: (0.000000000000000, -0.500000000000000) 23: (15.0000000000000, -0.500000000000000) 24: (-0.500000000000000, 2.00000000000000) 0: [0.000000000000000, 0.000000000000000] 1: [1.50000000000000, 0.000000000000000] 2: [3.00000000000000, 0.000000000000000] 3: [4.50000000000000, 0.000000000000000] 4: [6.00000000000000, 0.000000000000000] 5: [7.50000000000000, 0.000000000000000] 6: [9.00000000000000, 0.000000000000000] 7: [10.5000000000000, 0.000000000000000] 8: [12.0000000000000, 0.000000000000000] 9: [13.5000000000000, 0.000000000000000] 10: [15.0000000000000, 0.000000000000000] 11: [0.000000000000000, 2.00000000000000] 12: [1.50000000000000, 2.00000000000000] 13: [3.00000000000000, 2.00000000000000] 14: [4.50000000000000, 2.00000000000000] 15: [6.00000000000000, 2.00000000000000] 16: [7.50000000000000, 2.00000000000000] 17: [9.00000000000000, 2.00000000000000] 18: [10.5000000000000, 2.00000000000000] 19: [12.0000000000000, 2.00000000000000] 20: [13.5000000000000, 2.00000000000000] 21: [15.0000000000000, 2.00000000000000] 22: (0.000000000000000, -0.500000000000000) 23: (15.0000000000000, -0.500000000000000) 24: (-0.500000000000000, 2.00000000000000) |
Tvorba rječnika štapova:
make_bars (b0, generator)
nastaje niz štapova sa čvorovima oznake kojih su (a0, b0), (a0 + as, b0 + bs), (a0 + 2⋅as, b0 + 2⋅bs), ..., (a0 + (nb-1)⋅as, b0 + (nb-1)⋅bs)
0: [0, 1] 1: [1, 2] 2: [2, 3] 3: [3, 4] 4: [4, 5] 5: [5, 6] 6: [6, 7] 7: [7, 8] 8: [8, 9] 9: [9, 10] 10: [11, 12] 11: [12, 13] 12: [13, 14] 13: [14, 15] 14: [15, 16] 15: [16, 17] 16: [17, 18] 17: [18, 19] 18: [19, 20] 19: [20, 21] 20: [0, 11] 21: [1, 12] 22: [2, 13] 23: [3, 14] 24: [4, 15] 25: [5, 16] 26: [6, 17] 27: [7, 18] 28: [8, 19] 29: [9, 20] 30: [10, 21] 31: [0, 12] 32: [1, 13] 33: [2, 14] 34: [3, 15] 35: [4, 16] 36: [5, 17] 37: [6, 18] 38: [7, 19] 39: [8, 20] 40: [9, 21] 41: (22, 0) 42: (23, 10) 43: (24, 11) 0: [0, 1] 1: [1, 2] 2: [2, 3] 3: [3, 4] 4: [4, 5] 5: [5, 6] 6: [6, 7] 7: [7, 8] 8: [8, 9] 9: [9, 10] 10: [11, 12] 11: [12, 13] 12: [13, 14] 13: [14, 15] 14: [15, 16] 15: [16, 17] 16: [17, 18] 17: [18, 19] 18: [19, 20] 19: [20, 21] 20: [0, 11] 21: [1, 12] 22: [2, 13] 23: [3, 14] 24: [4, 15] 25: [5, 16] 26: [6, 17] 27: [7, 18] 28: [8, 19] 29: [9, 20] 30: [10, 21] 31: [0, 12] 32: [1, 13] 33: [2, 14] 34: [3, 15] 35: [4, 16] 36: [5, 17] 37: [6, 18] 38: [7, 19] 39: [8, 20] 40: [9, 21] 41: (22, 0) 42: (23, 10) 43: (24, 11) |
|
![]() |
2 * 22 - 44 == 0 2 * 22 - 44 == 0 |
0: 17.4 1: 22.8 2: 16.2 3: 9.6 4: 3.0 5: -3.6 6: 3.3 7: 10.2 8: 5.1 9: -2.6645352591e-15 10: 0.0 11: -5.4 12: -10.8 13: -4.2 14: 2.4 15: 9.0 16: 15.6 17: 8.7 18: -10.2 19: -5.1 20: -0.0 21: 7.2 22: -8.8 23: -8.8 24: -8.8 25: -8.8 26: 9.2 27: 9.2 28: -6.8 29: -6.8 30: -6.8 31: -9.0 32: -9.0 33: 11.0 34: 11.0 35: 11.0 36: 11.0 37: -11.5 38: -11.5 39: 8.5 40: 8.5 41: -7.2 42: -6.8 43: -0.0 0: 17.4 1: 22.8 2: 16.2 3: 9.6 4: 3.0 5: -3.6 6: 3.3 7: 10.2 8: 5.1 9: -2.6645352591e-15 10: 0.0 11: -5.4 12: -10.8 13: -4.2 14: 2.4 15: 9.0 16: 15.6 17: 8.7 18: -10.2 19: -5.1 20: -0.0 21: 7.2 22: -8.8 23: -8.8 24: -8.8 25: -8.8 26: 9.2 27: 9.2 28: -6.8 29: -6.8 30: -6.8 31: -9.0 32: -9.0 33: 11.0 34: 11.0 35: 11.0 36: 11.0 37: -11.5 38: -11.5 39: 8.5 40: 8.5 41: -7.2 42: -6.8 43: -0.0 |
![]() |
Primjer 5.
joints: 0: (0, 0) 1: (5, 1.00000000000000) 2: (10.0000000000000, 0.000000000000000) 3: (1.00000000000000, 3.00000000000000) 4: (9.00000000000000, 3.00000000000000) 5: (5.00000000000000, 5.00000000000000) 6: (-1.00000000000000, 0.000000000000000) 7: (0.000000000000000, -1.00000000000000) 8: (10.0000000000000, -1.00000000000000) bars: 0: (0, 1) 1: (1, 2) 2: (0, 3) 3: (3, 5) 4: (5, 4) 5: (4, 2) 6: (1, 5) 7: (3, 2) 8: (0, 4) 9: (0, 6) 10: (0, 7) 11: (2, 8) supports: [6, 7, 8] loads: 1: (0.000000000000000, -50.0000000000000) joints: 0: (0, 0) 1: (5, 1.00000000000000) 2: (10.0000000000000, 0.000000000000000) 3: (1.00000000000000, 3.00000000000000) 4: (9.00000000000000, 3.00000000000000) 5: (5.00000000000000, 5.00000000000000) 6: (-1.00000000000000, 0.000000000000000) 7: (0.000000000000000, -1.00000000000000) 8: (10.0000000000000, -1.00000000000000) bars: 0: (0, 1) 1: (1, 2) 2: (0, 3) 3: (3, 5) 4: (5, 4) 5: (4, 2) 6: (1, 5) 7: (3, 2) 8: (0, 4) 9: (0, 6) 10: (0, 7) 11: (2, 8) supports: [6, 7, 8] loads: 1: (0.000000000000000, -50.0000000000000) |
![]() |
2 * 6 - 12 == 0 2 * 6 - 12 == 0 |
0: -21.24591464 1: -21.24591464 2: -32.9403922934 3: -46.5847495312 4: -46.5847495312 5: -32.9403922934 6: 41.6666666667 7: 32.9403922934 8: 32.9403922934 9: -2.26933941565e-15 10: -25.0 11: -25.0 0: -21.24591464 1: -21.24591464 2: -32.9403922934 3: -46.5847495312 4: -46.5847495312 5: -32.9403922934 6: 41.6666666667 7: 32.9403922934 8: 32.9403922934 9: -2.26933941565e-15 10: -25.0 11: -25.0 |
![]() |
loads: 2: (50, 0) loads: 2: (50, 0) |
![]() |
0: 42.4918292799 1: 42.4918292799 2: -13.1761569174 3: -18.6338998125 4: -18.6338998125 5: -13.1761569174 6: 16.6666666667 7: 13.1761569174 8: 13.1761569174 9: 50.0 10: 1.2490009027e-15 11: -1.2490009027e-15 0: 42.4918292799 1: 42.4918292799 2: -13.1761569174 3: -18.6338998125 4: -18.6338998125 5: -13.1761569174 6: 16.6666666667 7: 13.1761569174 8: 13.1761569174 9: 50.0 10: 1.2490009027e-15 11: -1.2490009027e-15 |
![]() |
Primjer 6.
Točna aritmetika:
joints: 0: (0, 0) 1: (5, -5/3*sqrt(3)) 2: (10, 0) 3: (0, 10/3*sqrt(3)) 4: (10, 10/3*sqrt(3)) 5: (5, 5*sqrt(3)) 6: (-1, 0) 7: (0, -1) 8: (10, -1) bars: 0: (0, 1) 1: (1, 2) 2: (0, 3) 3: (3, 5) 4: (5, 4) 5: (4, 2) 6: (1, 5) 7: (3, 2) 8: (0, 4) 9: (0, 6) 10: (0, 7) 11: (2, 8) supports: [6, 7, 8] loads: 1: (0, -50) joints: 0: (0, 0) 1: (5, -5/3*sqrt(3)) 2: (10, 0) 3: (0, 10/3*sqrt(3)) 4: (10, 10/3*sqrt(3)) 5: (5, 5*sqrt(3)) 6: (-1, 0) 7: (0, -1) 8: (10, -1) bars: 0: (0, 1) 1: (1, 2) 2: (0, 3) 3: (3, 5) 4: (5, 4) 5: (4, 2) 6: (1, 5) 7: (3, 2) 8: (0, 4) 9: (0, 6) 10: (0, 7) 11: (2, 8) supports: [6, 7, 8] loads: 1: (0, -50) |
![]() |
2 * 6 - 12 == 0 2 * 6 - 12 == 0 |
Traceback (click to the left of this block for traceback) ... numpy.linalg.linalg.LinAlgError: singular matrix Traceback (most recent call last): File "<stdin>", line 1, in <module> File "_sage_input_49.py", line 10, in <module> exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("YmFyX2ZvcmNlcyA9IHRydXNzMkQgKGpvaW50cywgYmFycywgc3VwcG9ydHMsIGxvYWRzKQpwcmludF9kaWN0IChiYXJfZm9yY2VzKQ=="),globals())+"\\n"); execfile(os.path.abspath("___code___.py")) File "", line 1, in <module> File "/tmp/tmp4PU8IR/___code___.py", line 2, in <module> bar_forces = truss2D (joints, bars, supports, loads) File "<string>", line 82, in truss2D File "sage/matrix/matrix_double_dense.pyx", line 1758, in sage.matrix.matrix_double_dense.Matrix_double_dense.solve_right (/home/sage/SageMath/src/build/cythonized/sage/matrix/matrix_double_dense.c:13465) File "/home/sage/SageMath/local/lib/python2.7/site-packages/scipy/linalg/basic.py", line 103, in solve raise LinAlgError("singular matrix") numpy.linalg.linalg.LinAlgError: singular matrix |
Pseudorealna aritmetika:
joints: 0: (0.000000000000000, 0.000000000000000) 1: (5.00000000000000, -2.88675000000000) 2: (10.0000000000000, 0.000000000000000) 3: (0.000000000000000, 5.77350000000000) 4: (10.0000000000000, 5.77350000000000) 5: (5.00000000000000, 8.66025000000000) 6: (-1.00000000000000, 0.000000000000000) 7: (0.000000000000000, -1.00000000000000) 8: (10.0000000000000, -1.00000000000000) joints: 0: (0.000000000000000, 0.000000000000000) 1: (5.00000000000000, -2.88675000000000) 2: (10.0000000000000, 0.000000000000000) 3: (0.000000000000000, 5.77350000000000) 4: (10.0000000000000, 5.77350000000000) 5: (5.00000000000000, 8.66025000000000) 6: (-1.00000000000000, 0.000000000000000) 7: (0.000000000000000, -1.00000000000000) 8: (10.0000000000000, -1.00000000000000) |
0: -1.08397709278e+17 1: -1.08397709278e+17 2: -1.08397671373e+17 3: -1.08397709278e+17 4: -1.08397709278e+17 5: -1.08397671373e+17 6: 1.08397671373e+17 7: 1.08397709278e+17 8: 1.08397709278e+17 9: 1.64882056843e-15 10: -27.7926204058 11: -22.2073795942 0: -1.08397709278e+17 1: -1.08397709278e+17 2: -1.08397671373e+17 3: -1.08397709278e+17 4: -1.08397709278e+17 5: -1.08397671373e+17 6: 1.08397671373e+17 7: 1.08397709278e+17 8: 1.08397709278e+17 9: 1.64882056843e-15 10: -27.7926204058 11: -22.2073795942 |
|
Primjer 7:
joints: 0: (0, 0) 1: (5, 0) 2: (10, 0) 3: (0, 4) 4: (10, 4) 5: (5, 4) 6: (-1, 0) 7: (0, -1) 8: (10, -1) bars: 0: (0, 1) 1: (1, 2) 2: (0, 3) 3: (3, 5) 4: (5, 4) 5: (4, 2) 6: (1, 5) 7: (3, 2) 8: (0, 4) 9: (0, 6) 10: (0, 7) 11: (2, 8) supports: [6, 7, 8] loads: 1: (0, -50) joints: 0: (0, 0) 1: (5, 0) 2: (10, 0) 3: (0, 4) 4: (10, 4) 5: (5, 4) 6: (-1, 0) 7: (0, -1) 8: (10, -1) bars: 0: (0, 1) 1: (1, 2) 2: (0, 3) 3: (3, 5) 4: (5, 4) 5: (4, 2) 6: (1, 5) 7: (3, 2) 8: (0, 4) 9: (0, 6) 10: (0, 7) 11: (2, 8) supports: [6, 7, 8] loads: 1: (0, -50) |
![]() |
2 * 6 - 12 == 0 2 * 6 - 12 == 0 |
Traceback (click to the left of this block for traceback) ... numpy.linalg.linalg.LinAlgError: singular matrix Traceback (most recent call last): File "<stdin>", line 1, in <module> File "_sage_input_56.py", line 10, in <module> exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("YmFyX2ZvcmNlcyA9IHRydXNzMkQgKGpvaW50cywgYmFycywgc3VwcG9ydHMsIGxvYWRzKQpwcmludF9kaWN0IChiYXJfZm9yY2VzKQ=="),globals())+"\\n"); execfile(os.path.abspath("___code___.py")) File "", line 1, in <module> File "/tmp/tmpAwWN1c/___code___.py", line 2, in <module> bar_forces = truss2D (joints, bars, supports, loads) File "<string>", line 82, in truss2D File "sage/matrix/matrix_double_dense.pyx", line 1758, in sage.matrix.matrix_double_dense.Matrix_double_dense.solve_right (/home/sage/SageMath/src/build/cythonized/sage/matrix/matrix_double_dense.c:13465) File "/home/sage/SageMath/local/lib/python2.7/site-packages/scipy/linalg/basic.py", line 103, in solve raise LinAlgError("singular matrix") numpy.linalg.linalg.LinAlgError: singular matrix |
|