声速计算功能验证正确,孔板计算还未验证。
This commit is contained in:
parent
3a6c286e64
commit
da4481b9d1
@ -243,5 +243,102 @@
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=IfStdIsConstantEvaluatedCanBeReplaced/@EntryIndexedValue" value="SUGGESTION" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=StdIsConstantEvaluatedWillAlwaysEvaluateToConstant/@EntryIndexedValue" value="WARNING" type="string" />
|
||||
<option name="/Default/CodeInspection/Highlighting/InspectionSeverities/=StringLiteralTypo/@EntryIndexedValue" value="DO_NOT_SHOW" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppClangFormat/EnableClangFormatSupport/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_ARGUMENT/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_BINARY_EXPRESSIONS_CHAIN/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_CALLS_CHAIN/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_EXPRESSION/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_EXTENDS_LIST/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_FOR_STMT/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_PARAMETER/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_TYPE_ARGUMENT/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTILINE_TYPE_PARAMETER/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_MULTIPLE_DECLARATION/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ALIGN_TERNARY/@EntryValue" value="ALIGN_ALL" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/ANONYMOUS_METHOD_DECLARATION_BRACES/@EntryValue" value="END_OF_LINE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/BLANK_LINES_AROUND_CLASS_DEFINITION/@EntryValue" value="1" type="int" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/BLANK_LINES_AROUND_DECLARATIONS/@EntryValue" value="0" type="int" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/BLANK_LINES_AROUND_FUNCTION_DECLARATION/@EntryValue" value="1" type="int" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/BLANK_LINES_AROUND_FUNCTION_DEFINITION/@EntryValue" value="1" type="int" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/BREAK_TEMPLATE_DECLARATION/@EntryValue" value="LINE_BREAK" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/CASE_BLOCK_BRACES/@EntryValue" value="END_OF_LINE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/CONTINUOUS_LINE_INDENT/@EntryValue" value="Double" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/FREE_BLOCK_BRACES/@EntryValue" value="END_OF_LINE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INDENT_ACCESS_SPECIFIERS_FROM_CLASS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INDENT_CASE_FROM_SWITCH/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INDENT_CLASS_MEMBERS_FROM_ACCESS_SPECIFIERS/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INDENT_COMMENT/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INDENT_SIZE/@EntryValue" value="4" type="int" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INDENT_STYLE/@EntryValue" value="Space" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INITIALIZER_BRACES/@EntryValue" value="END_OF_LINE_NO_SPACE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INT_ALIGN_EQ/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/INVOCABLE_DECLARATION_BRACES/@EntryValue" value="END_OF_LINE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/KEEP_BLANK_LINES_IN_CODE/@EntryValue" value="2" type="int" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/KEEP_BLANK_LINES_IN_DECLARATIONS/@EntryValue" value="2" type="int" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/KEEP_USER_LINEBREAKS/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/LINE_BREAK_AFTER_COLON_IN_MEMBER_INITIALIZER_LISTS/@EntryValue" value="ON_SINGLE_LINE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/MEMBER_INITIALIZER_LIST_STYLE/@EntryValue" value="DO_NOT_CHANGE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/NAMESPACE_DECLARATION_BRACES/@EntryValue" value="END_OF_LINE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/NAMESPACE_INDENTATION/@EntryValue" value="All" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/OTHER_BRACES/@EntryValue" value="END_OF_LINE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/PLACE_CATCH_ON_NEW_LINE/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/PLACE_ELSE_ON_NEW_LINE/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/PLACE_NAMESPACE_DEFINITIONS_ON_SAME_LINE/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/PLACE_WHILE_ON_NEW_LINE/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SIMPLE_BLOCK_STYLE/@EntryValue" value="DO_NOT_CHANGE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_CAST_EXPRESSION_PARENTHESES/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_COLON_IN_BITFIELD_DECLARATOR/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_COMMA_IN_TEMPLATE_ARGS/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_COMMA_IN_TEMPLATE_PARAMS/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_EXTENDS_COLON/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_FOR_COLON/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_FOR_SEMICOLON/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_PTR_IN_DATA_MEMBER/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_PTR_IN_DATA_MEMBERS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_PTR_IN_METHOD/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_PTR_IN_NESTED_DECLARATOR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_REF_IN_DATA_MEMBER/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_REF_IN_DATA_MEMBERS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_REF_IN_METHOD/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_AFTER_UNARY_OPERATOR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_COLON_IN_BITFIELD_DECLARATOR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_EXTENDS_COLON/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_FOR_COLON/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_FOR_SEMICOLON/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_PTR_IN_ABSTRACT_DECL/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_PTR_IN_DATA_MEMBER/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_PTR_IN_DATA_MEMBERS/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_PTR_IN_METHOD/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_REF_IN_ABSTRACT_DECL/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_REF_IN_DATA_MEMBER/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_REF_IN_DATA_MEMBERS/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_REF_IN_METHOD/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_TEMPLATE_ARGS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BEFORE_TEMPLATE_PARAMS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_BETWEEN_CLOSING_ANGLE_BRACKETS_IN_TEMPLATE_ARGS/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_ARRAY_ACCESS_BRACKETS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_CAST_EXPRESSION_PARENTHESES/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_DECLARATION_PARENTHESES/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_EMPTY_BLOCKS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_EMPTY_INITIALIZER_BRACES/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_EMPTY_METHOD_PARENTHESES/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_EMPTY_TEMPLATE_PARAMS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_INITIALIZER_BRACES/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_TEMPLATE_ARGS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPACE_WITHIN_TEMPLATE_PARAMS/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/SPECIAL_ELSE_IF_TREATMENT/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/TAB_WIDTH/@EntryValue" value="4" type="int" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/TYPE_DECLARATION_BRACES/@EntryValue" value="END_OF_LINE" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_AFTER_BINARY_OPSIGN/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_AFTER_DECLARATION_LPAR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_AFTER_INVOCATION_LPAR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_ARGUMENTS_STYLE/@EntryValue" value="WRAP_IF_LONG" type="string" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_BEFORE_DECLARATION_LPAR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_BEFORE_DECLARATION_RPAR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_BEFORE_INVOCATION_LPAR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_BEFORE_INVOCATION_RPAR/@EntryValue" value="false" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_BEFORE_TERNARY_OPSIGNS/@EntryValue" value="true" type="bool" />
|
||||
<option name="/Default/CodeStyle/CodeFormatting/CppFormatting/WRAP_PARAMETERS_STYLE/@EntryValue" value="WRAP_IF_LONG" type="string" />
|
||||
<option name="/Default/CodeStyle/EditorConfig/EnableClangFormatSupport/@EntryValue" value="false" type="bool" />
|
||||
</component>
|
||||
</project>
|
@ -10,5 +10,6 @@ add_executable(NG
|
||||
main.c
|
||||
NGCal.c
|
||||
NGCal.h
|
||||
FlowCal.c # 确保包含实现文件
|
||||
Therm.c)
|
||||
# 确保包含实现文件
|
||||
Therm.c
|
||||
FlowCal.c)
|
||||
|
@ -1064,6 +1064,7 @@ double Detail_dZdD(Detail *pDetail, double d) {
|
||||
temp = temp1 + temp2 + temp3;
|
||||
pDetail->ddZdD += -pDetail->fx[16] + pDetail->fx[16] * temp;
|
||||
pDetail->ddZdD += -pDetail->fx[17] + pDetail->fx[17] * temp;
|
||||
temp = 4.0 * D1;
|
||||
pDetail->ddZdD += pDetail->fx[18] * temp;
|
||||
pDetail->ddZdD += pDetail->fx[19] * temp;
|
||||
temp1 = -4.0 * D3 * exp2;
|
||||
@ -1106,6 +1107,7 @@ double Detail_dZdD(Detail *pDetail, double d) {
|
||||
pDetail->ddZdD += pDetail->fx[34] * temp;
|
||||
pDetail->ddZdD += pDetail->fx[35] * temp;
|
||||
pDetail->ddZdD += pDetail->fx[36] * temp;
|
||||
temp = 16.0 * D3;
|
||||
pDetail->ddZdD += pDetail->fx[37] * temp;
|
||||
pDetail->ddZdD += pDetail->fx[38] * temp;
|
||||
temp1 = -4.0 * D5 * exp2;
|
||||
|
@ -1,3 +1,6 @@
|
||||
//
|
||||
// Created by ldeyu on 2025/7/7.
|
||||
//
|
||||
#include "NGCal.h"
|
||||
#include "FlowCal.h"
|
||||
|
||||
@ -115,7 +118,7 @@ void OFlowCal(FlowParSTRUCT *ptFlowPar, NGParSTRUCT *ptNGPar) {
|
||||
|
||||
iter++;
|
||||
if (iter > maxIter) {
|
||||
fprintf(stderr, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
|
||||
fprintf(stderr, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
|
||||
}
|
||||
} while (fabs(currentC - prevC) / currentC > tolerance);
|
||||
|
||||
@ -149,22 +152,6 @@ void OFlowCal(FlowParSTRUCT *ptFlowPar, NGParSTRUCT *ptNGPar) {
|
||||
|
||||
double CaiLiaoPzxs(int tempCaiLiao) {
|
||||
double CaiLiaoPzxs = 0;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
switch (tempCaiLiao) {
|
||||
case 0:
|
||||
CaiLiaoPzxs = 11.75;
|
||||
@ -267,7 +254,7 @@ double calculateK(int dPipeType) {
|
||||
break;
|
||||
default:
|
||||
|
||||
fprintf(stderr, "δ֪<EFBFBD>Ĺܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: %d\n", dPipeType);
|
||||
fprintf(stderr, "δ֪<EFBFBD>Ĺܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: %d\n", dPipeType);
|
||||
return FLOW_CALC_ERROR;
|
||||
}
|
||||
return Jdccd;
|
||||
@ -287,7 +274,7 @@ double calculateRoughnessFactor(double D_pipe, double K, double C) {
|
||||
|
||||
double term = (K_over_D * 1e6) - 400;
|
||||
if (term < 0) {
|
||||
fprintf(stderr, "K/D <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD>Χ\n");
|
||||
fprintf(stderr, "K/D <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>÷<EFBFBD>Χ\n");
|
||||
return FLOW_CALC_ERROR;
|
||||
}
|
||||
|
||||
@ -350,7 +337,7 @@ double calculateCd(double beta, double ReD, double D_mm, int ptMode) {
|
||||
L2 = 0.47;
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr, "<EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD>ȡѹ<EFBFBD><EFBFBD>ʽ: %d\n", ptMode);
|
||||
fprintf(stderr, "<EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD>ȡѹ<EFBFBD><EFBFBD>ʽ: %d\n", ptMode);
|
||||
return FLOW_CALC_ERROR;
|
||||
}
|
||||
|
||||
|
@ -1,329 +0,0 @@
|
||||
#include "NGCal.h"
|
||||
#include "Therm.h"
|
||||
#include "Detail.h"
|
||||
#include "FlowCal.h"
|
||||
#include "math.h"
|
||||
void OFlowCal(FlowParSTRUCT * ptFlowPar,NGParSTRUCT * ptNGPar)
|
||||
{
|
||||
double tempPatm = ptFlowPar->dPatm*1000000;
|
||||
double tempPf = ptFlowPar->dPf*1000000;
|
||||
double tempDP = ptFlowPar->dDp*1000;
|
||||
double tempTf = ptFlowPar->dTf+273.15;
|
||||
if (ptFlowPar->dPfType == 0)
|
||||
{
|
||||
ptFlowPar->dPf = tempPatm + tempPf;
|
||||
ptNGPar ->dPf=tempPatm + tempPf;
|
||||
} else {
|
||||
ptFlowPar->dPf = tempPf;
|
||||
ptNGPar->dPf=tempPf;
|
||||
}
|
||||
ptFlowPar->dDp = tempDP;
|
||||
ptFlowPar->dTf = tempTf;
|
||||
ptNGPar->dTf = tempTf;
|
||||
ptNGPar->dCbtj=ptFlowPar->dCbtj;
|
||||
switch (ptNGPar->dCbtj)
|
||||
{
|
||||
case 2:
|
||||
ptNGPar->dPb=101325;
|
||||
ptNGPar->dTb= 273.15;
|
||||
ptFlowPar->dPb_M=(101325);
|
||||
ptFlowPar->dTb_M=(273.15);
|
||||
break;
|
||||
case 1:
|
||||
ptNGPar->dPb=(101325);
|
||||
ptNGPar->dTb=( 288.15);
|
||||
ptFlowPar->dPb_M=(101325);
|
||||
ptFlowPar->dTb_M=(288.15);
|
||||
break;
|
||||
case 0:
|
||||
ptNGPar->dPb=(101325);
|
||||
ptNGPar->dTb=( 293.15);
|
||||
ptFlowPar->dPb_M=(101325);
|
||||
ptFlowPar->dTb_M=(293.15);
|
||||
break;
|
||||
}
|
||||
double ngArray[NUMBEROFCOMPONENTS];
|
||||
for (int i = 0; i <NUMBEROFCOMPONENTS; i++) {
|
||||
ngArray[i] = ptFlowPar->dNG_Compents[i] / 100;
|
||||
ptNGPar->adMixture[i] = ngArray[i];
|
||||
}
|
||||
Crit(ptNGPar,0);
|
||||
ptFlowPar->dFpv=ptNGPar->dFpv;
|
||||
ptFlowPar->dOrificeD = ptFlowPar->dOrificeD * (1 + 0.000001 * CaiLiaoPzxs(ptFlowPar->dOrificeMaterial) * (ptFlowPar->dTf - 293.15));
|
||||
ptFlowPar->dPipeD = ptFlowPar->dPipeD * (1 + 0.000001 * CaiLiaoPzxs(ptFlowPar->dPipeMaterial) * (ptFlowPar->dTf - 293.15));
|
||||
ptFlowPar->dBeta = ptFlowPar->dOrificeD / ptFlowPar->dPipeD;
|
||||
ptFlowPar->dE = calculateE(ptFlowPar->dBeta);
|
||||
ptFlowPar->dFG = calculateFG(ptNGPar->dRD_Real);
|
||||
ptFlowPar->dFT = calculateFT(ptFlowPar->dTb_M, ptFlowPar->dTf);
|
||||
ptFlowPar->dKappa = calculateKappa(ptNGPar->dZf);
|
||||
ptFlowPar->dDViscosity = Dlndjs(ptFlowPar->dPf/1e6, ptFlowPar->dTf);
|
||||
ptFlowPar->dDExpCoefficient = calculateEpsilon(ptFlowPar->dPf, ptFlowPar->dDp,
|
||||
ptFlowPar->dBeta, ptFlowPar->dKappa);
|
||||
double D = ptFlowPar->dPipeD / 1000.0;
|
||||
double d = ptFlowPar->dOrificeD / 1000.0;
|
||||
double beta = ptFlowPar->dBeta;
|
||||
double P1 = ptFlowPar->dPf;
|
||||
double deltaP = ptFlowPar->dDp;
|
||||
double Tf = ptFlowPar->dTf;
|
||||
double C_initial = 0.6;
|
||||
double Qf_initial = (C_initial * ptFlowPar->dE * ptFlowPar->dDExpCoefficient * M_PI * pow(d, 2) / 4)
|
||||
* sqrt(2 * deltaP / (ptNGPar->dRhof * (1 - pow(beta, 4))));
|
||||
ptFlowPar->dVFlowf = Qf_initial;
|
||||
double tolerance = 1e-6;
|
||||
int maxIter = 100;
|
||||
double currentC = C_initial;
|
||||
double currentReD = calculateReD(Qf_initial, D, ptNGPar->dRhof, ptFlowPar->dDViscosity);
|
||||
int iter = 0;
|
||||
double prevC = 0;
|
||||
do {
|
||||
prevC = currentC;
|
||||
currentC = calculateCd(beta, currentReD, ptFlowPar->dPipeD, ptFlowPar->dPtmode);
|
||||
double Qf = (currentC * ptFlowPar->dDExpCoefficient * M_PI * pow(d, 2) / 4)
|
||||
* sqrt(2 * deltaP / (ptNGPar->dRhof * (1 - pow(beta, 4))));
|
||||
ptFlowPar->dVFlowf = Qf;
|
||||
currentReD = calculateReD(Qf, D, ptNGPar->dRhof, ptFlowPar->dDViscosity);
|
||||
iter++;
|
||||
if (iter > maxIter) {
|
||||
fprintf(stderr, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
|
||||
}
|
||||
} while (fabs(currentC - prevC) / currentC > tolerance);
|
||||
double K = calculateK(ptFlowPar->dPipeType);
|
||||
double G_me = calculateRoughnessFactor(ptFlowPar->dPipeD, K, currentC);
|
||||
double C_corrected = currentC * G_me;
|
||||
ptFlowPar->dCd = C_corrected;
|
||||
ptFlowPar->dRoughNessPipe = G_me;
|
||||
ptFlowPar->dRnPipe = currentReD;
|
||||
double Qn = ptFlowPar->dVFlowf * (ptFlowPar->dFpv * ptFlowPar->dFpv * P1 / ptFlowPar->dPb_M)
|
||||
* (ptFlowPar->dTb_M) / Tf;
|
||||
ptFlowPar->dVFlowb = Qn;
|
||||
ptFlowPar->dMFlowb = ptFlowPar->dVFlowb * ptNGPar->dRhob;
|
||||
ptFlowPar->dEFlowb = ptFlowPar->dVFlowb * ptNGPar->dHhvMol;
|
||||
ptFlowPar->dVelocityFlow = ptFlowPar->dVFlowf / (M_PI * pow((ptFlowPar->dPipeD / 2000), 2));
|
||||
}
|
||||
double CaiLiaoPzxs(int tempCaiLiao)
|
||||
{
|
||||
double CaiLiaoPzxs = 0;
|
||||
switch (tempCaiLiao)
|
||||
{
|
||||
case 0:
|
||||
CaiLiaoPzxs = 11.75;
|
||||
break;
|
||||
case 1:
|
||||
CaiLiaoPzxs = 11.6;
|
||||
break;
|
||||
case 2:
|
||||
CaiLiaoPzxs = 11.16;
|
||||
break;
|
||||
case 3:
|
||||
CaiLiaoPzxs = 11.59;
|
||||
break;
|
||||
case 4:
|
||||
CaiLiaoPzxs = 10.5;
|
||||
break;
|
||||
case 5:
|
||||
CaiLiaoPzxs = 10.0;
|
||||
break;
|
||||
case 6:
|
||||
CaiLiaoPzxs = 10.2;
|
||||
break;
|
||||
case 7:
|
||||
CaiLiaoPzxs = 15.5;
|
||||
break;
|
||||
case 8:
|
||||
CaiLiaoPzxs = 11.5;
|
||||
break;
|
||||
case 9:
|
||||
CaiLiaoPzxs = 10.8;
|
||||
break;
|
||||
case 10:
|
||||
CaiLiaoPzxs = 16.6;
|
||||
break;
|
||||
case 11:
|
||||
CaiLiaoPzxs = 11.4;
|
||||
break;
|
||||
case 12:
|
||||
CaiLiaoPzxs = 16.55;
|
||||
break;
|
||||
case 13:
|
||||
CaiLiaoPzxs = 17.8;
|
||||
break;
|
||||
case 14:
|
||||
CaiLiaoPzxs = 17.2;
|
||||
break;
|
||||
}
|
||||
return CaiLiaoPzxs;
|
||||
}
|
||||
|
||||
double calculateK(int dPipeType) {
|
||||
double Jdccd;
|
||||
switch (dPipeType) {
|
||||
case 0:
|
||||
Jdccd = 0.029;
|
||||
break;
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
Jdccd = 0.075;
|
||||
break;
|
||||
case 4:
|
||||
Jdccd = 0.1;
|
||||
break;
|
||||
case 5:
|
||||
Jdccd = 0.15;
|
||||
break;
|
||||
case 6:
|
||||
Jdccd = 1;
|
||||
break;
|
||||
case 7:
|
||||
Jdccd = 2.1;
|
||||
break;
|
||||
case 8:
|
||||
Jdccd = 0.04;
|
||||
break;
|
||||
case 9:
|
||||
Jdccd = 0.15;
|
||||
break;
|
||||
case 10:
|
||||
Jdccd = 0.13;
|
||||
break;
|
||||
case 11:
|
||||
Jdccd = 0.25;
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr, "δ֪<EFBFBD>Ĺܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: %d\n", dPipeType);
|
||||
return FLOW_CALC_ERROR;
|
||||
}
|
||||
return Jdccd;
|
||||
}
|
||||
|
||||
double calculateRoughnessFactor(double D_pipe, double K, double C) {
|
||||
double K_over_D = K / D_pipe;
|
||||
if (K_over_D <= 0.0004) {
|
||||
return 1.0000;
|
||||
}
|
||||
double term = (K_over_D * 1e6) - 400;
|
||||
if (term < 0) {
|
||||
fprintf(stderr, "K/D <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>÷<EFBFBD>Χ\n");
|
||||
return FLOW_CALC_ERROR;
|
||||
}
|
||||
double G_me = 1 + (0.011 / C) * sqrt(term);
|
||||
return G_me;
|
||||
}
|
||||
|
||||
double calculateE(double beta) {
|
||||
return 1 / sqrt(1 - pow(beta, 4));
|
||||
}
|
||||
|
||||
double calculateFG(double dRD_Real) {
|
||||
return 1 / sqrt(dRD_Real);
|
||||
}
|
||||
|
||||
double calculateFT(double dTb_M, double dTf) {
|
||||
return sqrt(dTb_M / dTf);
|
||||
}
|
||||
|
||||
double calculateEpsilon(double dPf, double dDp, double beta, double dKappa) {
|
||||
double tau = (dPf - dDp) / dPf;
|
||||
double epsilon = 1 - (0.351 + 0.256 * pow(beta, 4) + 0.93 * pow(beta, 8)) * (1 - pow(tau, 1/dKappa));
|
||||
return epsilon;
|
||||
}
|
||||
|
||||
double calculateKappa(double dZf) {
|
||||
double gamma = 1.3;
|
||||
double Z = dZf;
|
||||
double kappa = gamma / (1 - (gamma - 1) * (1 / Z - 1));
|
||||
return kappa;
|
||||
}
|
||||
|
||||
double calculateReD(double Qf, double D, double rho, double mu) {
|
||||
return (4 * Qf * rho) / (M_PI * D * mu);
|
||||
}
|
||||
|
||||
double calculateCd(double beta, double ReD, double D_mm, int ptMode) {
|
||||
double L1, L2;
|
||||
switch (ptMode) {
|
||||
case 1:
|
||||
L1 = L2 = 0;
|
||||
break;
|
||||
case 0:
|
||||
L1 = L2 = 25.4 / D_mm;
|
||||
break;
|
||||
case 2:
|
||||
L1 = 1.0;
|
||||
L2 = 0.47;
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr, "<EFBFBD><EFBFBD>֧<EFBFBD>ֵ<EFBFBD>ȡѹ<EFBFBD><EFBFBD>ʽ: %d\n", ptMode);
|
||||
return FLOW_CALC_ERROR;
|
||||
}
|
||||
double term1 = 0.5961 + 0.0261 * pow(beta, 2) - 0.216 * pow(beta, 8);
|
||||
double term2 = 0.000521 * pow(1e6 * beta / ReD, 0.7);
|
||||
double A = pow(19000 * beta / ReD, 0.8);
|
||||
double term3 = (0.0188 + 0.0063 * A) * pow(beta, 3.5) * pow(1e6 / ReD, 0.3);
|
||||
double term4 = (0.043 + 0.08 * exp(-10 * L1) - 0.123 * exp(-7 * L1))
|
||||
* (1 - 0.11 * A) * pow(beta, 4) / (1 - pow(beta, 4));
|
||||
double term5 = -0.031 * (2 * L2 / (1 - beta) - 0.8 * pow(2 * L2 / (1 - beta), 1.1))
|
||||
* pow(beta, 1.3);
|
||||
double Cd = term1 + term2 + term3 + term4 + term5;
|
||||
if (D_mm < 71.12) {
|
||||
Cd += 0.011 * (0.75 - beta) * (2.8 - D_mm / 25.4);
|
||||
}
|
||||
return Cd;
|
||||
}
|
||||
|
||||
double Dlndjs(double tempP_jy, double tempT) {
|
||||
double Dlndjs_Dlnd_Data[8][11] = {
|
||||
{976, 991, 1014, 1044, 1073, 1114, 1156, 1207, 1261, 1331, 1405},
|
||||
{1027, 1040, 1063, 1091, 1118, 1151, 1185, 1230, 1276, 1331, 1389},
|
||||
{1071, 1082, 1106, 1127, 1149, 1180, 1211, 1250, 1289, 1335, 1383},
|
||||
{1123, 1135, 1153, 1174, 1195, 1224, 1253, 1289, 1324, 1366, 1409},
|
||||
{1167, 1178, 1196, 1216, 1236, 1261, 1287, 1318, 1350, 1385, 1421},
|
||||
{1213, 1224, 1239, 1257, 1275, 1297, 1320, 1346, 1373, 1403, 1435},
|
||||
{1260, 1270, 1281, 1297, 1313, 1333, 1352, 1374, 1396, 1424, 1451},
|
||||
{1303, 1312, 1323, 1338, 1352, 1372, 1391, 1412, 1432, 1456, 1482}
|
||||
};
|
||||
double Dlndjs_Dlnd_T[8] = {
|
||||
-15 + 273.15, 0 + 273.15, 15 + 273.15, 30 + 273.15,
|
||||
45 + 273.15, 60 + 273.15, 75 + 273.15, 90 + 273.15
|
||||
};
|
||||
double Dlndjs_Dlnd_P[11] = {0.1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
|
||||
double s1, s2, ky, kx;
|
||||
int i, m = 0, n = 0;
|
||||
if (tempT < Dlndjs_Dlnd_T[0]) {
|
||||
tempT = Dlndjs_Dlnd_T[0];
|
||||
}
|
||||
if (tempT > Dlndjs_Dlnd_T[7]) {
|
||||
tempT = Dlndjs_Dlnd_T[7];
|
||||
}
|
||||
if (tempP_jy < Dlndjs_Dlnd_P[0]) {
|
||||
tempP_jy = Dlndjs_Dlnd_P[0];
|
||||
}
|
||||
if (tempP_jy > Dlndjs_Dlnd_P[10]) {
|
||||
tempP_jy = Dlndjs_Dlnd_P[10];
|
||||
}
|
||||
for (i = 0; i <= 6; i++) {
|
||||
if (tempT >= Dlndjs_Dlnd_T[i] && tempT <= Dlndjs_Dlnd_T[i + 1]) {
|
||||
m = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (i = 0; i <= 9; i++) {
|
||||
if (tempP_jy >= Dlndjs_Dlnd_P[i] && tempP_jy <= Dlndjs_Dlnd_P[i + 1]) {
|
||||
n = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (Dlndjs_Dlnd_P[n + 1] - Dlndjs_Dlnd_P[n] != 0) {
|
||||
ky = (tempP_jy - Dlndjs_Dlnd_P[n]) / (Dlndjs_Dlnd_P[n + 1] - Dlndjs_Dlnd_P[n]);
|
||||
} else {
|
||||
ky = 0;
|
||||
}
|
||||
if (Dlndjs_Dlnd_T[m + 1] - Dlndjs_Dlnd_T[m] != 0) {
|
||||
kx = (tempT - Dlndjs_Dlnd_T[m]) / (Dlndjs_Dlnd_T[m + 1] - Dlndjs_Dlnd_T[m]);
|
||||
} else {
|
||||
kx = 0;
|
||||
}
|
||||
s1 = Dlndjs_Dlnd_Data[m][n] + (Dlndjs_Dlnd_Data[m][n + 1] - Dlndjs_Dlnd_Data[m][n]) * ky;
|
||||
s2 = Dlndjs_Dlnd_Data[m + 1][n] + (Dlndjs_Dlnd_Data[m + 1][n + 1] - Dlndjs_Dlnd_Data[m + 1][n]) * ky;
|
||||
return (s1 + (s2 - s1) * kx) / 100000.0;
|
||||
}
|
@ -118,7 +118,8 @@ double Therm_CpiMolar(Therm *therm, NGParSTRUCT *ptNGPar) {
|
||||
cp += Cpx;
|
||||
}
|
||||
}
|
||||
return cp * therm->CAL_TH;
|
||||
cp *= therm->CAL_TH;
|
||||
return cp;
|
||||
}
|
||||
|
||||
|
||||
@ -206,14 +207,12 @@ void Therm_CprCvrHS(Therm *therm, NGParSTRUCT *ptNGPar, Detail *detail) {
|
||||
double Hinc = 0.0;
|
||||
double Sinc = 0.0;
|
||||
double Smixing = 0.0;
|
||||
double Cp = Therm_CpiMolar(therm, ptNGPar);
|
||||
double Si;
|
||||
|
||||
double Cp = Therm_CpiMolar(therm, ptNGPar);
|
||||
ptNGPar->dHo = Therm_Ho(therm, ptNGPar);
|
||||
Si = Therm_So(therm, ptNGPar);
|
||||
|
||||
ptNGPar->dCpi = (Cp * 1000.0) / ptNGPar->dMrx;
|
||||
|
||||
for (int i = 0; i < therm->GK_points; i++) {
|
||||
double x = ptNGPar->dDf * (1.0 + therm->GK_root[i]) / 2.0;
|
||||
Detail_zdetail(detail, x);
|
||||
@ -301,30 +300,21 @@ void Therm_HS_Mode(Therm *therm, NGParSTRUCT *ptNGPar, Detail *detail, double H,
|
||||
ptNGPar->dPf = p2;
|
||||
Detail_Run(detail, ptNGPar);
|
||||
double s2 = Therm_S(therm, ptNGPar, detail) - s0;
|
||||
|
||||
delta2 = fabs(s1 - s2) / s0;
|
||||
if (delta2 < tolerance) break;
|
||||
|
||||
double p0 = p2;
|
||||
p2 = (p1 * s2 - p2 * s1) / (s2 - s1);
|
||||
|
||||
if (p2 <= pmin) p2 = pmin;
|
||||
if (p2 >= pmax) p2 = pmax;
|
||||
|
||||
p1 = p0;
|
||||
s1 = s2;
|
||||
}
|
||||
|
||||
if (ptNGPar->lStatus == MAX_NUM_OF_ITERATIONS_EXCEEDED) break;
|
||||
|
||||
double h2 = Therm_H(therm, ptNGPar, detail) - h0;
|
||||
delta1 = fabs(h1 - h2) / h0;
|
||||
|
||||
if (delta1 < tolerance && i > 0) break;
|
||||
|
||||
double t0 = t2;
|
||||
t2 = (t1 * h2 - t2 * h1) / (h2 - h1);
|
||||
|
||||
if (t2 >= tmax) t2 = tmax;
|
||||
if (t2 <= tmin) {
|
||||
t2 = t0 + 10.0;
|
||||
@ -352,10 +342,8 @@ double Therm_H(Therm *therm, NGParSTRUCT *ptNGPar, Detail *detail) {
|
||||
Detail_zdetail(detail, x);
|
||||
Detail_dZdT(detail, x);
|
||||
Detail_d2ZdT2(detail, x);
|
||||
|
||||
Hinc += therm->GK_weight[i] * detail->ddZdT / x;
|
||||
if (i == 10) break;
|
||||
|
||||
x = ptNGPar->dDf * (1.0 - therm->GK_root[i]) / 2.0;
|
||||
Detail_zdetail(detail, x);
|
||||
Detail_dZdT(detail, x);
|
||||
|
@ -8,7 +8,7 @@ int main() {
|
||||
NGParSTRUCT ngParams = {0};
|
||||
|
||||
// 设置基本参数
|
||||
flowParams.dPatm = 0.0; // 标准大气压(bar)
|
||||
flowParams.dPatm = 0.0981; // 标准大气压(bar)
|
||||
flowParams.dPf = 4; // 压力(MPa)
|
||||
flowParams.dPfType = 1; // 0=表压,1=绝压
|
||||
flowParams.dDp = 12.50; // 差压(kPa)
|
||||
@ -42,10 +42,10 @@ int main() {
|
||||
flowParams.dNG_Compents[7] = 0.0; // 氢气(H2)
|
||||
flowParams.dNG_Compents[8] = 0.00; // 一氧化碳(CO)
|
||||
flowParams.dNG_Compents[9] = 0.00; // 氧气(O2)
|
||||
flowParams.dNG_Compents[10] = 0.1563; // 异丁烷(i-C4H10)
|
||||
flowParams.dNG_Compents[11] = 0.1037; // 正丁烷(n-C4H10)
|
||||
flowParams.dNG_Compents[12] = 0.0443; // 异戊烷(i-C5H12)
|
||||
flowParams.dNG_Compents[13] = 0.0324; // 正戊烷(n-C5H12)
|
||||
flowParams.dNG_Compents[10] = 0.1037; // 异丁烷(i-C4H10)
|
||||
flowParams.dNG_Compents[11] = 0.1563; // 正丁烷(n-C4H10)
|
||||
flowParams.dNG_Compents[12] = 0.0321; // 异戊烷(i-C5H12)
|
||||
flowParams.dNG_Compents[13] = 0.0443; // 正戊烷(n-C5H12)
|
||||
flowParams.dNG_Compents[14] = 0.0393; // 己烷(C6H14)
|
||||
flowParams.dNG_Compents[15] = 0.0; // 庚烷(C7H16)
|
||||
flowParams.dNG_Compents[16] = 0.0; // 辛烷(C8H18)
|
||||
@ -67,7 +67,7 @@ int main() {
|
||||
// flowParams.dNG_Compents[10]= 0.1; // 异丁烷(i-C4H10)
|
||||
// flowParams.dNG_Compents[11]= 0.1; // 正丁烷(n-C4H10)
|
||||
// flowParams.dNG_Compents[12]= 0.05; // 异戊烷(i-C5H12)
|
||||
// flowParams.dNG_Compents[13]= 0.05; // 正戊烷(n-C5H12)
|
||||
// flowParams.dNG_Compents[13]= 0.03; // 正戊烷(n-C5H12)
|
||||
// flowParams.dNG_Compents[14]= 0.07; // 己烷(C6H14)
|
||||
// flowParams.dNG_Compents[15]= 0; // 庚烷(C7H16)
|
||||
// flowParams.dNG_Compents[16]= 0; // 辛烷(C8H18)
|
||||
|
Loading…
Reference in New Issue
Block a user