Решите Матрицу для неизвестных в Python / Numpy / Scipy

Мне нужно решить эту систему матриц для неизвестных u4,f1,f2,f3,f5 а также f6 для конкретного FEA проблема. Я сгенерировал матрицу, содержащую числа с моим входом, и мне нужно решить ее для этих известных.

  • Код должен действовать следующим образом:

    0 + 0 + 0 + 150*1000*u4 + 0 + 0 = −1732

следовательно, u4=-0.01154

  • поэтому другие неизвестные могут быть обнаружены следующим образом:

    0 + 0 + 0 + (43:4)(−0:0115) 1000 + 0 + 0 = f1

следовательно f1=-500 и так далее....

Я новичок и знаком с основами Numpy и Python ООП. Пожалуйста, помогите мне настроить код для этого.

Матрицы должны быть решены

2 ответа

Вот:

from __future__ import division
from numpy import asarray as ar,sum as sums

A = ar([[25,-43.3,-25,43.3,0,0],
        [-43.3,75,43.3,-75,0,0],
        [-25,43.3,50,0,-25,-43.3],
        [43.3,-75,0,150,-43.3,-75],
        [0,0,-25,-43.3,25,43.3],
        [0,0,-43.3,-75,43.3,75]])*1e3
u4 = -0.01154
B = ar([0,0,0,u4,0,0])
F = sums(A*B,axis=1)

Итак, вы будете иметь:

>>> F
array([ -499.682,   865.5  ,     0.   , -1731.   ,   499.682,   865.5  ])
In [0]: import numpy as np    

In [1]: A = np.random.rand(6,6)

In [2]: a4 = A[3,:]

In [3]: u4 = -1732/a4[3]

In [4]: f = a4*u4

In [5]: f
Out[5]: 
array([ -246.6101995 ,  -589.6732277 ,  -574.67690895, -1732.        ,
       -2592.99948033, -2383.52077134])

замещать A или хотя бы четвертый столбец a4 по вашим данным...

Другие вопросы по тегам