00001
00002
00003
00004
00005
00006
00007
00008 #include <stdio.h>
00009 #include <stdlib.h>
00010 #include <math.h>
00011 #include "constrel.h"
00012 #include "sejtkrmatc.h"
00013 #include "globalt.h"
00014
00015 sejtkrmatc::sejtkrmatc()
00016 {
00017
00018 emod = 10.0e6;
00019
00020 nu = 0.4;
00021
00022 alpha = 0.9998;
00023
00024 ks = 18.0e12;
00025
00026 kt = 3.6e6;
00027
00028 kw = 2.0e9;
00029
00030
00031
00032 phi0 = 0.5;
00033
00034 kintr = 4.5e-13;
00035
00036 rhos = 2000.0;
00037
00038 rhow = 1000.0;
00039
00040 muw = 1.0e-3;
00041
00042
00043 }
00044
00045 sejtkrmatc::~sejtkrmatc()
00046 {}
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056 void sejtkrmatc::read(XFILE *in)
00057 {
00058
00059 }
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070 double sejtkrmatc::get_sw(double pw)
00071 {
00072
00073 double sw,pc;
00074
00075 pc = -pw;
00076
00077 sw = 1.0;
00078
00079 return(sw);
00080 }
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091 double sejtkrmatc::get_dsw_dpw(double pw)
00092 {
00093
00094 double dsw_dpc,pc;
00095
00096 pc = -pw;
00097
00098 dsw_dpc = 0.0;
00099
00100 return(dsw_dpc);
00101 }
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112 double sejtkrmatc::get_krw(double pw)
00113 {
00114 double krw,s;
00115
00116 s = get_sw(pw);
00117 krw = pow(s,10.0);
00118
00119 return(krw);
00120 }
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130 double sejtkrmatc::get_phi()
00131 {
00132 double phi;
00133
00134 phi = phi0;
00135
00136 return(phi);
00137 }
00138
00139
00140
00141
00142
00143
00144
00145
00146
00147 double sejtkrmatc::get_kintr()
00148 {
00149 return(kintr);
00150 }
00151
00152
00153
00154
00155
00156
00157
00158
00159
00160 double sejtkrmatc::get_rhos()
00161 {
00162 return(rhos);
00163 }
00164
00165
00166
00167
00168
00169
00170
00171
00172
00173 double sejtkrmatc::get_alpha()
00174 {
00175 return(alpha);
00176 }
00177
00178
00179
00180
00181
00182
00183
00184
00185
00186 double sejtkrmatc::get_emod()
00187 {
00188 return(emod);
00189 }
00190
00191
00192
00193
00194
00195
00196
00197
00198 double sejtkrmatc::get_nu()
00199 {
00200 return(nu);
00201 }
00202
00203
00204
00205
00206
00207
00208
00209
00210
00211 double sejtkrmatc::get_ks()
00212 {
00213 return(ks);
00214 }
00215
00216
00217
00218
00219
00220
00221
00222
00223
00224 double sejtkrmatc::get_kw()
00225 {
00226 return(kw);
00227 }
00228
00229
00230
00231
00232
00233
00234
00235
00236
00237 double sejtkrmatc::get_muw()
00238 {
00239 return(muw);
00240 }
00241
00242
00243
00244
00245
00246
00247
00248
00249
00250
00251 double sejtkrmatc::get_kuw(double pw)
00252 {
00253 double alpha,s,kuw;
00254
00255 alpha = get_alpha();
00256 s = get_sw(pw);
00257
00258 kuw = -alpha*s;
00259
00260 return(kuw);
00261
00262 }
00263
00264
00265
00266
00267
00268
00269
00270
00271
00272
00273 double sejtkrmatc::get_kwu(double pw)
00274 {
00275 double kwu;
00276
00277 kwu = 0.0;
00278
00279 return(kwu);
00280
00281 }
00282
00283
00284
00285
00286
00287
00288
00289
00290
00291
00292 double sejtkrmatc::get_kww(double pw)
00293 {
00294 double krw,muw,kww;
00295
00296 krw = get_krw(pw);
00297 kintr = get_kintr();
00298 muw = get_muw();
00299
00300 kww = krw*kintr/muw;
00301
00302 return(kww);
00303
00304 }
00305
00306
00307
00308
00309
00310
00311
00312
00313
00314
00315 double sejtkrmatc::get_capuw(double pw)
00316 {
00317 double capuw;
00318
00319 capuw = 0.0;
00320
00321 return(capuw);
00322
00323 }
00324
00325
00326
00327
00328
00329
00330
00331
00332
00333
00334 double sejtkrmatc::get_capwu(double pw)
00335 {
00336 double alpha,s,capwu;
00337
00338 alpha = get_alpha();
00339 s = get_sw(pw);
00340
00341 capwu = alpha*s;
00342
00343 return(capwu);
00344
00345 }
00346
00347
00348
00349
00350
00351
00352
00353
00354
00355
00356 double sejtkrmatc::get_capww(double pw)
00357 {
00358 double alpha,sw,ks,dsw_dpw,kw,n,capww;
00359
00360 alpha = get_alpha();
00361 sw = get_sw(pw);
00362 dsw_dpw = get_dsw_dpw(pw);
00363 n = get_phi();
00364 ks = get_ks();
00365 kw = get_kw();
00366
00367 capww = (alpha-n)/ks*sw*(sw+dsw_dpw/n*pw)+n*sw/kw + dsw_dpw;
00368
00369 return(capww);
00370
00371 }
00372
00373
00374
00375
00376
00377
00378
00379
00380
00381
00382 double sejtkrmatc::get_fw1(double pw)
00383 {
00384 double krw,muw,fw1;
00385
00386 krw = get_krw(pw);
00387 kintr = get_kintr();
00388 muw = get_muw();
00389 rhow = 1000.0;
00390
00391 fw1 = krw*kintr/muw*rhow;
00392
00393 return(fw1);
00394
00395 }
00396
00397
00398
00399
00400
00401
00402
00403
00404
00405
00406
00407 double sejtkrmatc::get_fu1(double pw)
00408 {
00409 double sw,n,rhos,fu1;
00410
00411 sw = get_sw(pw);
00412 n = get_phi();
00413 rhos = get_rhos();
00414 rhow = 1000.0;
00415
00416
00417 fu1 = rhos*(n-1) + sw*n*rhow;
00418
00419 return(fu1);
00420
00421 }