机械必威体育网址

找回密码
注册会员

QQ登录

只需一步,快速开始

搜索
查看: 3481 | 回复: 2
打印 上一主题 下一主题

内燃机热力计算怎么用C语言编程?模板如下,求助。

[复制链接]
跳转到指定楼层
1#
发表于 2015-6-28 22:58:34 | 只看该作者 回帖奖励 | 正序浏览 | 阅读模式
#include "math.h", ~' C* M6 y4 U
#include "stdio.h"9 p. N8 V8 f) o! r; l- n
#define PI 3.1415926
D/ r7 J% f5 P( I5 J2 ?, i W2 s$ h, F7 j, n* }: j
double D,S,L,ge,n,Ne,gnum,ysb,Hu,Lo,M,R,P_SC,T_SC;
4 p6 D- j6 O1 k/ X. q5 }+ T2 ~ G/*缸径、行程、连杆长、比油耗、转速、功率、气缸数、压缩比、低热值、理论空燃比、Weibe函数常数m、气体常数、进气门关闭时压力和温度 */" F! n' _- x* _! Z. G+ M/ y7 E. m# l+ ]
double m_T[720],m_P[720],m_a[720];7 ?/ X3 p8 @$ j' |0 Z# f P- W
/*气缸温度、压力、瞬时过量空气系数 */
" ^) N+ i8 ^( j4 W; T/ M' x) ]int m_CA[720],A_SC,A_CB,A_CE,A_EO,A_SO,A_EC;
$ B9 t+ ?$ P G7 l0 c Udouble Pa,Ta,hs,P,V,T,CA,m,mf,nmd,Pe,mBo,mL,dXY;
; e+ p0 F3 a1 H4 e9 \& Pdouble Cv();2 t: G" U8 s1 K
double dV_dCA();; R4 @" p- P- A
double dQw_dCA();
2 F, J# S* i4 i: O2 X5 [+ |double dQB_dCA();
* F3 r" a1 O+ K0 [; W- Rdouble U();
! O2 [) h- Z" v) }7 xdouble V_CA();8 ` t, i5 c0 S) y' ^( w+ f' N
double dU_dnmd();- K2 {0 t1 b1 i; P/ P; _4 p
double dT_Ys_dCA();
, c+ U! Q7 g2 d% H# j! i) ]2 `1 F2 R; vdouble dT_Pz_dCA();; H/ X% E5 U9 f, @/ V1 P
double dT_Rs_dCA();
0 O7 b, Q& W! `$ ~, O& U( ~( u( Y7 wdouble dT_Hq_dCA();: r* m% q/ h9 o/ s! M
double dT_dCA(double an);, H0 [# y Q! ?, d
void Calculate();
0 g4 n( _9 a9 z) U% m, i+ Q3 v4 D; e! f$ t/ a+ b/ L" N. e6 a
/* A编写各子函数程序*/
1 p2 Q' z3 i. [" ndouble Cv() /*求定容比热*/
9 H. O- [$ X& j+ D{
7 q# y+ }5 c1 F$ {
: U! p: s- V, @$ V8 R: O# w: a+ O}
4 B; c' u% u: @8 w* F% v3 M) z8 C* h% P( i
$ O" o; z' N; b- q" n
double dV_dCA() /*求dv/dφ*/r# R( j- G) k7 D R
{
2 C3 L8 `( O* o2 B& `6 l# L- P, M" G( c: M
}' N- C) p/ ^' i
8 A0 K- ?& v' ]% k+ ~9 D
/ ?8 B( b! {0 i! |
double V_CA() /*求气缸容积*/
6 U8 u8 K9 p6 D; o0 J2 l+ j1 N% A{( X# L2 W' [' G* E
. }' G& _# n1 ]* j( W
}+ W/ |# s) V$ g+ O: a: C0 D5 t4 F
9 F( x' K" ], e/ }
8 w) V7 W r: e5 a
double dQw_dCA() /*求dQw/dφ*/
' ?: { h! j+ f2 m* r{
& d6 [6 V3 Y7 H' _, \
. `% E/ M' n2 u7 z, m* f( p' b. O}6 N9 d( D6 Y0 D, }4 x
) e s. l5 I, n& u) N

