Мне нужно написать код Python для расчета падения давления воздуха в трубе [закрыто]Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Мне нужно написать код Python для расчета падения давления воздуха в трубе [закрыто]

Сообщение Anonymous »

Итак, я пытаюсь написать код Python для расчета падения давления воздуха в трубе. Это реальное промышленное применение, поэтому оно должно быть точным. Мне нужно что-то простое и понятное. Самое сложное заключается в том, что плотность воздуха меняется по мере продвижения по трубе.
Это то, что у меня есть и кажется работает, но мне нужно что-то более простое и эффективное. :
import numpy as np

# STRAIGHT PIPING LOSS:
# ---------------------------------------------------------------------------------------------------------------------------------------------
T=294 #TEMPERATURE OF AIR IN TANK TO BE RELIEVED, LOWER IS MORE CONSERVATIVE
R=287 #SPECIFIC GAS CONSTANT OF AIR
Vdot_NFPA=0.4441 #VOLUME FLOW RATE REQUIRED BY NFPA30 ANNEX B
pipe_diam=0.154051 #INTERNAL DIAMETER OF PIPE
area=0.25*np.pi*pipe_diam**2 #CROSS SECTIONAL AREA OF PIPE
dyn_visc=2.08025e-5 #DYNAMIC VISCOSITY OF AIR
epsilon=0.000046 #PIPE ROUGHNESS IN METERS
P_atm=100594 #ATMOSPHERIC PRESSURE

P=100000 #FIRST "GUESS" FOR PRESSURE TO INITIALIZE SOLVER
testpoints=np.linspace(100000,130000,50000)
for k in range(len(testpoints)):
rho=P/R/T #DENSITY AT Kth NODE
if k==0:
mdot=rho*Vdot_NFPA #USE DENSITY AT THE FIRST NODE TO COMPUTE MASS FLOW RATE (MASS FLOW RATE IS CONSTANT)
node_spacing=0.1 #ESTABLISH NODE SPACING IN METERS
pipe_nodes=np.arange(0,8.0,node_spacing) #ESTABISH ARRAY OF EVENLY SPACED NODES
loss_array=np.zeros(len(pipe_nodes)-1) #INITIALIZE ARRAY OF PRESSURE LOSSES
pressure_array=np.zeros(len(pipe_nodes)-1) #INITIALIZE ARRAY OF ABSOLUTE PRESSURES
for j in range(len(loss_array)):
f=(-1.8*np.log10((epsilon/(pipe_diam*3.7))**1.11+(6.9/(pipe_diam*(P/R/T)*(mdot/rho/area)/dyn_visc))))**(-2) #E HAALAND FRICTION FACTOR
loss_array[j]=(f*node_spacing/pipe_diam)*(rho/2)*(mdot/rho/area)**2 #CALCULATE LOSS AT EACH NODE
pressure_array[j]=P-loss_array[j] #TRANSFORM LOSS INTO ABSOLUTE PRESSURE
P=pressure_array[j] #UPDATE THE ABSOLUTE PRESSURE
rho=P/R/T #ASSIGN A NEW DENSITY BASED ON THE NEW PRESSURE
if pressure_array[-1]

Подробнее здесь: https://stackoverflow.com/questions/791 ... ir-in-pipe
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Решение дифференциального уравнения для перепада давления сжимаемой жидкости в трубе
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • OpenCV: расчет оптического потока в трубе с Гуннаром Фарнебаком
    Гость » » в форуме Python
    0 Ответы
    38 Просмотры
    Последнее сообщение Гость
  • OpenCV: расчет оптического потока в трубе с Гуннаром Фарнебаком
    Anonymous » » в форуме Python
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous
  • Доступ к трубе хоста Docker внутри контейнера Windows с пользователем не администратора
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Времена при подключении к названной трубе при открытии формы Windows в .NET 5.0
    Anonymous » » в форуме C#
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»