RadLib
Loading...
Searching...
No Matches
ex_S5.cc
Go to the documentation of this file.
1
3
4#include <iostream>
5#include <cmath> // M_PI
6#include "../../src/c++/rad_rcslw.h"
7#include "../../src/c++/rad.h"
8
9using namespace std;
10
11void parallel_planes(rad *RAD,
12 const double L,
13 const int ntheta,
14 const vector<double> &T,
15 const double P,
16 const vector<double> &fvsoot,
17 const vector<double> &xH2O,
18 const vector<double> &xCO2,
19 const vector<double> &xCO,
20 const vector<double> &xCH4,
21 vector<double> &q,
22 vector<double> &Q,
23 vector<double> &x,
24 vector<double> &xQ,
25 const bool LzeroIbc=false
26 );
27
29
30int main() {
31
32 //--------------------- parameters
33
34 double P = 101325.0;
35 double L = 2.0;
36 int nGG = 25;
37 int ntheta = 101;
38 int nx = 1001;
39 double T0 = 1500;
40 double TL = 500;
41
42 int nGGa = nGG+1;
43
44 double TT=1500, xco2=0.0, xco=0.0, xh2o=0.1, fvs=0.0;
45
46 //---------------------
47
48 vector<double> xCO2(nx, xco2);
49 vector<double> xCO(nx, xco);
50 vector<double> xH2O(nx, xh2o);
51 vector<double> xCH4(nx, 0.0);
52 vector<double> fvsoot(nx, fvs);
53
54 vector<double> x(nx, 0.0);
55 vector<double> xQ;
56 vector<double> T(nx, T0);
57
58 double dx = L/(nx-1);
59 x[0] = 0.0;
60 double Tavg = T[0];
61 for(int i=1; i<nx; ++i){
62 x[i] = x[i-1] + dx;
63 T[i] = 1000.0 + 500*cos(M_PI*x[i]/L);
64 Tavg += T[i];
65 }
66 Tavg /= nx;
67
68 //rad *rcslw = new rad_rcslw(nGG, Tavg, P, fvs, xh2o, xco2, xco); // TT gives better results than Tavg
69 rad *rcslw = new rad_rcslw(nGG, TT, P, fvs, xh2o, xco2, xco); // TT gives better results than Tavg
70
71 //--------------------- get q, Q
72
73 vector<double> q;
74 vector<double> Q;
75
76 parallel_planes(rcslw, L, ntheta, T, P, fvsoot, xH2O, xCO2, xCO, xCH4, q, Q, x, xQ);
77
78 //-------------------------------------------------------------------------
79
80 cout << "# x (m), Q (kW/m3)";
81 for(int i=0; i<xQ.size(); ++i)
82 cout << endl << xQ[i] << " " << Q[i]/1000;
83
84 //cout << "# x (m), q (kW/m2)";
85 //for(int i=0; i<x.size(); ++i)
86 // cout << endl << x[i] << " " << q[i]/1000;
87
88 cout << endl;
89
90 return 0;
91
92}
93
Definition rad.h:20
void parallel_planes(rad *RAD, const double L, const int ntheta, const vector< double > &T, const double P, const vector< double > &fvsoot, const vector< double > &xH2O, const vector< double > &xCO2, const vector< double > &xCO, const vector< double > &xCH4, vector< double > &q, vector< double > &Q, vector< double > &x, vector< double > &xQ, const bool LzeroIbc=false)
int main()
Definition ex_S5.cc:30