9 n, H9 g2 ^5 V3 O. rdouble dQB_dCA() /*求dQB/dφ*/+ N. L6 y' @9 W1 b1 T
{- _( c' v0 W( r; w3 B: q* ~
" ^# _' j+ G3 e* l1 T3 p
}
0 |7 W' A3 d% }- e! P Z) s$ \( E8 D+ @' n, N1 Y/ ~9 C

: J3 A& |7 k: r$ J/ N) I( idouble U() /*求u*/
1 x, H0 j5 A7 G{
& V* \1 v! a3 O& d+ ~' w5 G: Q. O' E. e, B, P. C8 k
}E8 L* q: L5 \8 p" f6 d

, y# i* b4 R% T
! ]# m2 n" ?/ F% a% b* F( `double dU_dnmd() /*求du/dλ*/8 ?" L2 r8 J' O% H8 N8 R* O. p
{( g' {& q8 j& U+ x- ~

# G4 v5 |) m M6 k, e}
5 a, F, T/ Y5 {3 A9 {( ]
5 m. w% @' L' T1 r+ Adouble dT_Ys_dCA() /*压缩期*/; N0 P% S. j% o& r8 u! `4 L- f0 g( S
{& x4 t" L& ~2 `* f

" y$ c( p5 I, k5 u}9 G3 u+ d1 k( c2 q7 f
1 T* k7 @' v' j; t& N
9 ?4 H/ e7 p9 ~; G
double dT_Pz_dCA() /*膨胀期*/- t3 n% N4 f! [* B+ `7 e1 T
{
. x4 a% j6 s& n. Z9 s& k( C
# w- [3 |+ {4 m x: u2 _ b}
- N4 R6 p1 K, N2 }* i _& O6 s& q3 w$ n
# `2 L- q1 H* y/ O* [" B3 J
double dT_Rs_dCA() /*燃烧期*/
q" b* r& v- ]. s$ N{
S% B7 b; `& R: P# X+ i* P* C
5 o3 }4 d; f% d" J2 g2 A* T" U}
+ V0 `# ?% H, n- O; t. ^, M1 n& h, `

7 g) q5 k, C6 z$ L1 n& rdouble dT_dCA(double an) /*求dT/dφ*/6 N" N0 U6 `6 D+ \
{5 ^) i+ @/ `6 I: {8 I6 Y
CA=an*PI/180;
& s" g$ m- _' G- m \# {- CV=V_CA();
( Z: R! R: `% t% nif(A_SCc! t) A" s; F' b/ [ Z7 d$ ^- d
if(A_CB<=an && an<=A_CE) return dT_Rs_dCA();0 P- U( }3 Q, c- o2 @( k7 v5 B7 I: v
if(A_CE- m. f7 o) _5 a* R! }' M) U$ }if(A_EO2 [& }. s5 t4 y7 xP=110000+(m_P[(int)A_EO]-110000)*(A_SO-an)/(A_SO-A_EO);& l* Q2 b* X" M0 _) k4 ~, @) ]4 e
if(A_SO3 g% @% n0 I& G; Z5 U+ X' h( q& ^
P=110000-20000*(an>A_SO?an-A_SO:an-A_SO+720)/(A_EC-A_SO+720);: c& _& X( B6 L1 u. N
if(A_EC<=an && an<=A_SC) P=90000;: ^6 r# |$ h* `) J# P4 e& k7 Z- w
return 0;
4 v F+ \) g3 A) M}) ~ _0 ]# G7 R7 r5 r

