TypeError:一元“元组”的操作数类型错误

2024-10-03 04:35:24 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的代码中,我想计算Q相对于l和d的变化量,但是我得到了一个TypeError错误:一元操作数类型错误-:“tuple”如何解决这个问题

import numpy as np
import matplotlib.pyplot as plt

def plot_with_variating_D ():
    l = np.arange(1, 1.5, 0.01)
    d = np.arange(0.005, 0.015, 0.0002)
    zero=np.zeros(50)
    one=np.ones(50)
    Eb1 = 3543.75
    A1 = 1
    A2 = np.pi * (d / 2)
    A3 = np.pi
    F11 = 0
    F21 = 2 * (np.arctan(0.5 / l) * (180 / np.pi)) / 360
    F12 = (d * np.pi * F21)
    F12p = (((4 / l ** 2) + 4) ** 0.5 - 2) * (l / 2)
    F13 = F12p - F12
    F14 = 1 - F12 - F13
    F23 = 0.5
    F24 = 1 - F21 - F23
    F34 = F14 / np.pi
    rho = 0.7
    k = 0.04
    pr = 0.7
    cp = 1005
    myu = 2.4 * 10 ** -5
    alpha = 5.68 * 10 ** -5
    beta = 1 / 500
    Ra = (rho * 9.81 * beta * (500 - 293) * l) / (myu * alpha)
    Nu = 0.68 + (0.67 * Ra ** 0.25) / (1 + (0.429 / pr) ** (9 / 16)) ** (4 / 9)
    h = Nu * k
    J1 = 3543.75 + 0.42 * h * (500 - 295)

    a = np.array([[F12,F13, zero], [A2*F23,-(A2*F23+F13,zero)], [-(4*A2+F12+A2*F23),A2*F23,4*A2]])
    b = np.array([7*(J1-Eb1)/3 +F12*J1+F13*J1,-F13*J1,-F12*J1])
    x = np.linalg.solve(np.moveaxis(a, -1, 0), np.moveaxis(b,-1,0))
    x = x.T
    J2 = -x[0]

    J3 = x[1]
    Eb2 = -x[2]
    qrad = (Eb2 - J2)*(0.8 * A2) / 0.2
    print(Eb2)
    return qrad

plot_with_variating_D()

Tags: importa2plotas错误withnppi