/[ascend]/trunk/models/steam/dsgsat3.a4c
ViewVC logotype

Diff of /trunk/models/steam/dsgsat3.a4c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1278 by johnpye, Fri Feb 9 02:35:43 2007 UTC revision 1279 by johnpye, Sat Feb 10 09:31:55 2007 UTC
# Line 11  REQUIRE "steam/satsteamstream.a4c"; Line 11  REQUIRE "steam/satsteamstream.a4c";
11    
12  MODEL dsgsat3;  MODEL dsgsat3;
13      n IS_A integer_constant;      n IS_A integer_constant;
14      n :== 5;      n :== 47;
15    
16      (* temporal derivatives *)      (* temporal derivatives *)
17      drho_dt[2..n] IS_A density_rate;      drho_dt[2..n] IS_A density_rate;
# Line 77  MODEL dsgsat3; Line 77  MODEL dsgsat3;
77          z_mombal[i]:  - dz/A*dmdot_dt[i] =          z_mombal[i]:  - dz/A*dmdot_dt[i] =
78                          (node[i+1].p-node[i-1].p) / 2.0                          (node[i+1].p-node[i-1].p) / 2.0
79                          + dz * f/D/2 * node[i].rho * vel[i]^2                          + dz * f/D/2 * node[i].rho * vel[i]^2
80                          + (node[i].rho*vel[i]^2 - node[i-1].rho*vel[i-1]^2);                          + (node[i+1].rho*vel[i+1]^2 - node[i-1].rho*vel[i-1]^2) / 2.0;
81      END FOR;      END FOR;
82    
83      (* the last equations use backwards difference *)      (* the equations for the last node use backwards difference *)
84      FOR i IN [n] CREATE      FOR i IN [n] CREATE
85          z_massbal1[i]: A * drho_dt[i] * dz = - (node[i].mdot - node[i-1].mdot);          z_massbal1[i]: A * drho_dt[i] * dz = - (node[i].mdot - node[i-1].mdot);
86    
# Line 92  MODEL dsgsat3; Line 92  MODEL dsgsat3;
92                          (node[i].p-node[i-1].p)                          (node[i].p-node[i-1].p)
93                          + dz * f/D/2 * node[i].rho * vel[i]^2                          + dz * f/D/2 * node[i].rho * vel[i]^2
94                          + (node[i].rho*vel[i]^2 - node[i-1].rho*vel[i-1]^2);                          + (node[i].rho*vel[i]^2 - node[i-1].rho*vel[i-1]^2);
   
95      END FOR;      END FOR;
96    
97      (* these equation have no spatial derivatives *)      (* these equation have no spatial derivatives *)
# Line 112  METHODS Line 111  METHODS
111          END FOR;          END FOR;
112      END bound_self;      END bound_self;
113      METHOD default_self;      METHOD default_self;
114            (* these are DEFAULT values and are overwritten in METHOD values below *)
115          D := 0.06 {m};          D := 0.06 {m};
116          D_2 := 0.07 {m};          D_2 := 0.07 {m};
117          A_w := 0.25{PI}*D_2^2 -0.25{PI}*D^2;          A_w := 0.25{PI}*D_2^2 -0.25{PI}*D^2;
# Line 164  METHODS Line 164  METHODS
164          END FOR;          END FOR;
165      END specify;      END specify;
166      METHOD values;      METHOD values;
167          L := 9 {m};          L := 10 {m};
168          h_int := 100 {W/m^2/K};          h_int := 100 {W/m^2/K};
169          h_ext := 20 {W/m^2/K};          h_ext := 20 {W/m^2/K};
170          f := 0.01;          f := 0.03;
171          node[1].mdot := 0.5 {kg/s};          node[1].mdot := 0.26 {kg/s};
172          node[1].p := 8 {bar};          node[1].p := 10 {bar};
173          node[1].x := 0.3;          node[1].x := 0.23;
174          qdot_s := 1000 {W/m^2} * D_2 * 10;          qdot_s := 1000 {W/m^2} * D_2 * 10;
175          FOR i IN [2..n] DO          FOR i IN [2..n] DO
176              dmdot_dt[i] := 0.0 {kg/s/s};              dmdot_dt[i] := 0.0 {kg/s/s};
# Line 239  METHODS Line 239  METHODS
239              (* p[i].obs_id :=         1 + 10*i; *)              (* p[i].obs_id :=         1 + 10*i; *)
240              (* x[i].obs_id :=         2 + 10*i; *)              (* x[i].obs_id :=         2 + 10*i; *)
241              (* node[i].mdot.obs_id := 4 + 10*i; *)              (* node[i].mdot.obs_id := 4 + 10*i; *)
242              node[i].h.obs_id :=    3 + 10*i;              (* node[i].h.obs_id :=    3 + 10*i; *)
243          END FOR;          END FOR;
244          FOR i IN [2..n] DO          FOR i IN [2..n] DO
245              (* qdot_t[i].obs_id :=    3 + 10*i; *)              (* qdot_t[i].obs_id :=    3 + 10*i; *)
246              (* T_w[i].obs_id :=       5 + 10*i; *)              (* T_w[i].obs_id :=       5 + 10*i; *)
247              (* T[i].obs_id :=         6 + 10*i;*)              (* T[i].obs_id :=         6 + 10*i;*)
248          END FOR;          END FOR;
249    
250            node[n].mdot.obs_id := 1;
251            node[n].x.obs_id := 1;
252            p[n].obs_id := 1;
253            vel[n].obs_id := 1;
254    
255      END ode_init;      END ode_init;
256      METHOD fix_outlet_quality;      METHOD fix_outlet_quality;
257          FIX x[n];          FIX x[n];

Legend:
Removed from v.1278  
changed lines
  Added in v.1279

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22