численные методы моделирования
.pdf100
Описание |
Функция, определяющая коэффициент температуропро- |
|
водности воздуха по его известной температуре (t, °C) |
|
|
Наименование |
Ro_v |
|
|
Функция |
Определяет плотность воздуха |
Синтаксис |
float Ro_v( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая плотность воздуха по извест- |
|
ной температуре (t, °C) |
|
|
Наименование |
Iv |
|
|
Функция |
Определяет энтальпию воздуха |
Синтаксис |
float Iv( float t, float V_vozd_0 ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая энтальпию воздуха по извест- |
|
ным температуре воздуха (t, °C) и теоретически необхо- |
|
димому объему воздуха (V_vozd_0, м3/кг) |
|
|
Наименование |
Cro2 |
|
|
Функция |
Определяет теплоемкость трехатомных газов |
Синтаксис |
float Cro2( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая теплоемкость трехатомных га- |
|
зов по известной температуре газов (t, °C) |
|
|
Наименование |
Ch2o |
|
|
Функция |
Определяет теплоемкость водяных паров |
Синтаксис |
float Ch2o( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая теплоемкость водяных паров в |
|
продуктах сгорания по известной температуре газов (t, |
|
°C) |
101
Наименование |
Cn2 |
|
|
Функция |
Определяет теплоемкость азота |
Синтаксис |
float Cn2( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая теплоемкость молекул азота в |
|
продуктах сгорания по известной температуре газов (t, |
|
°C) |
|
|
Наименование |
Czl |
|
|
Функция |
Определяет теплоемкость эоловых частиц |
Синтаксис |
float Czl( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая теплоемкость эоловых частиц в |
|
продуктах сгорания по известной температуре газов (t, |
|
°C) |
|
|
Наименование |
Lambda_g |
|
|
Функция |
Определяет коэффициент теплопроводности дымовых |
|
газов |
Синтаксис |
float Lambda_g( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая коэффициент теплопроводно- |
|
сти дымовых газов по его известной температуре (t, °C) |
|
|
Наименование |
Nju_g |
|
|
Функция |
Определяет коэффициент кинематической вязкости ды- |
|
мовых газов |
Синтаксис |
float Nju_g( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая коэффициент кинематической |
|
вязкости дымовых газов по известной температуре (t, |
|
°C) |
102
Наименование |
Pr_g |
|
|
Функция |
Определяет значение безразмерного критерия Прандтля |
|
дым. газов |
Синтаксис |
float Pr_g( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая число Прандтля дымовых газов |
|
по известной температуре (t, °C) |
|
|
Наименование |
A_g |
|
|
Функция |
Определяет коэффициент температуропроводности ды- |
|
мовых газов |
Синтаксис |
float A_g( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая коэффициент температуропро- |
|
вод-ности дымовых газов по известной температуре (t, |
|
°C) |
|
|
Наименование |
Ro_g |
|
|
Функция |
Определяет плотность дымовых газов |
Синтаксис |
float Ro_g( float t ) |
Прототип в |
eheat.h |
Описание |
Функция, определяющая плотность дымовых газов по |
|
известной температуре (t, °C) |
|
|
Наименование |
Ig |
|
|
Функция |
Определяет энтальпию газообразных продуктов сгора- |
Синтаксис |
ния |
float Ig( float tg, float alfa, float V_RO2, float V_H2O, |
|
|
float V_N2, float V_vozd_0, float A_np, |
Прототип в |
float a_yn ) |
eheat.h |
|
Описание |
Функция, определяющая энтальпию продуктов сгорания |
|
по известным температуре газов (tg, °C), коэффициент |
|
избытка воздуха (alfa, б/р), объемам трехатомных газов |
103
|
(V_RO2, м3/кг), водяных паров (V_H2O, м3/кг), азота |
|
(V_N2, м3/кг), теоретически необходимому объему воз- |
|
духа (V_vozd_0, м3/кг), приведенной зольности топлива |
|
(A_np, %/мДж) и доли золы уноса (a_yn, б/р) |
|
|
Наименование |
Tg |
|
|
Функция |
Определяет температуру газообразных продуктов сгора- |
|
ния |
Синтаксис |
float Tg( float I_g, float alfa, float V_RO2, float V_H2O, |
|
float V_N2, float V_vozd_0, float A_np, |
Прототип в |
float a_yn ) |
eheat.h |
|
Описание |
Функция, определяющая температуру продуктов сгора- |
|
ния по известным энтальпии газов (I_g, кДж/кг), коэф. |
|
избытка воздуха (alfa, б/р), объемам трехатомных газов |
|
(V_RO2, м3/кг), водяных паров (V_H2O, м3/кг), азота |
|
(V_N2, м3/кг), теоретически необходимому объему воз- |
|
духа (V_vozd_0, м3/кг), приведенной зольности топлива |
|
(A_np, %/мДж) и доли золы уноса (a_yn, б/р) |
|
|
Наименование |
Volume |
|
|
Функция |
Определяет объемы и объемные доли продуктов сгора- |
Синтаксис |
ния |
void Volume( float Cp, float Hp, float Sp, float Op, |
|
|
float Np, float Wp, float Ap, float alfa, |
|
float a_yn, float *V_vozd_0, float *V_N2, |
|
float *V_RO2, float *V_H2O_0, |
|
float *V_gas, float *r_RO2, |
|
float *r_H2O, float *r_n, float *G_gas, |
Прототип в |
float *M_zl ) |
eheat.h |
|
Описание |
Функция, определяющая объемы и объемные доли газо- |
|
образных продуктов сгорания по известному элемент- |
|
ному составу топлива: содержанию углерода на рабочую |
|
массу (Cp, %), водорода (Hp, %), серы (Sp, %), кислоро- |
|
да (Op, %), азота (Np, %), влажности (Wp, %), зольности |
|
(Ap, %), коэф. избытка воздуха (alfa), доли золы уноса |
104
|
(a_yn). Список выходных параметров: теор. объем воз- |
|
духа (V_vozd_0, м3/кг), объем азота (V_N2, м3/кг), объ- |
|
ем трехатомных газов (V_RO2, м3/кг), объем водяных |
|
паров (V_H2O, м3/кг), суммарный объем газов (V_gas, |
|
м3/кг), объемная доля трехатомных газов (r_RO2, б/р), |
|
объемная доля водяных паров (r_H2O), суммарная доля |
|
газов (r_n), масса газов (G_gas, кг), концентрация золо- |
|
вых частиц (M_zl, г/м3) |
|
|
Наименование |
dtcp |
|
|
Функция |
Определяет значение средне логарифмического темпе- |
Синтаксис |
ратурного напора |
float dtcp( float t1, float t11, float t2, float t22, int indx , |
|
Прототип в |
int n ) |
eheat.h |
|
Описание |
Функция, определяющая значение средне логарифмиче- |
|
ского температурного напора по известным температу- |
|
рам на входе и выходе (соответственно t1 и t11, °C) |
|
греющей среды и температурам на входе и на выходе (t2 |
|
и t22, °C) нагреваемой среды. Параметр indx – индекс |
|
противоточности: indx = 0 – прямоток; 1 – противоток; 2 |
|
– перекрестный ток. n – число перекрестов (ходов) |
7. Состав библиотеки emath.lib
7.1. Библиотека численных методов интегрирования:
Наименование |
Chebyshev |
|
|
Функция |
Вычисляет значение определенного интеграла для за- |
|
данной функции |
Синтаксис |
float Chebyshev( float(*)func( float ), float a, float b, int m) |
Прототип в |
emath.h |
Описание |
Подпрограмма, вычисляющая значение определенного |
|
интеграла методом Чебышева для заданной функции |
|
*func(), c пределами интегрирования от a до b и числом |
|
разбиений – m |
|
|
Наименование |
Simpson |
|
|
Функция |
Вычисляет значение определенного интеграла для за- |
|
данной функции |
105
Синтаксис |
float Simpson( float (*)func( float ), float a, float b, int m ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, вычисляющая значение определенного |
|
интеграла методом Симпсона для заданной функции |
|
*func(), c пределами интегрирования от a до b и числом |
|
разбиений – m |
|
|
Наименование |
Uedl |
|
|
Функция |
Вычисляет значение определенного интеграла для за- |
|
данной функции |
Синтаксис |
float Uedl( float (*)func(float), float a, float b, int m ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, вычисляющая значение определенного |
|
интеграла методом Уэдля для заданной функции *func(), |
|
c пределами интегрирования от a до b и числом разбие- |
|
ний – m |
|
|
Наименование |
Gauss_Integr |
|
|
Функция |
Вычисляет значение определенного интеграла для за- |
Синтаксис |
данной функции |
float Gauss_Integr( float (*)func ( float ), float a, float b, |
|
Прототип в |
int m ) |
emath.h |
|
Описание |
Подпрограмма, вычисляющая значение определенного |
|
интеграла методом Гаусса для заданной функции |
|
*func(), c пределами интегрирования от a до b и числом |
|
разбиений – m |
|
|
Наименование |
Romberg |
|
|
Функция |
Вычисляет значение определенного интеграла для за- |
|
данной функции |
Синтаксис |
float Romberg( float (*)func (float), float a, float b, int m ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, вычисляющая значение определенного |
|
интеграла методом Ромберга для заданной функции |
106
|
*func(), c пределами интегрирования от a до b и числом |
|
разбиений – m |
|
|
Наименование |
Quanc8 |
|
|
Функция |
Вычисляет значение определенного интеграла для за- |
Синтаксис |
данной функции |
float Quanc8( float (*)func( float ), float a, float b, |
|
Прототип в |
float abserr, float relerr ) |
emath.h |
|
Описание |
Подпрограмма, вычисляющая значение определенного |
|
интеграла методом полиномом восьмой степени для за- |
|
данной функции *func(), c пределами интегрирования от |
|
a до b и заданной абсалютной – abserr и относительной |
–relerr точностью
7.2.Библиотека численных методов вычисления определенных инте- гралов от функции заданной таблично:
Наименование |
Trapez_tabl |
|
|
Функция |
Вычисляет значение определенного интеграла для функ- |
|
ции заданной таблично |
Синтаксис |
float Trapez_tabl( int n, float a, float b, float y[] ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, вычисляющая значение определенного |
|
интеграла методом трапеций для функции заданной таб- |
|
лично в виде одномерного массива y[], c пределами ин- |
|
тегрирования от a до b и числом точек n |
|
|
Наименование |
Simpson_tabl |
|
|
Функция |
Вычисляет значение определенного интеграла для функ- |
|
ции заданной таблично |
Синтаксис |
float Simpson_tabl( int m, float a, float b, float y[] ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, вычисляющая значение определенного |
|
интеграла методом Симпсона для функции заданной |
|
таблично в виде одномерного массива y[], c пределами |
|
интегрирования от a до b и числом точек n |
107
7.3. Библиотека подпрограмм-функций по аппроксимации, экстрапо- ляции и интерполяции данных:
Наименование |
Splain |
|
|
Функция |
Выполняет интерполяцию и экстраполяцию данных за- |
|
данных таблично |
Синтаксис |
float Splain( float x[], float y[], int n, float yx ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, возвращает интерполированное значение |
|
по методу сплайнов для аргумента yx функции заданной |
|
таблично в виде одномерных массивов x[] и y[] с коли- |
|
чеством элементов – n |
|
|
Наименование |
Lagrang |
|
|
Функция |
Выполняет интерполяцию и экстраполяцию данных за- |
|
данных таблично |
Синтаксис |
float Lagrang( float x[], float y[], int n, float yx ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, возвращает интерполированное значение |
|
по методу Лагранжа для аргумента yx функции заданной |
|
таблично ввиде одномерных массивов x[] и y[] с количе- |
|
ством элементов n |
|
|
Наименование |
Newton |
|
|
Функция |
Выполняет интерполяцию и экстраполяцию данных за- |
|
данных таблично |
Синтаксис |
float Newton( float x[], float y[], int n, float yx ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, возвращает интерполированное значение |
|
по методу Ньютона для аргумента yx функции заданной |
|
таблично ввиде одномерных массивов x[] и y[] с количе- |
|
ством элементов n |
7.4. Библиотека подпрограмм-функций обработки матриц: |
|
Наименование |
MatPrint |
|
|
Функция |
Осуществляет вывод матрицы на экран |
Синтаксис |
void MatPrint( float x[], int n, int m ) |
|
|
108
Прототип в |
emath.h |
Описание |
Подпрограмма, осуществляет вывод матрицы x[] с коли- |
|
чеством строк – n и столбцов – m на экран монитора |
|
|
Наименование |
MatProd |
|
|
Функция |
Осуществляет произведение двух матриц |
Синтаксис |
void MatProd( float x[], float y[], int l, int n, int m, |
Прототип в |
float z[] ) |
emath.h |
|
Описание |
Подпрограмма, осуществляет произведение матриц x[] и |
|
y[] с количеством строк – l и n соответственно и столб- |
|
цов – m, z[] – результирующая матрица |
|
|
Наименование |
MatAdd |
|
|
Функция |
Осуществляет сложение двух матриц |
Синтаксис |
void MatAdd( float x[], float y[], int n, int m, float z[] ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, осуществляет сложение матриц x[] и y[] |
|
с количеством строк – n и столбцов – m, z[] – результи- |
|
рующая матрица |
|
|
Наименование |
MatScalarProd |
|
|
Функция |
Осуществляет умножение матрицы на число |
Синтаксис |
void MatScalarProd( float x[], float d, int n, int m, |
Прототип в |
float z[] ) |
emath.h |
|
Описание |
Подпрограмма, осуществляет умножение матрицы x[] с |
|
количеством строк – n и столбцов – m на число d, z[] – |
|
результирующая матрица |
|
|
Наименование |
MatTranspose |
|
|
Функция |
Осуществляет транспонирование матрицы |
Синтаксис |
void MatTranspose( float x[], int n, int m, float z[] ) |
|
|
109
Прототип в |
emath.h |
Описание |
Подпрограмма, осуществляет транспонирование матри- |
|
цы x[] с количеством строк – n и столбцов – m, z[] – ре- |
|
зультирующая матрица |
|
|
Наименование |
MatDeter |
|
|
Функция |
Выполняет расчет определителя (детерминанта) матри- |
|
цы |
Синтаксис |
float MatDeter( float x[], int n ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, возвращает значение определителя мат- |
|
рицы x[] с количеством строк и столбцов – n |
|
|
Наименование |
MatInvert |
|
|
Функция |
Осуществляет инвертирование (обращение) матрицы |
Синтаксис |
void MatInvert( float x[], int n, float *d, float z[] ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, осуществляет инвертирование матрицы |
|
x[] с количеством строк и столбцов – n, z[] – результи- |
|
рующая матрица, d – значение определителя исходной |
|
матрицы |
7.5. Библиотека подпрограмм поиска экстремума одномерной функции: |
|
Наименование |
Priblig |
|
|
Функция |
Вычисляет значение экстремума одномерной функции |
Синтаксис |
float Priblig( float (*)func( float ), float a, float b, float eps ) |
Прототип в |
emath.h |
Описание |
Подпрограмма, вычисляющая значение экстремума од- |
|
номерной функции func() методом поразрядного при- |
|
ближения на отрезке унимодальности от a до b и расчет- |
|
ной точностью – eps |