00001
00002
00003
00004
00005
00006
00007 #include <stdio.h>
00008 #include <stdlib.h>
00009 #include <math.h>
00010 #include "aliast.h"
00011 #include "threemediac.h"
00012 #include "coupmatu.h"
00013 #include "coupmatl.h"
00014 #include "globalc.h"
00015 #include "multiphasec.h"
00016 #include "glasgowmatc.h"
00017
00018 medc3::medc3()
00019 {}
00020 medc3::~medc3()
00021 {}
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 void medc3::matcond_u (matrix &d,long ri,long ci,long ipp)
00036 {
00037 long i;
00038
00039 i = Cmu->ip[ipp].idm;
00040
00041 switch (Cp->mednam){
00042 case mech_heat_moisture:{
00043
00044 switch (Cmu->ip[ipp].tm){
00045 case concreteBc:
00046 case baroghelBc:
00047 case C60baroghelBc:
00048 case C30baroghelBc:
00049 case o30bazantBc:
00050 case C60bazantBc:{
00051 multiphc mtphc;
00052 mtphc.matcond_u(d,ri,ci,ipp);
00053 break;
00054 }
00055 case glasgowc:{
00056
00057 break;
00058 }
00059
00060 default:{
00061 fprintf (stderr,"\n\n unknown material type is required in function (%s, line %d).\n",__FILE__,__LINE__);
00062 }
00063 }
00064 break;
00065 }
00066 case mech_moisture_salt:{
00067 fillm(0.0, d);
00068 break;
00069 }
00070 default:{
00071 fprintf (stderr,"\n\n unknown media name is required in function (%s, line %d).\n",__FILE__,__LINE__);
00072 }
00073 }
00074 }
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086 void medc3::matcap_u (matrix &d,long ri,long ci,long ipp)
00087 {
00088 long i;
00089
00090 i = Cmu->ip[ipp].idm;
00091
00092 switch (Cp->mednam){
00093 case mech_heat_moisture:{
00094
00095 switch (Cmu->ip[ipp].tm){
00096 case concreteBc:
00097 case baroghelBc:
00098 case C60baroghelBc:
00099 case C30baroghelBc:
00100 case o30bazantBc:
00101 case C60bazantBc:{
00102 multiphc mtphc;
00103 mtphc.matcap_u(d,ri,ci,ipp);
00104 break;
00105 }
00106 case glasgowc:{
00107
00108 break;
00109 }
00110
00111 default:{
00112 fprintf (stderr,"\n\n unknown material type is required in function (%s, line %d).\n",__FILE__,__LINE__);
00113 }
00114 }
00115 break;
00116 }
00117 case mech_moisture_salt:{
00118 fillm(0.0, d);
00119 break;
00120 }
00121 default:{
00122 fprintf (stderr,"\n\n unknown media name is required in function (%s, line %d).\n",__FILE__,__LINE__);
00123 }
00124 }
00125 }
00126
00127
00128
00129
00130
00131
00132
00133
00134
00135
00136
00137
00138
00139
00140
00141 void medc3::matcond_l (matrix &d,long ri,long ci,long ipp)
00142 {
00143 long i;
00144
00145 i = Cml->ip[ipp].idm;
00146
00147 switch (Cp->mednam){
00148 case mech_heat_moisture:{
00149
00150 switch (Cml->ip[ipp].tm){
00151 case concreteBc:
00152 case baroghelBc:
00153 case C60baroghelBc:
00154 case C30baroghelBc:
00155 case o30bazantBc:
00156 case C60bazantBc:{
00157 multiphc mtphc;
00158 mtphc.matcond_l(d,ri,ci,ipp);
00159 break;
00160 }
00161 case glasgowc:{
00162
00163 break;
00164 }
00165
00166 default:{
00167 fprintf (stderr,"\n\n unknown material type is required in function (%s, line %d).\n",__FILE__,__LINE__);
00168 }
00169 }
00170 break;
00171 }
00172 case mech_moisture_salt:{
00173 fillm(0.0, d);
00174 break;
00175 }
00176 default:{
00177 fprintf (stderr,"\n\n unknown media name is required in function (%s, line %d).\n",__FILE__,__LINE__);
00178 }
00179 }
00180 }
00181
00182
00183
00184
00185
00186
00187
00188
00189
00190
00191
00192 void medc3::matcap_l (matrix &d,long ri,long ci,long ipp)
00193 {
00194 long i;
00195
00196 i = Cml->ip[ipp].idm;
00197
00198 switch (Cp->mednam){
00199 case mech_heat_moisture:{
00200
00201 switch (Cml->ip[ipp].tm){
00202 case concreteBc:
00203 case baroghelBc:
00204 case C60baroghelBc:
00205 case C30baroghelBc:
00206 case o30bazantBc:
00207 case C60bazantBc:{
00208 multiphc mtphc;
00209 mtphc.matcap_l(d,ri,ci,ipp);
00210 break;
00211 }
00212 case glasgowc:{
00213
00214 break;
00215 }
00216
00217 default:{
00218 fprintf (stderr,"\n\n unknown material type is required in function (%s, line %d).\n",__FILE__,__LINE__);
00219 }
00220 }
00221 break;
00222 }
00223 case mech_moisture_salt:{
00224 fillm(0.0, d);
00225 break;
00226 }
00227 default:{
00228 fprintf (stderr,"\n\n unknown media name is required in function (%s, line %d).\n",__FILE__,__LINE__);
00229 }
00230 }
00231 }
00232
00233
00234
00235
00236
00237
00238
00239
00240
00241
00242
00243
00244
00245
00246
00247
00248
00249 void medc3::rhs_u1 (matrix &d,long ri,long ci,long ipp)
00250 {
00251 long i;
00252
00253 i = Cmu->ip[ipp].idm;
00254
00255 switch (Cp->mednam){
00256 case mech_heat_moisture:{
00257
00258 switch (Cmu->ip[ipp].tm){
00259 case concreteBc:
00260 case baroghelBc:
00261 case C60baroghelBc:
00262 case C30baroghelBc:
00263 case o30bazantBc:
00264 case C60bazantBc:{
00265 multiphc mtphc;
00266 mtphc.rhs_u1(d,ri,ci,ipp);
00267 break;
00268 }
00269 case glasgowc:{
00270
00271 break;
00272 }
00273
00274 default:{
00275 fprintf (stderr,"\n\n unknown material type is required in function (%s, line %d).\n",__FILE__,__LINE__);
00276 }
00277 }
00278 break;
00279 }
00280 default:{
00281 fprintf (stderr,"\n\n unknown media name is required in function (%s, line %d).\n",__FILE__,__LINE__);
00282 }
00283 }
00284 }
00285
00286
00287
00288
00289
00290
00291
00292
00293
00294 void medc3::rhs_volume (matrix &d,long ri,long ci,long ipp)
00295 {
00296 long i;
00297
00298 i = Cmu->ip[ipp].idm;
00299
00300 switch (Cp->mednam){
00301 case mech_heat_moisture:{
00302
00303 switch (Cmu->ip[ipp].tm){
00304 case concreteBc:
00305 case baroghelBc:
00306 case C60baroghelBc:
00307 case C30baroghelBc:
00308 case o30bazantBc:
00309 case C60bazantBc:{
00310 multiphc mtphc;
00311 mtphc.rhs_u2(d,ri,ci,ipp);
00312 break;
00313 }
00314 case glasgowc:{
00315
00316 break;
00317 }
00318
00319 default:{
00320 fprintf (stderr,"\n\n unknown material type is required in function (%s, line %d).\n",__FILE__,__LINE__);
00321 }
00322 }
00323 break;
00324 }
00325 default:{
00326 fprintf (stderr,"\n\n unknown media name is required in function (%s, line %d).\n",__FILE__,__LINE__);
00327 }
00328 }
00329 }