Итак, у меня есть это для цикла:
lisT=[]
nn=[]
hh=[]
tt=[]
matrix=np.matrix([lisT],[nn],[hh],[tt])
for t in range(5,9,1):
for h in range(9,50,1):
for n in range(1,8):
be=(b*1000)/n
i1=(512/4500)*h*t**3
i2=(1/15)*t*h**3+(192/375)*h*t**3-(24/75)*(h**2)*(t**2)-(512/1875)*t**4
i3=(1/12)*be*t**3
z1=(t+(h-(8/5)*t)+0.8*t)**2
z2=(t+0.5*(h-(8/5)*t))**2
z3=0.25*t**2
a1=(8/15)*t*h
a2=(h-(8/5)*t)*0.8*t
a3=t*be
W=(a1*z1+a2*z2+a3*z3)+i1+i2+i3
Wtot=W*n
if Wtot>Wr:
pkst=n*10*t**2
volume=(t/1000)*b*a+(1/3)*(h/1000)*(8/5)*(t/1000)*a+(4/5)*(t/1000)*((h/1000)-(8/5)*(t/1000))*a
mkst=volume*2600*1.8
Tkst=pkst+mkst
lisT.append(Tkst)
np.hstack(lisT)
nn.append(n)
np.hstack(nn)
hh.append(h)
np.hstack(hh)
tt.append(t)
np.hstack(tt)
В основном я должен найти минимальное значение
Tkst
с соответствующими значениями h, t и n. Предварительно я просто составил список Tkst и нашел минимальное значение в списке. Очевидно, я тогда не знал соответствующих значений последних переменных. Поэтому я попытался сделать матрицу, как показано выше, чтобы я мог искать минимальное значение в столбце, зная соответствующие значения. Этот цикл выдает мне следующую ошибку:
TypeError: __new__() takes from 2 to 4 positional arguments but 5 were given
Кто-нибудь знает, как решить эту проблему?