4 {/ x; \- ~. c9 r% s) e1 ]. wvoid Calculate(void), X% x/ b" _3 t* Z: ~' {
{
8 G# ~! C- X( a3 S- ^) E, k5 _double Tpre,K1,K2,an;( p4 {6 O# r z# a$ X
int index;5 @4 v* b# c* g8 S( C! S- |
Pe=30*4.0*Ne/(gnum*100000*n*S*PI*D*D/4); /*平均有效压力bar*/* l9 U. c) t" q3 N+ x) F# R
mBo=Ne*ge/(30000000*n*gnum); /*单缸循环供油量kg */' n7 M8 @4 [1 ], q
CA=A_SC*PI/180; /*进气关闭时的角度转弧度*/# T6 F1 f- e$ K
V=V_CA();/*进气关闭时角度下的气缸容积*/- M/ U2 U/ t8 G
P=P_SC;$ F+ `5 x) H4 h+ b( J
T=T_SC;
1 N+ L- T0 j9 @3 Jindex=(int)A_SC;F8 H J) ?% |3 c7 X& z
m_T[index]=T;K1 l A+ p" o
m_P[index]=P;1 K! U. E1 }. j1 o4 A! Z* {, ^
m=P*V/(R*T);/*进气关闭时角度下的气缸内工质质量*/0 @7 T$ ^+ S; x, [+ l
mL=m-0.01*mBo;/*进气关闭时角度下的气缸内空气质量*/4 p( i4 C5 Y2 W1 C
mf=m-mL;- {& L1 w' M0 T+ D5 \& o
Tpre=T;. J' U$ f) b' r6 i
an=A_SC+1;9 G1 t5 t- P; v5 [ Q

- U3 r9 V$ r9 f5 |do{
6 v. _, K: ^$ V6 O
+ O5 o! n$ I+ e; j7 Y' t/*B 编写欧拉法求解常微分方程程序 */
! R, P4 y: t% x5 n0 T ]
w% Y3 f& r3 D; {" ^; M}while(an!=A_SC+1);0 F( P$ n/ ] y' q, A: P" ~
}0 u9 M1 e( l% A* c$ A) i+ ?
' ?9 j3 H. ?( v
void main(void)" ?8 y5 J7 {+ E& ?" i
{, {* p8 v; W9 R, C7 z1 o
int i;
, g. N/ X& [6 H( e: aFILE *fp;( Y- s3 x; u/ _4 z) R9 G/ t2 k
D=0.11; /*发动机数据按各自的任务书输入 */
0 y" X4 r7 _$ V3 p: S, {4 TS=0.13;/ u$ }) N5 ]# o: y- ]7 d% f
L=0.21;, s( f, m- c) ~6 T
ge=236.0;0 W6 A; R- ^) D# p
n=2400;
/ f$ V) Z) `: W& G5 Y7 ^0 eNe=101568;
3 s1 @ \$ Q- I9 t+ g8 O6 L+ ?/ x1 ~8 Kgnum=6; ysb=17; M=0.7;4 s. v- w4 Z# |4 F t3 c
Hu=41868000;]' }# l8 G9 T/ `# C
R=287.08;8 d- O1 J7 ^0 @! ?) N
Pa=101000; /*大气压力*/7 W& F4 r7 k9 z
Ta=300; /*大气温度*/
8 s+ H' j* m# Ghs=(735.0+R)*Ta; /*大气焓值*/
8 g I3 a" k& L- H7 _P_SC=90000;( N Y5 Y: f2 i, m# ?7 Q
T_SC=313;
* g: T7 P& R) r; r+ n+ ~+ p; C, N3 a8 V! P8 a: `3 c$ W
A_SC=216; /*进气门关闭*/
8 [; r. o" A1 j$ H2 S$ W# qA_CB=350; /*燃烧开始*/. B( }- ?! q# e
A_CE=410; /*燃烧结束*/
; b7 u( c3 x" Z! p5 ?% m9 o5 XA_EO=484; /*排气门开启*/
/ w6 R$ g8 ?6 IA_SO=705; /*进气门开启*/7 C2 }6 R' e. Z- ]- R. S* P6 p
A_EC=15; /*排气门关闭*// p3 O* b+ R! l
# P6 d5 h* T P. N% T
Lo=14.4;
3 R! M+ q6 j: V, F, g6 k" V1 w- B
for(i=0;i<720;i++): Q2 \9 k- D+ ?5 E
{3 }, a- s, |% p4 B4 J
m_P[i]=0;- S& k) P' s4 A8 [1 Y0 y3 j
m_CA[i]=i;- ^& e3 t% l0 Z, u
m_T[i]=0;8 Y& [* K) K0 L o! f1 B; S N& K
}
7 r4 [) c2 P1 v5 @+ \ ]( s
% s* }8 `- z! y4 t" i8 kCalculate();* {7 z, L R1 D
3 T- T4 e' S4 ~2 f1 m
/*C编写数据输出程序,计算结束后按顺序输出0-720转角的“缸压,温度”数据到outdata.txt文件 */
- I, A, n/ U' H* e/ j: T2 a; ^& I3 p1 y9 s
}
; t: a3 ]3 s9 ^8 U7 j! I* s6 h2 `& \: J# q8 b1 L9 S, N& n

* a8 {; k# e2 d4 a
3#
发表于 2015-6-29 01:45:20 | 只看该作者
这是作业的干活吧……
2#
发表于 2015-6-28 23:45:10 | 只看该作者
不难啊 完全是 把 公司 翻译成 C 又没有用指针跳转的。。。
您需要登录后才可以回帖 登录| 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械必威体育网址(京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号)

GMT+8, 2025-1-26 04:38, Processed in 0.064708 second(s), 19 queries , Gzip On.

Powered byDiscuz!X3.4Licensed

? 2001-2017Comsenz Inc.

快速回复 返回顶部 返回列表