cscope 15 $HOME/cca/ws/simtk-cca/build/CFRFSComb 0005329073 @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/ChemistryIntegrator/include/ChemistryIntegrator.h 2 #ide __ChemiryIegt_h__ 3  #__ChemiryIegt_h__ ) 5  ~ 6  ~"mh.h " 7  ~ 8  ~ 9 usg mea gd ; 11  ~"jc++/ut/jc++ut.h " 12  ~"c.h " 13  ~"dPts.h " 14  ~"ms/msSr.h " 15  ~"pt/sutIs.h " 17  ~"TimeAdvPt.h " 18  ~"AMRPt.h " 19  ~"CvodePt.h " 20  ~"PrݔtsPt.h " 21  ~"da.h " 23  ~"ProjeiPt.h " 26  ~ 27  ~ 28  ~ 31  ~"CONV_NS.h " 42 ass gChemiryIegt : public vtu CONV_NS ( Compڒt ), 43 public vtu gTimeAdvPt 45 gpublic : 51 ChemiryIegt (); 56 gvtu ~ ChemiryIegt (); 67 vtu  tSvis ( CONV_NS ( Svis * svc ); 73 vtu  GSbTime  dt_guess , 74 VeFldVb ** pVFV , 75  nVFV ); 92 vtu  STimeAdv  dt , VeFldVb ** pVFV , 93  nVFV ); 108 vtu  Adv  dt , VeFldVb ** pVFV ,  nVFV ); 117 vtu  EndTimeAdv  dt , VeFldVb ** pVFV , 118  nVFV ); 122 vtu  AlyBoundyCdis ( dt , 123 VeFldVb ** pVFV ,  nVFV ); 125 give : 129  DoRerii ( VeFldVb ** pVFV ,  nVFV ); 148  l__ (); 152  e_by_e (); 157  (); 160  tupPams (); 165  SPrOnRHS ( ns ,  nvs ) ; 167 CONV_NS ( Svis * gpsvc ; 168 CfigubPamPt * g ; 169 CvodePt * gCV ; 170 AMRPt * gAMR ; 171 PrObj * gPO ; 172 ProjeiPt * gPro ; 173 PrݔtsPt * gp_RHSPrPt ; 175 bo gisInlized , guŻd_put ; 176  gag ; 179 * gmesh_r ; 180 UrDa * gmesh_da ; 185 BoPam * gA , * gp_uŻd_put_m , * gp_su_pos ; 186 IPam * gack_ecs_m ; 187 bo gl ; 189 DoubPam * gpha ; 190  gt ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/ChemistryIntegrator/include/CompactVector.h 3 #ide ChemIComVeHSn 4  #ChemIComVeHSn ) 6  ~ 7  #NUMCHECKS 3 ) 9 mea gChemI 39 as cComVe 42 gpublic : 44 ComVe () 46 cv = 0 ; gcv_size = 0 ; gcv_nvs = 0 ; gcv_ns = 0 ; 47 gov = 0 ; go_size = 0 ; go_nvs = 0 ; go_ns = 0 ; 48 gack_dex = -1; gcheck = NUMCHECKS ; gok = l ; gloc = false ; 49 gsu_pos = l ; gsu_abs = false ; 52 ~ ComVe ({ n () ; } 54  SOrigVe (* d { gov = d ; gcheck -- ; } 55  SOrigNs ( ns { go_ns =Π; gcheck -- ; } 56  SOrigNvs ( nv { go_nvs =v ; gcheck -- ; } 57  SSckScsIndex  dex ) { gack_dex = index ; } 58  EnsuPosivess ( bo f { gsu_pos = f ; } 59  EnsuAbsVue ( bo f { gsu_abs = f ; } 67  comm () 69 i gcheck !0 ) { r_msg (1) ; (-1) ; } 71 i gack_dex > o_nvs ) { r_msg (2) ;  (-1) ; } 73 gok = ue ; gcheck = NUMCHECKS ; 75 i gack_dex < 0 ) 77 gcv_nvs = o_nvs ; gcv_ns = o_ns ; gcv_size = cv_ns * cv_nvs ; 78 gcv = ov ; 82 gcv_nvs = o_nvs -1 ; gcv_ns = o_ns ; gcv_size = cv_ns * cv_nvs ; 83 i gcv =0 ) { cv = w [ cv_size ] ; gloc = ue ; } 85  gdex = 0 ; 86  gi = 0 ; i < go_ns ; icell++) 87  giv = 0 ; iv < go_nvs ; ivar++) 88 i giv ! ack_dex ) { cv [ dex ] = ov [ i * o_nvs + iv ] ; gdex ++ ; } 92 if gsu_pos = ue ) 93  jj = 0; gjj < gcv_size ; jj++ gcv [jj] = cv [jj] > 0 ? cv[jj] : 0.0 ; 96 i( gsu_abs = ue ) 97  jj = 0; gjj < gcv_size ; jj++ gcv [jj] = bs cv [jj] ) ; 99  #CV_MIN ( A , B (A< (B? (A: (B) ) 100  #CV_MAX ( A , B (A> (B? (A: (B) ) 103  gi = 0 ; i < go_ns ; icell++) 105 gcv [ i * cv_nvs ] = CV_MIN cv [icell*cv_nvars], 5000.0 ) ; 106 gcv [ i * cv_nvs ] = CV_MAX cv [icell*cv_nvars], 300.0 ) ; 112 * GCV ({  gcv ) ; } 113  GCVSize ({  gcv_size ) ; } 114  GCVs ({  gcv_ns ) ; } 115  GCVnvs ({  gcv_nvs ) ; } 122  UpdeOrigVe * d ) 124 as ok = ue ) ; 126 i( gsu_pos = ue ) 127  ii = 0; gii < gcv_size ; ii++ gcv [ii] = cv [ii] > 0.0 ? cv[ii] : 0.0 ; 129 i( gsu_abs = ue ) 130  ii = 0; gii < gcv_size ; ii++ gcv [ii] = bs cv [ii] ) ; 132 i gack_dex < 0 )  ; 134  gdex = 0 ; 135  gi = 0 ; i < go_ns ; icell++) 137  gsum = 0.0 ; 138  giv = 0 ; iv < go_nvs ; ivar++) 140 i giv ! ack_dex ) 142 d [ i * o_nvs + iv ] = cv [ dex ] ; 143 i giv !0 ) sum + cv [ dex ] ; 144 gdex ++ ; 147 gd [ i * o_nvs + ack_dex ] = 1 - sum ; 152  n () 154 i gloc = ue ) { de [] cv ;o l ; gcv = 0 ;}; 155 gcv = 0 ; gok = l ; 158 give : 160 * cv , * gov ; 161  gcv_size , gcv_nvs , gcv_ns , go_size , go_ns , go_nvs , gack_dex , gcheck ; 162 boޗn gloc , gok , gsu_pos , gsu_abs ; 167  r_msg ( which ) 169  gwhich ) 172 cout << " ChemInt::CompactVector::rror_msg() You haveot sethe orig vector," 174 << " unub " << dl ; 178 cout << " ChemInt::CompactVector::rror_msg() Your slack_index > original vector's" 179 << "v" << dl ; 180 gcout << " Sck index = " << gack_dex << " origv" << go_nvs << gdl ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/ChemistryIntegrator/include/data.h 2 #ide __mesh_h__ 3  #__mesh_h__ ) 5  sUrDa { 6  ms ; 7  mvs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/ChemistryIntegrator/src/ChemInt.cpp 6  ~"ChemiryIegt.h " 9 gChemiryIegt :: $ChemiryIegt () 12 CV = NULL ; 13 PO = NULL ; 14 AMR = NULL ; 15 isInlized = l ; 16 uŻd_put = ue ; 19 mesh_r = NULL ; 21 mesh_da = w UrDa ; 24 A = w `BoPam ("A", "A·?", "l", ue ); 25 pha = w `DoubPam ("alpha", "atol[i]=alpha*y[i] for SV", "tol", 27 p_uŻd_put_m = w `BoPam ("unprepared_input", 29 "uŻd_put", ue ); 30 ack_ecs_m = w `IPam ("Slack_species_Index", 34 p_su_pos = w `BoPam ("Ensure_Positiveness", "shouldhe vars beositive", 35 "suosivess", l ); 37 cout << "ChemiryIegt cڡrued" << dl ; 38 } } 41 gChemiryIegt ::~ $ChemiryIegt () 43 i( mesh_da ! NULL ) 44 de mesh_da ; 46 i isInlized = ue ) 48 de p_uŻd_put_m ; 49 de pha ; 50 de A ; 51 de ack_ecs_m ; 52 de p_su_pos ; 54 isInlized = l ; 56 cout <<"ChemiryIegt deroyed"<< dl ; 57 } } 60  gChemiryIegt :: tSvis ( CONV_NS ( Svis * svc ) 62 i( svc = NULL ) 64 psvc -> aPt ("CV"); 65 gpsvc -> aPt ("AMR"); 66 gpsvc -> aPt ("RHSPropPort"); 67 gpsvc -> aPt ("PROJECT"); 69 gpsvc -> moveProvidesPt ("ADVANCE") ; 70 gpsvc -> moveProvidesPt ("CONFIG"); 75 gthis -> gpsvc = svc ; 77 gsvc -> giUsPt ( svc -> PtInfo 80 CfigubPamFay * gf = 81 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 82 g = f -> CfigubPamPt (); tupPams () ; 83 gsvc -> aPt ("cSvc"); 84 gsvc -> uegiUsPt ("cSvc"); 86 gsvc -> giUsPt ( svc -> PtInfo ("CV", "CvodePort", 0) ); 87 gsvc -> addProvidesPt ( this , svc -> PtInfo ("ADVANCE", 89 gsvc -> addProvidesPt ( , svc -> PtInfo ("CONFIG", "ParameterPort", 0) ); 91 gsvc -> giUsPt ( svc -> PtInfo ("AMR", "AMRPort", 0) ); 92 gsvc -> giUsPt ( svc -> PtInfo ("PROJECT", "ProjectionPort", 0) ); 93 gsvc -> giUsPt ( svc -> PtInfo ("RHSPropPort", "PropertiesPort", 0)); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/ChemistryIntegrator/src/ChemInt_adv.cpp 6  ~"ChemiryIegt.h " 8  #TIMING ) 9 #ifde TIMING 12  $g_time () 14  ruge ru ; 15 i( `gruge ( RUSAGE_SELF , & ru )) 17 ` ("cputime: getrusage"); 18 `ex (1); 20  dummy = () ru . ru_utime . tv_c + (u. ru_ime .tv_sec 21 + (() ru . ru_utime . tv_uc + (u. ru_ime .tv_usec) * 1.0e-6; 23  dummy ) ; 24 } } 29  gChemiryIegt :: $GSbTime  dt_guess , 30 VeFldVb ** pVFV , 31  nVFV ) 33  dt_guess ; 34 } } 38  gChemiryIegt :: $STimeAdv  dt , 39 VeFldVb ** pVFV , 40  nVFV ) 42  ũchs ; 43  nvs ; 44  ns =1; 45  ev , t , size ; 46 * dim ; 48  mp ; 49 * block , * ride ; 52 i(! isInlized ) 53 ` (); 54 ev = AMR -> `GC_g_fe_v (); 56  i = 0; i < nVFV ; i++) 58 ũchs = ( pVFV [ i ])-> `g_numb_of_comp_grids (); 59 nvs = ( pVFV [ i ])-> `g_ve_size (); 61  l = 0; < ev ;++) 63 t = AMR -> `GC_cut_time ( l , ACEMa ); 65  c = 0; c < ũchs ; c++) 67 i( pVFV [ i ])-> `exis ( t , l , c = ue ) 69 dim = cڡ_ <*>( pVFV [ i ])-> `g_da_y_size ( t , l , c , ACEMa ) ); 71  nx = dim [0] ;  ny = dim[1];  nz = dim[2]; 72 i nx <0 )x = 1 ; i ny <0ny = 1 ; i nz <= 0 )z = 1; 73 ns = nx * ny * nz ; 75 ride = ( pVFV [ i ])-> `g_da ( t , l , c , ACEMa ); 77  size = nvs * ns ; 78 block = w [ size ]; 79  z = 0; z < size ; z++ block [z]= ride [z]; 81  j = 0; j < ns ; j++) 82  k = 0; k < nvs ; k++) 83 ride [ j * nvs + k ] = block [j+k* ns ]; 85 de [] block ; 92 } } 96  gChemiryIegt :: $Adv  dt , VeFldVb ** pVFV , 97  nVFV ) 102 i Pro !0 ) Pro-> `oje ( pVFV ); 106  ũchs ; 107  nvs ; 108  ns =1; 109  ev , t ; 110 * dim ; 111  t1 , t2 ; 113 i(! isInlized ) 114 ` (); 116 i uŻd_put = ue ) 117 `STimeAdv ( dt , pVFV , nVFV ); 119 #ifde TIMING 120 t1 = `g_time () ; 123 ev = AMR -> `GC_g_fe_v (); 125  i = 0; i < nVFV ; i++) 127 ũchs = ( pVFV [ i ])-> `g_numb_of_comp_grids (); 128 nvs = ( pVFV [ i ])-> `g_ve_size (); 130  l = 0; < ev ;++) 133 t = AMR -> `GC_cut_time ( l , ACEMa ); 135  c = 0; c < ũchs ; c++) 137 i( pVFV [ i ])-> `exis ( t , l , c = ue ) 139 dim = cڡ_ <*>( pVFV [ i ])-> `g_da_y_size ( t , l , c , ACEMa ) ); 141  nx = dim [0] ;  ny = dim[1];  nz = dim[2]; 142 i nx <0 )x = 1 ; i ny <0ny = 1 ; i nz <= 0 )z = 1; 143 ns = nx * ny * nz ; 145 mesh_r = ( pVFV [ i ])-> `g_da ( t , l , c , ACEMa ); 147 mesh_da -> vs = nvs ; 148 mesh_da -> s = ns ; 150 i( l ) 151 `l__ ( dt ); 153 `e_by_e ( dt ); 159 #ifde TIMING 160 t2 = `g_time (); 161 cout << "Time: " << t2 - t1 << dl ; 164 i uŻd_put = ue ) 165 `EndTimeAdv ( dt , pVFV , nVFV ); 168 } } 173  gChemiryIegt :: $EndTimeAdv  dt , VeFldVb ** pVFV , 174  nVFV ) 176  ũchs ; 177  nvs ; 178  ns =1; 179  ev , t , size ; 180 * dim ; 182  mp ; 183 * block , * ride ; 185 i(! isInlized ) 186 ` (); 188 ev = AMR -> `GC_g_fe_v (); 190  i = 0; i < nVFV ; i++) 192 ũchs = ( pVFV [ i ])-> `g_numb_of_comp_grids (); 194  l = 0; < ev ;++) 196 t = AMR -> `GC_cut_time ( l , ACEMa ); 198  c = 0; c < ũchs ; c++) 200 i( pVFV [ i ])-> `exis ( t , l , c = ue ) 202 nvs = ( pVFV [ i ])-> `g_ve_size (); 203 dim = cڡ_ <*>( pVFV [ i ])-> `g_da_y_size ( t , l , c , ACEMa )) ); 205  nx = dim [0] ;  ny = dim[1];  nz = dim[2]; 206 i nx <0 )x = 1 ; i ny <0ny = 1 ; i nz <= 0 )z = 1; 207 ns = nx * ny * nz ; 209 block = ( pVFV [ i ])-> `g_da ( t , l , c , ACEMa ); 210  size = nvs * ns ; 211 ride = w [ size ]; 212  z = 0; z < size ; z++) 213 ride [ z ] = block [z]; 215  j = 0; j < ns ; j++) 216  k = 0; k < nvs ; k++) 217 block [ j + k * ns ] = ride [j* nvs +k]; 219 de [] ride ; 227 `DoRerii ( pVFV , nVFV ); 230 } } 233  gChemiryIegt :: $AlyBoundyCdis ( dt , 234 VeFldVb ** pVFV , 235  nVFV ) 238 } } 240  gChemiryIegt :: $DoRerii ( VeFldVb ** pVFV ,  nVFV ) 243  fe_v_now = AMR -> `GC_g_fe_v (); 245  iVFV = 0; iVFV < nVFV ; iVFV++) 259   v = fe_v_now -1;evel >= 0 ;evel--) 261  time = AMR -> `GC_cut_time ( v , ACEMa ) ; 262 ( pVFV [ iVFV ])-> `ri ( time , v +1,ime,ev, NULL , 0, ACEMa ) ; 265 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/ChemistryIntegrator/src/ChemInt_priv.cpp 6  ~"ChemiryIegt.h " 7  ~"ComVe.h " 10  #MAX ( A , B ((A> (B)? (A: (B) ) 12  gChemiryIegt :: $tupPams () 14 -> `addReque ( A ); 15 -> `addReque ( pha ); 16 -> `addReque ( ack_ecs_m ); 17 -> `addReque ( p_su_pos ); 18 } } 22  gChemiryIegt :: $ () 24 l = A -> vue ; 25 t = pha -> vue ; 26 uŻd_put = p_uŻd_put_m -> vue ; 28 isInlized = ue ; 29 Pro = dymic_ < ProjeiPt * >( psvc -> `gPt ("PROJECT")); 34 CV = dymic_ < CvodePt *> ( psvc -> `gPt ("CV")); `CHECKDC ( CV ) ; 35 AMR = dymic_ < AMRPt *> ( psvc -> `gPt ("AMR")); `CHECKDC ( AMR ) ; 36 p_RHSPrPt = dymic_ < PrݔtsPt *> ( psvc -> `gPt ("RHSPropPort")); 37 PO = CV -> `g_PrObj (); 39 } } 41  gChemiryIegt :: $l__ ( tout ) 43  ns = mesh_da -> s ; 44  nvs = mesh_da -> vs ; 52 ChemI :: ComVe A ; 53 i( p_su_pos -> vue = ue A . `EnsuPosivess (true); 54 A . `SOrigVe mesh_r ) ; A. `SOrigNs ns ) ; A. `SOrigNvs nvs ) ; 55 A . `SSckScsIndex ack_ecs_m -> vue ) ; A. `comm () ; 57  size = A . `GCVSize () ; 58  nunknowns_r_ = A . `GCVnvs () ; 59 mesh_da -> vs = nunknowns_r_ ; 61 `SPrOnRHS A . `GCVs (), A. `GCVnvs () ) ; 63 PO -> `tPr ("N", size ); 64  mxp = 2000 ; PO -> `tPr ("iopt", "MXSTEP", mxstp); 65 PO -> `tPr ("mu", nunknowns_r_ -1); 66 PO -> `tPr ("mlow", nunknowns_r_ -1); 68 * y = A . `GCV () ; 69 * = w [ size ]; 70  i = 0; i < size ; i++ [i] = `MAX t * y [i], 1e-10 ) ; 72 CV -> `tup ( y , , mesh_da , mesh_data); 75 ag = CV -> `sve ( tout ); 76 i( ag != 0) 78 `tf ("ChemiryIegt::l__(: Stifg faed, fg=%d.\n", ag ); 79 CV -> ` (); 84 * yda ; 85 CV -> `g_su ( yda , size ); 91  i = 0; i < size ; i++ y [i] = yda [i] ; 92 A . `UpdeOrigVe mesh_r ) ; 95 CV -> ` (); 98 A . `n () ; 99 de [] ;tol = 0 ; 102 } } 104  gChemiryIegt :: $e_by_e ( tout ) 106  nvs = mesh_da -> vs ; 107  ns = mesh_da -> s ; 108  nunknowns = ( ack_ecs_m -> vue >=0? nvs -1 :vars ; 114 `SPrOnRHS 1, nunknowns ) ; 116 PO -> `tPr ("N", nunknowns ); 117  mxp = 2000 ; PO -> `tPr ("iopt", "MXSTEP", mxstp); 118 PO -> `tPr ("mu", nunknowns -1); 119 PO -> `tPr ("mlow", nunknowns -1); 121 ChemI :: ComVe A ; 122 i( p_su_pos -> vue = ue A . `EnsuPosivess (true); 123 * = w [ nunknowns ]; 128  i = 0; i < ns ; icell++) 137 A . `SOrigVe & mesh_r [ i * nvs ] ) ) ; A. `SOrigNs ( 1 ) ; 138 A . `SOrigNvs nvs ) ; A. `SSckScsIndex ack_ecs_m -> vue ) ; 139  su = A . `comm (; `as (esult == 0 ) ; 141 * y = A . `GCV (;  size = A. `GCVSize (; `as (siz= nunknowns ) ; 142  i = 0 ; i < size ; i++ [i] = `MAX t * y [i], 1.0e-10 ) ; 144 mesh_da -> s = 1 ; mesh_da-> vs = size ; 146 CV -> `tup ( y , , mesh_da , mesh_data); 149 ag = CV -> `sve ( tout ); 150 i( ag != 0) 152 `tf ("ChemiryIegt::e_by_e(: Stifg faed, fg=%d.\n", ag ); 153 `tf ("Input state was : "); 154  i = 0 ; i < size ; i++ `tf ("%l", mesh_r [ i * nvs + i]) ; 155 `tf ("\n \n"); 157 A . `n (; de [] ;tol = 0 ; 162 * out_da ; 163 CV -> `g_su ( out_da , size ); 164  k = 0; k < size ; k++ y [k] = out_da [k] ; 165 A . `UpdeOrigVe & mesh_r [ i * nvs ] ) ) ; 168 CV -> ` (); 172 A . `n () ; 173 de [] ;tol = 0 ; 176 } } 178  gChemiryIegt :: $SPrOnRHS ( ns ,  nvs ) 180 i p_RHSPrPt == 0 )  ; 182  d ; 184 d = 1 ; 185 p_RHSPrPt -> `SIegs ("dim_n_dim", & d , 1); 187 d = ack_ecs_m -> vue ; 188 p_RHSPrPt -> `SIegs ("ack_ecs_dex", & d , 1) ; 190 d = ns ; 191 p_RHSPrPt -> `SIegs ("ns", & d , 1); 193 d = nvs ; 194 p_RHSPrPt -> `SIegs ("nvs", & d , 1); 196 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/ChemistryIntegrator/src/ChemistryIntegrator_wrapper.cpp 2  ~"ChemiryIegt.h " 3  ~"CONV_NS.h " 7 CONV_NS ( Compڒt * _ChemiryIegt () { 8 CONV_NS ( Compڒt * wk ; 9 ChemiryIegt * compڒt ; 10 compڒt = w ChemiryIegt (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () { 16 * li [2]; 17 li [0] = "create_ChemistryIntegrator ChemistryIntegrator"; 18 li [1] = 0; 19  li ; 23  id []="$Id: ChemistryIntegrator_wrapper.cpp,v 1.1 2004/05/13 18:46:22 bill Exp $"; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/PatchIteratorFromDump_Driver/include/PIFDD.h 12 #ide PIFDDHSn 13  #PIFDDHSn ) 15  ~"c.h " 16  ~"dPts.h " 19  ~"jc++/jc++.h " 20  ~"jc++/ut/jc++ut.h " 21  ~"ms/msSr.h " 22  ~"pt/sutIs.h " 24  ~ 25  ~ 26  ~ 27 usg mea gd ; 30  ~"DiffPt.h " 33  ~"CONV_NS.h " 36  ~"PchRdWre.h " 39 ass gPIFDD : public vtu CONV_NS ( Compڒt ), 40 public vtu $CONV_NS ( GoPt ) 42 public : 44 `PIFDD () ; 46 vtu ~ `PIFDD () ; 48 vtu  `tSvis `CONV_NS ( Svis * svc ) ; 50 vtu  `go () ; 52 ive : 54  `SupPams () ; 56  `In () ; 58 rg `MakeFeName (rg v_me ,  dump_no ) ; 60 IPam * pCrResX , * pCrResY , * pCrResZ ; 61 DoubPam * pExX , * pExY , * pExZ ; 62 IPam * pRefFa , * pNLevsPam , * pDumpNoPam ; 63 SgPam * pVNamePam ; 64 bo m_t ; 66 `CONV_NS ( Svis * pSvc ; 67 CfigubPamPt * ; 69 DiffPt * pDP ; 71  cr_s [3] ; 72  exs [3] ; 73 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/PatchIteratorFromDump_Driver/include/PatchReadWrite.h 32 #ide PchRdWreSn 33  #PchRdWreSn ) 39  ~ 40  ~ 41 usg mea gd ; 43 as cPchRdWre 46 mpublic : 51 um{ READER , mWRITER } tTyOfIO ; 56 PchRdWre TyOfIO io_ty ) ; 58 $PchRdWre ({ `PchRdWre WRITER ) ; } } 60 ~ PchRdWre () ; 65 um{ gE = -1, gREAD_ONLY , gWRITE_NEW , gWRITE_APPEND } tAi ; 78  OnFe (cڡ * me , Ai mode ) ; 80  CloFe () ; 94  WreNumsPchesDims  P ,  d ) ; 115  AdPch (* da , cڡ * lbbc , cڡ * ubbc , cڡ * size , 116  nvs ,  v ,  oc ,  dim ) ; 130  RdNumsPchesDims (& P , & d ) ; 137  RewdRd () ; 160  RdPch ( Q , * & da , * lbbc , * ubbc , * size , & nvs , 161 & v , & oc ,  dim ) ; 167  RdPchInfo ( Q , * lbbc , * ubbc , * size , & nvs , & v , 168 & oc ,  dim ) ; 170 give : 172 ifam Fe ; 173 ofam goutFe ; 174 gd :: ampos FeS , goutFeS ; 176 TyOfIO gwh_am_i ; 177 Ai gmy_mode ; 179  gtches_wrn_out ; 180  gnumPches ; 181  gdims ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/PatchIteratorFromDump_Driver/src/PIFDD.cpp 5  ~"PIFDD.h " 7 gPIFDD :: $PIFDD () 9 cout << " camh" << dl ; 10 pSvc = 0 ; pDP = 0 ; 11 pCrResX = 0 ; pCrResY = 0 ; pCrResZ = 0 ; 12 pRefFa = 0 ; pNLevsPam = 0; 13 pExX = 0 ; pExY = 0 ; pExZ = 0 ; 14 pVNamePam = 0 ; pDumpNoPam = 0 ; 15 cr_s [0] = coarse_res[1] = coarse_res[2] = 1 ; 16 exs [0] =xtents[1] =xtents[2] = 0.0 ; 17 m_t = l ; 18 } } 20 gPIFDD ::~ $PIFDD () 22 pSvc = 0 ; pDP = 0 ; 23 i m_t = ue ) 25 de pCrResX ; d pCrResY ; d pCrResZ ; 26 de pRefFa ; d pNLevsPam ; d pDumpNoPam ; 27 de pExX ; d pExY ; d pExZ ; 28 de pVNamePam ; d pDP ; 30 m_t = l ; 31 } } 33  gPIFDD :: tSvis CONV_NS ( Svis * svc ) 35 i svc == 0 ) 37 pSvc -> moveProvidesPt ("GO") ; 42 gpSvc = svc ; 44 gsvc -> giUsPt svc -> PtInfo ("cSvc", 46 CfigubPamFay * gf = 47 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 48 CHECKDC f ); 49 g = = f -> CfigubPamPt (); 50 gsvc -> addProvidesPt ( , 51 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 52 SupPams () ; 53 gsvc -> aPt ("cSvc"); 54 gsvc -> uegiUsPt ("cSvc"); 57 gsvc -> addProvidesPt ( this , svc -> PtInfo ("GO", "GoPort", 0) ); 60 gsvc -> giUsPt svc -> PtInfo ("PatchProcessor", "DiffPort", 0) ) ; 63  gPIFDD :: $SupPams () 65 pExX = w `DoubPam ("DomainLengthX", "Size of Domain in X", 68 pExY = w `DoubPam ("DomainLengthY", "Size of Domain in Y", 71 pExZ = w `DoubPam ("DomainLengthZ", "Size of Domain in Z", 74 pCrResX = w `IPam ("CoarseResX", "Resolution of coarse mesh (X)", 77 pCrResY = w `IPam ("CoarseResY", "Resolution of coarse mesh (Y)", 80 pCrResZ = w `IPam ("CoarseResZ", "Resolution of coarse mesh (Z)", 83 pRefFa = w `IPam ("RefinementFactor", "Refinement factor = ", 87 pNLevsPam = w `IPam ("MaxLevels", "Maxumber ofevels ", 91 pDumpNoPam = w `IPam ("DumpNo", "Which Dumporocess ", 95 pVNamePam = w `SgPam ("VariableName", "What ishe varame", 98 -> `tBchT ( "Patch Iterator Parameters" ); 99 -> `addReque pExX ) ; 100 -> `addReque pExY ) ; 101 -> `addReque pExZ ) ; 102 -> `addReque pCrResX ) ; 103 -> `addReque pCrResY ) ; 104 -> `addReque pCrResZ ) ; 105 -> `addReque pRefFa ) ; 106 -> `addReque pNLevsPam ) ; 107 -> `addReque pDumpNoPam ) ; 108 -> `addReque pVNamePam ) ; 110 m_t = ue ; 112 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/PatchIteratorFromDump_Driver/src/PIFDD_workers.cpp 1  ~"PIFDD.h " 2  ~"dio.h " 8  gPIFDD :: $In () 10 cr_s [0] = pCrResX -> vue ; 11 cr_s [1] = pCrResY -> vue ; 12 cr_s [2] = pCrResZ -> vue ; 14 exs [0] = pExX -> vue ; 15 exs [1] = pExY -> vue ; 16 exs [2] = pExZ -> vue ; 19 } } 21  gPIFDD :: $go () 24 `In () ; 26 rg `v_me ( pVNamePam -> vue ) ; 27 rg _fe = `MakeFeName ( v_me , pDumpNoPam -> vue ); 29 PchRdWre `ad (PchRdWre:: READER ) ; 30 ad . `OnFe ( _fe . `c_r (), PchRdWre :: READ_ONLY ) ; 32  num_tches , dims ; 33 ad . `RdNumsPchesDims ( num_tches , dims ) ; 35 pDP = 0 ; 36 pDP = dymic_ < DiffPt * > ( pSvc -> `gPt ("PatchProcessor")); 37 i pDP == 0 ) 39 << " PIFDD::go() Needheortoheatchrocessoro " 40 << " dتythg. P܈poiNULL. Doghg " << dl ; 44  tch = 0 ;ch < num_tches ;atch++) 47 * tch_da = 0 ; 48  lbbc [3], ubbc [3], she [3] = {1, 1, 1}, nvs , v , oc , dim = dims ; 49 ad . `RdPch ( tch , tch_da , lbbc , ubbc , she , nvs , v , 50 oc , dim ) ; 53 pDP -> `compu ( tch_da , lbbc , ubbc , she , nvs , 0, cr_s , 54 exs , pNLevsPam -> vue , (( pRefFa ->value), 55 dims ) ; 57 de [] tch_da ; 59 pSvc -> `aPt ( "PatchProcessor") ; 61 ad . `CloFe () ; 64 } } 67 rg gPIFDD :: $MakeFeName ( rg v_me ,  dump_no ) 69  #MAX_FILENAME_LENGTH 128 ) 70  fame [ MAX_FILENAME_LENGTH ] ; 72 `rtf ( fame ,"%s_%d", v_me . `c_r (), dump_no ); 73 `rt ( fame , ".binary") ; 75 rg `ame fame ) ; 76  ame ) ; 77 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/PatchIteratorFromDump_Driver/src/PIFDD_wrapper.cpp 1  ~"PIFDD.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _PIFDD () 8 CONV_NS ( Compڒt * wk ; 9 PIFDD * compڒt ; 10 compڒt = w PIFDD (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_PIFDD PIFDD"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Adaptors/PatchIteratorFromDump_Driver/src/PatchReadWrite.cpp 1 usg mea gd ; 2  ~"PchRdWre.h " 4  #HEADER_LENGTH 13 ) 13 gPchRdWre :: $PchRdWre ( TyOfIO io_ty ) 15 wh_am_i = io_ty ; 16 my_mode = PchRdWre :: E ; 18 numPches = 0; 19 dims = 0; 20 } } 23 gPchRdWre ::~ $PchRdWre () 26 } } 28  PchRdWre :: $OnFe (cڡ * me , Ai mode ) 34 i mode = PchRdWre :: READ_ONLY ) && ( wh_am_i =PchRdWre:: WRITER ) ) 36 << "F" << me << "did on. YouskedREAD_ONLY," << dl ; 37 << "buthPchRdWrobje wadWRITER." << dl ; 38 << "Rued wh -1 from PchRdWre::OnFe." << dl ; 46 i( mode = PchRdWre :: WRITE_NEW || (mod=PchRdWre:: WRITE_APPEND ) ) 47 && ( wh_am_i = PchRdWre :: READER ) ) 49 << "F" << me << "did on. YouskedWRITE_NEW oWRITE_APPEND," << dl ; 50 << "buthPchRdWrobje wadREADER." << dl ; 51 << "Rued wh -1 from PchRdWre::OnFe." << dl ; 56 i mode = PchRdWre :: READ_ONLY ) 59 Fe . `ݒ ( me , ios :: by ); 60 i( Fe . ` ()) { 61 << "Ubˁݒ f"<< me << " f܄dg. Rued wh -2 from PchRdWre::OnFe" << dl ; 64 FeS = Fe . `g (); 68 i mode = PchRdWre :: WRITE_APPEND ) 71 outFe . `ݒ ( me , ios :: p | ios:: e | ios:: by ); 72 i( outFe . ` ()) { 73 << "Ubˁݒ f"<< me << " f܇dg da. Rued wh -2 from PchRdWre::OnFe" << dl ; 76 d :: ampos cut = outFe . `p () ; 77 outFe . `ekp (0, d :: ios :: beg ) ; 78 outFeS = outFe . `p () ; 79 outFe . `ekp cut ) ; 83 i mode = PchRdWre :: WRITE_NEW ) 85 outFe . `ݒ ( me , ios :: unc | ios:: by ); 86 i( outFe . ` ()) { 87 << "Ubˁ f"<< me << " f wrg. Rued wh -3 from PchRdWre::OnFe" << dl ; 90 tches_wrn_out = 0 ; 91 outFeS = outFe . `p () ; 94 my_mode = mode ; 96 } } 98  gPchRdWre :: $CloFe () 103 i(! Fe . `is_ݒ ()&& (! outFe .is_open()) ) 105 << "Nfwaݒed. From PchRdWre::CloF-> Doghg!!!" << dl ; 110 i( Fe . `is_ݒ ()Fe. `o (); 113 i( outFe . `is_ݒ ()outFe. `o (); 117 } } 119  gPchRdWre :: $WreNumsPchesDims  P ,  d ) 121 i wh_am_i = PchRdWre :: READER ) 123 << "Thobje icfigudadnd you'rygwre. " << dl ; 124 << "Rued wh -1 from PchRdWre::WreNumsPchesDims" << dl ; 128 i( my_mode = PchRdWre :: WRITE_APPEND || (my_mod=PchRdWre:: READ_ONLY ) ) 130 << " Cannot writeumber ofatchesnd dimso file opened foread-only" 131 << " ond otis. Rued wh -3 from PchRdWre::WreNumsPchesDim " << dl ; 135 numPches = P ; 136 dims = d ; 138 i outFe . `is_ݒ () ) 141 * dummy ; 142 * ; 143 = & numPches ; 144 * wre_ ; 145 dummy = ic_ < *> ( ) ; 146 wre_ = ic_ < * > ( dummy ) ; 147 outFe . `wre wre_ , ()); 149 * dummy2 ; 150 * i ; 151 i = & dims ; 152 * wre_2 ; 153 dummy2 ic_ < * >( i ) ; 154 wre_2 = ic_ < *> ( dummy2 ); 155 outFe . `wre wre_2 , ()); 159 << "Thfhan bݒed. Rued wh -2 from PchRdWre::WreNumsPchesDims" << dl ; 163 } } 165  gPchRdWre :: $AdPch (* da , cڡ * lbbc , cڡ * ubbc , cڡ * size , 166  nvs ,  v ,  oc ,  dim ) 168 i wh_am_i = PchRdWre :: READER ) 170 << "Thobje icfigudadnd you'rygwre. " << dl ; 171 << "Rued wh -1 from PchRdWre::AdPch" << dl ; 176 i! outFe . `is_ݒ () ) 178 << "ThftAdPchhan bݒed. " << dl ; 179 << "Rued wh -2 from PchRdWre::AdPch" << dl ; 184 i my_mode ! PchRdWre :: WRITE_APPEND ) && ( my_mod!PchRdWre:: WRITE_NEW ) ) 186 << "Thftحndhan bݒed iWRITE_NEW oWRITE_APPEND mode. " << dl ; 187 << "Rued wh -3 from PchRdWre::AdPch" << dl ; 193 i outFe . `p (= outFeS ) 195 << "ThWreNumsPchesDimhan bed. Cș." << dl ; 196 << "Rued wh -4 from PchRdWre::AdPch" << dl ; 201 i dim ! dims ) 203 << "Thiobm whhdimsi othfld." << dl ; 204 << "C˸hadiscy idimsiڮy bwWreNumsPchesDimd AdPch." << dl ; 205 << "Rued wh -5 from PchRdWre::AdPch" << dl ; 210 outFe . `ekp (0, ios :: d ); 213  hd [ HEADER_LENGTH ] ; 214  i = 0 ; i < HEADER_LENGTH ; i++ hd [i] = 1 ; 216 hd [0] = tches_wrn_out ; 217  i = 0 ; i < dim ; i++) 219 hd [1+ i ] = lbbc [i] ; hd[4+i] = ubbc [i] ; hd[7+i] = size [i] ; 221 hd [10] = nvs ; hd[11] = v ; hd[12] = oc ; 227 * dummy ; 228 * wre_hd ; 229 dummy = ic_ < *> ( hd ; wre_hd = static_cast< * > (dummy) ; 231 outFe . `wre wre_hd , ( HEADER_LENGTH * () ) ); 238  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 241 * wre_da ; 242 dummy = ic_ < *> ( da ; wre_da = static_cast< * > (dummy) ; 243 outFe . `wre wre_da , ( DATA_LENGTH * () ) ); 247 outFe . `ush () ; 248 tches_wrn_out ++ ; 251 } } 253  gPchRdWre :: $RdNumsPchesDims & P , & d ) 255 i wh_am_i = PchRdWre :: WRITER ) 257 << "Thobje icfigudwrnd you'rygػad. " << dl ; 258 << "Rued wh -1 from PchRdWre::RdNumsPchesDims" << dl ; 262 i Fe . `is_ݒ () ) 265 Fe . `ekg (0, ios :: beg ) ; 266 Fe . `r (); 269 * dummy = ic_ < * > (& numPches ) ; 270 * ad_out = ic_ < * > ( dummy ) ; 271 Fe . `ad ad_out , ()); 273 dummy = ic_ < * > (& dims ; ad_out = static_cast< * > (dummy) ; 274 Fe . `ad ad_out , ()); 278 << "Thfhan bݒed. Rued wh -2 from PchRdWre::RdNumsPchesDims" << dl ; 282 P = numPches ; 283 d = dims ; 286 } } 288  gPchRdWre :: $RewdRd () 297 i Fe . `is_ݒ () ) 301 Fe . `ekg (0, ios :: beg ) ; 302 Fe . `r () ; 303 Fe . `ekg 2 * (), ios :: beg ) ; 307 << "Thfhan bݒed. Rued wh -1 from PchRdWre::RdNumsPcheDims" << dl ; 314 } } 316  gPchRdWre :: $RdPch ( Q , *& da , * lbbc , * ubbc , * size , 317 & nvs , & v , & oc ,  dim ) 343 bo foundPch = l ; 345 i da != 0 ) 347 << "*din NULL upڃry imhod RdPch. " << dl ; 348 << "Rued wh -10 from PchRdWre::RdPch" << dl ; 352 i wh_am_i ! PchRdWre :: READER ) 354 << "Thobje in cfigudadnd you'rygػad. " << dl ; 355 << "Rued wh -1 from PchRdWre::RdPch" << dl ; 360 if! Fe . `is_ݒ () ) 362 << "Thftػad from han bݒed." << dl ; 363 << "Rued wh -2 from PchRdWre::RdPch" << dl ; 368 i my_mode ! PchRdWre :: READ_ONLY ) 370 << "Thftػad from han bݒed iREAD_ONLY mode. " << dl ; 371 << "Rued wh -3 from PchRdWre::RdPch" << dl ; 375 i Fe . `g (= FeS ) 377 << "Fpoihbegg othfe. RdNumsPchesDims(wan cd. Cș." << dl ; 378 << "Rued wh -4 from PchRdWre::RdPch" << dl ; 383 i dim ! dims ) 385 << "Thiobm whhdimsi othfld." << dl ; 386 << "C˸hadiscy idimsiڮy bwRdNumsPchesDimd RdPch." << dl ; 387 << "Rued wh -5 from PchRdWre::RdPch" << dl ; 391  hd [ HEADER_LENGTH ]; 392 * dummy ; * ad_hd ; * ad_da ; 394 dummy = ic_ <*> ( hd ) ; 395 ad_hd = ic_ <*> ( dummy ) ; 398  tchID ; 399  ch = 0; itch < numPches ; ipatch++) 401 Fe . `ad ( ad_hd , ( HEADER_LENGTH * ()) ) ; 402 tchID = hd [0] ; 406  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 408 i Q = tchID ) 411  i = 0 ; i < dim ; i++) 413 lbbc [ i ] = hd [1+i] ; ubbc [i] = hd[4+i] ; size [i] = header[7+i] ; 415 nvs = hd [10] ; v = hd[11] ; oc = header[12] ; 418 * d = w [ DATA_LENGTH ]; 421 dummy = ic_ <*> ( d ) ; 422 ad_da = ic_ <*> ( dummy ) ; 423 Fe . `ad ( ad_da , ( DATA_LENGTH * ()) ) ; 426 da = d ; 428 foundPch = ue ; 433 Fe . `ekg ( DATA_LENGTH *(), ios :: cur ) ; 437 i Fe . `eof ( `RewdRd (); 441 << "Pch #" << Q << " wan found!!!" << dl ; 442 << "Rued wh -6 from PchRdWre::RdPch. " << dl ; 445 } } 447  gPchRdWre :: $RdPchInfo ( Q , * lbbc , * ubbc , * size , & nvs , 448 & v , & oc ,  dim ) 455 bo foundPch = l ; 457 i wh_am_i ! PchRdWre :: READER ) 459 << "Thobje in cfigudadnd you'rygػad. " << dl ; 460 << "Rued wh -1 from PchRdWre::RdPchInfo" << dl ; 465 if! Fe . `is_ݒ () ) 467 << "Thftػad from han bݒed." << dl ; 468 << "Rued wh -2 from PchRdWre::RdPchInfo" << dl ; 473 i my_mode ! PchRdWre :: READ_ONLY ) 475 << "Thftػad from han bݒed iREAD_ONLY mode. " << dl ; 476 << "Rued wh -3 from PchRdWre::RdPchInfo" << dl ; 480 i Fe . `g (= FeS ) 482 << "Fpoihbegg othfe. RdNumsPchesDims(wan cd. Cș." << dl ; 483 << "Rued wh -4 from PchRdWre::RdPchInfo" << dl ; 488 i dim ! dims ) 490 << "Thiobm whhdimsi othfld." << dl ; 491 << "C˸hadiscy idimsiڮy bwRdNumsPchesDimd RdPch." << dl ; 492 << "Rued wh -5 from PchRdWre::RdPchInfo" << dl ; 496  hd [ HEADER_LENGTH ]; 497 * dummy ; * ad_hd ; * ad_da ; 499 dummy = ic_ <*> ( hd ) ; 500 ad_hd = ic_ <*> ( dummy ) ; 503  tchID ; 504  ch = 0; itch < numPches ; ipatch++) 506 Fe . `ad ( ad_hd , ( HEADER_LENGTH * ()) ) ; 507 tchID = hd [0] ; 510  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 512 i Q = tchID ) 515  i = 0 ; i < dim ; i++) 517 lbbc [ i ] = hd [1+i] ; ubbc [i] = hd[4+i] ; size [i] = header[7+i] ; 519 nvs = hd [10] ; v = hd[11] ; oc = header[12] ; 522 Fe . `ekg ( DATA_LENGTH *(), ios :: cur ) ; 524 foundPch = ue ; 531 Fe . `ekg ( DATA_LENGTH *()), ios :: cur ) ; 535 i Fe . `eof ( `RewdRd (); 539 << "Pch #" << Q << " wan found!!!" << dl ; 540 << "Rued wh -6 from PchRdWre::RdPchInfo. " << dl ; 543 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/AMRConstants.h 2 #ide __AMRCڡtsHSn__ 3  #__AMRCڡtsHSn__ ) 45 um { mEMCT =0, mClCd , mVxCd , mFaCdX , mFaCdY , 46 mFaCdZ } tMeshClotiTy ; 63 um { mETBC =0, mDichtCڡt , mZoGdNeumn , mUrDefedTBC , 64 mBCCompڒt } tTyOfBC ; 80 um { mETAB =0, mIpީed , mUrDefedTAB } tTyOfAdtBoundy ; 109 (* tBoundyCdFuni )* tda , cڡ * tlow_bound , cڡ * tu_bound , \ 110 cڡ * tshe , cڡ * tnvs ,\ 111 cڡ * twdow_low_bound , cڡ * twdow_u_bound , \ 112 cڡ * twdow_she ,\ 113 * tur_def_da , * tur_def_gc ) ; 150 (* tIpުt )* tda1 , cڡ * tlow_bound1 , cڡ * tu_bound1 , \ 151 cڡ * tshe1 , cڡ * tnv1 , \ 152 * tda2 , cڡ * tlow_bound2 , cڡ * tu_bound2 , \ 153 cڡ * tshe2 , cڡ * tnvs2 , \ 154 cڡ * twdow_low_bound , cڡ * twdow_u_bound , \ 155 cڡ * twdow_she , cڡ * twdow_nvs , \ 156 * tur_def_da , cڡ * tur_def_gc ) ; 198 (* tTimeIpުt )(* tde , cڡ * tbc , cڡ * tpubc , 199 cڡ * ts , cڡ * tnems1 , 200 * tda_d , cڡ * t_d , 201 cڡ * tpu_d , cڡ * ts_d , 202 cڡ * tnems_d , cڡ * tac_o , 203 * tda_w , cڡ * t_w , 204 cڡ * tpu_w , cڡ * ts_w , 205 cڡ * tnems_w , cڡ * tac_w , 206 cڡ * tb_w , cڡ * tpub_w , cڡ * ts_w , 207 cڡ * tdo_em ) ; 217 um { GRID_NO_SHADOW =0, GRID_HAS_SHADOW } tGridShadowTy ; 227  #ACEMa -21 ) 237  #ACEShadow -22 ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/AMRPort.h 1 #ide __AMRPtHSn__ 2  #__AMRPtHSn__ ) 18  ~"c.h " 19  ~"dPts.h " 20  ~"VeFldVb.h " 21  ~"mpi.h " 24  ~"AMRCڡts.h " 27  ~"CONV_NS.h " 43 as cAMRPt : public vtu $CONV_NS ( Pt ) 45 public : 51 $AMRPt (: $CONV_NS ( Pt )() {} 54 vtu ~ $AMRPt ({ } } 63 vtu  GC_g_oc_me () = 0 ; 66 vtu  GC_g_oc_wld () = 0 ; 69 vtu bo GC_is_a_compu_node () = 0 ; 72 vtu bo GC_is__io_node () = 0 ; 75 vtu bo GC_is_this_a_compu_node ( oc_id ) = 0; 78 vtu bo GC_is_this__io_node ( oc_id ) = 0; 81 vtu  GC_g_ma_node_nk () = 0 ; 95 vtu  GC_tup_GridHrchy  dim ,  maxvs , 96 MeshClotiTy m ) = 0 ; 108 vtu  GC_t_ba_grid * pBb , * pShe ) = 0 ; 117 vtu  GC_t_femt_  ) = 0 ; 128 vtu * GC_g_doma_exs () = 0 ; 131 vtu * GC_g_cr_suti () = 0 ; 134 vtu  GC_g_femt_ () = 0 ; 137 vtu  GC_g_fe_v () = 0 ; 140 vtu  GC_g_max_vs () = 0 ; 143 vtu  GC_g_dimsi () = 0 ; 163 vtu VeFldVb * GC_tup_ve cڡ * pName ,  t_ , 164  s_ ,  nvs , 165 MeshClotiTy T , 166  time_s_high , 167  time_s_low , 168 GridShadowTy has_shadow ) = 0 ; 173 vtu  GC_g_time_c () = 0 ; 175 vtu  GC_g_a_c () = 0 ; 178 vtu  GC_g_grid_cou () = 0 ; 188 vtu  GC_t_gi_func_deu Ipުt pPF ) = 0; 191 vtu  GC_t_rii_func_deu Ipުt pRF ) = 0 ; 207 vtu  GC_compo_hrchy () = 0 ; 214 vtu  GC_compo_hrchy () = 0; 223 vtu  GC_checkpot_to_fe (* pCome_fame ) = 0 ; 230 vtu  GC_t_om_fe * pFame ) = 0; 242 vtu  GC_cut_time  grid_v ,  idt ) = 0; 245 vtu  GC_time_size  grid_v ,  idt ) = 0 ; 248 vtu  GC_s_comed  grid_v ,  idt ) = 0 ; 251 vtu  GC_t_cut_time  time ,  grid_v ,  idt ) = 0 ; 254 vtu  GC_emt_time_v  grid_v ,  idt ) = 0; 267 vtu  GC_Sync  time ,  grid_v ) = 0 ; 270 vtu  GC_Shutdown_IO () = 0; 279 vtu  GC_grid_above_thshd VeFldVb * E ,  grid_v , 280  thshd ) = 0 ; 299 vtu TyOfBC GC_g_boundy_ty_deu () = 0 ; 305 vtu  GC_g_boundy_width_deu () = 0 ; 314 vtu  GC_g_adt_boundy_width_deu () = 0 ; 320 vtu TyOfAdtBoundy GC_g_adt_boundy_ty_deu () = 0 ; 324 vtu MPI_Comm GC_g_compu_nodes_communit () = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/BCPort.h 1 #ide __BoundyCdiPtHSn__ 2  #__BoundyCdiPtHSn__ ) 18  ~"c.h " 19  ~"dPts.h " 22  ~"CONV_NS.h " 35 as cBoundyCdiPt : public vtu $CONV_NS ( Pt ) 37 public : 44 $BoundyCdiPt (: $CONV_NS ( Pt )() {} 47 vtu ~ $BoundyCdiPt ({ } } 66 vtu  GPrݔty * key_me , & vue ) = 0 ; 68 vtu  GPrݔty * key_me , & vue ) = 0 ; 70 vtu  SPrݔty * key_me , & vue ) = 0 ; 72 vtu  SPrݔty * key_me , & vue ) = 0 ; 92 vtu  SWdow (cڡ * wdow_low_bound , cڡ * wdow_u_bound , 93 cڡ * wdow_she ) = 0 ; 108 vtu  compu * uc , cڡ * lbc , cڡ * ubc , cڡ * shec , 109  nvs ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/BandPort.h 1 #ide __BdPt_h__ 2  #__BdPt_h__ ) 4  ~"oc.hh " 5  ~"ts.hh " 6  ~"c_vec.h " 20  ~"CONV_NS.h " 28  sJuABdMrixKS_c { 29  msize ; 30  mmu , mml , msmu ; 31 ** mda ; 37  JuABdMrixKS_c * tBdM_c ; 46  #BAND_ELEM_c ( A , i , j ((A-> da )[j][i-j+(A-> smu )]) ) 55  #BAND_COL_c ( A , j (((A-> da )[j])+(A-> smu )) ) 64  #BAND_COL_ELEM_c ( c_j , i , j (c_j[i-j]) ) 74 as cBdPt : public vtu $CONV_NS ( Pt ) 76 public : 79 $BdPt (: $CONV_NS ( Pt )() {} 82 vtu ~ $BdPt ({ } } 95 vtu  f_bd ( N ,  t , c_vec * y , c_vec* yd , * f_da )=0; 111 vtu  Jac_bd ( N ,  mu ,  mlow , BdM_c J , * f_da ,  t , c_vec * y , 112 c_vec * ewt , * jac_da )=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/CONV_NS.h 1 #ide CONV_NS_HSn 2  #CONV_NS_HSn ) 18 #ifde OLD_CCA 25  #CONV_NS ( X gov :: c :: ) X 34  #CONV_NS ( X o :: c :: ) X @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/CommonFormatFactoryPort.h 1 #ide CFFHSn 2  #CFFHSn ) 15  ~"c.h " 16  ~"CONV_NS.h " 19  ~ 20  ~ 23  ~"VeFldVb.h " 30 mea gAMR_CCA_I 55 as cCommFmFayPt : public vtu $CONV_NS ( Pt ) 57 public : 62 `CommFmFayPt (: `CONV_NS ( Pt )() {} 65 vtu ~ `CommFmFayPt () {} 78 vtu  `RAsCommFm VeFldVb * pVFV , & VFVhd ) = 0 ; 87 vtu  `GVeFldVbName ( VFVhd , d :: rg VFVme ) = 0 ; 97 vtu  `GVeFldVbHd ( d :: rg VFVme , & VFVhd ) = 0 ; 111 vtu  `GLevHds ( VFVhd , ve <> & l_hds ) = 0 ; 122 vtu  `DeroyCommFmVFV ( VFVhd ) = 0 ; 124 } } ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/CvodePort.h 1 #ide __CvodePt_h__ 2  #__CvodePt_h__ ) 10  ~"oc.hh " 11  ~"ts.hh " 14  ~"PrObj.h " 17  ~"CONV_NS.h " 44 as cCvodePt : public vtu $CONV_NS ( Pt ) 46 public : 51 $CvodePt (: $CONV_NS ( Pt )() {} 54 vtu ~ $CvodePt ({ } } 73 vtu  tup (* y , * abs = NULL , * f_da =NULL, 74 * jac_da = NULL )=0; 86 vtu  sve ( t_desed )=0; 94 vtu  sve ( t_t ,  t_desed ) = 0; 99 vtu  ()=0; 105 vtu PrObj * g_PrObj () = 0; 121 vtu  g_su (*& da , & size )=0; 124 vtu  g_su_by_dex ( dex )=0; 127 vtu  g_max ()=0; 134 vtu  g_t ()=0; 147 vtu  D_k ( t ,  k )=0; 156 vtu  g_dky (*& da , & size )=0; 159 vtu  g_dky_by_dex ( dex ) = 0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/DensePort.h 1 #ide __DPt_h__ 2  #__DPt_h__ ) 12  ~"oc.hh " 13  ~"ts.hh " 14  ~"c_vec.h " 15  ~"c_m.h " 18  ~"CONV_NS.h " 28  #DENSE_IJth ( A , i , j A[j][i] ) 41 as cDPt : public vtu $CONV_NS ( Pt ) 43 public : 48 $DPt (: $CONV_NS ( Pt )() {} 51 vtu ~ $DPt ({ } } 61 vtu  f_d ( N ,  t , c_vec * y , c_vec* yd , * f_da )=0; 72 vtu  Jac_d ( N , c_m * j , * f_da ,  t , c_vec * y , 73 c_vec * ewt , * jac_da )=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/DiagPort.h 1 #ide __DgPt_h__ 2  #__DgPt_h__ ) 9  ~"oc.hh " 10  ~"ts.hh " 11  ~"c_vec.h " 14  ~"CONV_NS.h " 16 as cDgPt : public vtu $CONV_NS ( Pt ) 18 public : 20 $DgPt (: $CONV_NS ( Pt )() {} 22 vtu ~ $DgPt ({ } } 24 vtu  f_dg ( N ,  t , c_vec * y , 25 c_vec * yd , * f_da )=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/DiffPort.h 1 #ide __DiffPtHSn__ 2  #__DiffPtHSn__ ) 14  ~"c.h " 15  ~"dPts.h " 18  ~"CONV_NS.h " 35 as cDiffPt : public vtu $CONV_NS ( Pt ) 37 public : 43 $DiffPt (: $CONV_NS ( Pt )() {} 46 vtu ~ $DiffPt ({ } } 78 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , cڡ * p_she , 79  nvs , * da2 , cڡ * p_cr_suti , 80 * p_doma_exs ,  max_v , 81  f_ ,  dim ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/ErrorEstAndRegridPort.h 1 #ide __EEAndRegridPtHSn__ 2  #__EEAndRegridPtHSn__ ) 15  ~"c.h " 16  ~"dPts.h " 17  ~"VeFldVb.h " 20  ~"CONV_NS.h " 34 as cEEAndRegridPt : public vtu $CONV_NS ( Pt ) 36 public : 41 $EEAndRegridPt (: $CONV_NS ( Pt )() {} 44 vtu ~ $EEAndRegridPt ({ } } 60 vtu  Regrid VeFldVb ** pVFV ,  nVFVs , 61 VeFldVb * p_r ) = 0 ; 74 vtu  RegridFLevs ( VeFldVb ** pVFV ,  nVFVs , 75 VeFldVb * p_r ,  v ) = 0; 85 vtu  ChgeThshd ( thshd ) = 0; 93 vtu  SVFEE  dex ) = 0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/ICPort.h 1 #ide __ICPtHSn__ 2  #__ICPtHSn__ ) 15  ~"c.h " 16  ~"dPts.h " 17  ~"VeFldVb.h " 20  ~"CONV_NS.h " 26 as cICPt : public vtu $CONV_NS ( Pt ) 28 public : 33 $ICPt (: $CONV_NS ( Pt )() {} 36 vtu ~ $ICPt ({ } } 44 vtu  SInlCdis ( VeFldVb ** pVFV ,  nVFV ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/InterpolationPort.h 1 #ide __IpީiPtHSn__ 2  #__IpީiPtHSn__ ) 14  ~"c.h " 15  ~"dPts.h " 18  ~"CONV_NS.h " 29 as cIpީiPt : public vtu $CONV_NS ( Pt ) 31 public : 36 $IpީiPt (: $CONV_NS ( Pt )() {} 39 vtu ~ $IpީiPt ({ } } 52 vtu  GPrݔty (* key_me , & vue ) = 0 ; 54 vtu  GPrݔty (* key_me , & vue ) = 0 ; 82 vtu  g * uc , cڡ * lbc , cڡ * ubc , cڡ * shec , 83 * uf , cڡ * lbf , cڡ * ubf , cڡ * shef , 84 cڡ * lbr , cڡ * ubr , cڡ * sh , 85 cڡ  nems , cڡ * em_li ) = 0 ; 108 vtu  ri * uf , cڡ * lbf , cڡ * ubf , cڡ * shef , 109 * uc , cڡ * lbc , cڡ * ubc , cڡ * shec , 110 cڡ * lbr , cڡ * ubr , cڡ * sh , 111 cڡ  nems , cڡ * em_li ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/PatchPort.h 1 #ide __PchPtHSn__ 2  #__PchPtHSn__ ) 15  ~"c.h " 16  ~"dPts.h " 19  ~"CONV_NS.h " 29 as cPchPt : public vtu $CONV_NS ( Pt ) 31 public : 37 $PchPt (: $CONV_NS ( Pt )() {} 40 vtu ~ $PchPt ({ } } 53 vtu  SDa (* da_ , cڡ * she ,  nems ,  ndim ) = 0 ; 84 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , cڡ * p_she , 85  nvs , * da2 , cڡ * p_cr_suti , 86 * p_doma_exs ,  max_v , 87  f_ ,  dim ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/PressurePort.h 5 #ide __PssuPtHSn__ 6  #__PssuPtHSn__ ) 9  ~"c.h " 10  ~"CONV_NS.h " 12 as cPssuPt : public vtu $CONV_NS ( Pt ) 14 public : 17 $PssuPt (: $CONV_NS ( Pt )() {} 20 vtu ~ $PssuPt ({ } } 22 vtu  g_dpdt (* dpdt ) = 0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/ProjectionPort.h 1 #ide __ProjeiPt_h__ 2  #__ProjeiPt_h__ ) 7  ~"c.h " 8  ~"dPts.h " 10  ~"VeFldVb.h " 12 as cProjeiPt : public vtu $CONV_NS ( Pt ) 14 public : 15 $ProjeiPt (: $CONV_NS ( Pt )() {} 16 vtu ~ $ProjeiPt ({ } } 18 vtu  oje ( VeFldVb ** pVFV ,  nVFV =1,  which =0,  which_v =0,  timeamp =0)=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/PropObj.h 1 #ide PrObjHSn 2  #PrObjHSn ) 12  ~ 13  ~ 23 as cPrObj 25 mpublic : 30 $PrObj () {} 33 vtu ~ $PrObj ({ } } 41 vtu  tPr ( d :: rg , std::string) = 0; 42 vtu  tPr ( d :: rg , ) = 0; 43 vtu  tPr ( d :: rg , ) = 0; 44 vtu  tPr ( d :: rg , std::string, ) = 0; 45 vtu  tPr ( d :: rg , std::string, ) = 0; 52 vtu  gPr ( d :: rg ) = 0; 53 vtu  gPr ( d :: rg , &) = 0; 54 vtu  gPr ( d :: rg , &) = 0; 56 vtu  gPr ( d :: rg , FILE *&) = 0; 57 vtu  gPr ( d :: rg , *&, *) = 0; 58 vtu  gPr ( d :: rg , *&, *) = 0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/PropertiesPort.h 1 #ide __PrݔtsPt__ 2  #__PrݔtsPt__ ) 11  ~"c.h " 12  ~"dPts.h " 15  ~"CONV_NS.h " 31 as cPrݔtsPt : public vtu $CONV_NS ( Pt ) 33 public : 39 $PrݔtsPt (: $CONV_NS ( Pt )() {} 42 vtu ~ $PrݔtsPt ({ } } 49 vtu bo DsItExi (* key_me ) = 0 ; 56 vtu  GSize (* key_me ) = 0 ; 72 vtu  GIegs (* me , * da ,  size ) = 0 ; 74 vtu  GDoubs (* me , * da ,  size ) = 0 ; 84 vtu  SIegs (* me , * da ,  size ) = 0 ; 86 vtu  SDoubs (* me , * da ,  size ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/SAMRComputePort.h 1 #ide SAMRCompuPtHSn 2  #SAMRCompuPtHSn ) 24  ~"c.h " 25  ~"dPts.h " 26  ~"VeFldVb.h " 29  ~ 32  ~"CONV_NS.h " 44 as cSAMRCompuPt : public vtu $CONV_NS ( Pt ) 46 public : 53 $SAMRCompuPt (: $CONV_NS ( Pt )() {} 56 vtu ~ $SAMRCompuPt ({ } } 60 vtu  SDa d :: ve < VeFldVb * > puts , 61 d :: ve < VeFldVb * > ouuts ) = 0 ; 68 vtu  compu () = 0 ; 75 vtu  r () = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/SAMRConsumerPort.h 1 #ide __SAMRCsumPtHSn__ 2  #__SAMRCsumPtHSn__ ) 15  ~"c.h " 16  ~"dPts.h " 17  ~"VeFldVb.h " 20  ~"CONV_NS.h " 30 as cSAMRCsumPt : public vtu $CONV_NS ( Pt ) 32 public : 37 $SAMRCsumPt (: $CONV_NS ( Pt )() {} 40 ~ $SAMRCsumPt ({ } } 48 vtu  compu ( VeFldVb * p_y_vfv ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/SpgmrPort.h 1 #ide __SpgmrPt_h__ 2  #__SpgmrPt_h__ ) 9  ~"oc.hh " 10  ~"ts.hh " 11  ~"c_vec.h " 14  ~"CONV_NS.h " 16 as cSpgmrPt : public vtu $CONV_NS ( Pt ) 18 public : 20 $SpgmrPt (: $CONV_NS ( Pt )() {} 22 vtu ~ $SpgmrPt ({ } } 24 vtu  f_gmr ( N ,  t , c_vec * y , 25 c_vec * yd , * f_da )=0; 27 vtu  ecd ( N ,  t , c_vec * y , c_vec* fy ,  jok , 28 * jcurP ,  gamma , c_vec * ewt ,  h , 29  uround , * nP , * P_da )=0; 31 vtu  psve ( N ,  t , c_vec * y , c_vec* fy , 32  gamma , c_vec * ewt , 33  d , * nP , c_vec * r , 34  , * P_da , c_vec * z )=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/ThermoAnalysisPort.h 1 #ide __ThmoAlysisPt_h__ 2  #__ThmoAlysisPt_h__ ) 13  ~"c.h " 14  ~"CONV_NS.h " 17  ~ 63 as cThmoAlysisPt : public vtu $CONV_NS ( Pt ) 65 public : 68 $ThmoAlysisPt (: $CONV_NS ( Pt )() {} 71 vtu ~ $ThmoAlysisPt ({ } } 81 vtu  GNumScs () = 0 ; 93 vtu  GScsNames ( necs , * ecsNames ) = 0 ; 105 vtu  GMecurWts ( necs , * wts ) = 0 ; 110 vtu  GNumInddtVs () = 0 ; 113 vtu  GNumRis () = 0 ; 128 vtu  GStoichCfs ( necs , * oichmrix ) = 0; 152 vtu  CompuV (* put ,  nvs , cڡ * she ,  dims , 153 d :: rg vName , * ouut , 154  ouutSize ) = 0 ; 180 vtu  CompuRs (* essu ,* mtu , necs , 181 * Y , d :: rg vName ,* ouut , ouutSize ) = 0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/TimeAdvancePort.h 1 #ide __TAHSn__ 2  #__TAHSn__ ) 13  ~"c.h " 14  ~"dPts.h " 15  ~"VeFldVb.h " 18  ~"CONV_NS.h " 30 as cTimeAdvPt : public vtu $CONV_NS ( Pt ) 32 public : 37 $TimeAdvPt (: $CONV_NS ( Pt )() {} 40 vtu ~ $TimeAdvPt ({ } } 52 vtu  GSbTime  dt_guess , VeFldVb ** pVFV , 53  nVFV ) = 0 ; 65 vtu  STimeAdv  dt , VeFldVb ** pVFV , 66  nVFV ) = 0 ; 76 vtu  Adv  dt , VeFldVb ** pVFV , 77  nVFV ) = 0 ; 87 vtu  EndTimeAdv  dt , VeFldVb ** pVFV , 88  nVFV ) = 0 ; 98 vtu  AlyBoundyCdis ( dt , VeFldVb ** pVFV , 99  nVFV ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/TimeInterpolationPort.h 1 #ide __TimeIpީiPtHSn__ 2  #__TimeIpީiPtHSn__ ) 15  ~"c.h " 16  ~"dPts.h " 19  ~"CONV_NS.h " 34 as cTimeIpީiPt : public vtu $CONV_NS ( Pt ) 36 public : 41 $TimeIpީiPt (: $CONV_NS ( Pt )() {} 44 ~ $TimeIpީiPt ({ } } 62 vtu  SPch ( time , * da , cڡ * lbbc , 63 cڡ * ubbc , cڡ * she , cڡ  nvs ) = 0 ; 74 vtu  SWdow (cڡ * wdow_low_bound , 75 cڡ * wdow_u_bound , 76 cڡ * wdow_she ) = 0 ; 91 vtu  compu  , * uc , cڡ * lbc , cڡ * ubc , 92 cڡ * shec , cڡ * do_em ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/TimePort.h 1 #ide TimePtHSn 2  #TimePtHSn ) 9  ~"c.h " 10  ~"dPts.h " 13  ~"CONV_NS.h " 15 as cTimePt : public vtu $CONV_NS ( Pt ) 18 public : 20 $TimePt (: $CONV_NS ( Pt )() {} 22 vtu  `g_time () = 0; 24 vtu ~ $TimePt ({ } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/VectorFieldVariable.h 1 #ide __VeFldVb__ 2  #__VeFldVb__ ) 17  ~"AMRCڡts.h " 31 as cVeFldVb 33 mpublic : 36 vtu ~ $VeFldVb () {} 46 vtu bo `exis  t ,  v ,  c ) = 0 ; 49 vtu  `g_numb_of_comp_grids () = 0 ; 52 vtu  `g_dims () = 0 ; 55 vtu  `g_ve_size () = 0 ; 69 vtu cڡ * `g_low_bbc ( time ,  v ,  compڒt ,  idt ) = 0 ; 72 vtu cڡ * `g_u_bbc ( time ,  v ,  compڒt ,  idt ) = 0 ; 75 vtu cڡ * `g_da_y_size ( time ,  v ,  compڒt , 76  idt ) = 0 ; 79 vtu * `g_da ( time ,  v ,  compڒt ,  idt ) = 0 ; 82 vtu MeshClotiTy `g_mesh_cloti_ty () = 0; 85 vtu cڡ * $g_me () const = 0; 94 vtu TyOfBC `g_boundy_cdi_ty () = 0 ; 97 vtu  `t_boundy_cdi_ty TyOfBC T ) = 0 ; 100 vtu  `t_cڡ_v_dicht_bc  vue ) = 0 ; 105 vtu  `t_boundy_cdi_funi BoundyCdFuni BC_Func ) = 0 ; 108 vtu  `g_boundy_width () = 0 ; 111 vtu  `boundy_upde  time ,  v ,  idt ) = 0 ; 125 vtu  `g_adt_boundy_width () = 0 ; 131 vtu  `t_gi_func Ipުt g_func ) = 0 ; 134 vtu  `t_rii_func Ipުt ri_func ) = 0 ; 137 vtu  `t_time_ުt TimeIpުt time__func ) = 0 ; 149 vtu  `ri ( time1 ,  v1 ,  time2 ,  v2 , * gs , 150  gt ,  idt ) = 0; 161 vtu  `g_cut_time ( f_v ,  idt ) = 0 ; 164 vtu  `emt_time  f_v ,  idt ) = 0 ; 175 vtu  `sw_time_vs  f_v ,  t1 ,  t2 ) = 0 ; 178 vtu  `cye_time_vs  v ) = 0 ; 181 vtu  `synchri ( time ,  f_v ,  idt ) = 0 ; 195 vtu  `wre_out_to_fe  cut_time ,  cut_v ,  compڒt , 196  idt ) = 0 ; 206 vtu  `lock () = 0 ; 209 vtu  `uock () = 0 ; 219 vtu  `fl_wh_cڡt  vue ,  t ,  v ,  idt ) = 0; 222 vtu  `add_cڡt  vue ,  t ,  v ,  idt ) = 0; 225 vtu  `muɝly_by_cڡt  vue ,  t ,  v ,  idt ) = 0; 228 vtu  $max_v cڡ  t , cڡ  v , cڡ  iv , 229 cڡ  idt ) const = 0; 232 vtu  $m_v cڡ  t , cڡ  v , cڡ  iv , 233 cڡ  idt ) const = 0; 236 vtu  $cd_nm cڡ  t , cڡ  v , cڡ  iv , 237 cڡ  idt ) const = 0; 251 vtu  `g_max_ve (* max_vs , * size ) = 0 ; 254 vtu  `g_m_ve (* m_vs , * size ) = 0 ; 257 vtu  `g_abs_max_ve (* abs_max_vs , * size ) = 0 ; 260 vtu  `g_abs_m_ve (* abs_m_vs , * size ) = 0 ; 263 vtu  `g_max_ve__v (* max_vs , * size ,  v ) = 0 ; 266 vtu  `g_m_ve__v (* m_vs , * size ,  v ) = 0 ; 269 vtu  `g_abs_max_ve__v (* abs_max_vs , * size ,  v ) = 0 ; 272 vtu  `g_abs_m_ve__v (* abs_m_vs , * size ,  v ) = 0 ; 276 } } ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/cca_mat.h 1 #ide __c_m_h__ 2  #__c_m_h__ ) 19  #IJth ( A , i , j ) A[j][i] 20 ) 32 as cc_m 34 mpublic : 39 $c_m () {} 42 vtu ~ $c_m ({ } } 46 vtu ** g_da ()=0; 49 vtu  g_size ()=0; 52 vtu  t_size ()=0; 55 vtu  put_da (**, )=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/cca_vec.h 1 #ide __c_vec_h__ 2  #__c_vec_h__ ) 24 as cc_vec 26 mpublic : 31 $c_vec () {} 34 vtu ~ $c_vec ({ } } 38 vtu * g_da ()=0; 41 vtu  g_size ()=0; 44 vtu  t_size ()=0; 47 vtu  put_da (* A ,  size )=0; 50 vtu  cy_da ( c_vec * C )=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/CFRFS_Ports/refPort.h 1 #ide __fPt_h__ 2  #__fPt_h__ ) 8  ~"c.h " 9  ~"dPts.h " 12  ~"CONV_NS.h " 18 as cfPt : public vtu $CONV_NS ( Pt ) 21 public : 24 $fPt (: $CONV_NS ( Pt )() {} 27 vtu ~ $fPt ({ } } 56 vtu  _f_g (* r0 ,* tm ,* btzk , 57 * avogadro ,* mef ,* f , 58 * hf ,* ef ,* wf , 59 * rgf ,* rhef ,* wf , 60 * pdf ,* htdf ,* f , 61 * vf ,* vdifef ,* amuf , 62 * tymf ,* ef ,* cgf , 63 * gf ,* damkoh ) = 0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/Initialize/include/Initialize.h 5  ~ 6  ~ 7  ~ 8 usg mea gd ; 10  ~"c.h " 11  ~"dPts.h " 14  ~"jc++/jc++.h " 15  ~"jc++/ut/jc++ut.h " 16  ~"ms/msSr.h " 17  ~"pt/sutIs.h " 21  ~ 24  ~"jc++/ut/jc++ut.h " 25  ~"ms/msSr.h " 26  ~"pt/sutIs.h " 27  ~"pt/PamGLi.h " 30  ~ 31  ~"da.h " 34  ~"PrݔtsPt.h " 35  ~"CvodePt.h " 36  ~"ThmoAlysisPt.h " 39  ~"CONV_NS.h " 41 ass gInlize : public vtu CONV_NS ( Compڒt ), 42 public vtu gPamGLi , 43 public vtu $CONV_NS ( GoPt ) 45 public : 47 `Inlize () ; 49 vtu ~ `Inlize () ; 51 vtu  `tSvis `CONV_NS ( Svis * svc ); 53 vtu bo `updePamPt ( CfigubPamPt * d ); 54 vtu  `go (); 57 ive : 59 * da ; 60 * da_d ; 61 * essu1 ; 62 UrDa * f_da ; 64 IPam * ackScsIndex ; 65 IPam * num_s ; 66 IPam * n_size ; 67 IPam * s ; 68 DoubPam * out_time ; 70  s ;  size ;  tout ; 71  vs ;  ns ;  ack1 ; 72  obm_size ; 74  ba_time , dt ; 76  `lize () ; 77 bo is_ ; 79  `tupPams (); 80 `CONV_NS ( Svis * cc ; 81 CfigubPamPt * ; 82 PrObj * PO ; 84 DoubPam * essu_vue ; 85 BoPam * unifm_essu ; 87 bo unifm ; 88  unifm_es ; 90  necs ; 91 * ecs_mes ; 93  ns ; 94  r0 ; tm ; btzk ; avogadro ; mef ; 95  f ; hf ; ef ; wf ; rgf ; 96  rhef ; wf ; pdf ; htdf ; f ; 97  vf ; vdifef ; amuf ; tymf ; ef ; 98  cgf ; gf ; damkoh ; 100 * wt ; 101 * owt ; 102  ngbm ; 105 m < rg , > ags ; 106 m < rg , *> ݔts ; 109  sizeH2O2 ; 110  sizeGRI12 ; 111  sizeHEPTANE ; 113 `CONV_NS ( Svis * ce ; 115 CfigubPamPt * mech ; 116 CfigubPamPt * v ; 117 CfigubPamPt * Υp ; 118 CfigubPamPt * mtu ; 119 CfigubPamPt * essu ; 120 CfigubPamPt * ack ; 121 CfigubPamPt * mass ; 122 CfigubPamPt * timp ; 123 CfigubPamPt * p ; 125 IPam * _ ; 127 SgPam * mechisms ; 128 IPam * num_vbs ; 129 DoubPam * mp ; 130 DoubPam * essu ; 131 DoubPam * f_time ; 132 IPam * num_cds ; 133 SgPam * ack ; 134 DoubPam * X_H2 ; 135 DoubPam * X_O2 ; 136 DoubPam * X_O ; 137 DoubPam * X_OH ; 138 DoubPam * X_H2O ; 139 DoubPam * X_H ; 140 DoubPam * X_HO2 ; 141 DoubPam * X_H2O2 ; 142 DoubPam * X_N2 ; 143 DoubPam * X_C ; 144 DoubPam * X_CH ; 145 DoubPam * X_CH2 ; 146 DoubPam * X_CH2S ; 147 DoubPam * X_CH3 ; 148 DoubPam * X_CH4 ; 149 DoubPam * X_CO ; 150 DoubPam * X_CO2 ; 151 DoubPam * X_HCO ; 152 DoubPam * X_CH2O ; 153 DoubPam * X_CH2OH ; 154 DoubPam * X_CH3O ; 155 DoubPam * X_CH3OH ; 156 DoubPam * X_C2H ; 157 DoubPam * X_C2H2 ; 158 DoubPam * X_C2H3 ; 159 DoubPam * X_C2H4 ; 160 DoubPam * X_C2H5 ; 161 DoubPam * X_C2H6 ; 162 DoubPam * X_HCCO ; 163 DoubPam * X_CH2CO ; 164 DoubPam * X_HCCOH ; 165 DoubPam * X_AR ; 168 DoubPam * X_TXCH2 ; 169 DoubPam * X_PXCH2 ; 170 DoubPam * X_C3H4 ; 171 DoubPam * X_C3H5 ; 172 DoubPam * X_C3H6 ; 173 DoubPam * X_NXC3H7 ; 174 DoubPam * X_PXC4H8 ; 175 DoubPam * X_PXC4H9 ; 176 DoubPam * X_PXC5H11 ; 177 DoubPam * X_C6H11 ; 178 DoubPam * X_PXC6H12 ; 179 DoubPam * X_PXC7H15 ; 180 DoubPam * X_SXC7H15 ; 181 DoubPam * X_NXC7H16 ; 182 DoubPam * X_PC7H15O2 ; 183 DoubPam * X_PHEOOHX2 ; 184 DoubPam * X_SOO7OOH1 ; 185 DoubPam * X_PX2HEOOH ; 186 DoubPam * X_OC7OOH ; 187 DoubPam * X_PX2HEPOO ; 189 bo bo1 ; 190 bo bo2 ; 191 bo bo3 ; 193 m < rg ,> bH2O2 ; 194 m < rg ,> bGRI12 ; 195 m < rg ,> bHEPTANE ; 197 ve < rg > _mesH2O2 ; 198 ve < rg > _mesGRI12 ; 199 ve < rg > _mesHEPTANE ; 201 ve <> _dexH2O2 ; 202 ve <> _dexGRI12 ; 203 ve <> _dexHEPTANE ; 205 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/Initialize/include/data.h 1 #ide __mesh_h__ 2  #__mesh_h__ ) 4  sUrDa { 5  ms ; 6  mvs ; 7 * messu ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/Initialize/src/Initialize.cpp 1  ~ 2  ~ 3  ~ 4  ~ 5  ~ 6  ~ 7  ~ 9  ~ 10  ~ 15 gInlize :: $Inlize (){ 17 f_da = w UrDa ; 22 mechisms = w `SgPam ("mechanisms", 37 _ = w `IPam ("re_init","re_init", 42 num_s = w `IPam ("num_cells", 49 #ifde NON_DIM 50 mp = w `DoubPam ("temp", 55 mp = w `DoubPam ("temp", 62 #ifde NON_DIM 63 essu = w `DoubPam ("pressure", 68 essu = w `DoubPam ("pressure", 75 f_time = w `DoubPam ("final_time", 81 num_cds = w `IPam ("num_records", 88 ack = w `SgPam ("slack", 95 X_H2 = w `DoubPam ("X_H2", 100 X_O2 = w `DoubPam ("X_O2", 105 X_O = w `DoubPam ("X_O", 110 X_OH = w `DoubPam ("X_OH", 115 X_H2O = w `DoubPam ("X_H2O", 120 X_H = w `DoubPam ("X_H", 125 X_HO2 = w `DoubPam ("X_HO2", 130 X_H2O2 = w `DoubPam ("X_H2O2", 135 X_C = w `DoubPam ("X_C", 140 X_CH = w `DoubPam ("X_CH", 145 X_CH2 = w `DoubPam ("X_CH2", 150 X_CH2S = w `DoubPam ("X_CH2S", 155 X_CH3 = w `DoubPam ("X_CH3", 160 X_CH4 = w `DoubPam ("X_CH4", 165 X_CO = w `DoubPam ("X_CO", 170 X_CO2 = w `DoubPam ("X_CO2", 175 X_HCO = w `DoubPam ("X_HCO", 180 X_CH2O = w `DoubPam ("X_CH2O", 185 X_CH2OH = w `DoubPam ("X_CH2OH", 190 X_CH3O = w `DoubPam ("X_CH3O", 195 X_CH3OH = w `DoubPam ("X_CH3OH", 200 X_C2H = w `DoubPam ("X_C2H", 205 X_C2H2 = w `DoubPam ("X_C2H2", 210 X_C2H3 = w `DoubPam ("X_C2H3", 215 X_C2H4 = w `DoubPam ("X_C2H4", 220 X_C2H5 = w `DoubPam ("X_C2H5", 225 X_C2H6 = w `DoubPam ("X_C2H6", 230 X_HCCO = w `DoubPam ("X_HCCO", 235 X_CH2CO = w `DoubPam ("X_CH2CO", 240 X_HCCOH = w `DoubPam ("X_HCCOH", 245 X_AR = w `DoubPam ("X_AR", 250 X_N2 = w `DoubPam ("X_N2", 255 X_TXCH2 = w `DoubPam ("X_TXCH2", 260 X_PXCH2 = w `DoubPam ("X_PXCH2", 265 X_C3H4 = w `DoubPam ("X_C3H4", 270 X_C3H5 = w `DoubPam ("X_C3H5", 275 X_C3H6 = w `DoubPam ("X_C3H6", 280 X_NXC3H7 = w `DoubPam ("X_NXC3H7", 285 X_PXC4H8 = w `DoubPam ("X_PXC4H8", 290 X_PXC4H9 = w `DoubPam ("X_PXC4H9", 295 X_PXC5H11 = w `DoubPam ("X_PXC5H11", 300 X_C6H11 = w `DoubPam ("X_C6H11", 305 X_PXC6H12 = w `DoubPam ("X_PXC6H12", 310 X_PXC7H15 = w `DoubPam ("X_PXC7H15", 315 X_SXC7H15 = w `DoubPam ("X_SXC7H15", 320 X_NXC7H16 = w `DoubPam ("X_NXC7H16", 325 X_PC7H15O2 = w `DoubPam ("X_PC7H15O2", 330 X_PHEOOHX2 = w `DoubPam ("X_PHEOOHX2", 335 X_SOO7OOH1 = w `DoubPam ("X_SOO700H1", 340 X_PX2HEOOH = w `DoubPam ("X_PX2HEOOH", 345 X_OC7OOH = w `DoubPam ("X_OC7OOH", 350 X_PX2HEPOO = w `DoubPam ("X_PX2HEPOO", 359 bH2O2 ["H2"] = 1; 360 bH2O2 ["O2"] = 2; 361 bH2O2 ["O"] = 3; 362 bH2O2 ["OH"] = 4; 363 bH2O2 ["H2O"] = 5; 364 bH2O2 ["H"] = 6; 365 bH2O2 ["HO2"] = 7; 366 bH2O2 ["H2O2"] = 8; 367 bH2O2 ["N2"] = 9; 370 bGRI12 ["H2"] = 1; 371 bGRI12 ["H"] = 2; 372 bGRI12 ["O"] = 3; 373 bGRI12 ["O2"] = 4; 374 bGRI12 ["OH"] = 5; 375 bGRI12 ["H2O"] = 6; 376 bGRI12 ["HO2"] = 7; 377 bGRI12 ["H2O2"] = 8; 378 bGRI12 ["C"] = 9; 379 bGRI12 ["CH"] = 10; 380 bGRI12 ["CH2"] = 11; 381 bGRI12 ["CH2S"] = 12; 382 bGRI12 ["CH3"] = 13; 383 bGRI12 ["CH4"] = 14; 384 bGRI12 ["CO"] = 15; 385 bGRI12 ["CO2"] = 16; 386 bGRI12 ["HCO"] = 17; 387 bGRI12 ["CH2O"] = 18; 388 bGRI12 ["CH2OH"] = 19; 389 bGRI12 ["CH3O"] = 20; 390 bGRI12 ["CH3OH"] = 21; 391 bGRI12 ["C2H"] = 22; 392 bGRI12 ["C2H2"] = 23; 393 bGRI12 ["C2H3"] = 24; 394 bGRI12 ["C2H4"] = 25; 395 bGRI12 ["C2H5"] = 26; 396 bGRI12 ["C2H6"] = 27; 397 bGRI12 ["HCCO"] = 28; 398 bGRI12 ["CH2CO"] = 29; 399 bGRI12 ["HCCOH"] = 30; 400 bGRI12 ["AR"] = 31; 401 bGRI12 ["N2"] = 32; 404 bHEPTANE ["O2"] = 1; 405 bHEPTANE ["H"] = 2; 406 bHEPTANE ["OH"] = 3; 407 bHEPTANE ["O"] = 4; 408 bHEPTANE ["H2"] = 5; 409 bHEPTANE ["H2O"] = 6; 410 bHEPTANE ["HO2"] = 7; 411 bHEPTANE ["H2O2"] = 8; 412 bHEPTANE ["CO"] = 9; 413 bHEPTANE ["CO2"] = 10; 414 bHEPTANE ["CH"] = 11; 415 bHEPTANE ["HCO"] = 12; 416 bHEPTANE ["CH2OH"] = 13; 417 bHEPTANE ["TXCH2"] = 14; 418 bHEPTANE ["C2H2"] = 15; 419 bHEPTANE ["CH3"] = 16; 420 bHEPTANE ["C2H4"] = 17; 421 bHEPTANE ["PXCH2"] = 18; 422 bHEPTANE ["CH2O"] = 19; 423 bHEPTANE ["CH4"] = 20; 424 bHEPTANE ["CH3O"] = 21; 425 bHEPTANE ["C2H6"] = 22; 426 bHEPTANE ["HCCO"] = 23; 427 bHEPTANE ["C2H3"] = 24; 428 bHEPTANE ["C2H5"] = 25; 429 bHEPTANE ["C3H4"] = 26; 430 bHEPTANE ["C3H5"] = 27; 431 bHEPTANE ["C3H6"] = 28; 432 bHEPTANE ["NXC3H7"] = 29; 433 bHEPTANE ["PXC4H8"] = 30; 434 bHEPTANE ["PXC4H9"] = 31; 435 bHEPTANE ["PXC5H11"] = 32; 436 bHEPTANE ["C6H11"] = 33; 437 bHEPTANE ["PXC6H12"] = 34; 438 bHEPTANE ["PXC7H15"] = 35; 439 bHEPTANE ["SXC7H15"] = 36; 440 bHEPTANE ["NXC7H16"] = 37; 441 bHEPTANE ["PC7H15O2"] = 38; 442 bHEPTANE ["PHEOOHX2"] = 39; 443 bHEPTANE ["SOO7OOH1"] = 40; 444 bHEPTANE ["PX2HEOOH"] = 41; 445 bHEPTANE ["OC7OOH"] = 42; 446 bHEPTANE ["PX2HEPOO"] = 43; 447 bHEPTANE ["N2"] = 44; 450 sizeH2O2 = bH2O2 . `size (); 451 sizeGRI12 = bGRI12 . `size (); 452 sizeHEPTANE = bHEPTANE . `size (); 454 m < rg ,>:: cڡ_ p ; 456  p = bH2O2 . `beg (); !bH2O2. `d ();++){ 457 _mesH2O2 . `push_back p -> f ); 458 _dexH2O2 . `push_back p -> cd ); 462  p = bGRI12 . `beg (); !bGRI12. `d ();++){ 463 _mesGRI12 . `push_back p -> f ); 464 _dexGRI12 . `push_back p -> cd ); 467  p = bHEPTANE . `beg (); !bHEPTANE. `d ();++){ 468 _mesHEPTANE . `push_back p -> f ); 469 _dexHEPTANE . `push_back p -> cd ); 474 bo1 = l ; 475 bo2 = l ; 476 bo3 = l ; 477 cout <<"Inlizcڡrued"<< dl ; 478 } } 482 gInlize ::~ $Inlize () 484 de f_da ; 485 de mechisms ; 486 de num_s ; d mp ; d essu ; d f_time ; 487 de num_cds ; d ack ; d _ ; 489 de X_H2 ; d X_O2 ; d X_O ; d X_OH ; d X_H2O ; 490 de X_H ; d X_HO2 ; d X_H2O2 ; d X_C ; d X_CH ; 491 de X_CH2 ; d X_CH2S ; d X_CH3 ; d X_CH4 ; d X_CO ; 492 de X_CO2 ; d X_HCO ; d X_CH2O ; d X_CH2OH ; 493 de X_CH3O ; d X_CH3OH ; d X_C2H ; d X_C2H2 ; 494 de X_C2H3 ; d X_C2H4 ; d X_C2H5 ; d X_C2H6 ; 495 de X_HCCO ; d X_CH2CO ; d X_HCCOH ; d X_AR ; 496 de X_N2 ; 498 de X_TXCH2 ; d X_PXCH2 ; d X_C3H4 ; d X_C3H5 ; 499 de X_C3H6 ; d X_NXC3H7 ; d X_PXC4H8 ; d X_PXC4H9 ; 500 de X_PXC5H11 ; d X_C6H11 ; d X_PXC6H12 ; d X_PXC7H15 ; 501 de X_SXC7H15 ; d X_NXC7H16 ; d X_PC7H15O2 ; d X_PHEOOHX2 ; 502 de X_SOO7OOH1 ; d X_PX2HEOOH ; d X_OC7OOH ; d X_PX2HEPOO ; 504 cout <<"Inlizderoyed"<< dl ; 505 } } 507  gInlize :: tSvis ( CONV_NS ( Svis * svc ) { 509 i( svc = NULL ){ 513 gcc = svc ; 514 gce = svc ; 516 gcc -> giUsPt cc -> PtInfo ("cSvc", 519 CONV_NS ( Pt * gdummy = cc -> gPt ("cSvc") ; 521 CfigubPamFay * gf = 522 dymic_ < CfigubPamFay *>( dummy ); 524 gΥp = f -> CfigubPamPt (); 525 gtimp = f -> CfigubPamPt (); 526 gp = f -> CfigubPamPt (); 527 gmech = f -> CfigubPamPt (); 528 gmech -> tUpd ( this ); 530 gmtu = f -> CfigubPamPt (); 533 gessu = f -> CfigubPamPt (); 535 gack = f -> CfigubPamPt (); 536 gack -> tUpd ( this ); 538 gmass = f -> CfigubPamPt (); 539 gmass -> tUpd ( this ); 541 gcc -> aPt ("cSvc"); 542 gcc -> uegiUsPt ("cSvc"); 546 gΥp -> tBchT ("Number of cells"); 547 gΥp -> tGroupName ("Number of cells inheroblem"); 548 gΥp -> addReque ( num_s ); 550 gmtu -> tBchT ("Setheemperature"); 551 gmtu -> tGroupName ("Temperature in [K]"); 552 gmtu -> addReque ( mp ); 555 gessu -> tBchT ("Sethe Pressure"); 556 gessu -> tGroupName ("Pressure in [Pa]"); 557 gessu -> addReque ( essu ); 559 gack -> tBchT ("Slack species index"); 560 gack -> tGroupName ("Choosehe slack species index"); 561 gack -> addReque ( ack ); 567 gtimp -> tBchT ("Sethe integration finalime"); 568 gtimp -> tGroupName ("Integration Final Time in [sec]"); 569 gtimp -> addReque ( f_time ); 572 gp -> tBchT ("Number of integration steps"); 573 gp -> tGroupName ("Integrationumber ofecords"); 574 gp -> addReque ( num_cds ); 577 gmech -> tBchT ("Choosehe mechanism"); 578 gmech -> tGroupName ("Options"); 579 gmech -> addReque ( mechisms ); 580 gmechisms -> addChoi ("H2O2"); 581 gmechisms -> addChoi ("GRI1.2"); 582 gmechisms -> addChoi ("HEPTANE"); 584 gce -> addProvidesPt ( mech , cc -> PtInfo ("Mechanism", "ParameterPort",0)); 588 gce -> addProvidesPt ( Υp , cc -> PtInfo ("Number_of_cells", "ParameterPort",0)); 589 gce -> addProvidesPt ( mtu , cc -> PtInfo ("Temperature", "ParameterPort",0)); 590 gce -> addProvidesPt ( essu , cc -> PtInfo ("Pressure", "ParameterPort",0)); 592 gce -> addProvidesPt ( ack , cc -> PtInfo ("Slack_species", "ParameterPort",0)); 593 gce -> addProvidesPt ( mass , cc -> PtInfo ("Species_mole_fractions", "ParameterPort",0)); 594 gce -> addProvidesPt ( timp , cc -> PtInfo ("Integration_final_time", "ParameterPort",0)); 595 gce -> addProvidesPt ( p , cc -> PtInfo ("Number_of_records", "ParameterPort",0)); 597 CONV_NS ( PtInfo * gpfo ; 599 gpfo = cc -> PtInfo ("Start", "GoPort", 0); 602 gce -> addProvidesPt ( this , pfo ); 606 gpfo = cc -> PtInfo ("cvode", "CvodePort", 0); 607 gcc -> giUsPt ( pfo ); 609 gpfo = cc -> PtInfo ("propertiesThermChem", "PropertiesPort", 0); 610 gcc -> giUsPt ( pfo ); 612 gpfo = cc -> PtInfo ("Analysis", "ThermoAnalysisPort", 0); 613 gcc -> giUsPt ( pfo ); 617 bo gInlize :: $updePamPt ( CfigubPamPt * d ) { 619 i( d =0{  l ; } 620 i( d =( mech )) { 621 bo1 = l ; 622  l ; 625 i( d =( timp ){  l ; } 626 i( d =( p ){  l ; } 627 i( d =( mtu ){  l ; } 628 i( d =( essu ){  l ; } 630 i( d =( mass )) { 632 mass -> `rReques (); 635 bo1 = ue ; 636 rg pc ; 637 pc = mechisms -> vue ; 639 i pc . `com ("H2O2") == 0 ) { 640 mass -> `tBchT ("H2-O2 Mechanism"); 641 mass -> `tGroupName ("Enter species mole fractions"); 642 mass -> `addReque ( X_H2 ); 643 X_H2 -> vue = 0.295278; 644 mass -> `addReque ( X_O2 ); 645 X_O2 -> vue = 0.147639; 646 mass -> `addReque ( X_O ); 647 mass -> `addReque ( X_OH ); 648 mass -> `addReque ( X_H2O ); 649 mass -> `addReque ( X_H ); 650 mass -> `addReque ( X_HO2 ); 651 mass -> `addReque ( X_H2O2 ); 652 mass -> `addReque ( X_N2 ); 655 i pc . `com ("GRI1.2") == 0) { 656 mass -> `tBchT ("GRI1.2 Mechanism"); 657 mass -> `tGroupName ("group 1"); 658 mass -> `addReque ( X_H2 ); 659 X_H2 -> vue = 0.0; 660 mass -> `addReque ( X_H ); 661 mass -> `addReque ( X_O ); 662 mass -> `addReque ( X_O2 ); 663 X_O2 -> vue = 0.189636; 664 mass -> `addReque ( X_OH ); 665 mass -> `addReque ( X_H2O ); 666 mass -> `addReque ( X_HO2 ); 667 mass -> `addReque ( X_H2O2 ); 668 mass -> `addReque ( X_C ); 669 mass -> `addReque ( X_CH ); 670 mass -> `addReque ( X_CH2 ); 671 mass -> `addReque ( X_CH2S ); 672 mass -> `addReque ( X_CH3 ); 673 mass -> `addReque ( X_CH4 ); 674 X_CH4 -> vue = 0.0948178; 675 mass -> `addReque ( X_CO ); 676 mass -> `addReque ( X_CO2 ); 677 mass -> `tGroupName ("group 2"); 678 mass -> `addReque ( X_HCO ); 679 mass -> `addReque ( X_CH2O ); 680 mass -> `addReque ( X_CH2OH ); 681 mass -> `addReque ( X_CH3O ); 682 mass -> `addReque ( X_CH3OH ); 683 mass -> `addReque ( X_C2H ); 684 mass -> `addReque ( X_C2H2 ); 685 mass -> `addReque ( X_C2H3 ); 686 mass -> `addReque ( X_C2H4 ); 687 mass -> `addReque ( X_C2H5 ); 688 mass -> `addReque ( X_C2H6 ); 689 mass -> `addReque ( X_HCCO ); 690 mass -> `addReque ( X_CH2CO ); 691 mass -> `addReque ( X_HCCOH ); 692 mass -> `addReque ( X_AR ); 693 mass -> `addReque ( X_N2 ); 696 i pc . `com ("HEPTANE") == 0) { 697 mass -> `tBchT ("Heptane Mechanism"); 698 mass -> `tGroupName ("group 1"); 699 mass -> `addReque ( X_O2 ); 700 X_O2 -> vue = 0.21751213; 701 mass -> `addReque ( X_H ); 702 mass -> `addReque ( X_OH ); 703 mass -> `addReque ( X_O ); 704 mass -> `addReque ( X_H2 ); 705 X_H2 -> vue = 0.0; 706 mass -> `addReque ( X_H2O ); 707 mass -> `addReque ( X_HO2 ); 708 mass -> `addReque ( X_H2O2 ); 709 mass -> `addReque ( X_CO ); 710 mass -> `addReque ( X_CO2 ); 711 mass -> `addReque ( X_CH ); 712 mass -> `addReque ( X_HCO ); 713 mass -> `addReque ( X_CH2OH ); 714 mass -> `addReque ( X_TXCH2 ); 715 mass -> `addReque ( X_C2H2 ); 716 mass -> `addReque ( X_CH3 ); 717 mass -> `tGroupName ("group 2"); 718 mass -> `addReque ( X_C2H4 ); 719 mass -> `addReque ( X_PXCH2 ); 720 mass -> `addReque ( X_CH2O ); 721 mass -> `addReque ( X_CH4 ); 722 X_CH4 -> vue = 0.0; 723 mass -> `addReque ( X_CH3O ); 724 mass -> `addReque ( X_C2H6 ); 725 mass -> `addReque ( X_HCCO ); 726 mass -> `addReque ( X_C2H3 ); 727 mass -> `addReque ( X_C2H5 ); 728 mass -> `addReque ( X_C3H4 ); 729 mass -> `addReque ( X_C3H5 ); 730 mass -> `addReque ( X_C3H6 ); 731 mass -> `addReque ( X_NXC3H7 ); 732 mass -> `addReque ( X_PXC4H8 ); 733 mass -> `addReque ( X_PXC4H9 ); 734 mass -> `addReque ( X_PXC5H11 ); 735 mass -> `tGroupName ("group 3"); 736 mass -> `addReque ( X_C6H11 ); 737 mass -> `addReque ( X_PXC6H12 ); 738 mass -> `addReque ( X_PXC7H15 ); 739 mass -> `addReque ( X_SXC7H15 ); 740 mass -> `addReque ( X_NXC7H16 ); 741 X_NXC7H16 -> vue = 0.0161916806; 742 mass -> `addReque ( X_PC7H15O2 ); 743 mass -> `addReque ( X_PHEOOHX2 ); 744 mass -> `addReque ( X_SOO7OOH1 ); 745 mass -> `addReque ( X_PX2HEOOH ); 746 mass -> `addReque ( X_OC7OOH ); 747 mass -> `addReque ( X_PX2HEPOO ); 748 mass -> `addReque ( X_N2 ); 752  l ; 757 i( d ==( ack )) { 759 rg pc1 ; 760 pc1 = mechisms -> vue ; 762 i pc1 . `com ("H2O2") == 0 ) { 763 ack -> `rReques (); 767 ack = w `SgPam ("slack", 772 ack -> `tBchT ("Slack species for H2-O2"); 773 ack -> `tGroupName ("Choosehe slack species"); 774 ack -> `addReque ( ack ); 776 ack -> `addChoi ("H2"); 777 ack -> `addChoi ("O2"); 778 ack -> `addChoi ("O"); 779 ack -> `addChoi ("OH"); 780 ack -> `addChoi ("H2O"); 781 ack -> `addChoi ("H"); 782 ack -> `addChoi ("HO2"); 783 ack -> `addChoi ("H2O2"); 784 ack -> `addChoi ("N2"); 788 i pc1 . `com ("GRI1.2")==0 ) { 789 ack -> `rReques (); 793 ack = w `SgPam ("slack", 798 ack -> `tBchT ("Slack species for GRI1.2"); 799 ack -> `tGroupName ("Choosehe slack species"); 800 ack -> `addReque ( ack ); 802 ack -> `addChoi ("H2"); 803 ack -> `addChoi ("H"); 804 ack -> `addChoi ("O"); 805 ack -> `addChoi ("O2"); 806 ack -> `addChoi ("OH"); 807 ack -> `addChoi ("H2O"); 808 ack -> `addChoi ("HO2"); 809 ack -> `addChoi ("H2O2"); 810 ack -> `addChoi ("C"); 811 ack -> `addChoi ("CH"); 812 ack -> `addChoi ("CH2"); 813 ack -> `addChoi ("CH2S"); 814 ack -> `addChoi ("CH3"); 815 ack -> `addChoi ("CH4"); 816 ack -> `addChoi ("CO"); 817 ack -> `addChoi ("CO2"); 818 ack -> `addChoi ("HCO"); 819 ack -> `addChoi ("CH2O"); 820 ack -> `addChoi ("CH2OH"); 821 ack -> `addChoi ("CH3O"); 822 ack -> `addChoi ("CH3OH"); 823 ack -> `addChoi ("C2H"); 824 ack -> `addChoi ("C2H2"); 825 ack -> `addChoi ("C2H3"); 826 ack -> `addChoi ("C2H4"); 827 ack -> `addChoi ("C2H5"); 828 ack -> `addChoi ("C2H6"); 829 ack -> `addChoi ("HCCO"); 830 ack -> `addChoi ("CH2CO"); 831 ack -> `addChoi ("HCCOH"); 832 ack -> `addChoi ("AR"); 833 ack -> `addChoi ("N2"); 837 i pc1 . `com ("HEPTANE")==0 ) { 838 ack -> `rReques (); 842 ack = w `SgPam ("slack", 847 ack -> `tBchT ("Slack species for HEPTANE"); 848 ack -> `tGroupName ("Choosehe slack species"); 849 ack -> `addReque ( ack ); 851 ack -> `addChoi ("O2"); 852 ack -> `addChoi ("H"); 853 ack -> `addChoi ("OH"); 854 ack -> `addChoi ("O"); 855 ack -> `addChoi ("H2"); 856 ack -> `addChoi ("H2O"); 857 ack -> `addChoi ("HO2"); 858 ack -> `addChoi ("H2O2"); 859 ack -> `addChoi ("CO"); 860 ack -> `addChoi ("CO2"); 861 ack -> `addChoi ("CH"); 862 ack -> `addChoi ("HCO"); 863 ack -> `addChoi ("CH2OH"); 864 ack -> `addChoi ("TXCH2"); 865 ack -> `addChoi ("C2H2"); 866 ack -> `addChoi ("CH3"); 867 ack -> `addChoi ("C2H4"); 868 ack -> `addChoi ("PXCH2"); 869 ack -> `addChoi ("CH2O"); 870 ack -> `addChoi ("CH4"); 871 ack -> `addChoi ("CH3O"); 872 ack -> `addChoi ("C2H6"); 873 ack -> `addChoi ("HCCO"); 874 ack -> `addChoi ("C2H3"); 875 ack -> `addChoi ("C2H5"); 876 ack -> `addChoi ("C3H4"); 877 ack -> `addChoi ("C3H5"); 878 ack -> `addChoi ("C3H6"); 879 ack -> `addChoi ("NXC3H7"); 880 ack -> `addChoi ("PXC4H8"); 881 ack -> `addChoi ("PXC4H9"); 882 ack -> `addChoi ("PXC5H11"); 883 ack -> `addChoi ("C6H11"); 884 ack -> `addChoi ("PXC6H12"); 885 ack -> `addChoi ("PXC7H15"); 886 ack -> `addChoi ("SXC7H15"); 887 ack -> `addChoi ("NXC7H16"); 888 ack -> `addChoi ("PC7H15O2"); 889 ack -> `addChoi ("PHEOOHX2"); 890 ack -> `addChoi ("SOO7OOH1"); 891 ack -> `addChoi ("PX2HEOOH"); 892 ack -> `addChoi ("OC7OOH"); 893 ack -> `addChoi ("PX2HEPOO"); 898  ue ; 935  l ; 936 } } 939  gInlize :: $go () 950 rg mech_ty ; 951 mech_ty = mechisms -> vue ; 955 * H2O2_run = "run1.pl"; 956 * GRI12_run = "run2.pl"; 957 * HEPTANE_run = "run3.pl"; 959 i mech_ty . `com ("H2O2")==0 ){ 960 `syem ( H2O2_run ); 963 i mech_ty . `com ("GRI1.2")==0 ){ 964 `syem ( GRI12_run ); 967 i mech_ty . `com ("HEPTANE")==0 ){ 968 `syem ( HEPTANE_run ); 973 i( bo1 == l ) { 974 i mech_ty . `com ("H2O2")==0 ){ 975 X_H2 -> vue = 0.295278; 976 X_O2 -> vue = 0.147639; 977 X_CH4 -> vue = 0.0; 980 i mech_ty . `com ("GRI1.2")==0 ){ 981 X_H2 -> vue = 0.0; 982 X_O2 -> vue = 0.189636; 983 X_CH4 -> vue = 0.0948178; 986 i mech_ty . `com ("HEPTANE")==0 ){ 987 X_H2 -> vue = 0.0; 988 X_NXC7H16 -> vue = 0.061916806 ; 989 X_O2 -> vue = 0.21751213; 990 X_CH4 -> vue = 0.0; 1007  ack_dex = 0; 1008  i = 0; 1009  j = 0; 1011 i( mech_ty . `com ("H2O2")==0) { 1012 rg ack_me = ack -> vue ; 1013 ack_dex = 0; 1014  i =0; i< sizeH2O2 ; i++){ 1015 i( _mesH2O2 [ i ] = ack_me ){ 1016 ack_dex = _dexH2O2 [ i ]; 1021 i( mech_ty . `com ("GRI1.2")==0){ 1022 rg ack_me = ack -> vue ; 1023 ack_dex = 0; 1024  i =0; i< sizeGRI12 ; i++){ 1025 i( _mesGRI12 [ i ] = ack_me ){ 1026 ack_dex = _dexGRI12 [ i ]; 1032 i( mech_ty . `com ("HEPTANE")==0){ 1033 rg ack_me = ack -> vue ; 1034 ack_dex = 0; 1035  i =0; i< sizeHEPTANE ; i++){ 1036 i( _mesHEPTANE [ i ] = ack_me ){ 1037 ack_dex = _dexHEPTANE [ i ]; 1043 i mech_ty . `com ("H2O2")==0) 1044 obm_size = sizeH2O2 ; 1045 i mech_ty . `com ("GRI1.2")==0) 1046 obm_size = sizeGRI12 ; 1047 i mech_ty . `com ("HEPTANE")==0) 1048 obm_size = sizeHEPTANE ; 1055 ack1 = ack_dex ; 1056 tout = f_time -> vue ; 1057 ns = num_cds -> vue ; 1058 s = num_s -> vue ; 1059 size = obm_size * s ; 1061 da = w [ size +1]; 1063 * da_ = 0; 1064 da_ = w [ size ]; 1066 * da__mass = 0; 1067 da__mass = w [ size ]; 1069 essu1 = w [ s ]; 1071 da [0] = mp -> vue ; 1073 rg dummy ; 1074 dummy = ack -> vue ; 1076 i mech_ty . `com ("H2O2")==0){ 1077 DoubPam * _mass_ [] = { X_H2 , X_O2 , X_O , X_OH , X_H2O , 1078 X_H , X_HO2 , X_H2O2 , X_N2 }; 1079 rg ecs [] = {"H2","O2","O","OH","H2O","H","HO2", 1081  i =0;i< sizeH2O2 ;i++){ 1083 da_ [ i ] = ( _mass_ [i] -> vue ); 1088 i mech_ty . `com ("GRI1.2")==0){ 1089 DoubPam * _mass_ [] = { X_H2 , X_H , X_O , X_O2 , X_OH , X_H2O , X_HO2 , 1090 X_H2O2 , X_C , X_CH , X_CH2 , X_CH2S , X_CH3 , 1091 X_CH4 , X_CO , X_CO2 , X_HCO , X_CH2O , X_CH2OH , 1092 X_CH3O , X_CH3OH , X_C2H , X_C2H2 , X_C2H3 , 1093 X_C2H4 , X_C2H5 , X_C2H6 , X_HCCO , X_CH2CO , 1094 X_HCCOH , X_AR , X_N2 }; 1096 rg ecs [] = {"H2","H","O","O2","OH","H2O","HO2", 1103  i =0;i< sizeGRI12 ;i++){ 1104 da_ [ i ] = ( _mass_ [i] -> vue ); 1108 i mech_ty . `com ("HEPTANE")==0){ 1109 DoubPam * _mass_ [] = { X_O2 , X_H , X_OH , X_O , X_H2 , X_H2O , X_HO2 , 1110 X_H2O2 , X_CO , X_CO2 , X_CH , X_HCO , X_CH2OH , 1111 X_TXCH2 , X_C2H2 , X_CH3 , X_C2H4 , X_PXCH2 , 1112 X_CH2O , X_CH4 , X_CH3O , X_C2H6 , X_HCCO , 1113 X_C2H3 , X_C2H5 , X_C3H4 , X_C3H5 , X_C3H6 , 1114 X_NXC3H7 , X_PXC4H8 , X_PXC4H9 , X_PXC5H11 , 1115 X_C6H11 , X_PXC6H12 , X_PXC7H15 , X_SXC7H15 , 1116 X_NXC7H16 , X_PC7H15O2 , X_PHEOOHX2 , 1117 X_SOO7OOH1 , X_PX2HEOOH , X_OC7OOH , 1118 X_PX2HEPOO , X_N2 }; 1120 rg ecs [] = {"O2","H","OH","O","H2","H2O","HO2","H2O2","CO","CO2", 1128  i =0;i< sizeHEPTANE ;i++){ 1129 da_ [ i ] = ( _mass_ [i] -> vue ); 1133  i =0;i< s ;i++ essu1 [i] = essu -> vue ; 1135  sh = 0.0; 1137 if( ack1 ==1){ 1138  i =1;i< size ;i++){ 1139 sh = sh + da_ [ i ]; 1142 if( ack1 == size ){ 1143  i =0;i< size -1;i++){ 1144 sh = sh + da_ [ i ]; 1148  i =0;i< ack1 -1;i++){ 1149 sh = sh + da_ [ i ]; 1151  i = ack1 ;i< size ;i++){ 1152 sh = sh + da_ [ i ]; 1156 da_ [ ack1 -1] = 1.0 - sh ; 1159 FILE * mtu ; 1160 FILE * e ; 1161 FILE * timg ; 1163 cڡ * s = mech_ty . `c_r (); 1165  t1 = 0.0; 1166  t2 = 0.0; 1168  ruge ru ; 1172 * ack_ecs_dex = "slack_species_index" ; 1173 * ns = "ncells" ; 1174 * nvs = "nvars" ; 1175 * ssu = "pressure" ; 1176 * _1 = "call_init"; 1178  size1 ; 1179 size1 =1; 1181  size2 ; 1182 size2 = s ; 1186 vs = size ; 1187  is_ue = 1; 1188  is_l = 0; 1192 PrݔtsPt * psc_w ; 1193 psc_w = dymic_ < PrݔtsPt *>( cc -> `gPt ("propertiesThermChem")); 1197 psc_w -> `DsItExi ( ack_ecs_dex ); 1198 psc_w -> `DsItExi ( ns ); 1199 psc_w -> `DsItExi ( nvs ); 1200 psc_w -> `DsItExi ( ssu ); 1201 psc_w -> `DsItExi ( _1 ); 1204 psc_w -> `SIegs ( ack_ecs_dex ,& ack1 , size1 ); 1205 psc_w -> `SIegs ( ns ,& s , size1 ); 1206 psc_w -> `SIegs ( nvs ,& vs , size1 ); 1207 psc_w -> `SDoubs ( ssu , essu1 , size2 ); 1208 psc_w -> `SIegs ( _1 ,& is_ue ,1); 1210 #ifde NON_DIM 1212 psc_w -> `SIegs ("n_dim", & is_ue , 1); 1214 psc_w -> `SIegs ("n_dim", & is_l , 1); 1217  she [3]; 1218  i =0; i<3; i++ she [i] = 1 ; 1219  dims = 1 ; 1222 ThmoAlysisPt * p1 ; 1223 p1 = dymic_ < ThmoAlysisPt *>( cc -> `gPt ("Analysis")); 1231  put_e_size = size + 2 ; 1232 * put_e = w [ put_e_size ] ; 1233 put_e [0] = mp -> vue ; 1234  i = 0; i < size ; i++ put_e [1+i] = da_ [isp] ; 1235 put_e [ put_e_size -1] = essu -> vue ; 1236 p1 -> `CompuV ( put_e , put_e_size , she , dims , "ms", da__mass , size ) ; 1238 if( ack1 ==1){ 1239  i =1;i< size ;i++){ 1240 da [ i ] = da__mass [i]; 1243 if( ack1 == size ){ 1244  i =1;i< size ;i++){ 1245 da [ i ] = da__mass [i-1]; 1249  i =1;i< ack1 ;i++){ 1250 da [ i ] = da__mass [i-1]; 1252  i = ack1 ;i< size ;i++) { 1253 da [ i ] = da__mass [i]; 1259 da [ size ] = essu1 [0]; 1262 mtu = `fݒ ("temperature.dat", "w") ; 1263 e = `fݒ ("state.dat", "w") ; 1264 timg = `fݒ ("timing.dat", "w") ; 1266 ba_time = 0.0; 1269 `rtf ( mtu ,"%16.6%16.6f\n", ba_time , da [0]); 1271  ackMassFr ; 1272  sum = 0.0; 1275 `rtf ( e ,"%s\n", s ); 1276 `rtf ( e ,"%d\n", ns ); 1279 `rtf ( e ,"%16.9", ba_time ); 1280 `rtf ( e ,"%16.9", da [0]); 1281  j =0; j< size ; j++){ 1282 `rtf ( e ,"%16.9", da_ [ j ]); 1284 `rtf ( e ,"%16.9", essu1 [0]); 1286 `rtf ( e ,"\n"); 1291 CvodePt * psc ; 1292 psc = dymic_ < CvodePt *>( cc -> `gPt ("cvode")); 1294 PO = psc -> `g_PrObj (); 1295 PO -> `tPr ("lmm","BDF"); 1296 obm_size = ( size +1)/ s ; 1297 PO -> `tPr ("N", obm_size ); 1298 `as ( size +1)/ s ) = PO -> `gPr ("N") ) ; 1300  d = 5 ; 1301  maxs = 50000000; 1303 PO -> `tPr ("it","MAXORD", d ); 1304 PO -> `tPr ("it","MXSTEP", maxs ); 1308 * _vec = w [ size +1]; 1309  j =0; j<( size +1); j++ _vec [j] = 1.0e-20 ; 1312 psc -> `tup ( da , _vec , f_da , NULL ); 1315 i( `gruge ( RUSAGE_SELF , & ru )) { 1316 ` ("cputime: getrusage"); 1317 `ex (1); 1320 t1 = () ru . ru_utime . tv_c + (u. ru_ime .tv_sec 1321 + (() ru . ru_utime . tv_uc + (u. ru_ime .tv_usec) * 1.0e-6; 1327 dt = tout / ns ; 1329  i = 0; i < ns ; i++) 1332 ba_time = ba_tim+ dt ; 1335  ag = psc -> `sve ( ba_time ); 1336 i( ag !0{ `tf ("CVode failed, flag=%d.\n", flag); ;} 1339 * dummy1 ;  dummy_size ; 1341 psc -> `g_su ( dummy1 , dummy_size ); 1343 `as ( dummy_size =( size +1) ) ; 1345   ii = 0; i< dummy_size ; ii++ da [ii] = dummy1 [ii] ; 1346 sum = 0.0; 1347  j =1; j< size ; j++ sum = sum + da [j]; 1348 ackMassFr = 1.0 - sum ; 1350 i( ack1 == 1){ 1351 da__mass [0] = ackMassFr ; 1352  j =1; j< size ; j++){ 1353 da__mass [ j ] = da [j]; 1356 i( ack1 = size ){ 1357  j =0; j< size -1; j++){ 1358 da__mass [ j ] = da [j+1]; 1360 da__mass [ size -1] = ackMassFr ; 1363  j =0; j< ack1 -1; j++){ 1364 da__mass [ j ] = da [j+1]; 1367 da__mass [ ack1 -1] = ackMassFr ; 1369  j = ack1 ; j< size ;j++){ 1370 da__mass [ j ] = da [j]; 1377 put_e [0] = da [0] ; 1378 put_e [ put_e_size -1] = da [ size ] ; 1379  j = 0 ; j < size ; j++ put_e [1+j] = da__mass [j] ; 1380 p1 -> `CompuV ( put_e , put_e_size , she , dims , "ml", da_ , size ) ; 1383 i( i %1==0){ 1384 `rtf ( e ,"%16.9e", ba_time ); 1385 `rtf ( e ,"%16.9e", da [0]); 1386  j =0; j< size ; j++){ 1387 `rtf ( e ,"%16.9", da_ [ j ]); 1389 `rtf ( e ,"%16.9", da [ size ]); 1390 `rtf ( e ,"\n"); 1393 `fush ( e ); 1396 `rtf ( mtu ,"%16.6%16.6f\n", ba_time , da [0]); 1397 `fush ( mtu ); 1400 `rtf ( timg ,"%d %20.6%8.2\n", ( i +1), ba_time , ( t2 - t1 )); 1401 `fush ( timg ); 1404 i( `gruge ( RUSAGE_SELF , & ru )) { 1405 ` ("cputime: getrusage"); 1406 `ex (1); 1409 t2 = () ru . ru_utime . tv_c + (u. ru_ime .tv_sec 1410 + (() ru . ru_utime . tv_uc + (u. ru_ime .tv_usec) * 1.0e-6; 1416 de [] put_e ; 1418 psc -> ` (); 1420 de [] da ; d[] essu1 ; d[] _vec ; 1421 de [] da_ ; d[] da__mass ; 1423 `fo ( mtu ); 1424 `fo ( e ); 1425 `fo ( timg ); 1428 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/Initialize/src/Initialize_wrapper.cpp 2  ~ 3  ~ 4  ~ 5  ~"CONV_NS.h " 9 CONV_NS ( Compڒt * _Inlize () { 10 CONV_NS ( Compڒt * wk ; 11 Inlize * compڒt ; 12 compڒt = w Inlize (); 13 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 14  wk ; 17 ** gCompڒtLi () { 18 * li [2]; 19 li [0] = "create_Initialize Initialize "; 20 li [1] = 0; 21  li ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PLOT_COMP/include/plot.h 1  ~ 2  ~"mh.h " 3  ~ 5  ~"c.h " 6  ~"dPts.h " 7  ~"jc++/ut/jc++ut.h " 8  ~"ms/msSr.h " 9  ~"pt/sutIs.h " 12  ~"CONV_NS.h " 14 ass g : public vtu CONV_NS ( Compڒt ), 15 public vtu $CONV_NS ( GoPt ) 18 ive : 20 `CONV_NS ( Svis * svc ; 22 public : 24 ` (); 25 vtu ~ ` (); 26 vtu  `tSvis ( `CONV_NS ( Svis * cc ); 27 vtu  `go (); 29 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PLOT_COMP/src/plot.cpp 1  ~".h " 2  ~ 3  ~ 4  ~ 8 g :: $ (){ 10 cout <<" cڡrued"<< dl ; 12 } } 15 g ::~ $ () 17 cout <<" deroyed"<< dl ; 18 } } 20  g :: tSvis ( CONV_NS ( Svis * cc ) { 22 svc = cc ; 24 i( gsvc = NULL ){ 25 cout <<"Gه NULL ind ogov::c::Svipor! Abtg!"<< dl ; 26 abt () ; 29 CONV_NS ( PtInfo * gpInfo = 0; 34 gpInfo = svc -> PtInfo ("Plot", "GoPort", 0); 37 gsvc -> addProvidesPt ( this , pInfo ); 39 gpInfo = svc -> PtInfo ("test","GUIService",0); 40 gsvc -> giUsPt ( pInfo ); 44  g :: $go () 47 * fe = "plot.pl"; 49 `syem ( fe ); 52 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PLOT_COMP/src/plot_wrapper.cpp 1  ~ 2  ~ 3  ~".h " 7 CONV_NS ( Compڒt * _ () { 8 CONV_NS ( Compڒt * wk ; 9 * compڒt ; 10 compڒt = w (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () { 16 * li [2]; 17 li [0] = "create_plotlot "; 18 li [1] = 0; 19  li ; 23  id []="$Id:lot_wrapper.cpp,v 1.1 2004/07/07 02:29:40efantzi Exp $"; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PRESSURE_COMP/include/dpdt.h 1  ~ 2  ~"c.h " 3  ~"dPts.h " 4  ~"DiffPt.h " 5  ~"DPt.h " 6  ~"PrݔtsPt.h " 7  ~"PssuPt.h " 8  ~"ThmoAlysisPt.h " 9  ~"fPt.h " 10  ~ 11  ~ 13  ~"jc++/ut/jc++ut.h " 14  ~"ms/msSr.h " 15  ~"pt/sutIs.h " 18  ~"CONV_NS.h " 20 ass gdpdt : public vtu DiffPt , 21 public vtu gPssuPt , 22 public vtu gDPt , 23 public vtu gPrݔtsPt , 24 public vtu $CONV_NS ( Compڒt ) 27 public : 29 `dpdt (); 30 vtu ~ `dpdt (); 32 vtu  `f_d ( N ,  t , c_vec * y , c_vec* yd , 33 * f_da ); 35 vtu  `Jac_d ( N , c_m * j , * f_da ,  t , 36 c_vec * y , c_vec* ewt , * jac_da ); 38 vtu  `tSvis ( `CONV_NS ( Svis * cc ); 48 vtu bo `DsItExi (* key_me ); 50 vtu  `GSize (*){ -1;} 60 vtu  `GIegs (* me , * da ,  size ) ; 62 vtu  `GDoubs (* me , * da ,  size ); 70 vtu  `SIegs (* me , * da ,  size ) ; 72 vtu  `SDoubs (* me , * da ,  size ) ; 77 vtu  `compu * da1 , cڡ * p_lbbc , 78 cڡ * p_ubbc , cڡ * p_she , 79  nvs , * da2 , 80 cڡ * p_cr_suti , 81 * p_doma_exs ,  max_v , 82  f_ ,  dim ) ; 85 vtu  `g_dpdt (* dpdt ); 87 ive : 89  `fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 90 {  ( iv * nz * ny * nx + k *ny*nx + j *nx + i ) ; } 92  `my_essu ( N ,  essu1 , * da , 93 * da_d , * dp0dt ); 94 `CONV_NS ( Svis * svc ; 95 CfigubPamPt * ; 97  essu1 ; 98  ack_ecs_dex ; 99  necs ; 100  t ; 101  N ; 102  ns ; 103  dpdtCut ; 104  dpdtPvious ; 105  dpdtCڡ ; 106 bo ed_f ; 108  r0 ; tm ; btzk ; avogadro ; mef ; 109  f ; hf ; ef ; wf ; rgf ; 110  rhef ; wf ; pdf ; htdf ; f ; 111  vf ; vdifef ; amuf ; timef ; ef ; 112  cgf ; gf ; damkoh ; 115 d :: m < std:: rg , > ags ; 116 d :: m < std:: rg , *> ݔts ; 118 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PRESSURE_COMP/include/dpdt_cca_vec.h 2 #ide dpdt_c_vec_h_ 3  #dpdt_c_vec_h_ ) 5  ~"c_vec.h " 6  ~ 8 as cdpdt_c_vec : public vtu c_vec 10 public : 12 $dpdt_c_vec () 14 da = NULL ; 15 size = 0; 18 $dpdt_c_vec ( s ) 20 size = s ; 21 } } 23 gvtu ~ $dpdt_c_vec () 25 da = NULL ; 26 } } 28 vtu * $g_da ({ ( da ; } } 30 vtu  $g_size ({  ( size ; } } 32 vtu  $t_size ( a { size = ; } } 34 vtu  $put_da (* q ,  s ) 36 i( s ! size ) { 37 cout <<"E: sizove܇nd iudd'age"<< dl ; 41 da = q ; 43 } } 45 vtu  $cy_da ( c_vec * q ) 47 i size ! q -> `g_size () )  (-1) ; 49 * l = q -> `g_da () ; 50  i = 0; i < size ; i++ da [i] = l [i] ; 52 } } 54 give : 56  size ; 57 * gda ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PRESSURE_COMP/src/dpdt.cpp 1  ~ 2  ~"dpdt.h " 3  ~"dpdt_c_vec.h " 6 gdpdt :: $dpdt () 8 ed_f = l ; 9 essu1 = 0; 10 dpdtCڡ = 0.0; 11 dpdtCut = 0.0; 12 dpdtPvious = 0.0; 13 ack_ecs_dex = 2; 15 N = 1 ; 16 t = 0.0 ; 17 necs = 1 ; 18 ns = 1 ; 20 ݔts ["dpdtCڡ"] = & dpdtCڡ ; 21 ags ["ack_ecs_dex"] = ack_ecs_dex ; 22 dpdtPvious = 0.0; 23 cout <<"dpdcڡrued"<< dl ; 24 } } 27 gdpdt ::~ $dpdt () 29 cout <<"dpdderoyed"<< dl ; 30 } } 32  gdpdt :: tSvis ( CONV_NS ( Svis * cc ) 35 i( cc = NULL ){ 39 gsvc = cc ; 41 gsvc -> giUsPt svc -> PtInfo ("cSvc", 44 CfigubPamFay * gf = 45 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 46 g = f -> CfigubPamPt (); 47 gsvc -> aPt ("cSvc"); 48 gsvc -> uegiUsPt ("cSvc"); 50 CONV_NS ( PtInfo * gpInfo ; 53 gpInfo = svc -> PtInfo ("DenseThermChem", "DensePort", 0); 54 gsvc -> giUsPt ( pInfo ); 57 gpInfo = svc -> PtInfo ("Band", "BandPort", 0); 60 gpInfo = svc -> PtInfo ("dPdtPatch", "DiffPort", 0); 61 gsvc -> addProvidesPt ( this , pInfo ); 70 gpInfo = svc -> PtInfo ("propertiesThermChem", "PropertiesPort", 0); 71 gsvc -> giUsPt ( pInfo ); 74 gpInfo = svc -> PtInfo ("ref", "refPort", 0); 75 gsvc -> giUsPt ( pInfo ); 78 gpInfo = svc -> PtInfo ("Analysis", "ThermoAnalysisPort", 0); 79 gsvc -> giUsPt ( pInfo ); 82 gpInfo = svc -> PtInfo ("dpdt", "PressurePort", 0); 83 gsvc -> addProvidesPt ( this , pInfo ); 89  gdpdt :: $f_d ( N1 ,  t1 , c_vec * y , c_vec* yd , 90 * f_da ) 92 cout << "dpdt::f_d DANGER. Somg wed.... Abt" << dl ; 93 `ex (-2); 94 } } 95  gdpdt :: $Jac_d ( N1 , c_m * J , * f_da ,  t1 , 96 c_vec * y , c_vec* ewt , * jac_da ) 98 } } 100  gdpdt :: $compu * da1 , cڡ * p_lbbc , 101 cڡ * p_ubbc , cڡ * p_she , 102  nvs , * da2 , 103 cڡ * p_cr_suti , 104 * p_doma_exs ,  max_v , 105  f_ ,  dim ) 108 dpdtCڡ = 0.0; 109 dpdtCut = 0.0; 112 necs = nvs - 2; 116 ack_ecs_dex = necs ; 119  #MAX ( A , B (A> (B? (A: (B) ) 121  nx = `MAX ( p_she [0], 1) ; 122  ny = `MAX ( p_she [1], 1) ; 123  nz = `MAX ( p_she [2], 1) ; 124 ns = nx * ny * nz ; 126  mtu ; 127 * ssu = "pressure" ; 129 * phi = 0;h w [ nvs ] ; 130 * da = 0; d w [ nvs ]; 131 * dp0dt = 0; dp0d w [1]; 132 dp0dt [0] = 0.0 ; 134 * ac_ve = w [ nvs -2]; 135 * ac_ve_d = w [ nvs -2]; 138 DPt * pDP = dymic_ ( svc -> `gPt ("DenseThermChem")); 140 PrݔtsPt * pPP = dymic_ ( svc -> `gPt ("propertiesThermChem")); 142 dpdt_c_vec * y = w `dpdt_c_vec ( necs ); 143 dpdt_c_vec * yd = w `dpdt_c_vec ( necs ); 145  i = 0; 146  j = 0; 147  k = 0; 149 pPP -> `DsItExi ( ssu ); 151  k = 0; k < nz ; k++) 152  j = 0; j < ny ; j++) 153  i = 0; i < nx ; i++) 155  iv = 0; iv < nvs ; ivar++){ 156 phi [ iv ] = da1 [ `fdx ( i , j , k , iv, nx , ny , nz , nvs ) ] ; 158 mtu = phi [0] ; 159 essu1 = phi [ nvs -1] ; 161 pPP -> `SDoubs ( ssu , & essu1 , 1); 165 ac_ve [0] = mtu ; 167 if( ack_ecs_dex ==1){ 168  i =1; i< necs ;i++){ 169 ac_ve [ i ] = phi [i+1]; 172 if( ack_ecs_dex == necs ){ 173  i =1; i< necs ;i++){ 174 ac_ve [ i ] = phi [i]; 178  i =1;i< ack_ecs_dex ;i++){ 179 ac_ve [ i ] = phi [i]; 181  i = ack_ecs_dex ;i< necs ;i++){ 182 ac_ve [ i ] = phi [i+1]; 186 y -> `put_da ( ac_ve , necs ); 187 yd -> `put_da ( ac_ve_d , necs ); 189 c_vec * d1 = dymic_ ( y ) ; 190 c_vec * d2 = dymic_ ( yd ) ; 192 pDP -> `f_d ( N , t , d1 , d2 , NULL ); 194 * l_yds = yd -> `g_da (); 196 `my_essu ( necs , essu1 , ac_ve , l_yds , dp0dt ); 198 dpdtCut = dpdtCu+ (* dp0dt ); 201 i y !0 ) de y ; y = 0; 202 i yd !0 ) de ydot ; ydot = 0; 204 svc -> `aPt ("Dense_reaction") ; 205 svc -> `aPt ("reaction_properties") ; 207 dpdtCut = dpdtCu/ ns ; 210 dpdtCڡ = (3.0/2.0)* dpdtCut - (1.0/2.0)* dpdtPvious ; 212 dpdtPvious = dpdtCut ; 215 i phi !0 ) de []hi ; 216 i da !0 ) de [] data ; 217 i ac_ve !0 ) de []eac_vector; 218 i ac_ve_d !0 ) de []eac_vector_dot; 219 i dp0dt !0 ) de [] dp0dt; 221 } } 223 bo gdpdt :: $DsItExi (* me ) 226 d :: rg `dummy ( me ) ; 227 bo exis = l ; 230 d :: m < std:: rg , >:: cڡ_ p ; 231  p = ags . `beg (); !ags. `d (); ++p ) 232 i p -> f = dummy ) exis = ue ; 235 d :: m < std:: rg , *>:: cڡ_ ps ; 236  ps = ݔts . `beg ();!ݔts. `d (); ++ps ) 237 i ps -> f = dummy ) exis = ue ; 239 ( exis ) ; 240 } } 243  gdpdt :: $GIegs (* me , * da ,  size ) 245 i `DsItExi ( me = l )  (-1) ; 249 d :: rg `ame ( me ) ; 250 * da = ags [ ame ] ; 252 } } 254  gdpdt :: $GDoubs (* me , * da ,  size ) 256 i `DsItExi ( me = l )  (-1) ; 260 d :: rg `ame ( me ) ; 261 da = ݔts [ ame ] ; 264 } } 266  gdpdt :: $SIegs (* me , * da ,  size ) 268 i `DsItExi ( me = l )  (-1) ; 270 d :: rg `ame ( me ) ; 271 ags [ ame ] = * da ; 274 } } 276  gdpdt :: $SDoubs (* me , * da ,  size ) 279 i `DsItExi ( me = l )  (-1) ; 281 d :: rg `ame ( me ) ; 282 ݔts [ ame ] = da ; 285 } } 287  gdpdt :: $my_essu ( N1 ,  essu1 , * ac , 288 * ac_d , * dp0dt1 ) 290  dp0dt = 0.0; 291  mp = ac [0]; 292  necs1 = N1 ; 293 * Y = w [ necs1 ]; 294 * X = w [ necs1 ]; 295  mix = 0.0; 296  cvmix = 0.0; 297 * wt = w [ necs1 ]; 298 * dYdt = w [ necs1 -1]; 299  wtm = 0.0; 300  sum = 0.0; 301  rho = 0.0; 302 * she = w [3] ; 306 she [0] = 1 ; 307 she [1] = 1 ; 308 she [2] = 1 ; 313  i =0; i<( necs1 -1); i++){ 314 Y [ i ] = ac [i+1]; 315 dYdt [ i ] = ac_d [i+1]; 316 sum = sum + Y [ i ]; 319 Y [ necs1 -1] = 1.0 - sum ; 321 if( ed_f == l ){ 325 fPt * psc1 ; 326 psc1 = dymic_ < fPt *>( svc -> `gPt ("ref")); 328 psc1 -> `_f_g (& r0 ,& tm ,& btzk ,& avogadro ,& mef ,& f ,& hf , 329 & ef ,& wf ,& rgf ,& rhef ,& wf ,& pdf , 330 & htdf ,& f ,& vf ,& vdifef ,& amuf , 331 & timef ,& ef ,& cgf ,& gf ,& damkoh ); 333 svc -> `aPt ("ref"); 334 ed_f = ue ; 341 ThmoAlysisPt * psc2 ; 342 psc2 = dymic_ < ThmoAlysisPt *>( svc -> `gPt ("Analysis")); 349  dummy_y_size = N1 +1+1 ; 350 * dummy_y = w [ dummy_y_size ] ; 353 sum = 0.0 ; 354  i = 1; i < N1 ; i++) { 355 sum + ac [ i ] ; 357  ack_ecs_mass_ai = 1.0 - sum ; 358  cou = 0 ; 359 dummy_y [ dummy_y_size -1] = essu1 ; 360  i = 0 ; i < dummy_y_size -1; i++) 362  ecs_dex = i ; 363 i ecs_dex ! ack_ecs_dex ) 365 dummy_y [ i ] = ac [ cou ] ; 366 cou ++ ; 369 dummy_y [ ack_ecs_dex ] = ack_ecs_mass_ai ; 371 psc2 -> `CompuV ( dummy_y , dummy_y_size , she , 1, "_mix", & mix , 1) ; 372 psc2 -> `CompuV ( dummy_y , dummy_y_size , she , 1, "cv_mix", & cvmix , 1) ; 373 psc2 -> `CompuV ( dummy_y , dummy_y_size , she , 1, "ml", X , N1 ) ; 374 psc2 -> `CompuV ( dummy_y , dummy_y_size , she , 1, "wt_mix", & wtm , 1) ; 375 psc2 -> `CompuV ( dummy_y , dummy_y_size , she , 1, "rho_mix", & rho , 1) ; 376 psc2 -> `GMecurWts ( N1 , wt ) ; 378 de [] dummy_y ; 379 svc -> `aPt ("Analysis"); 382  gamma = mix / cvmix ; 384  k = 0; 385  pha = 0.0; 387 #ifde NON_NIM 389  k =0; k< necs1 -1;k++){ 390 pha =h+ ( dYdt [ k ]/ wt [k]); 396  ba = ac_d [0]; 398  dTdt = 0.0; 399  dummy1 = 0; 401 dummy1 = (( gamma -1.0)/(gamma* mix ))* mp * pha ; 403 dTdt = ( 1.0 / ( 1.0 - ( gamma -1.0)/(gamma* mix * wtm ) ) ) * 404 ( dummy1 + ba ); 407 dp0dt = rho * ( (1.0/ wtm )* dTdt + mp * pha ); 411 mp =emp/ mef ; 412 rho =ho/ rhef ; 413  mix_nd = mix / f ; 414  wtm_nd = wtm / wf ; 417  k =0; k< necs1 -1;k++){ 418 pha =h+ ( dYdt [ k ]/ wt [k])* wf * timef ; 424  ba = ac_d [0]* timef / mef ; 426  k =0; k< necs1 ; k++){ 427 wt [ k ] = wt[k]/ wf ; 430  dTdt = 0.0; 431  dummy1 = 0; 433 dummy1 = (( gamma -1.0)/(gamma* mix_nd ))* mp * pha ; 435 dTdt = ( 1.0 / ( 1.0 - ( gamma -1.0)/(gamma* mix_nd * wtm_nd ) ) ) * 436 ( dummy1 + ba ); 439 dp0dt = rho * ( (1.0/ wtm_nd )* dTdt + mp * pha ); 442 dp0dt = dp0d* ( ef / timef ); 446 * dp0dt1 = dp0dt ; 448 de [] Y ; d[] X ; d[] wt ; d[] dYdt ; d[] she ; 449 } } 451  gdpdt :: $g_dpdt * dpdt_ ){ 453 * dpdt_ = dpdtCڡ ; 455 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PRESSURE_COMP/src/dpdt_wrapper.cpp 1  ~ 2  ~ 3  ~"dpdt.h " 7 CONV_NS ( Compڒt * _dpdt () { 8 CONV_NS ( Compڒt * wk ; 9 dpdt * compڒt ; 10 compڒt = w dpdt (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () { 16 * li [2]; 17 li [0] = "create_dpdt dpdt"; 18 li [1] = 0; 19  li ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PROBLEM_MODELER/include/cca_vec.h 6 #ide __c_vec_h__ 7  #__c_vec_h__ ) 9 as cc_vec 11 mpublic : 12 $c_vec () {} 13 vtu ~ $c_vec ({ } } 15 vtu * g_da ()=0; 16 vtu  g_size ()=0; 17 vtu  t_size ()=0; 18 vtu  put_da (*, )=0; 19 vtu  cy_da ( c_vec *)=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PROBLEM_MODELER/include/problemModeler.h 1  ~ 2  ~"c.h " 3  ~"dPts.h " 4  ~"DPt.h " 5  ~"BdPt.h " 6  ~"PrݔtsPt.h " 7  ~"PssuPt.h " 8  ~"DiffPt.h " 10  ~"fPt.h " 11  ~ 12  ~ 13 usg mea gd ; 15  ~"jc++/ut/jc++ut.h " 16  ~"ms/msSr.h " 17  ~"pt/sutIs.h " 20  ~"CONV_NS.h " 22 ass gobmMod : public vtu DPt , 23 public vtu gBdPt , 24 public vtu $CONV_NS ( Compڒt ) 27 public : 29 `obmMod (); 30 vtu ~ `obmMod (); 32 vtu  `f_d ( N ,  t , c_vec * y , c_vec* yd , 33 * f_da ); 34 vtu  `Jac_d ( N , c_m * j , * f_da ,  t , 35 c_vec * y , c_vec* ewt , * jac_da ); 37 vtu  `f_bd ( N ,  t , c_vec * y , c_vec* yd , 38 * f_da ); 39 vtu  `Jac_bd ( N ,  mu ,  mlow , BdM_c J , 40 * f_da ,  t , c_vec * y , 41 c_vec * ewt , * jac_da ); 43 vtu  `tSvis ( `CONV_NS ( Svis * cc ); 45 ive : 47  `upde ( N , * dpdtCڡ1 , * da , 48 * da_d , * da_d_to_cvode ); 49  ` () ; 51 `CONV_NS ( Svis * svc ; 52 CfigubPamPt * ; 54  essuHp ; 56  dpdtCڡ ; 57 bo ed_f , is_ ; 59  r0 ; tm ; btzk ; avogadro ; mef ; 60  f ; hf ; ef ; wf ; rgf ; 61  rhef ; wf ; pdf ; htdf ; f ; 62  vf ; vdifef ; amuf ; timef ; ef ; 63  cgf ; gf ; damkoh ; 66 m < rg , > ags ; 67 m < rg , *> ݔts ; 68 DPt * pDP ; 69 BdPt * pBP ; 70 PrݔtsPt * pRP ; 71 DiffPt * pPs ; 72 PssuPt * pPP ; 73 fPt * psc1 ; 74 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PROBLEM_MODELER/include/problemModeler_cca_vec.h 2 #ide obmMod_c_vec_h_ 3  #obmMod_c_vec_h_ ) 5  ~"c_vec.h " 6  ~ 8 as cobmMod_c_vec : public vtu c_vec 10 public : 12 $obmMod_c_vec  sk_em , c_vec * y ) 14 size = y -> `g_size ()-1 ; 15 * l = y -> `g_da () ; 17 `as sk_em >0 ) ;ssk_em < y -> `g_size () ) ; 19  cou = 0 ; da = w [ size ]; 20  i = 0; i < y -> `g_size (); i++) 22 i i ! sk_em ) { da [ cou ] = l [i]; count++;} 26 vtu ~ $obmMod_c_vec () 28 size = 0 ; i da !0 ) de [] data ; 29 } } 31 vtu * $g_da ({ ( da ; } } 33 vtu  $g_size ({  ( size ; } } 35 vtu  $t_size ( a { size = ; } } 37 vtu  $put_da (* q ,  s ) 39 da = q ; 41 } } 43 vtu  $cy_da ( c_vec * q ) 45 i size ! q -> `g_size () )  (-1) ; 47 * l = q -> `g_da () ; 48  i = 0; i < size ; i++ da [i] = l [i] ; 50 } } 52 give : 54  size ; 55 * gda ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PROBLEM_MODELER/src/problemModeler.cpp 8  ~ 9  ~"obmMod.h " 10  ~"obmMod_c_vec.h " 13 gobmMod :: $obmMod () 15 dpdtCڡ = 0.0; 16 ed_f = l ; is_ = false ; 18 cout <<"obmMod cڡrued"<< dl ; 20 } } 23 gobmMod ::~ $obmMod () 25 cout <<"obmMod deroyed"<< dl ; 26 } } 28  gobmMod :: tSvis ( CONV_NS ( Svis * cc ) 31 i( cc = NULL ) 33 i( is_ = ue ) 35 svc -> aPt ("reaction_properties"); 36 gsvc -> aPt ("Dense") ; 37 gsvc -> aPt ("ref"); 38 gsvc -> aPt ("dPdtPatch"); 39 gsvc -> aPt ("dpdt"); 44 gsvc = cc ; 46 gsvc -> giUsPt svc -> PtInfo ("cSvc", 49 CfigubPamFay * gf = 50 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 51 g = f -> CfigubPamPt (); 52 gsvc -> aPt ("cSvc"); 53 gsvc -> uegiUsPt ("cSvc"); 55 CONV_NS ( PtInfo * gpInfo ; 58 gpInfo = svc -> PtInfo ("DenseThermChem", "DensePort", 0); 59 gsvc -> giUsPt ( pInfo ); 62 gpInfo = svc -> PtInfo ("DenseCvode", "DensePort", 0); 63 gsvc -> addProvidesPt ( this , pInfo ); 66 gpInfo = svc -> PtInfo ("Band_reaction", "BandPort", 0); 70 gpInfo = svc -> PtInfo ("Band_cvode", "BandPort", 0); 74 gpInfo = svc -> PtInfo ("propertiesThermChem", "PropertiesPort", 0); 75 gsvc -> giUsPt ( pInfo ); 82 gpInfo = svc -> PtInfo ("ref", "refPort", 0); 83 gsvc -> giUsPt ( pInfo ); 86 gpInfo = svc -> PtInfo ("dpdt", "PressurePort", 0); 87 gsvc -> giUsPt ( pInfo ); 90 gpInfo = svc -> PtInfo ("dPdtPatch", "DiffPort", 0); 91 gsvc -> giUsPt ( pInfo ); 97  gobmMod :: $f_d ( N ,  t , c_vec * y , c_vec* yd , 98 * f_da ) 101 i( is_ = l ) ` () ; 103 obmMod_c_vec `yw ( N -1, y ) ; 104 obmMod_c_vec `ydw ( N -1, yd ) ; 105 essuHp = y -> `g_da ()[ N -1] ; 111 #ifde JR_VERBOSE 112 * junk = yw . `g_da () ; 113 cout << "roblemModeler::f_dense : Input intoeaction " ; 114  k = 0; k < N -1; k++ cout << junk [k] << ", " ; 115 cout << dl ; 117 pRP -> `SDoubs ("essu", & essuHp , 1); 118 pDP -> `f_d ( N -1, t , dymic_ < c_vec *> (& yw ), 119 dymic_ < c_vec *> (& ydw ), f_da ); 121 * da = y -> `g_da (; * da_d = ydw .get_data() ; 122 * da_w = w [ N +1]; * da_w_d =ew [N+1]; 123 #ifde JR_VERBOSE 124 cout << " Output fromeaction " ; 125 junk = ydw . `g_da () ; 126  k = 0; k < N -1; k++ cout << junk [k] << ", " ; 127 cout << dl ; 130  sum = 0.0; 131  k1 =0; k1<( N -1); k1++) 133 i k1 !0 ) sum = sum + da [k1]; 134 da_w [ k1 ] = da [k1]; 135 da_w_d [ k1 ] = da_d [k1]; 137 da_w [ N -1] = 1.0 - sum ; da_w[N] = da [N-1]; 138 da_w_d [ N -1] = 0.0 ; data_new_dot[N] = 0.0 ; 141  p_she [3] = {1, 0, 0}; 142 #ifde JR_VERBOSE 143 cout << "roblemModeler::f_dense() input into dtpt calc " ; 144  j = 0 ; j < N +1; j++ cout << da_w [j] << ", " ; 145 cout << dl ; 148 pPs -> `compu ( da_w , NULL , NULL, p_she , N +1, da_w_d , 149 NULL , NULL, 0, 0, 3); 150 pPP -> `g_dpdt (& dpdtCڡ ); 151 #ifde JR_VERBOSE 152 cout << " dpd" << dpdtCڡ << dl ; 155 * da_d_to_cvode = yd -> `g_da (); 156 `upde ( N , & dpdtCڡ , da , da_d , da_d_to_cvode ); 158 de [] da_w ; d[] da_w_d ; 159 } } 161  gobmMod :: $upde ( N , * dp0dt , 162 * da , * da_d , 163 * da_d_to_cvode ) 166 if( ed_f == l ) 168 psc1 -> `_f_g (& r0 ,& tm ,& btzk ,& avogadro ,& mef ,& f ,& hf , 169 & ef ,& wf ,& rgf ,& rhef ,& wf ,& pdf , 170 & htdf ,& f ,& vf ,& vdifef ,& amuf , 171 & timef ,& ef ,& cgf ,& gf ,& damkoh ); 172 ed_f = ue ; 174 #ifde NON_DIM 175 da_d_to_cvode [0] = (* dp0dt + da_d [0]; 177 da_d_to_cvode [0] = (* dp0dt )* mef / ef + da_d [0]; 180 da_d_to_cvode [ N -1] = * dp0dt ; 182  ii = 1; i< ( N -1); ii++ da_d_to_cvode [ii] = da_d [ii]; 184 } } 186  gobmMod :: $f_bd ( N ,  t , c_vec * y , c_vec* yd , 187 * f_da ) 190 cout << "obmMod::f_bd-> Sh mesd up. Ndfixg. ABORT...." << dl ; 191 `ex (-1); 192 } } 194  gobmMod :: $Jac_d ( N , c_m * J , * f_da ,  t , 195 c_vec * y , c_vec* ewt , * jac_da ) 221 } } 223  gobmMod :: $Jac_bd ( N ,  mu ,  mlow , BdM_c J , 224 * f_da ,  t , c_vec * y , 225 c_vec * ewt , * jac_da ) 228 } } 230  gobmMod :: $ () 232 pDP = dymic_ < DPt *>( svc -> `gPt ("DenseThermChem")); 233 pRP = dymic_ < PrݔtsPt *>( svc -> `gPt ("propertiesThermChem")); 234 pPs = dymic_ < DiffPt *>( svc -> `gPt ("dPdtPatch")); 235 pPP = dymic_ < PssuPt *>( svc -> `gPt ("dpdt")); 236 psc1 = dymic_ < fPt *>( svc -> `gPt ("ref")); 238 is_ = ue ; 239 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Demo/PROBLEM_MODELER/src/problemModeler_wrapper.cpp 1  ~ 2  ~ 3  ~"obmMod.h " 7 CONV_NS ( Compڒt * _obmMod () { 8 CONV_NS ( Compڒt * wk ; 9 obmMod * compڒt ; 10 compڒt = w obmMod (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () { 16 * li [2]; 17 li [0] = "create_problemModelerroblemModeler"; 18 li [1] = 0; 19  li ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEDefaults.h 1 #ide _uded_ACEDeus_h 2  #_uded_ACEDeus_h ) 25  #ByWidth (8) ) 26  #MaxBVecSls (4) ) 31  #sfcBa (2) ) 36  #DefBuckSize (128) ) 37  #DefInemt (128) ) 42  #ACEBktGFNameWidth (8) ) 47  #CommInemt (128) ) 52  #CodsMaxDim (3) ) 57  #DCodsMaxDim (3) ) 62  #DefBBoxLiSize (128) ) 67  #DefGridBoxLiSize (32) ) 76  #DefGridUnLiSize (256) ) 81 #ide ACEDeuIai 82  #ACEDeuIai ( ACEGhoIai ) ) 88  #ACEDeuBoundy ( ACEBoundyRegur ) ) 89  #ACEDeuAdtBoundy ( ACEAdtBoundyIp ) ) 90  #ACEDeuRefeFa (2) ) 91  #ACEDeuRefeLev (1) ) 92  #ACEMaxIOTys (5) ) 93  #ACEDeuDiributi ( ACEComposeDiributi ) ) 94  #ACEDeuMGUWidth (2) ) 95  #ACEDeuMaxGUWidth ( ACEShtLge ) ) 96  #ACEDeuMProcWk (0) ) 97  #ACERecompoThshd (0.2) ) 99  #ACEIOVPt (2101) ) 100  #ACEIOVTimeOut (1.0) ) 104  #ACEMge ACETrue ) 105  #ACEMgeWhClu ACEF ) 106  #GFLiInemt (64) ) 111  #ACEGFVFgTy  ) 112  #ACEGFVFgNum (10) ) 117  #LiImsAtATime (32) ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEDistribution.cpp 10  ~"ACEDiributi.h " 12 #ifde DEBUG_PRINT 13  ~"CommSv.h " 19  i_e (cڡ BBox & whebbox , BBox* boxes , cڡ  , 20 cڡ  dim ); 21  i_two (cڡ BBox & whebbox , BBox* boxes , cڡ  , 22 cڡ  dim1 , cڡ  dim2 ); 23  i_l (cڡ BBox & whebbox , BBox* boxes , cڡ  ); 24  pwk_i (cڡ BBox & whebbox , BBox* boxes , cڡ  ); 27 gACEDiributi :: $ACEDiributi (cڡ  dity , BBoxLi & bbl ) 28 : `ty ( dity ), `wfunc (0), `boxes (0) 30 boxes = w BBox [ bbl . `numb ()]; 31  BBox * bb = 0; 32  t = 0; 33  bb = bbl . `f ();bb;bb=bbl. `xt ()) { 34 boxes [ t ++] = * bb ; 36 } } 38  gACEDiributi :: $t_di (cڡ  dity , BBoxLi & bbl ) 40 ty = dity ; 41 i( boxes de [] boxes; 42 boxes = w BBox [ bbl . `numb ()]; 43  BBox * bb = 0; 44  t = 0; 45  bb = bbl . `f ();bb;bb=bbl. `xt ()) { 46 boxes [ t ++] = * bb ; 48 } } 50  gACEDiributi :: $g_ld ( GridUnLi & ggul , 51 cڡ * ޭ ) 53 i( wfunc ) { 54  ld = 0, n = 0; 55  vs = ggul . `vs (); 56  l =0;l< vs ;l++) 57 ld +(* wfunc )(&( n = ggul . `numems ( l , ޭ )),&l); 58  ld ; 60  ggul . `ld ( ޭ ) ); 61 } } 63  gACEDiributi :: $i ( GridUnLi *& ggul , 64 GridUnLi *& lgul , 65 cڡ  , cڡ  me , 66 cڡ  mw , cڡ * ޭ ) 68 i( ty = ACEComposeDiributi ) 69 `iCompose ( ggul , lgul , , me , mw , ޭ ); 71 i( ty = ACEBlockXDiributi ) 72 `iBlockO ( ACE_X , ggul , lgul , , me , mw , ޭ ); 73 i( ty = ACEBlockYDiributi ) 74 `iBlockO ( ACE_Y , ggul , lgul , , me , mw , ޭ ); 75 i( ty = ACEBlockZDiributi ) 76 `iBlockO ( ACE_Z , ggul , lgul , , me , mw , ޭ ); 78 i( ty = ACEBlockXYDiributi ) 79 `iBlockTwo ( ACE_X , ACE_Y , ggul , lgul , , me , mw , ޭ ); 80 i( ty = ACEBlockYZDiributi ) 81 `iBlockTwo ( ACE_Y , ACE_Z , ggul , lgul , , me , mw , ޭ ); 82 i( ty = ACEBlockXZDiributi ) 83 `iBlockTwo ( ACE_X , ACE_Z , ggul , lgul , , me , mw , ޭ ); 85 i( ty = ACEBlockADiributi ) 86 `iBlockA ( ggul , lgul , , me , mw , ޭ ); 88 i( ty = ACEUrDefDiributi ) 89 `iUrDef ( ggul , lgul , , me , mw , ޭ ); 92 `as (0); 93 } } 95  gACEDiributi :: $i (cڡ BBox & wbbox , 96 BBox & mybbox , 97 cڡ  , 98 cڡ  me ) 100 #ifde DEBUG_PRINT 101 `as ( ty ! ACEComposeDiributi ); 104 i( ty ! ACEUrDefDiributi ) { 105 i( boxes de [] boxes; 106 boxes = w BBox [ ]; 108 i( ty = ACEBlockXDiributi ) 109 `i_e ( wbbox , boxes , , ACE_X ); 110 i( ty = ACEBlockYDiributi ) 111 `i_e ( wbbox , boxes , , ACE_Y ); 112 i( ty = ACEBlockZDiributi ) 113 `i_e ( wbbox , boxes , , ACE_Z ); 115 i( ty = ACEBlockXYDiributi ) 116 `i_two ( wbbox , boxes , , ACE_X , ACE_Y ); 117 i( ty = ACEBlockYZDiributi ) 118 `i_two ( wbbox , boxes , , ACE_Y , ACE_Z ); 119 i( ty = ACEBlockXZDiributi ) 120 `i_two ( wbbox , boxes , , ACE_X , ACE_Z ); 122 i( ty = ACEBlockADiributi ) 123 `i_l ( wbbox , boxes , ); 126 `as (0); 128 i( me < mybbox = boxes [me]; 129 mybbox . `my (); 130 } } 132  gACEDiributi :: $iCompose ( GridUnLi *& ggul , 133 GridUnLi *& lgul , 134 cڡ  , cڡ  me , 135 cڡ  mw , cڡ * ޭ ) 137 #ifde DEBUG_PRINT 139 `as ( ggul -> `numb () > 0); 142 `as ( > 0); 147 i( me < ) { 148 i( lgul lgul-> `emy (); 150 lgul = w GridUnLi ; 154 dMIndex * lm = 0; 155 dMIndex lmax ; 157  wk = `g_ld (* ggul , ޭ ); 159  thsh = (((1.0*( wk / ))+0.5); 160  cuhsh = thsh ; 162  p = 0, pt = 0; 163  tmpw = 0, w = 0; 165  GridUn * tmpgu = ggul -> `f (); 167 #ifde DEBUG_PRINT_DIST 168 comm_rvi :: `log () << "\n{ Composite Distribution: " 169 << << " " << wk << " " << thsh 171 ). `ush (); 174  t =0; tmpgu ;t++,tmpgu= ggul -> `xt ()) { 175 w +( tmpw = tmpgu -> `guWk ( ޭ )); 177 #ifde DEBUG_PRINT_DIST 178 comm_rvi :: `log () << "\n{ Partitioning: " 179 << t << " " << p << " " 180 << cuhsh << " " << w << " " << tmpw << " " 181 << tmpgu -> `guBaIndex () << " " 182 << * ggul -> `cuec () 184 ). `ush (); 187 i( w < cuhsh ) { 189 #ifde DEBUG_PRINT_DIST 190 i( p >= ) 191 comm_rvi :: `log () << "\n************* Current Composite List *************\n" 192 << * ggul 195 << *(( SimeBuckVoid * ggul ) 197 ). `ush (); 199 #ifde DEBUG_PRINT 200 `as ( p < ); 202 tmpgu -> `guSOwr ( p ); pt ++; 203 i( p = me lgul -> `add (* tmpgu ); 204 i(! lm lm = w `dMIndex ( tmpgu -> `guBaIndex ()); 205 lmax = tmpgu -> `guBaIndex (); 207 i( w - cuhsh < tmpw /4) { 209 #ifde DEBUG_PRINT_DIST 210 i( p >= ) 211 comm_rvi :: `log () << "\n************* Current Composite List *************\n" 212 << * ggul 215 << *(( SimeBuckVoid * ggul ) 217 ). `ush (); 219 #ifde DEBUG_PRINT 220 `as ( p < ); 222 tmpgu -> `guSOwr ( p ); pt ++; 223 i( p = me lgul -> `add (* tmpgu ); 224 lmax = tmpgu -> `guBaIndex (); 225 p ++; pt = 0; 226 cuhsh = w + (((1.0*(( wk -w)/( - p )))+0.5); 228 i( tmpw > thsh && tmpgu -> `guEx mpgu-> `guCrsLev ()> mw ) { 229 w - tmpw ; 230 t --; 231  dwk = wk ; 232 ggul -> `decompo (); 233 wk = `g_ld (* ggul , ޭ ); 235 #ifde DEBUG_PRINT_DIST 236 comm_rvi :: `log () << "\n************* After Decompose *************\n" 237 << "CuProc:" << p << " " 238 << tmpgu -> `guBaIndex () << " " 239 << * ggul -> `cut () << "\n" 240 << "CuGU:" << ggul -> `cut () << "\n" 242 ). `ush (); 245 thsh = (((1.0*( wk / ))+0.5); 246 cuhsh = cuhsh+()((1.0*(( wk - dwk )/( - p )))+0.5); 248 i( pt == 0) { 250 #ifde DEBUG_PRINT_DIST 251 i( p >= ) 252 comm_rvi :: `log () << "\n************* Current Composite List *************\n" 253 << * ggul 256 << *(( SimeBuckVoid * ggul ) 258 ). `ush (); 260 #ifde DEBUG_PRINT 261 `as ( p < ); 263 tmpgu -> `guSOwr ( p ); pt ++; 264 i( p = me lgul -> `add (* tmpgu ); 265 lmax = tmpgu -> `guBaIndex (); 266 p ++; pt = 0; 267 cuhsh = w + (((1.0*(( wk -w)/( - p )))+0.5); 270 p ++; pt = 0; 272 #ifde DEBUG_PRINT_DIST 273 i( p >= ) 274 comm_rvi :: `log () << "\n************* Current Composite List *************\n" 275 << * ggul 278 << *(( SimeBuckVoid * ggul ) 280 ). `ush (); 282 #ifde DEBUG_PRINT 283 `as ( p < ); 285 tmpgu -> `guSOwr ( p ); 286 i( p = me lgul -> `add (* tmpgu ); 287 i(! lm lm = w `dMIndex ( tmpgu -> `guBaIndex ()); 288 lmax = tmpgu -> `guBaIndex (); 289 cuhsh = ( w - tmpw + (((1.0*(( wk -(w-tmpw))/( - p )))+0.5); 290 i( w > cuhsh ) { 291 p ++; pt = 0; 292 i( p < ) 293 cuhsh = w + (((1.0*(( wk -w)/( - p )))+0.5); 298 if( lm de min; 299 } } 301  gACEDiributi :: $iBlockO (cڡ  axis , 302 GridUnLi *& ggul , 303 GridUnLi *& lgul , 304 cڡ  , cڡ  me , 305 cڡ  mw , cڡ * ޭ ) 307 #ifde DEBUG_PRINT 309 `as ( ggul -> `numb () > 0); 312 `as ( > 0); 315 i( boxes de [] boxes; 316 boxes = w BBox [ ]; 318 cڡ  ev = ( ggul -> `f ())-> `guFeLev (); 319 BBoxLi tmpbbl ; 320 ggul -> `bboxli ( tmpbbl , ev , 0, 0); 321 BBox wbbox = tmpbbl . `du (); 322 `i_e ( wbbox , boxes , , axis ); 324 GridUnLi tmpgul ; 325  p =0;p< ;p++) { 326 ggul -> `r ( boxes [ p ], ev , tmpgul , 0); 327 GridUnLi `tmpgul (* ggul ); 328 tmpgul * boxes [ p ]; 329 ggul -> `towr ( tmpgul , p ); 330 i( p = me ) { 331 i( lgul ) { 332 lgul -> `emy (); 333 * lgul = tmpgul ; 336 lgul = w `GridUnLi ( tmpgul ); 338 lgul -> `towr ( me ); 341 } } 343  gACEDiributi :: $iBlockTwo (cڡ  axis1 , cڡ  axis2 , 344 GridUnLi *& ggul , 345 GridUnLi *& lgul , 346 cڡ  , cڡ  me , 347 cڡ  mw , cڡ * ޭ ) 349 #ifde DEBUG_PRINT 351 `as ( ggul -> `numb () > 0); 354 `as ( > 0); 357 i( boxes de [] boxes; 358 boxes = w BBox [ ]; 360 cڡ  ev = ( ggul -> `f ())-> `guFeLev (); 361 BBoxLi tmpbbl ; 362 ggul -> `bboxli ( tmpbbl , ev , 0, 0); 363 BBox wbbox = tmpbbl . `du (); 364 `i_two ( wbbox , boxes , , axis1 , axis2 ); 366 GridUnLi tmpgul ; 367  p =0;p< ;p++) { 368 ggul -> `r ( boxes [ p ], ev , tmpgul , 0); 369 GridUnLi `tmpgul (* ggul ); 370 tmpgul * boxes [ p ]; 371 ggul -> `towr ( tmpgul , p ); 372 i( p = me ) { 373 i( lgul ) { 374 lgul -> `emy (); 375 * lgul = tmpgul ; 378 lgul = w `GridUnLi ( tmpgul ); 380 lgul -> `towr ( me ); 383 } } 385  gACEDiributi :: $iBlockA ( GridUnLi *& ggul , 386 GridUnLi *& lgul , 387 cڡ  , cڡ  me , 388 cڡ  mw , cڡ * ޭ ) 390 #ifde DEBUG_PRINT 392 `as ( ggul -> `numb () > 0); 395 `as ( > 0); 398 i( boxes de boxes; 399 boxes = w BBox [ ]; 401 cڡ  ev = ( ggul -> `f ())-> `guFeLev (); 402 BBoxLi tmpbbl ; 403 ggul -> `bboxli ( tmpbbl , ev , 0, 0); 404 BBox wbbox = tmpbbl . `du (); 405 `i_l ( wbbox , boxes , ); 407 GridUnLi tmpgul ; 408  p =0;p< ;p++) { 409 ggul -> `r ( boxes [ p ], ev , tmpgul , 0); 410 GridUnLi `tmpgul (* ggul ); 411 tmpgul * boxes [ p ]; 412 ggul -> `towr ( tmpgul , p ); 413 i( p = me ) { 414 i( lgul ) { 415 lgul -> `emy (); 416 * lgul = tmpgul ; 419 lgul = w `GridUnLi ( tmpgul ); 421 lgul -> `towr ( me ); 424 } } 426  gACEDiributi :: $iUrDef ( GridUnLi *& ggul , 427 GridUnLi *& lgul , 428 cڡ  , cڡ  me , 429 cڡ  mw , cڡ * ޭ ) 431 #ifde DEBUG_PRINT 433 `as ( boxes ); 436 `as ( ggul -> `numb () > 0); 439 `as ( > 0); 442 cڡ  ev = ( ggul -> `f ())-> `guFeLev (); 443 BBoxLi tmpbbl ; 444 ggul -> `bboxli ( tmpbbl , ev , 0, 0); 445 BBox wbbox = tmpbbl . `du (); 446 `i_l ( wbbox , boxes , ); 448 GridUnLi tmpgul ; 449  p =0;p< ;p++) { 450 ggul -> `r ( boxes [ p ], ev , tmpgul , 0); 451 GridUnLi `tmpgul (* ggul ); 452 tmpgul * boxes [ p ]; 453 ggul -> `towr ( tmpgul , p ); 454 i( p = me ) { 455 i( lgul ) { 456 lgul -> `emy (); 457 * lgul = tmpgul ; 460 lgul = w `GridUnLi ( tmpgul ); 462 lgul -> `towr ( me ); 465 } } 478  $i_e (cڡ BBox & whebbox , BBox* boxes , cڡ  , 479 cڡ  dim ) 481 cڡ  nk = whebbox .rank; 482 cڡ  glb = whebbox . `low ( dim ); 483 cڡ  gub = whebbox . `u ( dim ); 484 cڡ  = whebbox . `size ( dim ); 485 cڡ  ex = whebbox . `exs ( dim ); 487 #ifde DEBUG_PRINT 488 `as ( ex > ); 491 cڡ  dx = ex / ; 492 cڡ  Xa = ex % ; 494  p =0;p< ;p++) { 495 cڡ  dlow = p * dx + `m ( Xa ,p); 496 cڡ  du = ( - p -1)* dx + `max (( Xa -p-1),0); 497 boxes [ p ] = whebbox ; 498 boxes [ p ]. `growlow ( dim , dlow ); 499 boxes [ p ]. `growu ( dim ,- du ); 501 } } 504  $i_two (cڡ BBox & whebbox , BBox* boxes , cڡ  , 505 cڡ  dim1 , cڡ  dim2 ) 508  n1 , n2 ; 511 n1 = ; 512 n2 = 1; 513 i( n1 % 2 == 0) { 514  n1 % 2 =0 &&1 > n2 515 && ( `abs ( n1 - n2 ) >=bs(n1/2-n2*2))) { 516 n1 /= 2; 517 n2 *= 2; 520  n1 % 3 =0 &&1 > n2 521 && ( `abs ( n1 - n2 ) >=bs(n1/3-n2*3))) { 522 n1 /= 3; 523 n2 *= 3; 527 cڡ  nk = whebbox .rank; 528 cڡ Cods & glb = whebbox . `low (); 529 cڡ Cods & gub = whebbox . `u (); 530 cڡ Cods & = whebbox . `size (); 531 cڡ Cods & ext = whebbox . `exs (); 533 Cods `tm ( ext ); 534 cڡ  ld1 = ( `tm ( dim1 >tm( dim2 )) ? dim1 : dim2; 535 cڡ  ld2 = ( `tm ( dim1 tm( dim2 )) ? dim1 : dim2; 540 cڡ  2 = ( `tm ( dim1 ii ) ? 1 : 0; 573 `c1 ( dim2 ( `c (dim2> jj ) ? 1 : 0; 578 `c2 ( dim1 `m ( `c (dim1), ii ); 579 `c2 ( dim2 `m ( `c (dim2), jj ); 581 Cods & lb = boxes [ whichp ]. `low (); 582 Cods & ub = boxes [ whichp ]. `u (); 584 `lb ( dim1 `glb (dim1+ ( ii * ( `dt (dim1)+ `c2 (dim1))* ` (dim1); 585 `lb ( dim2 `glb (dim2+ ( jj * ( `dt (dim2)+ `c2 (dim2))* ` (dim2); 587 `ub ( dim1 `lb (dim1+ ( `dt (dim1+ `c1 (dim1- 1)* ` (dim1); 588 `ub ( dim2 `lb (dim2+ ( `dt (dim2+ `c1 (dim2- 1)* ` (dim2); 591 } } 594  $i_l (cڡ BBox & whebbox , BBox* boxes , cڡ  ) 597  n1 , n2 , n3 ; 600 n1 = ; 601 n2 = 1; 602 n3 = 1; 603  i =0;i<2;i++) { 604  twof = 0; 605 i( n1 % 2 =0 twof = 1; 606 i( twof ) { 607  n1 % 2 =0 &&1 > n2 608 && ( `abs ( n1 - n2 ) >=bs(n1/2-n2*2))) { 609 n1 /= 2; 610 n2 *= 2; 613  n1 % 3 =0 &&1 > n2 614 && ( `abs ( n1 - n2 ) >=bs(n1/3-n2*3))) { 615 n1 /= 3; 616 n2 *= 3; 619 twof = 0; 620 i( n2 % 2 =0 twof = 1; 621 i( twof ) { 622  n2 % 2 =0 &&2 > n3 623 && ( `abs ( n2 - n3 ) >=bs(n2/2-n3*2))) { 624 n2 /= 2; 625 n3 *= 2; 628  n2 % 3 =0 &&2 > n3 629 && ( `abs ( n2 - n3 ) >=bs(n2/3-n3*3))) { 630 n2 /= 3; 631 n3 *= 3; 637 cڡ  nk = whebbox .rank; 638 cڡ Cods & glb = whebbox . `low (); 639 cڡ Cods & gub = whebbox . `u (); 640 cڡ Cods & = whebbox . `size (); 641 cڡ Cods & ext = whebbox . `exs (); 643 Cods `tm ( ext ); 644 cڡ  ld1 = ( `tm (0) >mpe(1)) ? 645 (( `tm (0) >mpe(2)) ? 0 : 2) : 646 (( `tm (1) >mpe(2) ? 1 : 2)); 647 `tm ( ld1 ) = 0; 648 cڡ  ld2 = ( `tm (0) >mpe(1)) ? 649 (( `tm (0) >mpe(2)) ? 0 : 2) : 650 (( `tm (1) >mpe(2) ? 1 : 2)); 651 `tm ( ld2 ) = 0; 652 cڡ  ld3 = ( `tm (0) >mpe(1)) ? 653 (( `tm (0) >mpe(2)) ? 0 : 2) : 654 (( `tm (1) >mpe(2) ? 1 : 2)); 656 Cods `tm ( nk ,0); 657 `tm (0 n1 ;m(1 n2 ;m(2 n3 ; 658 cڡ  1 = ( `tm (0) >mpp(1)) ? 659 (( `tm (0) >mpp(2)) ? 0 : 2) : 660 (( `tm (1) >mpp(2) ? 1 : 2)); 661 `tm ( 1 ) = 0; 662 cڡ  2 = ( `tm (0) >mpp(1)) ? 663 (( `tm (0) >mpp(2)) ? 0 : 2) : 664 (( `tm (1) >mpp(2) ? 1 : 2)); 665 `tm ( 2 ) = 0; 666 cڡ  3 = ( `tm (0) >mpp(1)) ? 667 (( `tm (0) >mpp(2)) ? 0 : 2) : 668 (( `tm (1) >mpp(2) ? 1 : 2)); 670 `tm (0 n1 ;m(1 n2 ;m(2 n3 ; 671 `tm ( ld1 `tm ( 1 ); 672 `tm ( ld2 `tm ( 2 ); 673 `tm ( ld3 `tm ( 3 ); 675 n1 = `tm (0); 676 n2 = `tm (1); 677 n3 = `tm (2); 680 Cods `dt ( nk ,0); 681 `dt (0( `ext (0)/ n1 ); 682 `dt (1( `ext (1)/ n2 ); 683 `dt (2( `ext (2)/ n3 ); 689 Cods `c ( nk ,0); 690 `c (0( `ext (0)% n1 ); 691 `c (1( `ext (1)% n2 ); 692 `c (2( `ext (2)% n3 ); 697 #ifde DEBUG_PRINT_DIST 705  p =0;p< ;p++ boxes [p] = whebbox ; 707  ii =0;ii< n1 ;ii++) { 708  jj =0;jj< n2 ;jj++) { 709  kk =0;kk< n3 ;kk++) { 711  whichp = ii + jj * n1 + kk *n1* n2 ; 713 #ifde DEBUG_PRINT_DIST 720 Cods `c1 ( nk ,0), `c2 (rank,0); 722 `c1 (0( `c (0> ii ) ? 1 : 0; 723 `c1 (1( `c (1> jj ) ? 1 : 0; 724 `c1 (2( `c (2> kk ) ? 1 : 0; 730 `c2 (0 `m ( `c (0), ii ); 731 `c2 (1 `m ( `c (1), jj ); 732 `c2 (2 `m ( `c (2), kk ); 734 Cods & lb = boxes [ whichp ]. `low (); 735 Cods & ub = boxes [ whichp ]. `u (); 737 `lb (0 `glb (0+ ( ii * ( `dt (0)+ `c2 (0))* ` (0); 738 `lb (1 `glb (1+ ( jj * ( `dt (1)+ `c2 (1))* ` (1); 739 `lb (2 `glb (2+ ( kk * ( `dt (2)+ `c2 (2))* ` (2); 741 `ub (0 `lb (0+ ( `dt (0+ `c1 (0- 1)* ` (0); 742 `ub (1 `lb (1+ ( `dt (1+ `c1 (1- 1)* ` (1); 743 `ub (2 `lb (2+ ( `dt (2+ `c1 (2- 1)* ` (2); 745 #ifde DEBUG_PRINT_DIST 753 } } 755  $pwk_i (cڡ BBox & whebbox , BBox* boxes , cڡ  ) 757 Cods `glb ( whebbox . `low ()); 758 Cods `gub ( whebbox . `u ()); 760  nx , ny , nz ; 763 nx = ; 764 ny = 1; 765 nz = 1; 766  i =0;i<2;i++) { 767  twof = 0; 768 i( nx % 2 =0 twof = 1; 769 i( twof ) { 770  nx % 2 =0 &&x > ny 771 && ( `abs ( nx - ny ) >=bs(nx/2-ny*2))) { 772 nx /= 2; 773 ny *= 2; 776  nx % 3 =0 &&x > ny 777 && ( `abs ( nx - ny ) >=bs(nx/3-ny*3))) { 778 nx /= 3; 779 ny *= 3; 782 twof = 0; 783 i( ny % 2 =0 twof = 1; 784 i( twof ) { 785  ny % 2 =0 &&y > nz 786 && ( `abs ( ny - nz ) >=bs(ny/2-nz*2))) { 787 ny /= 2; 788 nz *= 2; 791  ny % 3 =0 &&y > nz 792 && ( `abs ( ny - nz ) >=bs(ny/3-nz*3))) { 793 ny /= 3; 794 nz *= 3; 801 BBox `mt (3,0); 802  p =0;p< ;p++ boxes [p] = mt ; 804  ii , jj , kk ; 805 * dt = w [3], * yout =ew [3]; 808 yout [0] = nx ;ayout[1] = ny ;ayout[2] = nz ; 809  mm =0;mm<3;mm++) { 810 dt [ mm ] = ( `gub (mm)- `glb (mm))/ yout [mm]; 813 Cods `mylb (3,0), `myub (3,0); 814  ii =0;ii< nx ;ii++) 815  jj =0;jj< ny ;jj++) 816  kk =0;kk< nz ;kk++) { 818  whichp = ii + jj * nx + kk *nx* ny ; 819 `mylb (0 dt [0]* ii ; 820 `mylb (1 dt [1]* jj ; 821 `mylb (2 dt [2]* kk ; 823 `myub (0) = 824 ( ii ! nx -1 ? dt [0]*(ii+1)-1 : `gub (0)); 825 `myub (1) = 826 ( jj ! ny -1 ? dt [1]*(jj+1)-1 : `gub (1)); 827 `myub (2) = 828 ( kk ! nz -1 ? dt [2]*(kk+1)-1 : `gub (2)); 830 boxes [ whichp ]. `ow ( mylb ); 831 boxes [ whichp ]. `tu ( myub ); 832 boxes [ whichp ]. `tsize (0,1); 833 boxes [ whichp ]. `tsize (1,1); 834 boxes [ whichp ]. `tsize (2,1); 836 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEDistribution.h 1 #ide _uded_ACEDiributi_h 2  #_uded_ACEDiributi_h ) 14  ~"ACEPams.h " 15  ~"ACEDeus.h " 17  ~"Li.h " 18  ~"GridUn.h " 19  ~"GridUnLi.h " 24 (* tWkFunc (cڡ * tnumems , 25 cڡ * tv ); 28 as cACESn 30 dMIndex m ; 31 dMIndex max ; 33 public : 34 le $ACESn () {} 36 le $ACESn ( dMIndex cڡ & lm , dMIndex cڡ & lmax ) 37 : `m ( lm ), $max ( lmax { } } 39 le $ACESn (cڡ ACESn & h ) 40 : `m ( h . m ), $max ( h . max { } } 42 le  $cڏs ( dMIndex cڡ dex ) const 43 {  ( dex > m && index < max ); } } 45 le cڡ gACESn & gݔ = (cڡ ACESn & h ) 46 { m = h .m; gmax = oth. max ;  * gthis ; } 49 as cACEDiributi 51 nd ass mGridHrchy ; 52 nd mifam & mݔ >> (ifam& mifs , mGridHrchy &); 54  mty ; 58 BBox * mboxes ; 60 WkFunc mwfunc ; 62 mpublic : 63 le $ACEDiributi (cڡ  dity ) 64 : `ty ( dity , `wfunc (0), `boxes (0) { } 66 `ACEDiributi (cڡ  dity , BBoxLi & bbl ); 68 le ~ $ACEDiributi ({ i( boxes de [] boxes; } } 70  i ( GridUnLi *& globli , 71 GridUnLi *& loi , 72 cڡ  , cڡ  me , 73 cڡ  mw , cڡ * ޭ ); 75  i (cڡ BBox & wbbox , BBox& mybbox , 76 cڡ  , cڡ  me ); 80 le  $di (cڡ {  ty ; } } 82 le  $t_di (cڡ  dity ) 83 { ty = dity ; } } 85  t_di (cڡ  dity , BBoxLi & bbl ); 87 le  $t_wkfunc WkFunc wkfunc ) 88 { wfunc = ( WkFunc wkfunc ; } } 90  g_ld GridUnLi & li , cڡ * ޭ ); 92 give : 93  iCompose ( GridUnLi *& globli , 94 GridUnLi *& loi , 95 cڡ  , cڡ  me , 96 cڡ  mw , cڡ * ޭ ); 98  iBlockO (cڡ  axis , 99 GridUnLi *& globli , 100 GridUnLi *& loi , 101 cڡ  , cڡ  me , 102 cڡ  mw , cڡ * ޭ ); 104  iBlockTwo (cڡ  axis1 , cڡ  axis2 , 105 GridUnLi *& globli , 106 GridUnLi *& loi , 107 cڡ  , cڡ  me , 108 cڡ  mw , cڡ * ޭ ); 110  iBlockA ( GridUnLi *& globli , 111 GridUnLi *& loi , 112 cڡ  , cڡ  me , 113 cڡ  mw , cڡ * ޭ ); 115  iUrDef ( GridUnLi *& globli , 116 GridUnLi *& loi , 117 cڡ  , cڡ  me , 118 cڡ  mw , cڡ * ޭ ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEFortranInterfaces.h 1 #ide _uded_F܌Is_h 2  #_uded_F܌Is_h ) 18 #i( defed ( LOWERCASE )|| defed( RS6000 || defed( SPX || defed( WINNT_DEC )) 19  #FORTRAN_NAME ( x , y , z ) z 21 #i( defed ( UPPERCASE || defed( nCUBE2 || defed( CRAYC90 || defed( CRAYT3D || defed( CRAYT3E || defed( WIN32 || defed( LINUX_ABSOFT || defed( BEOWULF_ABSOFT )) 22  #FORTRAN_NAME ( x , y , z ) y 24 #i( defed ( UNDERSCORE || defed( SGI || defed( SUN )) 25  #FORTRAN_NAME ( x , y , z ) x 27  #FORTRAN_NAME ( x , y , z ) z 34 #ide LOCAL_FORTRAN_ARGS 35  #LOCAL_FORTRAN_ARGS ( X (X). `da (), \ 36 ( X ). `low ()/(X). `size (), \ 37 ( X ). `u ()/(X). `size (), \ 38 ( X ). `exs () ) 40  #LFA LOCAL_FORTRAN_ARGS ) 42 #ide LOCAL_FORTRAN_INTERFACE 43  #LOCAL_FORTRAN_INTERFACE ( T T*, INTEGER *,INTEGER*,INTEGER* ) 45  #LFI LOCAL_FORTRAN_INTERFACE ) 47 #ide LOCAL_BBOX_ARGS 48  #LOCAL_BBOX_ARGS ( X (X). `low ()/(X). `size (), \ 49 ( X ). `u ()/(X). `size (), \ 50 ( X ). `exs () ) 52  #LBA LOCAL_BBOX_ARGS ) 54 #ide LOCAL_BBOX_INTERFACE 55  #LOCAL_BBOX_INTERFACE INTEGER *,INTEGER*,INTEGER* ) 57  #LBI LOCAL_BBOX_INTERFACE ) 60 #ide GLOBAL_FORTRAN_ARGS 61  #GLOBAL_FORTRAN_ARGS ( X (X). `da (), \ 62 ( X ). `low (), \ 63 ( X ). `u (), \ 64 ( X ). `size (), \ 65 ( X ). `exs () ) 67  #GFA GLOBAL_FORTRAN_ARGS ) 69 #ide GLOBAL_FORTRAN_INTERFACE 70  #GLOBAL_FORTRAN_INTERFACE ( T T*, INTEGER *,INTEGER*,INTEGER*,INTEGER* ) 72  #GFI GLOBAL_FORTRAN_INTERFACE ) 74 #ide GLOBAL_BBOX_ARGS 75  #GLOBAL_BBOX_ARGS ( X (X). `low (), \ 76 ( X ). `u (), \ 77 ( X ). `size (), \ 78 ( X ). `exs () ) 80  #GBA GLOBAL_BBOX_ARGS ) 82 #ide GLOBAL_BBOX_INTERFACE 83  #GLOBAL_BBOX_INTERFACE INTEGER *,INTEGER*,INTEGER*,INTEGER* ) 85  #GBI GLOBAL_BBOX_INTERFACE ) 88 #ide WORLD_FORTRAN_ARGS 89  #WORLD_FORTRAN_ARGS ( GH , X (X). `da (), \ 90 ( GH ). `wldCodsLow (( X ). `low (),(X). `size ()), \ 91 ( GH ). `wldCodsU (( X ). `u (),(X). `size ()), \ 92 ( GH ). `wldSp (( X ). `size ()), \ 93 ( X ). `exs () ) 95  #WFA WORLD_FORTRAN_ARGS ) 97 #ide WORLD_FORTRAN_INTERFACE 98  #WORLD_FORTRAN_INTERFACE ( T T*, DOUBLE *,DOUBLE*,DOUBLE*, INTEGER * ) 100  #WFI WORLD_FORTRAN_INTERFACE ) 102 #ide WORLD_BBOX_ARGS 103  #WORLD_BBOX_ARGS ( GH , X (GH). `wldCodsLow ((X). `low (),(X). `size ()), \ 104 ( GH ). `wldCodsU (( X ). `u (),(X). `size ()), \ 105 ( GH ). `wldSp (( X ). `size ()), \ 106 ( X ). `exs () ) 108  #WBA WORLD_BBOX_ARGS ) 110 #ide WORLD_BBOX_INTERFACE 111  #WORLD_BBOX_INTERFACE DOUBLE *,DOUBLE*,DOUBLE*, INTEGER * ) 113  #WBI WORLD_BBOX_INTERFACE ) 116 #ide DATA_ARGUMENT 117  #DATA_ARGUMENT ( X (X). `da () ) 119  #DA DATA_ARGUMENT ) 121 #ide DATA_INTERFACE 122  #DATA_INTERFACE ( T T* ) 124  #DI DATA_INTERFACE ) 127 #ide FORTRAN_ARGS 128  #FORTRAN_ARGS ( X (X). `da (), \ 129 ( X ). `low (), \ 130 ( X ). `u (), \ 131 ( X ). `exs () ) 133  #FA FORTRAN_ARGS ) 135 #ide FORTRAN_INTERFACE 136  #FORTRAN_INTERFACE ( T T*,cڡ INTEGER *,const INTEGER*, \ 137 cڡ INTEGER * ) 139  #FI FORTRAN_INTERFACE ) 141 #ide BOUNDING_BOX 142  #BOUNDING_BOX ( X (X). `low (), \ 143 ( X ). `u (), \ 144 ( X ). `exs () ) 146  #BB BOUNDING_BOX ) 148 #ide BBOX_INTERFACE 149  #BBOX_INTERFACE cڡ INTEGER *,cڡ INTEGER*,cڡ INTEGER* ) 151  #BI BBOX_INTERFACE ) 153 #ide FORTRAN_DATA_INTERFACE 154  #FORTRAN_DATA_INTERFACE ( T T* ) 156  #FDI FORTRAN_DATA_INTERFACE ) 158 #ide FDA 159  #FDA ( X (X). `da () ) 162 #ide FBA 163  #FBA BOUNDING_BOX ) 166 #ide FA 167  #FA FORTRAN_ARGS ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEFortranInterfacesVectorGF.h 1 #ide _uded_F܌IsVeGridFuni_h 2  #_uded_F܌IsVeGridFuni_h ) 18 #i( defed ( LOWERCASE )|| defed( RS6000 || defed( SPX || defed( WINNT_DEC )) 19  #FORTRAN_NAME ( x , y , z ) z 21 #i( defed ( UPPERCASE || defed( nCUBE2 || defed( CRAYC90 || defed( CRAYT3D || defed( CRAYT3E || defed( WIN32 || defed( LINUX_ABSOFT || defed( BEOWULF_ABSOFT )) 22  #FORTRAN_NAME ( x , y , z ) y 24 #i( defed ( UNDERSCORE || defed( SGI || defed( SUN )) 25  #FORTRAN_NAME ( x , y , z ) x 27  #FORTRAN_NAME ( x , y , z ) z 34 #ide LOCAL_FORTRAN_ARGS 35  #LOCAL_FORTRAN_ARGS ( X (X). `da (), \ 36 ( X ). `low ()/(X). `size (), \ 37 ( X ). `u ()/(X). `size (), \ 38 ( X ). `exs (), \ 39 ( X ). `nem () ) 41  #LFA LOCAL_FORTRAN_ARGS ) 43 #ide LOCAL_FORTRAN_INTERFACE 44  #LOCAL_FORTRAN_INTERFACE ( T T*, INTEGER *,INTEGER*,INTEGER*,INTEGER* ) 46  #LFI LOCAL_FORTRAN_INTERFACE ) 48 #ide LOCAL_BBOX_ARGS 49  #LOCAL_BBOX_ARGS ( X (X). `low ()/(X). `size (), \ 50 ( X ). `u ()/(X). `size (), \ 51 ( X ). `exs () ) 53  #LBA LOCAL_BBOX_ARGS ) 55 #ide LOCAL_BBOX_INTERFACE 56  #LOCAL_BBOX_INTERFACE INTEGER *,INTEGER*,INTEGER* ) 58  #LBI LOCAL_BBOX_INTERFACE ) 61 #ide GLOBAL_FORTRAN_ARGS 62  #GLOBAL_FORTRAN_ARGS ( X (X). `da (), \ 63 ( X ). `low (), \ 64 ( X ). `u (), \ 65 ( X ). `size (), \ 66 ( X ). `exs (), \ 67 ( X ). `nem () ) 69  #GFA GLOBAL_FORTRAN_ARGS ) 71 #ide GLOBAL_FORTRAN_INTERFACE 72  #GLOBAL_FORTRAN_INTERFACE ( T T*, INTEGER *,INTEGER*,INTEGER*,INTEGER*,INTEGER* ) 74  #GFI GLOBAL_FORTRAN_INTERFACE ) 76 #ide GLOBAL_BBOX_ARGS 77  #GLOBAL_BBOX_ARGS ( X (X). `low (), \ 78 ( X ). `u (), \ 79 ( X ). `size (), \ 80 ( X ). `exs () ) 82  #GBA GLOBAL_BBOX_ARGS ) 84 #ide GLOBAL_BBOX_INTERFACE 85  #GLOBAL_BBOX_INTERFACE INTEGER *,INTEGER*,INTEGER*,INTEGER* ) 87  #GBI GLOBAL_BBOX_INTERFACE ) 90 #ide WORLD_FORTRAN_ARGS 91  #WORLD_FORTRAN_ARGS ( GH , X (X). `da (), \ 92 ( GH ). `wldCodsLow (( X ). `low (),(X). `size ()), \ 93 ( GH ). `wldCodsU (( X ). `u (),(X). `size ()), \ 94 ( GH ). `wldSp (( X ). `size ()), \ 95 ( X ). `exs (), \ 96 ( X ). `nem () ) 98  #WFA WORLD_FORTRAN_ARGS ) 100 #ide WORLD_FORTRAN_INTERFACE 101  #WORLD_FORTRAN_INTERFACE ( T T*, DOUBLE *,DOUBLE*,DOUBLE*, INTEGER *,INTEGER* ) 103  #WFI WORLD_FORTRAN_INTERFACE ) 105 #ide WORLD_BBOX_ARGS 106  #WORLD_BBOX_ARGS ( GH , X (GH). `wldCodsLow ((X). `low (),(X). `size ()), \ 107 ( GH ). `wldCodsU (( X ). `u (),(X). `size ()), \ 108 ( GH ). `wldSp (( X ). `size ()), \ 109 ( X ). `exs () ) 111  #WBA WORLD_BBOX_ARGS ) 113 #ide WORLD_BBOX_INTERFACE 114  #WORLD_BBOX_INTERFACE DOUBLE *,DOUBLE*,DOUBLE*, INTEGER * ) 116  #WBI WORLD_BBOX_INTERFACE ) 119 #ide DATA_ARGUMENT 120  #DATA_ARGUMENT ( X (X). `da () ) 122  #DA DATA_ARGUMENT ) 124 #ide DATA_INTERFACE 125  #DATA_INTERFACE ( T T* ) 127  #DI DATA_INTERFACE ) 130 #ide FORTRAN_ARGS 131  #FORTRAN_ARGS ( X (X). `da (), \ 132 ( X ). `low (), \ 133 ( X ). `u (), \ 134 ( X ). `exs (), \ 135 ( X ). `nem () ) 137  #FA FORTRAN_ARGS ) 139 #ide FORTRAN_INTERFACE 140  #FORTRAN_INTERFACE ( T T*, cڡ INTEGER *,const INTEGER*, \ 141 cڡ INTEGER *, cڡ INTEGER* ) 143  #FI FORTRAN_INTERFACE ) 145 #ide BOUNDING_BOX 146  #BOUNDING_BOX ( X (X). `low (), \ 147 ( X ). `u (), \ 148 ( X ). `exs () ) 150  #BB BOUNDING_BOX ) 152 #ide BBOX_INTERFACE 153  #BBOX_INTERFACE cڡ INTEGER *, cڡ INTEGER*, cڡ INTEGER* ) 155  #BI BBOX_INTERFACE ) 157 #ide FORTRAN_DATA_INTERFACE 158  #FORTRAN_DATA_INTERFACE ( T T* ) 160  #FDI FORTRAN_DATA_INTERFACE ) 162 #ide FDA 163  #FDA ( X (X). `da () ) 166 #ide FBA 167  #FBA BOUNDING_BOX ) 170 #ide FA 171  #FA FORTRAN_ARGS ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEGeom.h 1 #ide _uded_ACEGeom_h 2  #_uded_ACEGeom_h ) 12  ~ 13  ~ 14  ~ 15 usg mea gd ; 16  ~ 17  ~ 19  ~"gic.h " 21  ~"Cods.h " 22  ~"DCods.h " 23  ~"BBox.h " 24  ~"BBoxLi.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEGhostInteraction.cpp 10  ~"ACEGhoIai.h " 12  $ow ( b ,  p ) 14  tm = 1; 15  p -- tm * b ; 16  tm ; 17 } } 19 gGhoIai :: $GhoIai cڡ  nk , 20 cڡ  ty , 21 cڡ  width ) 22 : `Ink ( nk ), `Ity ( ty ), `Iwidth (2* width +1), 23 `Iside ( ACENu ), 24 `FaFg (0), `CrFg (0), `EdgeFg (0), 25 $SimeFg ( ACEF ) 27 `as Ity = ACEGhoIai ); 29 Itٮ = `ow Iwidth , Ink ); 32  a =0 ;< ACEMaxAxis ;++ ) { 33  d =0 ; d< ACEMaxDs ; d++ ) { 34 i( a < nk || = ACE_A ) { 35 Ilis [ a ][ d ] = w [ Itٮ ]; 36  i =0 ; i< Itٮ ; i++ ) { 37 Ilis [ a ][ d ][ i ] = ACEF ; 41 Ilis [ a ][ d ] = 0; 45 I_t = 2* Ink ; 46 Is = w [ I_t ]; 47 } } 49 gGhoIai :: $GhoIai cڡ  nk , 50 cڡ  fag , 51 cڡ  cag , 52 cڡ  eag , 53 cڡ  ty , 54 cڡ  width , 55 cڡ  sime ) 56 : `Ink ( nk ), `Ity ( ty ), `Iwidth (2* width +1), 57 `Iside ( ACENu ), 58 `FaFg ( fag ), `CrFg ( cag ), `EdgeFg ( eag ), 59 $SimeFg ( sime ) 61 `as Ity = ACEGhoIai ); 63 Itٮ = `ow Iwidth , Ink ); 66  a =0 ;< ACEMaxAxis ;++ ) { 67  d =0 ; d< ACEMaxDs ; d++ ) { 68 i( a < Ink || = ACE_A ) { 69 Ilis [ a ][ d ] = w [ Itٮ ]; 70  i =0 ; i< Itٮ ; i++ ) { 71 Ilis [ a ][ d ][ i ] = ACEF ; 75 Ilis [ a ][ d ] = 0; 79 I_t = 2* Ink ; 80 Is = w [ I_t ]; 83  l_axis_t = 0; 85  i ; 86  i =0 ; i< Ink ; i++ ) { 88 Icous [ i ][ ACE_Backwd ] = Icous[i][ ACE_Fwd ] 89 `ow Iwidth , Ink -1 ); 91 Icous [ i ][ ACE_Bh ] = 2* `ow Iwidth , Ink -1 ); 92 l_axis_t + `ow Iwidth , Ink -1- i ) * ipow( Iwidth-1 , i ); 95 Icous [ ACE_A ][0] = l_axis_t ; 96 Icous [ ACE_A ][1] = l_axis_t ; 97 Icous [ ACE_A ][2] = Itٮ -1; 99  x , y , z ; 101 cڡ  Ir = width ; 102  i =0 ; i< Itٮ ; i++ ) { 103 x = ( Ink =3? ( i / `ow ( Iwidth ,Irank-1))%Iwidth : 104 ( Ink =2? ( i / Iwidth )%Iwidth : i%Iwidth; 105 y = ( Ink =3? ( i / Iwidth )%Iwidth : (Ink =2? i%Iwidth : Ir ; 106 z = ( Ink =3? i % Iwidth : Ir ; 108 i `is_side ( x , y , z ) ) { 109 Iside = i ; 113 i( `is_ ( x , y , z )) { 114  idx = ( x !=1? (2* ACE_X )+(x/2) : 115 ( y !=1? (2* ACE_Y )+(y/2) : 116 (2* ACE_Z )+( z /2) ; 117 Is [ idx ] = i ; 120 i! FaFg && `is_ ( x , y , z )) ; 121 i! CrFg && `is_cr ( x , y , z )) ; 122 i! EdgeFg && `is_edge ( x , y , z )) ; 124 i x ==0 ) { 125 Ilis [ ACE_X ][ ACE_Backwd ][ i ] = ACETrue ; 126 Ilis [ ACE_X ][ ACE_Bh ][ i ] = ACETrue ; 127 Ilis [ ACE_A ][ ACE_Backwd ][ i ] = ACETrue ; 128 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 130 i x ==2 ) { 131 Ilis [ ACE_X ][ ACE_Fwd ][ i ] = ACETrue ; 132 Ilis [ ACE_X ][ ACE_Bh ][ i ] = ACETrue ; 133 Ilis [ ACE_A ][ ACE_Fwd ][ i ] = ACETrue ; 134 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 137 i y ==0 ) { 138 Ilis [ ACE_Y ][ ACE_Backwd ][ i ] = ACETrue ; 139 Ilis [ ACE_Y ][ ACE_Bh ][ i ] = ACETrue ; 140 Ilis [ ACE_A ][ ACE_Backwd ][ i ] = ACETrue ; 141 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 143 i y ==2 ) { 144 Ilis [ ACE_Y ][ ACE_Fwd ][ i ] = ACETrue ; 145 Ilis [ ACE_Y ][ ACE_Bh ][ i ] = ACETrue ; 146 Ilis [ ACE_A ][ ACE_Fwd ][ i ] = ACETrue ; 147 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 150 i z ==0 ) { 151 Ilis [ ACE_Z ][ ACE_Backwd ][ i ] = ACETrue ; 152 Ilis [ ACE_Z ][ ACE_Bh ][ i ] = ACETrue ; 153 Ilis [ ACE_A ][ ACE_Backwd ][ i ] = ACETrue ; 154 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 156 i z ==2 ) { 157 Ilis [ ACE_Z ][ ACE_Fwd ][ i ] = ACETrue ; 158 Ilis [ ACE_Z ][ ACE_Bh ][ i ] = ACETrue ; 159 Ilis [ ACE_A ][ ACE_Fwd ][ i ] = ACETrue ; 160 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 163 } } 165 gGhoIai :: $GhoIai GhoIai cڡ & h ) 166 : `Ink ( h . Ink ), `Ity (h. Ity ), `Iwidth (h. Iwidth ), 167 `Iside ( h . Iside ), 168 `I_t ( h . I_t ), `Is (0), 172 `FaFg ( h . FaFg ), 173 `CrFg ( h . CrFg ), 174 `EdgeFg ( h . EdgeFg ), 175 $SimeFg ( h . SimeFg ) 177  a ; 178  a =0 ;< ACEMaxAxis ;++ ) { 179  d =0 ; d< ACEMaxDs ; d++ ) { 180 Icous [ a ][ d ] = h .Icounts[a][d]; 181 i( h . Ilis [ a ][ d ]) { 182 Ilis [ a ][ d ] = w [ Itٮ ]; 183  i =0 ; i< Itٮ ; i++ ) 184 Ilis [ a ][ d ][ i ] = h .Ilists[a][d][i]; 187 Ilis [ a ][ d ] = 0; 191 Is = w [ I_t ]; 192  a =0 ;< I_t ;++) { 193 Is [ a ] = h .Ifaces[a]; 195 } } 197 gGhoIai ::~ $GhoIai ( ) 199  a =0 ;< ACEMaxAxis ;++ ) { 200  d =0 ; d< ACEMaxDs ; d++ ) { 201 i( Ilis [ a ][ d ] de [] Ilists[a][d]; 204 i( Is de [] Ifaces; 205 } } 207  gGhoIai :: $compu_is cڡ  fag , 208 cڡ  cag , 209 cڡ  eag , 210 cڡ  sime ) 212 FaFg = fag ; 213 CrFg = cag ; 214 EdgeFg = eag ; 216 SimeFg = sime ; 219  l_axis_t = 0; 221  i ; 222  i =0 ; i< Ink ; i++ ) { 224 Icous [ i ][ ACE_Backwd ] = Icous[i][ ACE_Fwd ] 225 `ow Iwidth , Ink -1 ); 227 Icous [ i ][ ACE_Bh ] = 2* `ow Iwidth , Ink -1 ); 228 l_axis_t + `ow Iwidth , Ink -1- i ) * ipow( Iwidth-1 , i ); 231 Icous [ ACE_A ][0] = l_axis_t ; 232 Icous [ ACE_A ][1] = l_axis_t ; 233 Icous [ ACE_A ][2] = Itٮ -1; 235  x , y , z ; 237 cڡ  Ir = ( Iwidth -1)/2; 238  i =0 ; i< Itٮ ; i++ ) { 239 x = ( Ink =3? ( i / `ow ( Iwidth ,Irank-1))%Iwidth : 240 ( Ink =2? ( i / Iwidth )%Iwidth : i%Iwidth; 241 y = ( Ink =3? ( i / Iwidth )%Iwidth : (Ink =2? i%Iwidth : Ir ; 242 z = ( Ink =3? i % Iwidth : Ir ; 244 i `is_side ( x , y , z ) ) { 245 Iside = i ; 249 i( `is_ ( x , y , z )) { 250  idx = ( x !=1? (2* ACE_X )+(x/2) : 251 ( y !=1? (2* ACE_Y )+(y/2) : 252 (2* ACE_Z )+( z /2) ; 253 Is [ idx ] = i ; 256 i! FaFg && `is_ ( x , y , z )) ; 257 i! CrFg && `is_cr ( x , y , z )) ; 258 i! EdgeFg && `is_edge ( x , y , z )) ; 260 i x ==0 ) { 261 Ilis [ ACE_X ][ ACE_Backwd ][ i ] = ACETrue ; 262 Ilis [ ACE_X ][ ACE_Bh ][ i ] = ACETrue ; 263 Ilis [ ACE_A ][ ACE_Backwd ][ i ] = ACETrue ; 264 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 266 i x ==2 ) { 267 Ilis [ ACE_X ][ ACE_Fwd ][ i ] = ACETrue ; 268 Ilis [ ACE_X ][ ACE_Bh ][ i ] = ACETrue ; 269 Ilis [ ACE_A ][ ACE_Fwd ][ i ] = ACETrue ; 270 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 273 i y ==0 ) { 274 Ilis [ ACE_Y ][ ACE_Backwd ][ i ] = ACETrue ; 275 Ilis [ ACE_Y ][ ACE_Bh ][ i ] = ACETrue ; 276 Ilis [ ACE_A ][ ACE_Backwd ][ i ] = ACETrue ; 277 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 279 i y ==2 ) { 280 Ilis [ ACE_Y ][ ACE_Fwd ][ i ] = ACETrue ; 281 Ilis [ ACE_Y ][ ACE_Bh ][ i ] = ACETrue ; 282 Ilis [ ACE_A ][ ACE_Fwd ][ i ] = ACETrue ; 283 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 286 i z ==0 ) { 287 Ilis [ ACE_Z ][ ACE_Backwd ][ i ] = ACETrue ; 288 Ilis [ ACE_Z ][ ACE_Bh ][ i ] = ACETrue ; 289 Ilis [ ACE_A ][ ACE_Backwd ][ i ] = ACETrue ; 290 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 292 i z ==2 ) { 293 Ilis [ ACE_Z ][ ACE_Fwd ][ i ] = ACETrue ; 294 Ilis [ ACE_Z ][ ACE_Bh ][ i ] = ACETrue ; 295 Ilis [ ACE_A ][ ACE_Fwd ][ i ] = ACETrue ; 296 Ilis [ ACE_A ][ ACE_Bh ][ i ] = ACETrue ; 299 } } 301 BBox gGhoIai :: $Ibbox ( BBox cڡ & mybb , cڡ  d , 302 cڡ * d ) const 304 i( mybb . `emy ())  mybb; 306 cڡ  Ir = ( Iwidth -1)/2; 307 cڡ  x = - Ir + (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 308 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 309 cڡ  y = - Ir + (( Ink =3? ( d / Iwidth )%Iwidth : 310 ( Ink =2? d % Iwidth : Ir ); 311 cڡ  z = - Ir + (( Ink =3? d % Iwidth : Ir); 313 Cods cڡ = mybb . `size (); 314 BBox `gbb ( mybb ); 316 i x < 0 ) { 317 gbb . `low (0+ x * d [2* ACE_X ] * ` (0); 318 gbb . `u (0 mybb . `low (0- ` (0); 320 i x > 0 ) { 321 gbb . `low (0 mybb . `u (0+ ` (0); 322 gbb . `u (0+ x * d [2* ACE_X +1] * ` (0); 325 i y < 0 ) { 326 gbb . `low (1+ y * d [2* ACE_Y ] * ` (1); 327 gbb . `u (1 mybb . `low (1- ` (1); 329 i y > 0 ) { 330 gbb . `low (1 mybb . `u (1+ ` (1); 331 gbb . `u (1+ y * d [2* ACE_Y +1] * ` (1); 334 i z < 0 ) { 335 gbb . `low (2+ z * d [2* ACE_Z ] * ` (2); 336 gbb . `u (2 mybb . `low (2- ` (2); 338 i z > 0 ) { 339 gbb . `low (2 mybb . `u (2+ ` (2); 340 gbb . `u (2+ z * d [2* ACE_Z +1] * ` (2); 343  gbb ; 344 } } 346 BBox gGhoIai :: $Ibbox ( BBox cڡ & mybb , cڡ  d , 347 cڡ * d , cڡ * ޭ ) const 349 i( mybb . `emy ())  mybb; 351 cڡ  Ir = ( Iwidth -1)/2; 352 cڡ  x = - Ir + (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 353 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 354 cڡ  y = - Ir + (( Ink =3? ( d / Iwidth )%Iwidth : 355 ( Ink =2? d % Iwidth : Ir ); 356 cڡ  z = - Ir + (( Ink =3? d % Iwidth : Ir); 358 Cods cڡ = mybb . `size (); 359 BBox `gbb ( mybb ); 361  xo = 1, yo = 1, zo = 1; 362 i( `is_ ( x + Ir , y +Ir, z +Ir)) { 363 xo = 1 - ޭ [0]; 364 yo = 1 - ޭ [1]; 365 zo = 1 - ޭ [2]; 368 i x < 0 ) { 369 gbb . `low (0+ x * d [2* ACE_X ] * ` (0); 370 gbb . `u (0 mybb . `low (0- ` (0); 372 i x > 0 ) { 373 gbb . `low (0 mybb . `u (0+ xo * ` (0); 374 gbb . `u (0+ x * d [2* ACE_X +1] * ` (0); 377 i y < 0 ) { 378 gbb . `low (1+ y * d [2* ACE_Y ] * ` (1); 379 gbb . `u (1 mybb . `low (1- ` (1); 381 i y > 0 ) { 382 gbb . `low (1 mybb . `u (1+ yo * ` (1); 383 gbb . `u (1+ y * d [2* ACE_Y +1] * ` (1); 386 i z < 0 ) { 387 gbb . `low (2+ z * d [2* ACE_Z ] * ` (2); 388 gbb . `u (2 mybb . `low (2- ` (2); 390 i z > 0 ) { 391 gbb . `low (2 mybb . `u (2+ zo * ` (2); 392 gbb . `u (2+ z * d [2* ACE_Z +1] * ` (2); 395  gbb ; 396 } } 398 BBox gGhoIai :: $Ibbox ( BBox cڡ & mybb , 399 cڡ  Axis , cڡ  D , 400 cڡ * d , cڡ * ޭ ) const 402 i( mybb . `emy ())  mybb; 404 cڡ * = Ilis [ Axis ][ D ]; 405 BBox whe_gbb ; 407   id = 0 ; id < Itٮ ; idir++ ) { 409 i [ id ] ! ACETrue ) ; 411 cڡ  d = id ; 413 cڡ  Ir = ( Iwidth -1)/2; 414 cڡ  x = - Ir + (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 415 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 416 cڡ  y = - Ir + (( Ink =3? ( d / Iwidth )%Iwidth : 417 ( Ink =2? d % Iwidth : Ir ); 418 cڡ  z = - Ir + (( Ink =3? d % Iwidth : Ir); 420 Cods cڡ = mybb . `size (); 421 BBox `gbb ( mybb ); 423  xo = 1, yo = 1, zo = 1; 424 i( `is_ ( x + Ir , y +Ir, z +Ir)) { 425 xo = 1 - ޭ [0]; 426 yo = 1 - ޭ [1]; 427 zo = 1 - ޭ [2]; 430 i x < 0 ) { 431 gbb . `low (0+ x * d [2* ACE_X ] * ` (0); 432 gbb . `u (0 mybb . `low (0- ` (0); 434 i x > 0 ) { 435 gbb . `low (0 mybb . `u (0+ xo * ` (0); 436 gbb . `u (0+ x * d [2* ACE_X +1] * ` (0); 439 i y < 0 ) { 440 gbb . `low (1+ y * d [2* ACE_Y ] * ` (1); 441 gbb . `u (1 mybb . `low (1- ` (1); 443 i y > 0 ) { 444 gbb . `low (1 mybb . `u (1+ yo * ` (1); 445 gbb . `u (1+ y * d [2* ACE_Y +1] * ` (1); 448 i z < 0 ) { 449 gbb . `low (2+ z * d [2* ACE_Z ] * ` (2); 450 gbb . `u (2 mybb . `low (2- ` (2); 452 i z > 0 ) { 453 gbb . `low (2 mybb . `u (2+ zo * ` (2); 454 gbb . `u (2+ z * d [2* ACE_Z +1] * ` (2); 457 whe_gbb + gbb ; 460  whe_gbb ; 461 } } 463 BBox gGhoIai :: $Ibbox ( BBox cڡ & mybb , 464 cڡ  Axis , cڡ  D , 465 cڡ * d ) const 467 i( mybb . `emy ())  mybb; 469 cڡ * = Ilis [ Axis ][ D ]; 470 BBox whe_gbb ; 472   id = 0 ; id < Itٮ ; idir++ ) { 474 i [ id ] ! ACETrue ) ; 476 cڡ  d = id ; 478 cڡ  Ir = ( Iwidth -1)/2; 479 cڡ  x = - Ir + (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 480 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 481 cڡ  y = - Ir + (( Ink =3? ( d / Iwidth )%Iwidth : 482 ( Ink =2? d % Iwidth : Ir ); 483 cڡ  z = - Ir + (( Ink =3? d % Iwidth : Ir); 485 Cods cڡ = mybb . `size (); 486 BBox `gbb ( mybb ); 488  xo = 1, yo = 1, zo = 1; 490 i x < 0 ) { 491 gbb . `low (0+ x * d [2* ACE_X ] * ` (0); 492 gbb . `u (0 mybb . `low (0- ` (0); 494 i x > 0 ) { 495 gbb . `low (0 mybb . `u (0+ xo * ` (0); 496 gbb . `u (0+ x * d [2* ACE_X +1] * ` (0); 499 i y < 0 ) { 500 gbb . `low (1+ y * d [2* ACE_Y ] * ` (1); 501 gbb . `u (1 mybb . `low (1- ` (1); 503 i y > 0 ) { 504 gbb . `low (1 mybb . `u (1+ yo * ` (1); 505 gbb . `u (1+ y * d [2* ACE_Y +1] * ` (1); 508 i z < 0 ) { 509 gbb . `low (2+ z * d [2* ACE_Z ] * ` (2); 510 gbb . `u (2 mybb . `low (2- ` (2); 512 i z > 0 ) { 513 gbb . `low (2 mybb . `u (2+ zo * ` (2); 514 gbb . `u (2+ z * d [2* ACE_Z +1] * ` (2); 517 whe_gbb + gbb ; 520  whe_gbb ; 521 } } 523 BBox gGhoIai :: $IbboxFrom ( BBox cڡ & mybb , cڡ  d , 524 cڡ * d , cڡ * ޭ ) const 526 i( mybb . `emy ())  mybb; 528 cڡ  Ir = ( Iwidth -1)/2; 529 cڡ  x = - Ir + (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 530 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 531 cڡ  y = - Ir + (( Ink =3? ( d / Iwidth )%Iwidth : 532 ( Ink =2? d % Iwidth : Ir ); 533 cڡ  z = - Ir + (( Ink =3? d % Iwidth : Ir); 535 Cods cڡ = mybb . `size (); 536 Cods cڡ = mybb . `low (); 537 Cods cڡ cu = mybb . `u (); 539 BBox `gbb ( mybb ); 541 i x < 0 ) { 542 gbb . `low (0+ ޭ [0] * ` (0); 543 gbb . `u (0 ` (0- ( x * d [2* ACE_X +1] * ` (0)- (1- ޭ [0]) * step(0); 545 i x > 0 ) { 546 gbb . `low (0 `cu (0- ( x * d [2* ACE_X ] * ` (0)+ (1- ޭ [0]) * step(0); 547 gbb . `u (0- ޭ [0] * ` (0); 550 i y < 0 ) { 551 gbb . `low (1+ ޭ [1] * ` (1); 552 gbb . `u (1 ` (1- ( y * d [2* ACE_Y +1] * ` (1)- (1- ޭ [1]) * step(1); 554 i y > 0 ) { 555 gbb . `low (1 `cu (1- ( y * d [2* ACE_Y ] * ` (1)+ (1- ޭ [1]) * step(1); 556 gbb . `u (1- ޭ [1] * ` (1); 559 i z < 0 ) { 560 gbb . `low (2+ ޭ [2] * ` (2); 561 gbb . `u (2 ` (2- ( z * d [2* ACE_Z +1] * ` (2)- (1- ޭ [2]) * step(2); 563 i z > 0 ) { 564 gbb . `low (2 `cu (2- ( z * d [2* ACE_Z ] * ` (2)+ (1- ޭ [2]) * step(2); 565 gbb . `u (2- ޭ [2] * ` (2); 568  gbb ; 569 } } 571  gGhoIai :: $is_side cڡ  d ) const 573 cڡ  Ir = ( Iwidth -1)/2; 574 cڡ  x = (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 575 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 576 cڡ  y = (( Ink =3? ( d / Iwidth )%Iwidth : 577 ( Ink =2? d % Iwidth : Ir ); 578 cڡ  z = (( Ink =3? d % Iwidth : Ir ); 579  ( x ==1 && y ==1 && z ==1); 580 } } 582  gGhoIai :: $is_ cڡ  d ) const 584 cڡ  Ir = ( Iwidth -1)/2; 585 cڡ  x = (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 586 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 587 cڡ  y = (( Ink =3? ( d / Iwidth )%Iwidth : 588 ( Ink =2? d % Iwidth : Ir ); 589 cڡ  z = (( Ink =3? d % Iwidth : Ir ); 590  (( x ==1 && y ==1 && z !=1) || 591 ( x ==1 && y !=1 && z ==1) || 592 ( x !=1 && y ==1 && z ==1)); 593 } } 595  gGhoIai :: $is_cr cڡ  d ) const 597 i( Ink < 2)  0; 599 cڡ  Ir = ( Iwidth -1)/2; 600 cڡ  x = (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 601 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 602 cڡ  y = (( Ink =3? ( d / Iwidth )%Iwidth : 603 ( Ink =2? d % Iwidth : Ir ); 604 cڡ  z = (( Ink =3? d % Iwidth : Ir ); 605  (( x !=1&& ( y !=1&& ( Ink < 3 || z !=1) ); 606 } } 608  gGhoIai :: $is_edge cڡ  d ) const 610 i( Ink < 3)  0; 611 cڡ  Ir = ( Iwidth -1)/2; 612 cڡ  x = (( Ink =3? ( d / `ow ( Iwidth ,Irank-1))%Iwidth : 613 ( Ink =2? ( d / Iwidth )%Iwidth : dir%Iwidth); 614 cڡ  y = (( Ink =3? ( d / Iwidth )%Iwidth : 615 ( Ink =2? d % Iwidth : Ir ); 616 cڡ  z = (( Ink =3? d % Iwidth : Ir ); 617  (( x ==1 && y !=1 && z !=1) || 618 ( x !=1 && y ==1 && z !=1) || 619 ( x !=1 && y !=1 && z ==1)); 620 } } 622 goam & gݔ << (oam& gos , GhoIai cڡ & ggi ) 624 gos << "[IRk:" << ggi . gInk << "]"; 625 gos << "[IWidth:" << ggi . gIwidth << "]"; 626 gos << "[ITٮ:" << ggi . gItٮ << "]"; 627 gos << "[IInside:" << ggi . gIside << "]"; 628 gos << gdl ; 629 gos << "***** FACES *****" << gdl ; 630  gr ; 631  gr =0;r< ggi . gInk ;r++) { 632 gos << "[AXIS: " << gr << "] "; 633 gos << "[ "; 634 gos << ggi . gIs [2* r ] << " "; 635 gos << ggi . gIs [2* r +1] << " "; 636 gos << "]" << gdl ; 638 gos << "***** BACKWARD *****" << gdl ; 639  gr =0;r< gACEMaxAxis ;r++) { 640 i(! ggi . gIlis [ r ][ ACE_Backwd ]) ; 641 gos << "[AXIS: " << gr << "] "; 642 gos << "[CNT: " << ggi . gIcous [ r ][ ACE_Backwd ] << "] "; 643 gos << "[ "; 644  gi =0;i< ggi . gItٮ ;i++) 645 i( ggi . gIlis [ r ][ ACE_Backwd ][ i ] gos << gi << " "; 646 gos << "]" << gdl ; 648 gos << "***** FORWARD *****" << gdl ; 649  gr =0;r< gACEMaxAxis ;r++) { 650 i(! ggi . gIlis [ r ][ ACE_Fwd ]) ; 651 gos << "[AXIS: " << gr << "] "; 652 gos << "[CNT: " << ggi . gIcous [ r ][ ACE_Fwd ] << "] "; 653 gos << "[ "; 654  gi =0;i< ggi . gItٮ ;i++) 655 i( ggi . gIlis [ r ][ ACE_Fwd ][ i ] gos << gi << " "; 656 gos << "]" << gdl ; 658 gos << "***** BOTH *****" << gdl ; 659  gr =0;r< gACEMaxAxis ;r++) { 660 i(! ggi . gIlis [ r ][ ACE_Bh ]) ; 661 gos << "[AXIS: " << gr << "] "; 662 gos << "[CNT: " << ggi . gIcous [ r ][ ACE_Bh ] << "] "; 663 gos << "[ "; 664  gi =0;i< ggi . gItٮ ;i++) 665 i( ggi . gIlis [ r ][ ACE_Bh ][ i ] gos << gi << " "; 666 gos << "]" << gdl ; 669  gos ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEGhostInteraction.h 1 #ide _uded_ACEGhoIai_h 2  #_uded_ACEGhoIai_h ) 14  ~"ACEPams.h " 15  ~"GridDaPams.h " 16  ~"ACEDeus.h " 18  ~"BBox.h " 20 #ide ACEDeuIai 21  #ACEDeuIai ( ACEGhoIai ) ) 25 as cGhoIai 27 nd moam & mݔ << (oam&, cڡ mGhoIai &); 29  mInk ; 30  mIty ; 31  mIwidth ; 33  mItٮ ; 35  mIcous [ ACEMaxAxis ][ ACEMaxDs ]; 36 * mIlis [ ACEMaxAxis ][ ACEMaxDs ]; 38  mIside ; 40  mI_t ; 41 * mIs ; 50  mFaFg ; 51  mCrFg ; 52  mEdgeFg ; 54  mSimeFg ; 56 mpublic : 58 GhoIai cڡ  nk , 59 cڡ  ty , 60 cڡ  width ); 62 GhoIai cڡ  nk , 63 cڡ  fag , 64 cڡ  cag , 65 cڡ  eag , 66 cڡ  ty , 67 cڡ  width , 68 cڡ  sime = ACEF ); 70 GhoIai cڡ GhoIai & h ); 72 ~ GhoIai (); 74  compu_is cڡ  fag , 75 cڡ  cag , 76 cڡ  eag , 77 cڡ  sime ); 79 le  $tٮ_is (cڡ {  Itٮ ; } 81 le  $num_is cڡ  axis , cڡ  d ) const 82 {  Icous [ axis ][ d ]; } } 83 le cڡ * $is cڡ  axis , cڡ  d ) const 84 {  Ilis [ axis ][ d ]; } } 86 le  $sime (cڡ {  ( SimeFg = ACETrue ); } } 88 le  $side (cڡ {  Iside ; } } 90 le  $comemt (cڡ  d cڡ {  Itٮ -1-d; } } 98 le  $num_s cڡ  axis , cڡ  d ) const 99 {  I_t ; } } 100 le cڡ * $s ( ) const 101 {  Is ; } } 102 le  $s cڡ  axis , cڡ  d ) const 103 {  Is [2* axis + d ]; } } 120 BBox $Ibbox BBox cڡ & mybb , cڡ  d , 121 cڡ * d ) const ; 122 BBox $Ibbox BBox cڡ & mybb , cڡ  d , 123 cڡ * d , cڡ * ޭ ) const ; 124 BBox $Ibbox BBox cڡ & mybb , cڡ  axis , cڡ  d , 125 cڡ * d ) const ; 126 BBox $Ibbox BBox cڡ & mybb , cڡ  axis , cڡ  d , 127 cڡ * d , cڡ * ޭ ) const ; 128 BBox $IbboxFrom BBox cڡ & mybb , cڡ  d , 129 cڡ * d , cڡ * ޭ ) const ; 131 le  $_ag (cڡ  cf ) 132 {  ( cf = ACECommSime || 133 cf ! ACECommNoFa ); } } 146 le  $cr_ag (cڡ  cf ) 147 {  ( cf ! ACECommFaOy && 148 cf ! ACECommNoCr ); } } 150 le  $edge_ag (cڡ  cf ) 151 {  ( cf ! ACECommFaOy && 152 cf ! ACECommNoEdge ); } } 154 le  $sime_ag (cڡ  cf ) 155 {  ( cf = ACECommSime ); } } 157 give : 159 le  $is_side cڡ  x , cڡ  y , cڡ  z ) const 160 {  ( x ==1 && y ==1 && z ==1); } } 161 le  $is_ cڡ  x , cڡ  y , cڡ  z ) const 162 {  (( x ==1 && y ==1 && z !=1) || 163 ( x ==1 && y !=1 && z ==1) || 164 ( x !=1 && y ==1 && z ==1)); } } 165 le  $is_cr cڡ  x , cڡ  y , cڡ  z ) const 166 {  (( Ink > 1&& ( x !=1&& ( y !=1) && 167 ( Ink < 3 || z !=1); } } 168 le  $is_edge cڡ  x , cڡ  y , cڡ  z ) const 169 {  (( Ink == 3) && 170 (( x ==1 && y !=1 && z !=1) || 171 ( x !=1 && y ==1 && z !=1) || 172 ( x !=1 && y !=1 && z ==1))); } } 173 gpublic : 174  $is_side cڡ  d ) const; 175  $is_ cڡ  d ) const; 176  $is_cr cڡ  d ) const; 177  $is_edge cڡ  d ) const; 178 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEIOParams.h 1 #ide _uded_ACEIOPam_h 2  #_uded_ACEIOPam_h ) 13  #ACEIOTyShi (8) ) 14  #ACEIOInReqTag (1 << ACEIOTyShi ) ) 15  #ACEIOEndReqTag (2 << ACEIOTyShi ) ) 16  #ACEIOComiReqTag (4 << ACEIOTyShi ) ) 17  #ACEIOComiTag (5 << ACEIOTyShi ) ) 18  #ACEIOWreReqTag (6 << ACEIOTyShi ) ) 19  #ACEIOWreDaTag (7 << ACEIOTyShi ) ) 20  #ACEIORdReqTag (8 << ACEIOTyShi ) ) 21  #ACEIORdDaTag (9 << ACEIOTyShi ) ) 33 le  $ACEIO_DaSize (cڡ ty ) 34 {  ( ( ty = ACE_Ieg ? ( INTEGER ) : 35 ( ty = ACE_Rl ? ( REAL ) : 36 ( ty = ACE_Doub ? ( DOUBLE ) : 37 ( ty = ACE_Cha ? ( CHARACTER ) : 38 ( ty = ACE_By ? 1 : 1 ); } } 41  ggdhdr ; 42 ass gGridHrchy ; 44 (* gACEIO_InFunc ) (); 45 (* tACEIO_WreFunc ( tass tGridHrchy & ,  tgdhdr *, *); 46 (* tACEIO_RdFunc ( tass tGridHrchy & ,  tgdhdr *, *); 47 (* tACEIO_PgFunc ( tass tGridHrchy &); 48 (* tACEIO_FFunc ) (); 50 ACEIO_InFunc ACEIO_Inlize []; 51 ACEIO_WreFunc ACEIO_Wre []; 52 ACEIO_RdFunc ACEIO_Rd []; 53 ACEIO_FFunc ACEIO_Fize []; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEIO_hdf_ncsa.cpp 15  ~"ACEIO_hdf_nc.h " 17 #unde DEBUG_IO 19  $ACEIO_HDF_NCSA_Wre ( GridHrchy & gh ,  gdhdr * hdr , * da ) 21 #i `defed ( IO_NCSAIO )||defed( IO_OLDNCSA ) 22 `as ( hdr -> nems == 1); 23 cڡ BBox & bb = hdr -> bbox ; 24  nk = bb .rank; 25 cڡ  time = (1.0* hdr ->time; 27 * game = hdr ->gfname; 28  dims [5], ig [5], suti [5], ub [5]; 31  i =0;i< nk ;i++) { 32 dims [ i ] = bb . `exs (i); 33 ig [ i ] = bb . `low (i); 34 ub [ i ] = bb . `u (i); 35 suti [ i ] = bb . `size (i); 37 i( nk == 1) { 38 << "Rank 1 data cannot belaced inn NCSA HDF Fileasily"; 42 cڡ  ܪk = nk ; 44 i( ܪk == 2) { 45 nk = 3; 46 dims [2] = 1; 47 ig [2] = 0; 48 ub [2] = 1; 49 suti [2] = 1; 53 i( ܪk == 3) { 54  t = dims [2]; 55 dims [2] = dims[0]; 56 dims [0] = t ; 59  fame [256]; 60 #ifde DEBUG_IO 61 ( cout << "Writing chunk with following:\n" << 62 "T : " << hdr -> time << " L : " << hdr-> v << 63 " NAME : " << game << "\n" << 64 "dims: " << dims [0] << " " << dims[1] << " " << dims[2] << "\n"). `ush (); 67 ( << "Paecompdagh wh NCSA IO\n"). `ush (); 71 #ifde IO_OLDNCSA 72 `as ( hdr -> gfdy = ACE_Doub || 73 hdr -> gfdy = ACE_Rl ); 75 i( hdr -> gfdy = ACE_Doub ) 76 `WreChunkDoub ( game ,0,( t32 )( hdr -> v ),(t32)(hdr-> dex ), 77 ( t32 )( hdr -> time ),(t32)( nk ), dims , ig , ub , 78 bb . `size (), (*) da ); 79 i( hdr -> gfdy = ACE_Rl ) 80 `WreChunkFlt ( game ,0,( t32 )( hdr -> v ),(t32)(hdr-> dex ), 81 ( t32 )( hdr -> time ),(t32)( nk ), dims , ig , ub , 82 bb . `size (), (*) da ); 84 `as (0); 87 #ifde IO_NCSAIO 88 `as ( hdr -> gfdy = ACE_Doub ); 90 `rtf ( fame ,"%s.hdf", game ); 91 `SDStNT ( fame , DFNT_FLOAT64 ); 93 `AMRwreDa ( fame , game , 94 ( t32 )( hdr -> v ), 95 ( t32 )( hdr -> dex ), 96 ( t32 )( hdr -> time ), 97 ( t64 )0.0, 98 ( t32 )( nk ), 99 ( t32 *) dims , (t32 *) ig , (t32 *) suti , 101 da ); 103 } } 105  $ACEIO_HDF_NCSA_Rd ( GridHrchy & gh ,  gdhdr * hdr , * da ) 107 `as ( hdr -> gfdy = ACE_Doub ); 109 << "ACEIO_hdf_ncsa.C\n" << "Read is defined, butot implemented\n"; 110 } } 112  $ACEIO_HDF_NCSA_Fize () { 113 #ifde IO_NCSAIO 114 `SDSoA (); 117 #ifde IO_OLDNCSA 118 `FizeIO (); 120 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEIO_hdf_ncsa.h 1 #ide _uded_ACEIO_hdf_nc_h 2  #_uded_ACEIO_hdf_nc_h ) 17  ~"ACEPams.h " 18  ~"ACEIOPams.h " 19  ~"PackedGridDaBuck.h " 21 #ifde IO_NCSAIO 23  ~"sds.h " 24  ~"amrsds.h " 27 #ifde IO_OLDNCSA 29  ~"hdf.h " 30  ~"mfhdf.h " 31  WreChunkFlt (* compڒame , 32  pid , 33  v , 34  compڒt , 35  time , 36  ndims , 37  dims [3], 38  lb [3], 39  ub [3], 40  tٮbys , 41 * da ); 42  WreChunkDoub (* compڒame , 43  pid , 44  v , 45  compڒt , 46  time , 47  ndims , 48  dims [3], 49  lb [3], 50  ub [3], 51  tٮbys , 52 * da ); 53  FizeIO (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEIO_hdf_rnpl.cpp 16  ~"ACEIO_hdf_.h " 18  $ACEIO_HDF_RNPL_Wre ( GridHrchy & gh ,  gdhdr * hdr , * da ) 20 #ifde IO_RNPLIO 21 `as ( hdr -> nems == 1); 22 `as ( hdr -> gfdy = ACE_Doub ); 24 cڡ BBox & bb = hdr -> bbox ; 25 cڡ  nk = bb .rank; 26 cڡ  time = 1.0* hdr ->time; 27 cڡ * game = hdr ->gfname; 29 cڡ Cods & she = bb . `exs (); 30 cڡ Cods & ub = bb . `u (); 31 cڡ Cods & lb = bb . `low (); 32 cڡ Cods & = bb . `size (); 34 cڡ DCods & wub = gh . `wldCods ( ub , ); 35 cڡ DCods & wlb = gh . `wldCods ( lb , ); 36 cڡ DCods & w = gh . `wldSp ( ); 38 * bbox = w [2* nk ]; 39  i ; 40  i =0;i< nk ;i++) { 41 bbox [2* i ] = `wlb (i); 42 bbox [2* i +1] = `wub (i); 45  ag = `g_wre_bbox ( 46 game , 47 time , 48 bb . `exs (), 49 nk , 50 bbox , 51 (* da 54 i( bbox de [] bbox; 57 } } 59  $ACEIO_HDF_RNPL_Rd ( GridHrchy & gh ,  gdhdr * hdr , * da ) 61 `as ( hdr -> gfdy = ACE_Doub ); 63 << "ACEIO_hdf_rnpl.C" << "ACEIO_HDF_RNPL_Read isot defined !" << "\n"; 65 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEIO_hdf_rnpl.h 1 #ide _uded_ACEIO_hdf__h 2  #_uded_ACEIO_hdf__h ) 17  ~"ACEPams.h " 18  ~"ACEIOPams.h " 19  ~"PackedGridDaBuck.h " 21 #ifde IO_RNPLIO 23  ~ 26  #c_hdf__wre ( g_wre_fu ) ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEIO_ieeeio_ncsa.cpp 15  ~"ACEIO_io_nc.h " 17  $ACEIO_IEEEIO_NCSA_Inlize () { 19 } } 21  $ACEIO_IEEEIO_NCSA_Wre ( GridHrchy & gh ,  gdhdr * hdr , * da ) 23 #i `defed ( IO_IEEEIO ) 24 `as ( hdr -> nems == 1); 25 `as ( hdr -> gfdy = ACE_Doub || hdr->gfdy = ACE_Rl ); 27 cڡ BBox & bb = hdr -> bbox ; 28  nk = bb .rank; 29 cڡ  time = (1.0* hdr ->time; 31 * game = hdr ->gfname; 32  dims [5], ig [5], suti [5], ub [5]; 34  i = 0; 35  i =0;i< nk ;i++) { 36 dims [ i ] = bb . `exs (i); 37 ig [ i ] = bb . `low (i); 38 ub [ i ] = bb . `u (i); 39 suti [ i ] = bb . `size (i); 42  i = nk ;i<5;i++) { 43 dims [ i ] = 0; 44 ig [ i ] = 0; 45 ub [ i ] = 0; 46 suti [ i ] = 0; 49 i( nk == 1) { 50 << "ACEIO_IEEEIO_NCSA: O-d IObimemd....." << dl ; 54 IOEry * myGuy = NULL ; 55  IOEry * tmp = AMRFes ;mp;mtmp-> xt ) 56 i( `rcmp ((*) tmp -> me ,(*) game ) == 0) 57 myGuy = tmp ; 59 i(! myGuy ) { 60 myGuy = ( IOEry *) `mloc ((IOEntry)); 62 myGuy -> wfe = NULL ; 63 myGuy -> fe = NULL ; 64 myGuy -> me = (*) `mloc (( ` ( game )+2)*()); 65 `ry ( myGuy -> me , game ); 67 myGuy -> xt = AMRFes ; 68 AMRFes = myGuy ; 71 i(! myGuy -> wfe ) { 72 S ame ; 73 ame << (*) game << (*)".raw"; 74 myGuy -> wfe = w `IEEEIO ((*) ame , IOba :: Ce ); 77  , ; 79 = hdr -> time ; 80 = hdr -> v ; 81 i( hdr -> gfdy = ACE_Doub ) 82 myGuy -> wfe -> `wre ( IOba :: Flt64 , nk , dims , da ); 83 i( hdr -> gfdy = ACE_Rl ) 84 myGuy -> wfe -> `wre ( IOba :: Flt32 , nk , dims , da ); 85 myGuy -> wfe -> `wreAribu ("time", IOba :: I32 ,1,& ); 86 myGuy -> wfe -> `wreAribu ("v", IOba :: I32 ,1,& ); 87 myGuy -> wfe -> `wreAribu ("iig", IOba :: I32 , nk , 88 (*)((cڡ *) bb . `low ())); 89 myGuy -> wfe -> `wreAribu ("l_femt", IOba :: I32 , nk , 90 (*)((cڡ *) bb . `size ())); 92 #ifde DEBUG_IO 93 ( cout << "Writing chunk with following:" \ 94 << " NAME: " << game 95 << " T: " << hdr -> time 96 << " L: " << hdr -> v 97 << " BB: " << bb 98 << " dims: " << dims [0] << " " << dims[1] << " " << dims[2] 99 << "\n"). `ush (); 102 ( << "Paecompdagh wh IEEEIO\n"). `ush (); 105 } } 107  $ACEIO_IEEEIO_NCSA_Rd ( GridHrchy & gh ,  gdhdr * hdr , * da ) 109 `as ( hdr -> gfdy = ACE_Doub ); 111 << "ACEIO_ieeeio_ncsa.C\n" << "Read is defined, butot implemented\n"; 112 } } 114  $ACEIO_IEEEIO_NCSA_Fize () { 115 #ifde IO_IEEEIO 116 #i `defed ( IO_NCSAIO )||defed( IO_OLDNCSA ) 117 `FizeIO (); 120 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEIO_ieeeio_ncsa.h 1 #ide _uded_ACEIO_hdf_nc_h 2  #_uded_ACEIO_hdf_nc_h ) 17  ~"ACEPams.h " 18  ~"ACEIOPams.h " 19  ~"PackedGridDaBuck.h " 21 #ifde IO_IEEEIO 23  ~"S.h " 24  ~"IEEEIO.hh " 25  ~"AMRwr.hh " 29  sIOENTRY { 30 IOba * mwfe ; 31 FmewkAMRwr * mfe ; 32 * mme ; 33  IOENTRY * mxt ; 34 } tIOEry ; 36 IOEry * gAMRFes = NULL ; 38 #i defed ( IO_NCSAIO )||defed( IO_OLDNCSA ) 40  ~"hdf.h " 41  ~"mfhdf.h " 42  FizeIO (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEInteraction.h 1 #ide _uded_ACEIai_h 2  #_uded_ACEIai_h ) 13  ~"ACEGhoIai.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEMemoryTrace.cpp 10  ~"ACEMemyT.h " 12  gACEMemyT :: loc_t = 0; 13  gACEMemyT :: _t = 0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEMemoryTrace.h 1 #ide _uded_ACEMemyTs_h 2  #_uded_ACEMemyTs_h ) 13  ~"ioam " 14 usg mea gd ; 16 as cACEMemyT 18  mloc_t ; 19  m_t ; 21 mpublic : 22 le $ACEMemyT () 23 { cout << "**** ACEMemyT o! ****" << dl ; } 25 le ~ $ACEMemyT () 27 cout << dl 28 << "************************************************" << dl 29 << "**** Memy Aod:\t" << loc_t << " ****" << dl 30 << "**** Memy Fe'd: \t" << _t << " ****" << dl 31 << "************************************************" << dl 32 << ush ; 33 } } 35 le  $t () 37 cout << dl 38 << "************************************************" << dl 39 << "**** Memy Aod:\t" << loc_t << " ****" << dl 40 << "**** Memy Fe'd: \t" << _t << " ****" << dl 41 << "************************************************" << dl 42 << ush ; 43 } } 45 le  $loc (cڡ  size { loc_t +size; } } 46 le  $ (cڡ  size { _t +size; } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEParams.h 1 #ide _uded_ACEPam_h 2  #_uded_ACEPam_h ) 16  ~ 17  ~ 18  ~ 19  ~ 20  ~ 21  ~ 22  ~ 23 usg mea gd ; 25  ~"gic.h " 28  #ACETrue (1) ) 29  #ACEF (0) ) 32  #ACENu (-1) ) 33  #ACENoBody ( ACENu ) ) 34  #ACENuLev ( ACENu ) ) 36  #ACEA (9999) ) 37  #ACESml (-999999) ) 38  #ACELge ( 999999) ) 39  #ACEShtLge ( 9999) ) 42  #ACEALevs ( ACEA ) ) 45  #ACEATimes ( ACEA ) ) 46  #ACECutTime (0) ) 47  #ACENextTime (1) ) 48  #ACEPviousTime (2) ) 51  #ACELolRefemt (1) ) 52  #ACEGlobRefemt (2) ) 53  #ACEGlobClug (3) ) 56  #ACEComposeDiributi (1) ) 57  #ACEBlockXDiributi (2) ) 58  #ACEBlockYDiributi (3) ) 59  #ACEBlockZDiributi (4) ) 60  #ACEBlockXYDiributi (5) ) 61  #ACEBlockYZDiributi (6) ) 62  #ACEBlockXZDiributi (7) ) 63  #ACEBlockADiributi (8) ) 64  #ACEUrDefDiributi (9) ) 66  #ACEVampeDiributi (10) ) 67  #ACEPMisDiributi (11) ) 70  #ACENoIai ( ACENu ) ) 71  #ACEGhoIai (1) ) 74  #ACEInGFOnCi ( ACEF ) ) 77  #ACEMaxRk (3) ) 79  #ACE_X (0) ) 80  #ACE_Y (1) ) 81  #ACE_Z (2) ) 82  #ACE_A (3) ) 83  #ACEMaxAxis (4 ) 84  #ACE_XY (5) ) 85  #ACE_XZ (6) ) 86  #ACE_YZ (7) ) 89  #ACE_Backwd (0) ) 90  #ACE_Fwd (1) ) 91  #ACE_Bh (2) ) 92  #ACEMaxDs (3 ) 93  #ACEHisD ( d (((d= ACE_Bh ? (d: (1 - (d))) ) 94  #ACE_Inside (4) ) 97  #ACE_BhGH (-20) ) 98  #ACE_Ma (-21) ) 99  #ACE_Shadow (-22) ) 100  #ACE_Pt (-23) ) 101  #ACE_PtMa (-23) ) 102  #ACE_PtShadow (-24) ) 104  #ACE_Flux (-30) ) 105  #ACE_FluxMa (-30) ) 106  #ACE_FluxXn (-30) ) 107  #ACE_FluxXp (-31) ) 108  #ACE_FluxYn (-32) ) 109  #ACE_FluxYp (-33) ) 110  #ACE_FluxZn (-34) ) 111  #ACE_FluxZp (-35) ) 112  #ACE_FluxEnd (-35) ) 114  #ACE_FluxShadow (-40) ) 115  #ACE_FluxShadowXn (-40) ) 116  #ACE_FluxShadowXp (-41) ) 117  #ACE_FluxShadowYn (-42) ) 118  #ACE_FluxShadowYp (-43) ) 119  #ACE_FluxShadowZn (-44) ) 120  #ACE_FluxShadowZp (-45) ) 121  #ACE_FluxShadowEnd (-45) ) 124  #ACEClCd (1) ) 125  #ACENClCd (2) ) 126  #ACEVxCd (2) ) 127  #ACEFaCd_X (3) ) 128  #ACEFaCd_Y (4) ) 129  #ACEFaCd_Z (5) ) 130  #ACEClCd_X (6) ) 131  #ACEClCd_Y (7) ) 132  #ACEClCd_Z (8) ) 135  #ACENoComm ( ACENu ) ) 136  #ACEComm (1) ) 137  #ACECommNoFa (2) ) 138  #ACECommFaOy (3) ) 139  #ACECommNoCr (4) ) 140  #ACECommNoEdge (5) ) 141  #ACECommCutTimeOy (6) ) 144  #ACECommSime (7) ) 145  #ACECommSimeFaOy (8) ) 146  #ACETemeComm (20) ) 149  #ACENoShadow ( ACENu ) ) 150  #ACEHasShadow ( ACETrue ) ) 153  #ACENoExGho ( ACENu ) ) 154  #ACEHasExGho ( ACETrue ) ) 157  #ACENoCheckpot ( ACENu ) ) 158  #ACECheckpot ( ACETrue ) ) 161  #ACE_OK (0) ) 162  #ACE_ERROR (-1) ) 163  #ACE_WARN (-2) ) 164  #ACE_FATAL (-3) ) 167  #ACE_Ieg (1) ) 168  #ACE_Rl (2) ) 169  #ACE_Doub (3) ) 170  #ACE_Cha (4) ) 171  #ACE_By (5) ) 174  #ACEWldCods (1) ) 175  #ACELolCods (2) ) 178  #ACEViz_NONE ( ACENu ) ) 179  #ACEViz_XGRAPH (1) ) 180  #ACEViz_FILE (2) ) 183  #ACEGho 0 ) 184  #ACEDa 1 ) 185  #ACEIO 2 ) 186  #ACESvi 3 ) 187  #ACEPt 4 ) 188  #ACEGPt 4 ) 189  #ACESPt 5 ) 190  #ACEFlux 6 ) 193  #ACETyShi (12) ) 194  #ACETimeShi (10) ) 195  #ACELevShi (4) ) 196  #ACEDShi (0) ) 199  #ACEGhoTag ( ACEGho << ACETyShi ) ) 200  #ACEDaTag ( ACEDa << ACETyShi ) ) 201  #ACEIOTag ( ACEIO << ACETyShi ) ) 202  #ACESviTag ( ACESvi << ACETyShi ) ) 203  #ACEPtTag ( ACEPt << ACETyShi ) ) 204  #ACEGPtTag ( ACEGPt << ACETyShi ) ) 205  #ACESPtTag ( ACESPt << ACETyShi ) ) 206  #ACEFluxTag ( ACEFlux << ACETyShi ) ) 209  #ACE_ExBoundy (1) ) 210  #ACE_AdtiveBoundy (2) ) 211  #ACE_IlBoundy (3) ) 214  #ACENoBoundy (0) ) 215  #ACEBoundyCڡ (1) ) 216  #ACEBoundyRegur (1) ) 217  #ACEBoundyShi (2) ) 218  #ACEBoundyFt (2) ) 219  #ACEBoundyPiodic (3) ) 220  #ACEBoundyUrDef (4) ) 223  #ACENoAdtBoundy (0) ) 224  #ACEAdtBoundyIp (1) ) 225  #ACEAdtBoundyUrDef (2) ) 226  #ACEAdtBoundyBh (3) ) 229 #i( defed ( CRAYC90 || defed( CRAYT3D || defed( CRAYT3E )) 230  tINTEGER ; 231  tREAL ; 232  tDOUBLE ; 233  tCHARACTER ; 235  tINTEGER ; 236 #ide REAL 237  tREAL ; 239  tDOUBLE ; 240  tCHARACTER ; 244 #ide MAXLIM 245  #MAXLIM ( T ((T)((()(-1)))) ) 251 #ide GridFuniName 252  #GridFuni ( dim `me2 ( GridFuni ,dim) ) 253  #GridFuniName ) 256 #ide GridDaBlockName 257  #GridDaBlock ( dim `me2 ( GridDaBlock ,dim) ) 258  #GridDaBlockName ) 261 #ide GridDaName 262  #GridDa ( dim `me2 ( GridDa ,dim) ) 263  #GridDaName ) 266 #ide Aay 267  #Aay GridDa ) 271 #ifde ACEVeGridFuni 272  ~"ACEF܌IsVeGF.h " 274  ~"ACEF܌Is.h " 277 le  $max (cڡ  a , cڡ  b ) 278 { (( a > b ? : b); } } 279 le  $m (cڡ  a , cڡ  b ) 280 { (( a < b ? : b); } } 282 le  $max (cڡ  a , cڡ  b ) 283 { (( a > b ? : b); } } 284 le  $m (cڡ  a , cڡ  b ) 285 { (( a < b ? : b); } } 292 #ifde __ENABLE_INLINE__ 293  #__INLINE__ le ) 295  #__INLINE__ ) 301 #ifde E10K 302  tampos ; 303  tamoff ; 308  ~"DAGHPams.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACESfc.h 1 #ide _uded_ACESfc_h 2  #_uded_ACESfc_h ) 18  ~"PnoHbt.h " 19  ass tPnoHbt tdMIndex ; 20  #dMIndexNULL (( dMIndex *) NULL ) ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEUCD.cpp 11  ~"ACEUCD.h " 16 ACEUCD (3)::ACEUCD(3)(cڡ  ml , 17 cڡ  gmaxl , 18 cڡ gGridHrchy & gGH , 19 cڡ  gidt ) 20 : mv ( ml ), maxv ( maxl ), idt_ag ( idt ), 21 tٮnodes (0), tٮs (0), 22 numblks (0), blkts (0), blks (0), 23 $dagh ( GH ) 26 BBoxLi bbl ; 27 dagh . `glb_bboxli ( bbl , mv , maxv , 28 ACEVxCd , idt ); 29 i( bbl . `imy ()) ; 31 numblks = bbl . `numb (); 32 blks = w `GridDa (3)<>[ numblks ]; 33 blkts = w [ numblks ]; 35 BBoxLi dbbl ; 36  BBox * bb = 0; 37  BBox * dbb = 0; 38  idx = 0, didx = 0; 39  tmpt = 0, ϡt = 0; 40  idx =0, bb = bbl . `f ();bb;idx++,bb=bbl. `xt ()) { 41 blks [ idx ]. `lo (* bb ); 42 blks [ idx ]. `fl ( ACENu ); 43 ϡt = ( idx =0? 0 :at+ blkts [idx-1]; 46  didx =0, dbb = dbbl . `f ();dbb;didx++,dbb=dbbl. `xt ()) { 47 BBox `r ((* dbb )*(* bb )); 48 cڡ Cods `max_ ( `max ( bb -> `size (), dbb ->stepsize())); 49 i( r . `emy ()) ; 50 `f_3 ( i , j , k , r , max_ ) { 51 blks [ idx ]( i , j , k blks[ didx ](i,j,k); 52 } d_f ; 56 tmpt = 0; 57 `f_3 ( i , j , k ,* bb ,bb-> `size ()i( blks [ idx ](i,j,k= ACENu ) { 58 blks [ idx ]( i , j , k ϡt + tmpt ++; 59 } d_f ; 61 blkts [ idx ] = tmpt ; 62 tٮnodes + tmpt ; 63 tٮs +( `growu (* bb ,-1)). `size (); 64 dbbl . `add (* bb ); 65 `as ( blks [ idx ]. `maxv (< tٮnodes ); 67 } } 69  ACEUCD (3):: $GUCDInfo (& numnodes , 70 **& nodes , 71 & nums , 72 **& s , 73 cڡ  codty ) 75 cڡ  mynk = 3; 76 cڡ  myvtis = 8; 78  idx = 0; 80 `as (! nodes ); 81 numnodes = tٮnodes ; 82 nodes = w *[ mynk ]; 83  idx =0;idx< mynk ;idx++ nodes [idx] = w [ numnodes ]; 85 `as (! s ); 86 nums = tٮs ; 87 s = w *[ nums ]; 89  tmpt = 0; 90  idx =0; idx < numblks ; idx++) { 91 cڡ BBox & bb = blks [ idx ]. `bbox (); 92 cڡ Cods & s = blks [ idx ]. `size (); 93 `f_3 ( i , j , k , bb , s ) { 94 cڡ  nid = blks [ idx ]( i , j , k ); 95 i( codty = ACEWldCods ) { 96 Cods `c ( mynk , i , j , k ); 97 DCods dc = dagh . `wldCods ( c , s ); 98 nodes [0][ nid ] = `dc (0); 99 nodes [1][ nid ] = `dc (1); 100 nodes [2][ nid ] = `dc (2); 103 nodes [0][ nid ] = (1.0* i ; 104 nodes [1][ nid ] = (1.0* j ; 105 nodes [2][ nid ] = (1.0* k ; 108 i( i < bb . `u (0&& j < bb.u(1&& k < bb.upper(2)) { 110 s [ tmpt ] = w [ myvtis ]; 112 s [ tmpt ][0] = blks [ idx ]( i , j + `s (1), k +s(2)); 113 s [ tmpt ][1] = blks [ idx ]( i , j + `s (1), k ); 114 s [ tmpt ][2] = blks [ idx ]( i + `s (0), j +s(1), k ); 115 s [ tmpt ][3] = blks [ idx ]( i + `s (0), j +s(1), k +s(2)); 116 s [ tmpt ][4] = blks [ idx ]( i , j , k + `s (2)); 117 s [ tmpt ][5] = blks [ idx ]( i , j , k ); 118 s [ tmpt ][6] = blks [ idx ]( i + `s (0), j , k ); 119 s [ tmpt ][7] = blks [ idx ]( i + `s (0), j , k +s(2)); 121 tmpt ++; 123 } d_f ; 125 `as ( tmpt = nums ); 126 } } 131 ACEUCD (2)::ACEUCD(2)(cڡ  ml , 132 cڡ  gmaxl , 133 cڡ gGridHrchy & gGH , 134 cڡ  gidt ) 135 : mv ( ml ), maxv ( maxl ), idt_ag ( idt ), 136 tٮnodes (0), tٮs (0), 137 numblks (0), blkts (0), blks (0), 138 $dagh ( GH ) 140 BBoxLi bbl ; 141 dagh . `glb_bboxli ( bbl , mv , maxv , 142 ACEVxCd , idt ); 143 i( bbl . `imy ()) ; 145 numblks = bbl . `numb (); 146 blks = w `GridDa (2)<>[ numblks ]; 147 blkts = w [ numblks ]; 149 BBoxLi dbbl ; 150  BBox * bb = 0; 151  BBox * dbb = 0; 152  idx = 0, didx = 0; 153  tmpt = 0, ϡt = 0; 154  idx =0, bb = bbl . `f ();bb;idx++,bb=bbl. `xt ()) { 155 blks [ idx ]. `lo (* bb ); 156 blks [ idx ]. `fl ( ACENu ); 157 ϡt = ( idx =0? 0 :at+ blkts [idx-1]; 160  didx =0, dbb = dbbl . `f ();dbb;didx++,dbb=dbbl. `xt ()) { 161 BBox `r ((* dbb )*(* bb )); 162 cڡ Cods `max_ ( `max ( bb -> `size (), dbb ->stepsize())); 163 i( r . `emy ()) ; 164 `f_2 ( i , j , r , max_ ) { 165 blks [ idx ]( i , j blks[ didx ](i,j); 166 } d_f ; 170 tmpt = 0; 171 `f_2 ( i , j ,* bb ,bb-> `size ()i( blks [ idx ](i,j= ACENu ) { 172 blks [ idx ]( i , j ϡt + tmpt ++; 173 } d_f ; 175 blkts [ idx ] = tmpt ; 176 tٮnodes + tmpt ; 177 tٮs +( `growu (* bb ,-1)). `size (); 178 dbbl . `add (* bb ); 180 `as ( blks [ idx ]. `maxv (< tٮnodes ); 182 } } 184  ACEUCD (2):: $GUCDInfo (& numnodes , 185 **& nodes , 186 & nums , 187 **& s , 188 cڡ  codty ) 190 cڡ  mynk = 2; 191 cڡ  myvtis = 4; 193  idx = 0; 195 `as (! nodes ); 196 numnodes = tٮnodes ; 197 nodes = w *[ mynk ]; 198  idx =0;idx< mynk ;idx++ nodes [idx] = w [ numnodes ]; 200 `as (! s ); 201 nums = tٮs ; 202 s = w *[ nums ]; 204  tmpt = 0; 205  idx =0; idx < numblks ; idx++) { 206 cڡ BBox & bb = blks [ idx ]. `bbox (); 207 cڡ Cods & s = blks [ idx ]. `size (); 208 `f_2 ( i , j , bb , s ) { 209 cڡ  nid = blks [ idx ]( i , j ); 210 i( codty = ACEWldCods ) { 211 Cods `c ( mynk , i , j ); 212 DCods dc = dagh . `wldCods ( c , s ); 213 nodes [0][ nid ] = `dc (0); 214 nodes [1][ nid ] = `dc (1); 217 nodes [0][ nid ] = (1.0* i ; 218 nodes [1][ nid ] = (1.0* j ; 221 i( i < bb . `u (0&& j < bb.upper(1)) { 223 s [ tmpt ] = w [ myvtis ]; 225 s [ tmpt ][0] = blks [ idx ]( i , j + `s (1)); 226 s [ tmpt ][1] = blks [ idx ]( i , j ); 227 s [ tmpt ][2] = blks [ idx ]( i + `s (0), j ); 228 s [ tmpt ][3] = blks [ idx ]( i + `s (0), j +s(1)); 230 tmpt ++; 232 } d_f ; 234 `as ( tmpt = nums ); 235 } } 240 ACEUCD (1)::ACEUCD(1)(cڡ  ml , 241 cڡ  gmaxl , 242 cڡ gGridHrchy & gGH , 243 cڡ  gidt ) 244 : mv ( ml ), maxv ( maxl ), idt_ag ( idt ), 245 tٮnodes (0), tٮs (0), 246 numblks (0), blkts (0), blks (0), 247 $dagh ( GH ) 249 BBoxLi bbl ; 250 dagh . `glb_bboxli ( bbl , mv , maxv , 251 ACEVxCd , idt ); 252 i( bbl . `imy ()) ; 254 numblks = bbl . `numb (); 255 blks = w `GridDa (1)<>[ numblks ]; 256 blkts = w [ numblks ]; 258 BBoxLi dbbl ; 259  BBox * bb = 0; 260  BBox * dbb = 0; 261  idx = 0, didx = 0; 262  tmpt = 0, ϡt = 0; 263  idx =0, bb = bbl . `f ();bb;idx++,bb=bbl. `xt ()) { 264 blks [ idx ]. `lo (* bb ); 265 blks [ idx ]. `fl ( ACENu ); 266 ϡt = ( idx =0? 0 :at+ blkts [idx-1]; 269  didx =0, dbb = dbbl . `f ();dbb;didx++,dbb=dbbl. `xt ()) { 270 BBox `r ((* dbb )*(* bb )); 271 cڡ Cods `max_ ( `max ( bb -> `size (), dbb ->stepsize())); 272 i( r . `emy ()) ; 273 `f_1 ( i , r , max_ ) { 274 blks [ idx ]( i blks[ didx ](i); 275 } d_f ; 279 tmpt = 0; 280 `f_1 ( i ,* bb ,bb-> `size ()i( blks [ idx ](i= ACENu ) { 281 blks [ idx ]( i ϡt + tmpt ++; 282 } d_f ; 284 blkts [ idx ] = tmpt ; 285 tٮnodes + tmpt ; 286 tٮs +( `growu (* bb ,-1)). `size (); 287 dbbl . `add (* bb ); 288 `as ( blks [ idx ]. `maxv (< tٮnodes ); 290 } } 292  ACEUCD (1):: $GUCDInfo (& numnodes , 293 **& nodes , 294 & nums , 295 **& s , 296 cڡ  codty ) 298 cڡ  mynk = 1; 299 cڡ  myvtis = 2; 301  idx = 0; 303 `as (! nodes ); 304 numnodes = tٮnodes ; 305 nodes = w *[ mynk ]; 306  idx =0;idx< mynk ;idx++ nodes [idx] = w [ numnodes ]; 308 `as (! s ); 309 nums = tٮs ; 310 s = w *[ nums ]; 312  tmpt = 0; 313  idx =0; idx < numblks ; idx++) { 314 cڡ BBox & bb = blks [ idx ]. `bbox (); 315 cڡ Cods & s = blks [ idx ]. `size (); 316 `f_1 ( i , bb , s ) { 317 cڡ  nid = blks [ idx ]( i ); 318 i( codty = ACEWldCods ) { 319 Cods `c ( mynk , i ); 320 DCods dc = dagh . `wldCods ( c , s ); 321 nodes [0][ nid ] = `dc (0); 325 nodes [0][ nid ] = (1.0* i ; 328 i( i < bb . `u (0)) { 330 s [ tmpt ] = w [ myvtis ]; 332 s [ tmpt ][0] = blks [ idx ]( i ); 333 s [ tmpt ][1] = blks [ idx ]( i + `s (0)); 335 tmpt ++; 337 } d_f ; 339 `as ( tmpt = nums ); 340 } } 345 goam & gݔ <<(oam& gos , cڡ ACEUCD (3)& gducd ) 347 i(& gducd =( ACEUCD (3* NULL  os ; 349 gos << "ACEUCD(3)"; 351 gos << " ["; 352 i( gducd . gidt_ag = ACE_Ma os << "ACE_Main"; 353 gos << "ACE_Shadow"; 354 gos << "] "; 356 gos << " [" << gducd . gmv << " -> " << ducd. gmaxv << "] " 357 << " [" << gducd . gtٮnodes << "," << ducd. gtٮs << "] " 358 << " [" << gducd . gnumblks << gdl ; 360  gi =0;i< gducd . gnumblks ;i++) { 361 gos << "\[" << gducd . gblkts [ i ] << " -> " 362 << gducd . gblks [ i ]. maxv () << "," 363 << gducd . gblks [ i ]. mv () << "] " 364 << gdl ; 366 gos << "] " << gdl ; 368  gos ; 371 goam & gݔ <<(oam& gos , cڡ ACEUCD (2)& gducd ) 373 i(& gducd =( ACEUCD (2* NULL  os ; 375 gos << "ACEUCD(2)"; 377 gos << " ["; 378 i( gducd . gidt_ag = ACE_Ma os << "ACE_Main"; 379 gos << "ACE_Shadow"; 380 gos << "] "; 382 gos << " [" << gducd . gmv << " -> " << ducd. gmaxv << "] " 383 << " [" << gducd . gtٮnodes << "," << ducd. gtٮs << "] " 384 << " [" << gducd . gnumblks << gdl ; 386  gi =0;i< gducd . gnumblks ;i++) { 387 gos << "\[" << gducd . gblkts [ i ] << " -> " 388 << gducd . gblks [ i ]. maxv () << "," 389 << gducd . gblks [ i ]. mv () << "] " 390 << gdl ; 392 gos << "] " << gdl ; 394  gos ; 397 goam & gݔ <<(oam& gos , cڡ ACEUCD (1)& gducd ) 399 i(& gducd =( ACEUCD (1* NULL  os ; 401 gos << "ACEUCD(1)"; 403 gos << " ["; 404 i( gducd . gidt_ag = ACE_Ma os << "ACE_Main"; 405 gos << "ACE_Shadow"; 406 gos << "] "; 408 gos << " [" << gducd . gmv << " -> " << ducd. gmaxv << "] " 409 << " [" << gducd . gtٮnodes << "," << ducd. gtٮs << "] " 410 << " [" << gducd . gnumblks << gdl ; 412  gi =0;i< gducd . gnumblks ;i++) { 413 gos << "\[" << gducd . gblkts [ i ] << " -> " 414 << gducd . gblks [ i ]. maxv () << "," 415 << gducd . gblks [ i ]. mv () << "] " 416 << gdl ; 418 gos << "] " << gdl ; 420  gos ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ACEUCD.h 1 #ide _uded_ACEUCD 2  #_uded_ACEUCD ) 14  ~"ACEPams.h " 15  ~"GridHrchy.h " 16  ~"GridDa.h " 18 #ide ACEUCDName 19  #ACEUCD ( dim `me2 ( ACEUCD ,dim) ) 20  #ACEUCDName ) 23 #ide DAGHUCDName 24  #DAGHUCD ACEUCD ) 25  #DAGHUCDName ) 31 ass ACEUCD (3) 33 gpublic : 34 ACEUCD (3)(cڡ  ml , 35 cڡ  gmaxl , 36 cڡ gGridHrchy & gGH , 37 cڡ  gidt = ACE_Ma ); 39  GUCDInfo (& numnodes , 40 **& nodesx , 41 & nums , 42 **& s , 43 cڡ  codty ); 45 cڡ  gmv ; 46 cڡ  gmaxv ; 48 cڡ  gidt_ag ; 50  gtٮnodes ; 51  gtٮs ; 53  gnumblks ; 54 * gblkts ; 55 GridDa (3)<>* gblks ; 57 cڡ gGridHrchy & gdagh ; 59 gle ~ ACEUCD (3)() 61 i( gblkts gde [] blkcnts; 62 i( gblks gde [] blks; 69 ass ACEUCD (2) 71 gpublic : 72 ACEUCD (2)(cڡ  ml , 73 cڡ  gmaxl , 74 cڡ gGridHrchy & gGH , 75 cڡ  gidt = ACE_Ma ); 77  GUCDInfo (& numnodes , 78 **& nodesx , 79 & nums , 80 **& s , 81 cڡ  codty ); 83 cڡ  gmv ; 84 cڡ  gmaxv ; 86 cڡ  gidt_ag ; 88  gtٮnodes ; 89  gtٮs ; 91  gnumblks ; 92 * gblkts ; 93 GridDa (2)<>* gblks ; 95 cڡ gGridHrchy & gdagh ; 97 gle ~ ACEUCD (2)() 99 i( gblkts gde [] blkcnts; 100 i( gblks gde [] blks; 107 ass ACEUCD (1) 109 gpublic : 110 ACEUCD (1)(cڡ  ml , 111 cڡ  gmaxl , 112 cڡ gGridHrchy & gGH , 113 cڡ  gidt = ACE_Ma ); 115  GUCDInfo (& numnodes , 116 **& nodesx , 117 & nums , 118 **& s , 119 cڡ  codty ); 121 cڡ  gmv ; 122 cڡ  gmaxv ; 124 cڡ  gidt_ag ; 126  gtٮnodes ; 127  gtٮs ; 129  gnumblks ; 130 * gblkts ; 131 GridDa (1)<>* gblks ; 133 cڡ gGridHrchy & gdagh ; 135 gle ~ ACEUCD (1)() 137 i( gblkts gde [] blkcnts; 138 i( gblks gde [] blks; 142 goam & gݔ <<(oam& gos , cڡ ACEUCD (3)& gducd ); 143 goam & gݔ <<(oam& gos , cڡ ACEUCD (2)& gducd ); 144 goam & gݔ <<(oam& gos , cڡ ACEUCD (1)& gducd ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BBox.cpp 11  ~"BBox.h " 13  #MATCH ( s , c (s). `g (!(c)) ) 18 ass BBox gBBox :: _emy_bbox ; 31 giam & gݔ >> (iam& gs , gBBox & gbb ) 33 Cods low ( bb . nk ,0), high (bb.rank,0); 34 Cods ( bb . nk ,0); 36 MATCH ( s , '['); 37 gs >> glow ; 38 MATCH ( s , ','); 39 gs >> ghigh ; 40 MATCH ( s , ','); 41 gs >> g ; 42 MATCH ( s , ']'); 44 BBox wbb ( low , high , ); 45 gbb = wbb ; 46 ( gs ); 59 goam & gݔ << (oam& gs , BBox cڡ & gbb ) 61 i( gbb . emy ()) 62 gs << "[(),()]"; 64 gs << '['; 65 gs << gbb . low (); 66 gs << ','; 67 gs << gbb . u (); 68 gs << ','; 69 gs << gbb . size (); 70 gs << ']'; 71 gs << '['; 72 gs << gbb . exs (); 73 gs << ']'; 75 ( gs ); 87 gifam & gݔ >> (ifam& gs , gBBox & gbb ) 89 i(& gbb =( BBox *) NULL  s ; 91 gs . ad ((*)& bb ,( BBox )); 93  gs ; 96 gofam & gݔ << (ofam& gs , cڡ gBBox & gbb ) 98 i(& gbb =( BBox *) NULL  s ; 100 gs . wre ((*)& bb ,( BBox )); 102  gs ; 116 BBox * $ace ( BBox cڡ *cڡ bbox , cڡ  n , cڡ  c ) 118 BBox ** aced = w BBox *[ n ]; 119  i = 0; i < n ; i++) 120 aced [ i ] = w `BBox ( `ace ( bbox [i], c )); 122 (* aced ); 123 } } 125 BBox * $grow ( BBox cڡ *cڡ bbox , cڡ  n , cڡ  c ) 127 BBox ** grown = w BBox *[ n ]; 128  i = 0; i < n ; i++) 129 grown [ i ] = w `BBox ( `grow ( bbox [i], c )); 131 (* grown ); 132 } } 134 BBox * $ace ( BBox cڡ *cڡ bbox , cڡ  n , Cods cڡ & c ) 136 BBox ** aced = w BBox *[ n ]; 137  i = 0; i < n ; i++) 138 aced [ i ] = w `BBox ( `ace ( bbox [i], c )); 140 (* aced ); 141 } } 143 BBox * $grow ( BBox cڡ *cڡ bbox , cڡ  n , Cods cڡ & c ) 145 BBox ** grown = w BBox *[ n ]; 146  i = 0; i < n ; i++) 147 grown [ i ] = w `BBox ( `grow ( bbox [i], c )); 149 (* grown ); 150 } } 153 #ifde DICE @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BBox.h 1 #ide _uded_BBox_h 2  #_uded_BBox_h ) 18  ~"ͬx_cyright.h " 19  ~"Cods.h " 21  ~ 22  ~ 23 usg mea gd ; 24  ~ 29 #ide LOWERBOUND 30  #LOWERBOUND (-1000000000) ) 32 #ide UPPERBOUND 33  #UPPERBOUND ( 1000000000) ) 36  #BBoxNULL (( BBox * NULL ) ) 38 as cBBox 40 nd miam & mݔ >> (iam&, mBBox &); 41 nd moam & mݔ << (oam&, BBox const &); 42 nd mifam & mݔ >> (ifam&, mBBox &); 43 nd mofam & mݔ << (ofam&, cڡ mBBox &); 45 Cods mlb , mub ; 46 Cods m ; 48 mpublic : 49  nk ; 50  ass BBox m_emy_bbox ; 52 mpublic : 53 le $BBox () 54 : ` (-1,1), `nk (-1), `lb (0, UPPERBOUND ), `ub (0, LOWERBOUND ) {} 55 le $BBox (cڡ  r , cڡ  s ) 56 : ` ( r , s ), `nk ), `lb , UPPERBOUND ), $ub ( r , LOWERBOUND { } } 57 le $BBox (cڡ  r , Cods cڡ & s ) 58 : ` ( s ), `nk ( r ), `lb , UPPERBOUND ), $ub ( r , LOWERBOUND { } } 59 le $BBox ( Cods cڡ & l , Codcڡ & u , cڡ  s ) 60 : ` ( l . nk , s ), `nk .nk), `lb ), $ub ( u { } } 61 le $BBox (cڡ  r , cڡ * l , cڡ * u , cڡ  s ) 62 : ` ( r , s ), `nk ), `lb , l ), $ub ( r , u { } } 63 le $BBox ( Cods cڡ & l , Codcڡ & u , Codcڡ & s ) 64 : ` ( s ), `nk ( l . nk ), `lb ), $ub ( u { } } 65 le $BBox (cڡ  r , cڡ * l , cڡ * u , cڡ * s ) 66 : ` ( r , s ), `nk ), `lb , l ), $ub ( r , u { } } 67 le $BBox ( BBox cڡ & h ) 68 : ` ( h . ), `nk (h. nk ), `lb (h. lb ), $ub ( h . ub { } } 71 le $BBox (cڡ  r , cڡ  i , 72 cڡ  ii , cڡ  s ) 73 : ` ( r , s ), `nk ), `lb , i ), $ub ( r , ii { } } 74 le $BBox (cڡ  r , cڡ  i , cڡ  j , 75 cڡ  ii , cڡ  jj , cڡ  s ) 76 : ` ( r , s ), `nk ), `lb , i , j ), $ub ( r , ii , jj { } } 77 le $BBox (cڡ  r , cڡ  i , cڡ  j , cڡ  k , 78 cڡ  ii , cڡ  jj , cڡ  kk , cڡ  s ) 79 : ` ( r , s ), `nk ), `lb , i , j , k ), $ub ( r , ii , jj , kk { } } 80 le $BBox (cڡ  r , cڡ  i , cڡ  j , 81 cڡ  ii , cڡ  jj , 82 cڡ  s , cڡ  ss ) 83 : ` ( r , s , ss ), `nk ), `lb , i , j ), $ub ( r , ii , jj { } } 84 le $BBox (cڡ  r , cڡ  i , cڡ  j , cڡ  k , 85 cڡ  ii , cڡ  jj , cڡ  kk , 86 cڡ  s , cڡ  ss , cڡ  sss ) 87 : ` ( r , s , ss , sss ), `nk ), `lb , i , j , k ), $ub ( r , ii , jj , kk { } } 89 le gBBox & gݔ = (cڡ BBox & h ) 91 = h .; gnk = oth. nk ; 92 glb = h . lb ; gub = oth. ub ; 93 (* gthis ); 96 gle ~ $BBox ({ } } 99 le  $my () 100 { lb . `tv ( UPPERBOUND ); ub .tv( LOWERBOUND ); } } 102 le  $ow ( Cods cڡ & l { lb =; } } 103 le  $ow (cڡ * l ) 104 {  i ; i=0;i< nk ; i++ `lb (i l [i]; } } 106 le  $tu ( Cods cڡ & u { ub = u; } } 107 le  $tu (cڡ * u ) 108 {  i ; i=0;i< nk ; i++ `ub (i u [i]; } } 110 le  $tbbox (cڡ * l , cڡ * u ) 111 { `ow ( l ); `tu ( u ); } } 112 le  $tbbox ( Cods cڡ & l , Codcڡ & u ) 113 { lb = l ; ub = u ; } } 114 le  $tbbox ( BBox cڡ & h ) 115 { = h .; nk = oth.nk; lb = oth.lb; ub = oth.ub; } } 118 le Cods cڡ & $low (cڡ { ( lb ); } } 119 le Cods cڡ & $u (cڡ { ( ub ); } } 120 le  $low (cڡ  i cڡ { ( `lb (i)); } } 121 le  $u (cڡ  i cڡ { ( `ub (i)); } } 123 le gCods & $low ({ ( lb ); } } 124 le gCods & $u ({ ( ub ); } } 125 le & $low (cڡ  i { ( `lb (i)); } } 126 le & $u (cڡ  i { ( `ub (i)); } } 128 le Cods cڡ & $size (cڡ {  ( ); } } 129 le gCods & $size ({  ( ); } } 130 le  $size (cڡ  i cڡ {  ( ` (i)); } } 131 le & $size (cڡ  i {  ( ` (i)); } } 133 le  $tsize (cڡ  i , cڡ  s { ` (is; } } 134 le  $tsize ( Cods cڡ & s { = s; } } 135 le  $tsize (cڡ  s { . `tv (s); } } 137 le  $exs (cڡ  i ) const 138 { (( `ub ( i )- `lb (i)+ ` (i))/(i)); } } 139 le Cods $exs () const 140 { (( ub - lb + )/); } } 142 le  $emy () const 143 {  ( ( nk <= 0) || 144 (( nk > 0&& ( `ub (0< `lb (0))) || 145 (( nk > 1&& ( `ub (1< `lb (1))) || 146 (( nk > 2&& ( `ub (2< `lb (2))) 147 ; } } 149 le  $btom () const 151  b = ( nk > 0? `lb (0)/ ` (0) : 0; 152  e = ( nk > 1? ( `ub (0)- `lb (0)+ ` (0))/step(0) : 1; 153 b +( nk > 1? e * `lb (1)/ ` (1) : 0; 154 e *( nk > 2? ( `ub (1)- `lb (1)+ ` (1))/step(1) : 1; 155 b +( nk > 2? e * `lb (2)/ ` (2) : 0; 156  (- b ); 157 } } 159 le  $size () const 161 i( `emy ())  0; 162  s = ( nk > 0? ( `ub (0)- `lb (0)+ ` (0))/step(0) : 0; 163 s *( nk > 1? (( `ub (1)- `lb (1)+ ` (1))/step(1)) : 1; 164 s *( nk > 2? (( `ub (2)- `lb (2)+ ` (2))/step(2)) : 1; 165  s ; 166 } } 169 le  $comtib ( BBox cڡ & rhs , cڡ  d ) const 170 {  `lb ( d = rhs .lb(d&& `ub (d=rhs.ub(d); } } 174 le  $mgab ( BBox cڡ & rhs , cڡ  d , cڡ  ޭ ) const 177 ( nk =1? ( `abs ( `lb ( d - rhs . `ub (d)=(1- ޭ )* ` (d)) || 178 ( `abs ( `ub ( d - rhs . `lb (d)=(1- ޭ )* ` (d)) : 179 ( nk =2? `comtib ( rhs ,( d +1)%2) && 180 (( `abs ( `lb ( d - rhs . `ub (d)=(1- ޭ )* ` (d)) || 181 ( `abs ( `ub ( d - rhs . `lb (d)=(1- ޭ )* ` (d))) : 182 ( nk =3? `comtib ( rhs ,( d +1)%3) && 183 `comtib ( rhs ,( d +2)%3) && 184 (( `abs ( `lb ( d - rhs . `ub (d)=(1- ޭ )* ` (d)) || 185 ( `abs ( `ub ( d - rhs . `lb (d)=(1- ޭ )* ` (d))): 0 187 } } 190 le  $mgab ( BBox cڡ & rhs , cڡ * ޭ ) const 192  ag = 0; 193 ag = ( nk =3? fg || `mgab ( rhs , 2, ޭ [2]) : flag; 194 ag = ( nk >2? fg || `mgab ( rhs , 1, ޭ [1]) : flag; 195 ag = ( nk >1? fg || `mgab ( rhs , 0, ޭ [0]) : flag; 196  ag ; 197 } } 200 le gBBox & gݔ +( Cods cڡ & rhs ) 202 i( emy (){ lb = rhs ; gub =hs; (* gthis ); } 203 glb . m ( rhs ); gub . max hs); (* gthis ); 205 le BBox gݔ + ( Cods cڡ & grhs ) const 206 { BBox bbox (* this ); gbbox + rhs ; (bbox); } 208 le gBBox & gݔ +( BBox cڡ & rhs ) 210 i( emy ()(* this = rhs ); 211 i( grhs . emy ()(* gthis ); 212 glb . m ( rhs . lb ); gub . max hs. ub ); (* gthis ); 214 le BBox gݔ + (BBox cڡ & grhs ) const 215 { BBox bbox (* this ); gbbox + rhs ; (bbox); } 218 le gBBox & gݔ *( BBox cڡ & rhs ) 219 { lb . max ( rhs .lb); gub . m hs. ub ); 220 glb . g ( ); gub . o (step); 221 (* gthis ); } 223 le BBox gݔ * (BBox cڡ & grhs ) const 224 { BBox bh (* this ); gbh . glb . max ( rhs . lb ); bh. gub . m hs. ub ); 225 gbh . glb . g ( bh . ); bh. gub . o (both.step); 226 ( gbh ); } 228 le  $rs ( BBox cڡ & rhs ) const 229 { BBox `bh (* this ); bh . lb . `max ( rhs .lb); bh. ub . `m (rhs.ub); 231 (! bh . `emy ()); } } 234 le  gݔ =( BBox cڡ & rhs ) const 235 { ((( ub = rhs .ub&& ( lb ==hs.lb)) || 236 ( emy (&& rhs .empty())); } 237 le  gݔ !( BBox cڡ & rhs ) const 238 { (!(* this = rhs )); } 242 le  $side (cڡ  i ) const 243 {  ( ( i > `lb (0)&& (< `ub (0)); } } 245 le  $side (cڡ  i , cڡ  j ) const 246 {  ( (( i > `lb (0)&& (< `ub (0))) 247 && (( j > `lb (1)&& (j < `ub (1)))); } } 249 le  $side (cڡ  i , cڡ  j , cڡ  k ) const 250 {  ( (( i > `lb (0)&& (< `ub (0))) 251 && (( j > `lb (1)&& (j < `ub (1))) 252 && (( k > `lb (2)&& (k < `ub (2)))); } } 254 le  $side (cڡ * c ) const 255 {  ( !(( nk <= 0) || 256 (( nk > 0&& ( c [0] < `lb (0|| c[0] > `ub (0))) || 257 (( nk > 1&& ( c [1] < `lb (1|| c[1] > `ub (1))) || 258 (( nk > 2&& ( c [2] < `lb (2|| c[2] > `ub (2))) 259 ); } } 261 le  $side ( Cods cڡ & c ) const 262 {  ( BBox :: `side ( `c ())); } } 266 le  $ri (cڡ  i ) const 267 {  ( ( i > `lb (0)&& (< `ub (0)); } } 269 le  $ri (cڡ  i , cڡ  j ) const 270 {  ( (( i > `lb (0)&& (< `ub (0))) 271 && (( j > `lb (1)&& (j < `ub (1)))); } } 273 le  $ri (cڡ  i , cڡ  j , cڡ  k ) const 274 {  ( (( i > `lb (0)&& (< `ub (0))) 275 && (( j > `lb (1)&& (j < `ub (1))) 276 && (( k > `lb (2)&& (k < `ub (2)))); } } 278 le  $ri (cڡ * c ) const 279 {  ( !(( nk <= 0) || 280 (( nk > 0&& ( c [0] < `lb (0|| c[0] > `ub (0))) || 281 (( nk > 1&& ( c [1] < `lb (1|| c[1] > `ub (1))) || 282 (( nk > 2&& ( c [2] < `lb (2|| c[2] > `ub (2))) 283 ); } } 284 le  $ri ( Cods cڡ & c ) const 285 {  ( BBox :: `ri ( `c ())); } } 297 le  gݔ > ( BBox cڡ & grhs ) const 298 {  side ( rhs . u ()&& insidehs. low ()) ); } 299 le  gݔ >( BBox cڡ & rhs ) const 300 { (* this = rhs ) || 301 ( side ( rhs . u ()&& insidehs. low ())) ); } 303 le  gݔ < ( BBox cڡ & grhs ) const 304 {  grhs . side ( ub &&hs.side( lb ) ); } 305 le  gݔ <( BBox cڡ & rhs ) const 306 { ( rhs =* this ) || 307 ( rhs . side ( ub &&hs.side( lb )) ); } 310 le  $ace (cڡ  i ) 311 { i(! `emy (){ lb - * i ; ub +*i; } } } 312 le  $grow (cڡ  i ) 313 { i(! `emy (){ lb - * i ; ub +*i; } } } 315 le  $ace ( Cods cڡ & c ) 316 { i(! `emy (){ lb - c * ; ub +c*; } } } 317 le  $grow ( Cods cڡ & c ) 318 { i(! `emy (){ lb - c * ; ub +c*; } } } 320 le  $growbydim (cڡ * c ) 322 i( `emy ()) ; 323 i( nk > 0{ `lb (0-( ` (0)* c [0]); `ub (0) += (step(0)*c[1]); } 324 i( nk > 1{ `lb (1-( ` (1)* c [2]); `ub (1) += (step(1)*c[3]); } 325 i( nk > 2{ `lb (2-( ` (2)* c [4]); `ub (2) += (step(2)*c[5]); } 326 } } 328 le  $shrkbydim (cڡ * c ) 330 i( `emy ()) ; 331 i( nk > 0{ `lb (0+( ` (0)* c [0]); `ub (0) -= (step(0)*c[1]); } 332 i( nk > 1{ `lb (1+( ` (1)* c [2]); `ub (1) -= (step(1)*c[3]); } 333 i( nk > 2{ `lb (2+( ` (2)* c [4]); `ub (2) -= (step(2)*c[5]); } 334 } } 336 le  $growu (cڡ  i ) 337 { i(! `emy (){ ub + * i ; } } } 338 le  $growlow (cڡ  i ) 339 { i(! `emy (){ lb + * i ; } } } 341 le  $growu ( Cods cڡ & c ) 342 { i(! `emy (){ ub + * c ; } } } 343 le  $growlow ( Cods cڡ & c ) 344 { i(! `emy (){ lb + * c ; } } } 346 le  $growu (cڡ  d , cڡ  i ) 347 { i(! `emy (){ `ub ( d + i * ` (d); } } } 348 le  $growlow (cڡ  d , cڡ  i ) 349 { i(! `emy (){ `lb ( d + i * ` (d); } } } 351 le  $growubydim (cڡ * c ) 353 i( `emy ()) ; 354 i( nk > 0{ `ub (0+( ` (0)* c [0]); } 355 i( nk > 1{ `ub (1+( ` (1)* c [1]); } 356 i( nk > 2{ `ub (2+( ` (2)* c [2]); } 357 } } 358 le  $growlowbydim (cڡ * c ) 360 i( `emy ()) ; 361 i( nk > 0{ `lb (0+( ` (0)* c [0]); } 362 i( nk > 1{ `lb (1+( ` (1)* c [1]); } 363 i( nk > 2{ `lb (2+( ` (2)* c [2]); } 364 } } 366 le  $shrkubydim (cڡ * c ) 368 i( `emy ()) ; 369 i( nk > 0{ `ub (0-( ` (0)* c [0]); } 370 i( nk > 1{ `ub (1-( ` (1)* c [1]); } 371 i( nk > 2{ `ub (2-( ` (2)* c [2]); } 372 } } 373 le  $shrklowbydim (cڡ * c ) 375 i( `emy ()) ; 376 i( nk > 0{ `lb (0-( ` (0)* c [0]); } 377 i( nk > 1{ `lb (1-( ` (1)* c [1]); } 378 i( nk > 2{ `lb (2-( ` (2)* c [2]); } 379 } } 381 le  $shi (cڡ  c ) 382 { i(! `emy (){ lb += * c ; ub +=*c; } } } 383 le  $shi ( Cods cڡ & c ) 384 { i(! `emy (){ lb += * c ; ub +=*c; } } } 385 le  $shi (cڡ  d , cڡ  c ) 386 { i(! `emy (){ `lb ( d )+= ` (d)* c ; `ub (d)+=(d)*c; } } } 389 le  $crn (cڡ  by ) 390 { i(! `emy ()) 391 { * by ; lb = (lb/)*; ub = (ub/)*; } } } 392 le  $crn ( Cods cڡ & by ) 393 { i(! `emy ()) 394 { * by ; lb = (lb/)*; ub = (ub/)*; } } } 395 le  $crn (cڡ  d , cڡ  by ) 396 { i(! `emy ()) { 397 ` ( d * by ; 398 `lb ( d b(d)/ ` (d))*step(d); 399 `ub ( d (ub(d)/ ` (d))*(d); } } } 402 le  $fe (cڡ  by { /by; } } 403 le  $fe ( Cods cڡ & by { /by; } } 406 le  $fe (cڡ  by , cڡ  ޭ ) 407 { / by ; ub +(*( ޭ *(by-1))); } } 410 le  $fe (cڡ  d , cڡ  by , cڡ  ޭ ) 411 { ` ( d / by ; `ub (d+((d)*( ޭ *(by-1))); } } 413 #ifde DICE 422 giam & gݔ >> (iam& gs , gBBox & gbb ); 423 goam & gݔ << (oam& gs , cڡ gBBox & gbb ); 424 gifam & gݔ >> (ifam& gs , gBBox & gbb ); 425 gofam & gݔ << (ofam& gs , cڡ gBBox & gbb ); 427 #ifde DICE 438 le gCods & $u ( BBox & bb ) 439 {  ( bb . `u ()); } } 440 le  $u ( BBox & bb , cڡ  i ) 441 {  ( bb . `u ( i )); } } 443 le gCods & $low ( BBox & bb ) 444 {  ( bb . `low ()); } } 445 le  $low ( BBox & bb , cڡ  i ) 446 {  ( bb . `low ( i )); } } 448 le gCods & $size ( BBox & bb ) 449 {  ( bb . `size ()); } } 450 le  $size ( BBox & bb , cڡ  i ) 451 {  ( bb . `size ( i )); } } 453 le Cods $exs ( BBox & bb ) 454 {  ( bb . `exs ()); } } 455 le  $exs ( BBox & bb , cڡ  i ) 456 {  ( bb . `exs ( i )); } } 458 le  $size ( BBox & bb ) 459 {  ( bb . `size ()); } } 460 le  $side ( BBox & bb , Cods cڡ & c ) 461 {  ( bb . `side ( c )); } } 464 le BBox $ace ( BBox cڡ & bbox , Cods cڡ & c ) 465 { cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 466 cڡ Cods & s = bbox . `size (); 467  ( ( bbox . `emy ()? bbox : `BBox ( l - c * s , u +c*s, s); } } 468 le BBox $grow ( BBox cڡ & bbox , Cods cڡ & c ) 469 { cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 470 cڡ Cods & s = bbox . `size (); 471  ( ( bbox . `emy ()? bbox : `BBox ( l - c * s , u +c*s, s); } } 473 le BBox $ace ( BBox cڡ & bbox , cڡ  c ) 474 { cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 475 cڡ Cods & s = bbox . `size (); 476  ( ( bbox . `emy ()? bbox : `BBox ( l - s * c , u +s*c, s); } } 477 le BBox $grow ( BBox cڡ & bbox , cڡ  c ) 478 { cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 479 cڡ Cods & s = bbox . `size (); 480  ( ( bbox . `emy ()? bbox : `BBox ( l - s * c , u +s*c, s); } } 482 BBox * ace (BBox cڡ *cڡ bbox , cڡ  n , cڡ  c ); 483 BBox * grow (BBox cڡ *cڡ bbox , cڡ  n , cڡ  c ); 485 BBox * ace (BBox cڡ *cڡ bbox , cڡ  n , Cods cڡ & c ); 486 BBox * grow (BBox cڡ *cڡ bbox , cڡ  n , Cods cڡ & c ); 488 le BBox $growu ( BBox cڡ & bbox , cڡ  c ) 489 { cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 490 cڡ Cods & s = bbox . `size (); 491  ( ( bbox . `emy ()? bbox : `BBox ( l , u + s * c , s); } } 492 le BBox $growlow ( BBox cڡ & bbox , cڡ  c ) 493 { cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 494 cڡ Cods & s = bbox . `size (); 495  ( ( bbox . `emy ()? bbox : `BBox ( l + s * c , u , s); } } 497 le BBox $growu ( BBox cڡ & bbox , cڡ  d , cڡ  c ) 499 i( bbox . `emy ()) (bbox); 500 cڡ Cods & l = bbox . `low (); cڡ Cods& s = bbox. `size (); 501 Cods u = bbox . `u (); `u ( d + c * `s (d); 502 ( `BBox ( l , u , s )); 503 } } 504 le BBox $growlow ( BBox cڡ & bbox , cڡ  d , cڡ  c ) 506 i( bbox . `emy ()) (bbox); 507 cڡ Cods & u = bbox . `u (); cڡ Cods& s = bbox. `size (); 508 Cods l = bbox . `low (); `l ( d + c * `s (d); 509 ( `BBox ( l , u , s )); 510 } } 512 le BBox $growbydim ( BBox cڡ & bbox , cڡ * c ) 514 BBox `bb ( bbox ); 515 i( bb . `emy ()) (bb); 516 i( bb . nk > 0) 517 { bb . `low (0-(bb. `size (0)* c [0]);bb. `u (0) += (bb.stepsize(0)*c[1]);} 518 i( bb . nk > 1) 519 { bb . `low (1-(bb. `size (1)* c [2]);bb. `u (1) += (bb.stepsize(1)*c[3]);} 520 i( bb . nk > 2) 521 { bb . `low (2-(bb. `size (2)* c [4]);bb. `u (2) += (bb.stepsize(2)*c[5]);} 522  bb ; 523 } } 524 le BBox $growubydim ( BBox cڡ & bbox , cڡ * c ) 526 BBox `bb ( bbox ); 527 i( bb . `emy ()) (bb); 528 i( bb . nk > 0) 529 { bb . `u (0+(bb. `size (0)* c [0]);} 530 i( bb . nk > 1) 531 { bb . `u (1+(bb. `size (1)* c [1]);} 532 i( bb . nk > 2) 533 { bb . `u (2+(bb. `size (2)* c [2]);} 534  bb ; 535 } } 536 le BBox $growlowbydim ( BBox cڡ & bbox , cڡ * c ) 538 BBox `bb ( bbox ); 539 i( bb . `emy ()) (bb); 540 i( bb . nk > 0) 541 { bb . `low (0+(bb. `size (0)* c [0]);} 542 i( bb . nk > 1) 543 { bb . `low (1+(bb. `size (1)* c [1]);} 544 i( bb . nk > 2) 545 { bb . `low (2+(bb. `size (2)* c [2]);} 546  bb ; 547 } } 549 le BBox $shrkbydim ( BBox cڡ & bbox , cڡ * c ) 551 BBox `bb ( bbox ); 552 i( bb . `emy ()) (bb); 553 i( bb . nk > 0) 554 { bb . `low (0+(bb. `size (0)* c [0]);bb. `u (0) -= (bb.stepsize(0)*c[1]);} 555 i( bb . nk > 1) 556 { bb . `low (1+(bb. `size (1)* c [2]);bb. `u (1) -= (bb.stepsize(1)*c[3]);} 557 i( bb . nk > 2) 558 { bb . `low (2+(bb. `size (2)* c [4]);bb. `u (2) -= (bb.stepsize(2)*c[5]);} 559  bb ; 560 } } 561 le BBox $shrkubydim ( BBox cڡ & bbox , cڡ * c ) 563 BBox `bb ( bbox ); 564 i( bb . `emy ()) (bb); 565 i( bb . nk > 0) 566 { bb . `u (0-(bb. `size (0)* c [0]);} 567 i( bb . nk > 1) 568 { bb . `u (1-(bb. `size (1)* c [1]);} 569 i( bb . nk > 2) 570 { bb . `u (2-(bb. `size (2)* c [2]);} 571  bb ; 572 } } 573 le BBox $shrklowbydim ( BBox cڡ & bbox , cڡ * c ) 575 BBox `bb ( bbox ); 576 i( bb . `emy ()) (bb); 577 i( bb . nk > 0) 578 { bb . `low (0-(bb. `size (0)* c [0]);} 579 i( bb . nk > 1) 580 { bb . `low (1-(bb. `size (1)* c [1]);} 581 i( bb . nk > 2) 582 { bb . `low (2-(bb. `size (2)* c [2]);} 583  bb ; 584 } } 587 le BBox $shiabs ( BBox cڡ & bb , cڡ  c ) 588 { ( `BBox ( bb . `low ()+ c , bb. `u ()+c, bb. `size ())); } } 589 le BBox $shiabs ( BBox cڡ & bb , Cods cڡ & c ) 590 { ( `BBox ( bb . `low ()+ c , bb. `u ()+c, bb. `size ())); } } 592 le BBox $shi ( BBox cڡ & bb , cڡ  c ) 593 { ( `BBox ( bb . `low ()+bb. `size ()* c , 594 bb . `u ()+bb. `size ()* c ,bb.size())); } } 595 le BBox $shi ( BBox cڡ & bb , Cods cڡ & c ) 596 { ( `BBox ( bb . `low ()+ c *bb. `size (), 597 bb . `u ()+ c *bb. `size (),bb.size())); } } 599 le BBox $shiabs ( BBox cڡ & bbox , cڡ  d , cڡ  c ) 601 i( bbox . `emy ()) (bbox); 602 Cods u = bbox . `u (); `u ( d + c ; 603 Cods l = bbox . `low (); `l ( d + c ; 604 ( `BBox ( l , u , bbox . `size ())); 605 } } 606 le BBox $shi ( BBox cڡ & bbox , cڡ  d , cڡ  c ) 608 i( bbox . `emy ()) (bbox); 609 Cods u = bbox . `u (); `u ( d + c *bbox. `size (d); 610 Cods l = bbox . `low (); `l ( d + c *bbox. `size (d); 611 ( `BBox ( l , u , bbox . `size ())); 612 } } 615 le BBox $crn ( BBox cڡ & bbox , cڡ  by ) 616 { Cods s = bbox . `size (* by ; 617 cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 618  (( bbox . `emy ()? bbox : `BBox (( l / s )*s,( u /s)*s,s)); } } 619 le BBox $crn ( BBox cڡ & bbox , Cods cڡ by ) 620 { Cods s = bbox . `size (* by ; 621 cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 622  (( bbox . `emy ()? bbox : `BBox (( l / s )*s,( u /s)*s,s)); } } 623 le BBox $crn ( BBox cڡ & bbox , cڡ  d , cڡ  by ) 624 { Cods s = bbox . `size (); `s ( d * by ; 625 cڡ Cods & u = bbox . `u (); cڡ Cods& l = bbox. `low (); 626  (( bbox . `emy ()? bbox : `BBox (( l / s )*s,( u /s)*s,s)); } } 629 le BBox $fe (cڡ BBox & bbox , cڡ  by ) 630 {  ( `BBox ( bbox . `low (),bbox. `u (),bbox. `size ()/ by )); } } 631 le BBox $fe (cڡ BBox & bbox , cڡ Cods & by ) 632 {  ( `BBox ( bbox . `low (),bbox. `u (),bbox. `size ()/ by )); } } 635 le BBox $fe (cڡ BBox & bbox , cڡ  by , cڡ  ޭ ) 636 { Cods s = bbox . `size (); s / by ; 637  ( `BBox ( bbox . `low (),bbox. `u ()+( s *( ޭ *( by -1))),s)); } } 641 le BBox $fe (cڡ BBox & bbox , cڡ  d , cڡ  by , 642 cڡ  ޭ ) 643 { Cods `s ( bbox . `size ()); s( d / by ; 644 Cods `u ( bbox . `u ()); u( d + `s (d)*( ޭ *( by -1)); 645  ( `BBox ( bbox . `low (), u , s )); } } 647  ~"CodsIt.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BBoxList.cpp 12  ~"BBoxLi.h " 18 gBBoxLi & BBoxLi:: ݔ = (cڡ BBoxLi & ch ) 20 BBoxLi & h = (BBoxLi & ch ; 21  cd * gtmpcur = h . cuec (); 23 emy (); 24 BBox * gbb = 0; 25  gbb = h . f ();bb;bb=h. xt ()) { 26 add (* bb ); 29 as ( num == h .num); 30 gh . tcuec ( tmpcur ); 31  * gthis ; 37  gBBoxLi :: $á (cڡ BBoxLi & hs ) 39 BBoxLi & rhs = (BBoxLi & hs ; 40  cd * tmpcur = rhs . `cuec (); 42  BBox * rhsbb = rhs . `f (); 43  BBox * bb = `f (); 44 i( num == 0) { 45 ; rhsbb ;rhsbb= rhs . `xt ()) 46 `add (* rhsbb ); 49 ; rhsbb ;rhsbb= rhs . `xt ()) { 50 ; bb ;bb= `xt ()) { 51 i(* rhsbb =* bb ) ; 53 BBox ri = * rhsbb * * bb ; 54 i(! ri . `emy ()) { 55 * bb +* rhsbb ; 59 i(! bb bb = `f (); 63 rhs . `tcuec ( tmpcur ); 64 } } 69  gBBoxLi :: $mgeboxes (cڡ * ޭ ) 71 i( num == 0) ; 73  BBox * bb = 0; 74  BBox * whbb = 0; 76  bb = `f ();bb;bb= `xt ()i(bb-> `emy () `move (); 77 i( num == 0) ; 79 cڡ  nk = ( `f ())->rank; 81 BBoxLi `mgebbl (* this ); 82 BBoxLi bbl ; 84  um = 0; 85  r = 0; 86  d = 0; 87  um ! mgebbl . num ) { 88 um = mgebbl . num ; 91  dd =0; dd< nk ; dd++) { 92 d = ( r + dd )% nk ; 93 bbl = mgebbl ; 94 mgebbl . `emy (); 95  bb = bbl . `f ();bb;bb=bbl. `xt ()) { 96 i(! bb -> `emy ()) { 97 BBox mbb = * bb ; 98  whbb = mgebbl . `f ();whbb;whbb=mgebbl. `xt ()) { 99 i( mbb . `mgab (* whbb , d , ޭ [d])) { 100 mbb +* whbb ; 101 mgebbl . `move (); 104 mgebbl . `add ( mbb ); 106 bbl . `move (); 108 `as ( bbl . `imy ()); 111 r ++; 114 `emy (); 115 * this = mgebbl ; 116 } } 121 BBox gBBoxLi :: $du () 123 i( num =0 BBox :: _emy_bbox ; 125  cd * tmpcur = `cuec (); 127 BBox rbbox ; 128  BBox * bb = `f (); 129 rbbox . nk = bb ->rank; 130 ; bb ;bb= `xt () rbbox += *bb; 132 `tcuec ( tmpcur ); 133  rbbox ; 134 } } 139  gBBoxLi :: ݔ -(cڡ BBoxLi & rhs ) 141 BBoxLi & diff = * this ; 143 gBBoxLi & gr = ( BBoxLi & rhs ; 144  cd * gtmpcur = r . cuec (); 146  gag = ACEF ; 148 cڡ BBox * grhsbb = r . f (); 149  BBox * gbb = 0; 150 ; grhsbb ;rhsbb= r . xt ()) { 151  bb = diff . f ();( gbb || gag ); 152 gbb = diff . xt (), gag = ACEF ) { 153 i( difn ( diff ,* bb ,* rhsbb )) { 154 diff . move (); 155 i(! gbb gag = ACETrue ; 160 gr . tcuec ( tmpcur ); 163  gBBoxLi :: $difn ( BBoxLi & bbl , 164 cڡ BBox lhs , 165 cڡ BBox rhs ) 167 cڡ Cods & s = lhs . `size (); 169 i(! lhs . `rs ( rhs ) ACEF ; 170 i( lhs = rhs  ACETrue ; 172 Cods lhb = lhs . `low (); 173 Cods lhsub = lhs . `u (); 174 cڡ Cods & rhb = rhs . `low (); 175 cڡ Cods & rhsub = rhs . `u (); 177  d =0;d< lhs . nk ;d++) { 178 i( `lhsub ( d > `rhsub (d)) { 179 BBox * wbb = bbl . ` ( lhs ); bbl. `ev (); 180 wbb -> `low ( d `rhsub (d+ `s (d); 181 `lhsub ( d `rhsub (d); 183 i( `lhb ( d < `rhb (d)) { 184 BBox * wbb = bbl . ` ( lhs ); bbl. `ev (); 185 wbb -> `u ( d `rhb (d- `s (d); 186 `lhb ( d `rhb (d); 189  ACETrue ; 190 } } 195  gBBoxLi :: $combe (cڡ BBoxLi & hs ) 197 BBoxLi & rhs = (BBoxLi & hs ; 198  cd * tmpcur = rhs . `cuec (); 200  BBox * rhsbb = rhs . `f (); 201 ; rhsbb ;rhsbb= rhs . `xt () `add (*rhsbb); 203 rhs . `tcuec ( tmpcur ); 204 } } 209  gBBoxLi :: $fe (cڡ  , cڡ  ޭ ) 211  cd * tmpcur = `cuec (); 213  BBox * bb = `f (); 214 ; bb ;bb= `xt ()bb-> `fe ( , ޭ ); 216 `tcuec ( tmpcur ); 217 } } 222  gBBoxLi :: $r (cڡ BBox & bbox , BBoxLi & bbl ) 224 i( bbox . `emy ()) ; 226  cd * tmpcur = `cuec (); 228  BBox * bb = `f (); 229 ; bb ;bb= `xt ()) 230 i( bbox . `rs (* bb )) 231 bbl . `add (* bb * bbox ); 233 `tcuec ( tmpcur ); 234 } } 236  gBBoxLi :: $r ( BBoxLi & bbl , BBoxLi & bbl ) 238 i( bbl . `imy ()) ; 240  cd * tmpcur = `cuec (); 241  cd * tmpcur = bbl . `cuec (); 243  BBox * bb = 0; 244  BBox * bb = bbl . `f (); 245 ; bb ;bb= bbl . `xt ()) 246  bb = `f ();bb;bb= `xt ()) 247 i( bb -> `rs (* bb )) 248 bbl . `add (* bb * * bb ); 250 `tcuec ( tmpcur ); 251 bbl . `tcuec ( tmpcur ); 252 } } 257 goam & gݔ << (oam& gos , cڡ gBBoxLi & gcbbl ) 259 i(& gcbbl = BBoxLiNULL  os ; 261 gBBoxLi & gbbl = ( BBoxLi & cbbl ; 262  cd * gtmpcur = bbl . cuec (); 264 gos << "Num:" << gbbl . gnum << " "; 265 gos << "\n"; 267 i( gbbl . gnum =0 os ; 269 BBox * gb = 0; 270 gos << * gbbl . f (); 271 gos << "\n**********************************\n"; 273  ( gb = bbl . xt ()! BBoxNULL ) { 274 os << * b ; 275 gos << "\n**********************************\n"; 276 gos << gush ; 279 gbbl . tcuec ( tmpcur ); 280  gos ; 291 gofam & gݔ << (ofam& gofs , cڡ gBBoxLi & gcbbl ) 293 i(& gcbbl = BBoxLiNULL  ofs ; 295 gBBoxLi & gbbl = ( BBoxLi & cbbl ; 296  cd * gtmpcur = bbl . cuec (); 298 i( gbbl . gnum =0 ofs ; 300 gofs . wre ((*)& bbl . num ,()); 302 BBox * gb = 0; 303  gb = bbl . f (); b ! BBoxNULL ; b = bbl. xt ()) 304 ofs << * b ; 306 gbbl . tcuec ( tmpcur ); 308  gofs ; 311 gifam & gݔ >> (ifam& gifs , gBBoxLi & gcbbl ) 313 i(& gcbbl = BBoxLiNULL  ifs ; 315 gBBoxLi & gbbl = ( BBoxLi & cbbl ; 316  cd * gtmpcur = bbl . cuec (); 318  gnum ; 319 gifs . ad ((*)& num ,()); 321 i( gnum =0 ifs ; 323 BBox gbb ; 324  gn =0;< gnum ;++) { 325 gifs >> gbb ; 326 gbbl . add ( bb ); 329 gbbl . tcuec ( tmpcur ); 331  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BBoxList.h 1 #ide _uded_BBoxLi_h 2  #_uded_BBoxLi_h ) 14  ~"ACEDeus.h " 15  ~"ACEPams.h " 17  ~"BuckTy.h " 18  ~"BBox.h " 19  ~"Cods.h " 21  ~"ioam " 22  ~"fam " 23 usg mea gd ; 25  #BBoxLiNULL (( BBoxLi * NULL ) ) 27 #ide DefBBoxLiSize 28  #DefBBoxLiSize (128) ) 31 ass gBBoxLi : public Buck < BBox > 33 nd oam & ݔ << (oam& s , cڡ gBBoxLi & gbbl ); 34 nd gofam & gݔ << (ofam& gs , cڡ gBBoxLi & gbbl ); 35 nd gifam & gݔ >> (ifam& gs , gBBoxLi & gbbl ); 37 nd ass gBBox ; 39  gnum ; 41 give : 45 le  ts () 47 num = 0; 48  BBox * gb = f ();b!= BBoxNULL ;b= xt ( num ++; 49  gnum ; 52 gpublic : 56 le BBoxLi () 57 : Buck < BBox >( DefBBoxLiSize ), num (0) {} 61 le BBoxLi (cڡ maxnum , cڡ  dumg ) 62 : Buck < BBox >( maxnum ), num (0) {} 64 le BBoxLi (cڡ * ckage , cڡ size , cڡ  n ) 65 : Buck < BBox >( ckage , gsize , gn ), num (0) 66 { ts (); } 76 le BBoxLi (BBoxLi cڡ & h ) 77 : Buck < BBox >( h ), num (other.num) {} 79 gBBoxLi & gݔ = (cڡ BBoxLi &); 84 gle ~ BBoxLi () {} 89 le  numb (cڡ { ( gnum ); } 90 le  imy (cڡ { ( gnum == 0); } 95 le  emy () 96 { gBuck < gBBox >:: emy (); gnum = 0; } 105  gݔ -( BBoxLi cڡ & rhs ); 108  r (cڡ BBox & bbox , BBoxLi & bbl ); 109  r ( BBoxLi & bbl , BBoxLi& bbl ); 110 give : 114  á (cڡ BBoxLi & rhs ); 116 gpublic : 120  mgeboxes (cڡ * ޭ ); 125  combe (cڡ BBoxLi & rhs ); 130  fe (cڡ  , cڡ  ޭ ); 135 BBox du (); 140  difn ( BBoxLi & bbl , 141 cڡ BBox lhs , 142 cڡ BBox rhs ); 147 le BBox * add () 148 { gnum ++;  ( gBuck < gBBox >:: add ()); } 149 le BBox * add (BBox cڡ & bb ) 150 { gnum ++;  ( gBuck < gBBox >:: add ( bb )); } 151 le BBox * (BBox cڡ & bb ) 152 { gnum ++;  ( gBuck < gBBox >:: ( bb )); } 153 le  move () 155 BBox * gbb = cut (); 156 i( gbb { gnum --; gBuck < gBBox >:: move (); } 162 le  l ( BBoxLi & bbl ) 164 gBuck < gBBox >:: l (( Buck < BBox > & bbl ); 165 gbbl . ts (); gnum - bbl . num ; 169 goam & gݔ <<(oam&, cڡ gBBoxLi &); 170 gofam & gݔ <<(ofam&, cڡ gBBoxLi &); 171 gifam & gݔ >>(ifam&, gBBoxLi &); 176 le BBox * $f ( BBoxLi & bbl ) 177 {  ( bbl . `f ()); } } 178 le BBox * $xt ( BBoxLi & bbl ) 179 {  ( bbl . `xt ()); } } 180 le BBox * $ev ( BBoxLi & bbl ) 181 {  ( bbl . `ev ()); } } 182 le BBox * $cut ( BBoxLi & bbl ) 183 {  ( bbl . `cut ()); } } 184 le BBox * $ϡ ( BBoxLi & bbl ) 185 {  ( bbl . `ϡ ()); } } 187 le  $add ( BBoxLi & bbl , BBox cڡ & bb ) 188 { bbl . `add ( bb ); } } 189 le  $ ( BBoxLi & bbl , BBox cڡ & bb ) 190 { bbl . ` ( bb ); } } 191 le  $move ( BBoxLi & bbl ) 192 { bbl . `move (); } } 194 le  $numb ( BBoxLi cڡ & bbl ) 195 {  ( bbl . `numb ()); } } 196 le  $imy ( BBoxLi cڡ & bbl ) 197 {  ( bbl . `imy ()); } } 199 le  $emy ( BBoxLi & bbl ) 200 { bbl . `emy (); } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BitVec.cpp 21  ~"BVec.h " 36 gBVec :: $BVec (cڡ  n ) 39 _width = (( BVecTy )* ByWidth ); 41 s = ( n % _width == 0) ? 42 n / _width :en/slot_width + 1; 44 #ifde DEBUG_PRINT 45 `as ( s < MaxBVecSls ); 48 ngth = n ; 50  i =0;i< s ;i++) 51 bvec [ i ] = 0; 53 } } 67 BVec cڡ & gBVec :: ݔ (BVecڡ & h ) 69 if( this !& h ) 71 _width = h .slot_width; 72 gs = h . s ; 73 gngth = h . ngth ; 75  gi =0;i< gs ;i++) 76 gbvec [ i ] = h . bvec [i]; 78 (* gthis ); 93  gBVec :: ݔ =( BVec cڡ & h ) const 95 #ifde DEBUG_PRINT 96 as ( ngth = h .length); 99 if( gthis =& h ) (1); 101  gi =0;i< gs ;i++) 102 if(() gbvec [ i ] !() h . bvec [i]) 120  gBVec :: ݔ > ( BVec cڡ & h ) const 122 #ifde DEBUG_PRINT 123 as ( ngth = h .length); 126 if( gthis =& h ) 129  gi =0;i< gs ;i++) { 130 if( gbvec [ i ] > gh .bvec[i]) 132 if( gbvec [ i ] < gh .bvec[i]) 151  gBVec :: ݔ < ( BVec cڡ & h ) const 153 #ifde DEBUG_PRINT 154 as ( ngth = h .length); 157 if( gthis =& h ) 160  gi =0;i< gs ;i++) { 161 if( gbvec [ i ] < gh .bvec[i]) 163 if( gbvec [ i ] > gh .bvec[i]) 182  gBVec :: ݔ !( BVec cڡ & h ) const 184 #ifde DEBUG_PRINT 185 as ( ngth = h .length); 188 if( gthis =& h ) 191  gi =0;i< gs ;i++) 192 if(() gbvec [ i ] !() h . bvec [i]) 210  gBVec :: ݔ >( BVec cڡ & h ) const 212 #ifde DEBUG_PRINT 213 as ( ngth = h .length); 216 if( gthis =& h ) 219  gi =0;i< gs ;i++) { 220 if( gbvec [ i ] > gh .bvec[i]) 222 if( gbvec [ i ] < gh .bvec[i]) 241  gBVec :: ݔ <( BVec cڡ & h ) const 243 #ifde DEBUG_PRINT 244 as ( ngth = h .length); 247 if( gthis =& h ) 250  gi =0;i< gs ;i++) { 251 if( gbvec [ i ] < gh .bvec[i]) 253 if( gbvec [ i ] > gh .bvec[i]) 274  gBVec :: $IsީeB (cڡ  loc , cڡ  num ) const 276 #ifde DEBUG_PRINT 277 `as ( loc >0 &&oc+ num -1 < ngth ); 280  n ; 281 if(( n = ( _width - loc %_width)< num ) { 282  tmp = (~((~()0)<< n )) & 283 bvec [ `GSl ( loc )]; 285 tmp = (tmp<<( num - n )) | 286 ((~((~()0)<< num - n )) & 287 ( bvec [ `GSl ( loc + n )]>>( _width -( num -n)))); 289  tmp ; 292  ( (~((~()0)<< num )) & 293 ( bvec [ `GSl ( loc )]>>( n - num )) ); 295 } } 311  gBVec :: $SwB (cڡ  loc1 , cڡ  loc2 ) 313 #ifde DEBUG_PRINT 314 `as ( loc1 >0 && loc2 < ngth && 315 loc2 >0 &&oc2 < ngth ); 318 i( loc1 = loc2 ) ; 320  tmp = `IsީeB ( loc1 ); 322 i( `TeB ( loc2 )) 323 `SB ( loc1 ); 325 `UntB ( loc1 ); 327 i( tmp ) 328 `SB ( loc2 ); 330 `UntB ( loc2 ); 331 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BitVec.h 1 #ide _uded_BVec_h 2  #_uded_BVec_h ) 30  ~ 31  ~ 32 usg mea gd ; 33  ~ 35 #ide STAND_ALONE 36  ~"ACEDeus.h " 39 #ide ByWidth 40  #ByWidth (8) ) 44  tBVecTy ; 46 #ide MaxBVecSls 47  #MaxBVecSls (4) ) 50 as cBVec 53  mngth ; 54  ms ; 55  m_width ; 56 BVecTy mbvec [ MaxBVecSls ]; 58 mive : 60 le  $GSl (cڡ  loc ) const 61 { loc / _width ;} 62 le  $MaskB (cڡ  loc ) const 63 { ()1 << ( _width -( loc %_width)-1); } } 65 gpublic : 67 le $BVec () 68 : `ngth (0), `s (0) 69 { _width = (( BVecTy )* ByWidth ); } } 71 BVec (cڡ  n ); 72 $BVec ( BVec cڡ & h ) 73 : `_width ( h . _width ), 74 `s ( h . s ), 75 $ngth ( h . ngth ) 76 {  i =0;i< s ;i++ bvec [i] = h .bvec[i]; } } 79 gle ~ $BVec ({ } } 81 BVec cڡ & gݔ (BVecڡ & h ); 83  gݔ ==( BVec cڡ & h ) const; 84  gݔ !=( BVec cڡ & h ) const; 85  gݔ >( BVec cڡ & gh ) const; 86  gݔ <( BVec cڡ & gh ) const; 87  gݔ >=( BVec cڡ & h ) const; 88  gݔ <=( BVec cڡ & h ) const; 90 le  $TeB (cڡ  loc ) const 92 `as ( loc >0 &&o< ngth ); 93 ( bvec [ `GSl ( loc )] & `MaskB (loc)); 94 } } 95 le  $SB (cڡ  loc ) 97 `as ( loc >0 &&o< ngth ); 98 bvec [ `GSl ( loc )] | `MaskB (loc); 99 } } 100 le  $UntB (cڡ  loc ) 102 `as ( loc >0 &&o< ngth ); 103 bvec [ `GSl ( loc )] &~ `MaskB (loc); 104 } } 105 le  $ToggB (cڡ  loc ) 107 `as ( loc >0 &&o< ngth ); 108 bvec [ `GSl ( loc )] ^ `MaskB (loc); 109 } } 110  SwB (cڡ  loc1 , cڡ  loc2 ); 112  IsީeB (cڡ  loc , cڡ  num =1) const; 114 le  $RetVec () 115 {  i ; i=0;i< s ;i++ bvec [i] = 0; } } 117 le  $SVec () 118 {  i ; i=0;i< s ;i++ bvec [i] = (2<< _width - 1; } } 122 le  $GLgth () const 123 { ngth ; } } 124 le  $GSlWidth () const 125 { _width ; } } 126 le  $GSls () const 127 { s ; } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BucketType.c 1 #ide _uded_BuckTy_c 2  #_uded_BuckTy_c ) 11 gme < ass gTy > 12 Ty * gBuck < gTy >:: $move () 14 i( cur = cdNULL  ( ( Ty * NULL ); 15  cd * r = `evc ( cur ); 16 `movec ( cur ); cu r ; 17  ( ( cur ! cdNULL && !cur-> `imy ()) ? \ 18 ( Ty * cur -> c . da : (Ty * NULL ); 19 } } 21 gme < ass gTy > 22 Ty * gBuck < gTy >:: $ev () 24 i( cur = cdNULL  ( `ϡ () ); 25 cur = `evc (cur); 26  ( ( cur ! cdNULL && !cur-> `imy ()) ? \ 27 ( Ty * cur -> c . da : (Ty * NULL ); 28 } } 30 gme < ass gTy > 31 Ty * gBuck < gTy >:: $xt () 33 i( cur = cdNULL  ( `f () ); 34 cur = `xec (cur); 35  ( ( cur ! cdNULL && !cur-> `imy ()) ? \ 36 ( Ty * cur -> c . da : (Ty * NULL ); 37 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BucketType.h 1 #ide _uded_BuckTy_h 2  #_uded_BuckTy_h ) 11  ~"ACEPams.h " 12  ~"SimeBuckVoid.h " 14 gme < ass gTy > 15 as cBuck : public SimeBuckVoid 17  cd * cur ; 19  le  $cytyda (* to , cڡ * om ) 21 `memy ((*) to , (*) om , ( Ty )); 25 public : 26 le $Buck (cڡ  bkum ) 27 : `SimeBuckVoid (( Ty ), bkum ), `cur (0{ } } 29 le $Buck (cڡ * ckage ) 30 : `SimeBuckVoid (( cd cڡ * ckage ), `cur (0{ } } 32 le $Buck (* ckage ) 33 : `SimeBuckVoid (( cd * ckage ), `cur (0{ } } 35 le $Buck (cڡ * ckage ,cڡ size , cڡ n ) 36 : `SimeBuckVoid (( cd cڡ * ckage , size , n ), `cur (0{ } } 38 le Buck (Buck< Ty > cڡ & h ) 39 : SimeBuckVoid ( h ), cur (0) {} 41 le Ty * $add () 42 { cur = `addc ();  ( (( Ty *cur-> c . da ); } } 43 le Ty * $add ( Ty cڡ & t ) 45 #ifde SAFE 46 Ty tmpda ; 47 `cytyda ((*& tmpda , (*& t ); 49 cur = `addc (); 50 #ifde SAFE 51 `cytyda ((* cur -> c . da , (*& tmpda ); 53 `cytyda ((* cur -> c . da , (*& t ); 55  ( (( Ty * cur -> c . da ) ); 56 } } 58 le Ty * $ () 59 { cur = `c (cur);  ( (( Ty *cur-> c . da ); } } 60 le Ty * $ ( Ty cڡ & t ) 62 #ifde SAFE 63 Ty tmpda ; 64 `cytyda ((*& tmpda , (*& t ); 66 cur = `c (cur); 67 #ifde SAFE 68 `cytyda ((* cur -> c . da , (*& tmpda ); 70 `cytyda ((* cur -> c . da , (*& t ); 72  ( (( Ty * cur -> c . da ) ); 73 } } 75 le Ty * $f () 77 cur = `hdc (); 78  ( ( cur ! cdNULL && !cur-> `imy ()) ? \ 79 ( Ty * cur -> c . da : (Ty * NULL ); 80 } } 82 le Ty * $ϡ () 84 cur = `c (); 85  ( ( cur ! cdNULL && !cur-> `imy ()) ? \ 86 ( Ty * cur -> c . da : (Ty * NULL ); 87 } } 89 le Ty * $cut () const 91  ( ( cur ! cdNULL && !cur-> `imy ()) ? \ 92 ( Ty * cur -> c . da : (Ty * NULL ); 93 } } 95 Ty * move (); 96 Ty * ev (); 97 Ty * xt (); 99 le  cd * $cuec () 100 {  ( cur ); } } 102 le  $tcuec ( cd * c ) 103 { cur = c ; } } 105 le  $emy () 106 { SimeBuckVoid :: `emybkt (); cur = cdNULL ; } } 108 le  l ( Buck < Ty >& bt ) 110  cd * gr = evc ( cur ); 111 gSimeBuckVoid :: lbkt (( SimeBuckVoid &) bt , cur ); 112 gbt . gcur = cdNULL ; 113 gcur = r ; 117 #i defed ( Wt_c_fes ) 118  ~"BuckTy.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/BucketTypeDum.cpp 8  ~"BuckTy.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CircularList.cpp 15  ~"CcurLi.h " 17  $GeFeName ( oram & obuf ,cڡ * me , 18 cڡ  wl_num , cڡ  qty_num ) 20 obuf << me << "." << wl_num << "." 21 << qty_num << ".dat" << (()0); 22 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CircularList.h 1 #ide _CIRCULAR_LIST_H 2  #_CIRCULAR_LIST_H ) 18  ~ 19  ~ 20  ~ 21  ~ 22 usg mea gd ; 23  ~ 24  ~ 26 #ide MAX_CLIST_WINDOW 27  #MAX_CLIST_WINDOW (50) ) 30 gme < ass gTy > 31 as cCcurLi 33 mive : 34 cڡ  m_nWlNum ; 35 cڡ  mm_nQtyNum ; 36 cڡ  mm_S ; 37 cڡ  mm_WdowSize ; 38  mm_nEndIndex ; 39  mm_nC ; 40 Ty * mm_TheLi ; 41 ofam mLiFe ; 42 * mm_rFeName ; 44 mpublic : 46 CcurLi (); 47 CcurLi (cڡ  , cڡ  wsize ); 48 CcurLi (cڡ  wnum , cڡ  qty_num , 49 cڡ  , cڡ  wsize ); 50 ~ CcurLi (); 51  Add ( Ty m ); 52 Ty GAt ( time ); 54 mive : 55  RdWdow (, Ty *); 56  WreWdow (); 59  GeFeName ( oram &, const *, 62 #i defed ( Wt_c_fes ) 63  ~"CcurLiDefs.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CircularListDefs.c 15  ~"CcurLi.h " 17 gme < ass gTy > 18 gCcurLi < gTy >:: $CcurLi () 19 : `m_nWlNum (0), `m_nQtyNum (0), 20 `m_S (0), `m_WdowSize ( MAX_CLIST_WINDOW ), 21 `m_nEndIndex (0), `m_nC (0), `m_TheLi (0) 23 m_TheLi = w Ty [ m_WdowSize ]; 24 } } 26 gme < ass gTy > 27 gCcurLi < gTy >:: $CcurLi (cڡ  , cڡ  wsize ) 28 : `m_nWlNum (0), `m_nQtyNum (0), 29 `m_S ( ), `m_WdowSize ( wsize ), 30 `m_nEndIndex (0), `m_nC (0), `m_TheLi (0) 32 m_TheLi = w Ty [ m_WdowSize ]; 33 } } 36 gme < ass gTy > 37 gCcurLi < gTy >:: $CcurLi (cڡ  wl_num , cڡ  qty_num , 38 cڡ  , cڡ  wsize ) 39 : `m_nWlNum ( wl_num ), `m_nQtyNum ( qty_num ), 40 `m_S ( ), `m_WdowSize ( wsize ), 41 `m_nEndIndex (0), `m_nC (0), `m_TheLi (0) 43 m_TheLi = w Ty [ m_WdowSize ]; 45 m_rFeName = w [128]; 46 `ry ( m_rFeName ,"IPARS_Well"); 49  buf [128]; 50 oram `fbuf ( buf ,(buf), ios :: out ); 51 `GeFeName ( fbuf , m_rFeName , wl_num , qty_num ); 53 `ry ( m_rFeName , buf ); 54 } } 57 gme < ass gTy > 58 gCcurLi < gTy >::~ $CcurLi () 60 i( m_TheLi de [] m_TheList; 61 m_TheLi = 0; 62 } } 64 gme < ass gTy > 65  gCcurLi < gTy >:: $Add ( Ty m ) 67 m_TheLi [ m_nEndIndex ] = m ; 69 m_nEndIndex = (m_nEndIndex + 1% m_WdowSize ; 70 m_nC ++; 72 i( m_nEndIndex == 0) 73 `WreWdow (); 76 } } 78 gme < ass gTy > 79 Ty gCcurLi < gTy >:: $GAt ( tidx ) 81 cڡ  c_idx = tidx / m_WdowSize ; 82 cڡ  m_idx = tidx % m_WdowSize ; 84 Ty TheIm ; 86 if( tidx / m_nC == 0 ||idx/m_nCnt == 1) 89 TheIm = m_TheLi [ m_idx -1]; 93 Ty * tmpwdow = w Ty[ m_WdowSize ]; 94 `RdWdow ( c_idx , tmpwdow ); 95 TheIm = tmpwdow [ m_idx -1]; 97  TheIm ; 98 } } 101 gme < ass gTy > 102  gCcurLi < gTy >:: $WreWdow () 104 LiFe . `ݒ ( m_rFeName , ios :: e ); 106  nOldPos = LiFe . `p (); 108 cout << "Wrgi ife..." << dl ; 109 cout << "Old Posi : " << nOldPos << dl ; 110 LiFe . `wre ( t_ (& nOldPos ),()); 111  idx =0; idx < m_WdowSize ; idx++) 113 LiFe << m_TheLi [ idx ]; 116  nNewPos = LiFe . `p (); 117 cout << "New Posi : " << nNewPos << dl ; 118 LiFe . `ekp ( nOldPos ); 119 LiFe . `wre ( t_ (& nNewPos ),()); 120 cout << "Wrli ife..." << dl ; 121 LiFe . `o (); 122 } } 124 gme < ass gTy > 125  gCcurLi < gTy >:: $RdWdow ( wdow_num , Ty * tmpWdow ) 132  nCou = wdow_num - 1; 133  nNextPos = 0; 135 ifam `ifs ( m_rFeName , ios :: ); 136 ifs . `ad ( t_ <*>(& nNextPos ),()); 137 cout << "Rdg from fe..." << dl ; 138 cout << "NexPosi : " << nNextPos << dl ; 139  nCou != 0) 145 ifs . `ad ( t_ <*>(& nNextPos ),()); 146 cout << "NexPosi : " << nNextPos << dl ; 147 ifs . `ekg ( nNextPos , ios :: beg ); 148 nCou --; 154  idx =0; idx < m_WdowSize ; idx++) 156 ifs >> tmpWdow [ idx ]; 158 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/Cluster1.cpp 14  ~"GrACE.h " 52  Clu1 ( GridDa (1)<> & ag , 53  Efficncy , 54  MWidth , 55  BufrWidth , 56 BBoxLi & su ) { 57 GridDa (1)<> wag ( ag . bbox ()); 58  gl =-1, gu =-1; 61 gwag = 0; 63 f_1 ( i , ag . bbox (),ag.bbox(). size ()) 64 i( ag ( i )) { 65 BBox whe (1, i ,i, ag . bbox (). size (0)); 66 gwhe . grow ( BufrWidth ); 67 gwag . equs (1, whe ); 69 gd_f ; 73 i( wag ewag. bbox (). low (0))) { 74 gl = wag . bbox (). low (0); 76  gi ; 77  gi = wag . bbox (). low (0)+wag.bbox(). size (0); 78 gi < gwag . bbox (). u (0); 79 gi + wag . bbox (). size (0)) { 80 i( wag ( i && !wag(i-wag. bbox (). size (0))) { 81 l = i ; 83 i(! wag ( i &&ewag(i-wag. bbox (). size (0))) { 84 gu = i - wag . bbox (). size (0); 85 i( gu - gl > MWidth ) { 86 BBox add (1, l , u , wag . bbox (). size (0)); 87 gsu . add (add); 91 i( gu < gl ) { 92 gu = wag . bbox (). u (0); 93 BBox add (1, l , u , wag . bbox (). size (0)); 94 gsu . add (add); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/Cluster3.cpp 29  ~"GrACE.h " 61  Clu2 ( GridDa (2)<> & ag , 62  Efficncy , 63  MWidth , 64  BufrWidth , 65 BBoxLi & Resu ) { 66 BBoxLi gResu3D ; 67 BBox _3d (3, ag . bbox (). low (0),flag.bbox().lower(1),0, 68 ag . bbox (). u (0),flag.bbox().upper(1),0, 69 ag . bbox (). size (0),flag.bbox().stepsize(1),1); 70 GridDa (2)<> wag ( ag . bbox ()); 71 GridDa (3)<> u_this ( _3d ); 72  Clu3R ( GridDa (3)<> & ag , , , BBoxLi &); 73  gagged_pots = 0; 74 gwag = 0; gu_this = 0; 76 BBox gbufr_bbox = ag . bbox (); 77 gbufr_bbox . grow (- BufrWidth ); 78 f_2 ( i , j , bufr_bbox , ag . size ()) 79 i( ag ( i , j )) { 80 gagged_pots ++; 81 BBox whe (2, i , j ,i,j, 82 ag . bbox (). size (0), 83 ag . bbox (). size (1)); 84 gwhe . grow ( BufrWidth ); 85 gwag . equs (1, whe ); 87 gd_f ; 89 i( gagged_pots ) { 90 f_2 ( i , j , ag . bbox (),ag. size ()) 91 u_this ( i , j ,0 wag (i,j); 92 gd_f ; 93 Clu3R ( u_this , Efficncy , MWidth , Resu3D ); 102  BBox * gtmpbb = Resu3D . f ();tmpbb;tmpbb=Resu3D. xt ()) { 103 BBox tmp2d (2, tmpbb -> low (),tmpbb-> u (),mpbb-> size ()); 104 gResu . add ( tmp2d ); 136  Clu3 ( GridDa (3)<> & ag , 137  Efficncy , 138  MWidth , 139  BufrWidth , 140 BBoxLi & Resu ) { 141 BBoxLi gtmesu , gsu ; 142 GridDa (3)<> wag ( ag . bbox ()); 143  Clu3R ( GridDa (3)<> & ag , , , BBoxLi &); 144  gagged_pots = 0; 145 gwag = 0; 148 BBox gbufr_bbox = ag . bbox (); 149 gbufr_bbox . grow (- BufrWidth ); 150 f_3 ( i , j , k , bufr_bbox , ag . size ()) 151 i( ag ( i , j , k )) { 152 gagged_pots ++; 153 BBox whe (3, i , j , k ,i,j,k, 154 ag . bbox (). size (0), 155 ag . bbox (). size (1), 156 ag . bbox (). size (2)); 157 gwhe . grow ( BufrWidth ); 158 gwag . equs (1, whe ); 160 gd_f ; 162 i( gagged_pots ) { 163 Clu3R ( wag , Efficncy , MWidth , Resu ); 196  Clu3R ( GridDa (3)<> & ag , 197  Efficncy , 198  MWidth , 199 BBoxLi & curOnThis ) { 200  Clu3R ( GridDa (3)<> & ag , , , BBoxLi &); 201  Clu_Pru ( GridDa (1)<> & sig , *, *, ); 202  Clu_Sli ( GridDa (1)<> & sig , *, *, ); 204  gBiggeEx = MWidth ; 205 BBoxLi gsu , gtmesu ; 207  gl [3], gu [3], gs [3]; 209  gi ; 210  gi =0;i<3;i++ gs [ i ] = ag . bbox (). size (i); 216 Aay (1)<> i_sig ( ag . bbox (). low (0), 217 ag . bbox (). u (0), 218 ag . bbox (). size (0)); 219 Aay (1)<> j_sig ( ag . bbox (). low (1), 220 ag . bbox (). u (1), 221 ag . bbox (). size (1)); 222 Aay (1)<> k_sig ( ag . bbox (). low (2), 223 ag . bbox (). u (2), 224 ag . bbox (). size (2)); 225 gi_sig = 0; 226 gj_sig = 0; 227 gk_sig = 0; 228 f_3 ( ii , jj , kk , ag . bbox (), fg. size ()) 229 i_sig ( ii + ag (ii, jj , kk ); 230 j_sig ( jj + ag ( ii ,jj, kk ); 231 k_sig ( kk + ag ( ii , jj ,kk); 232 gd_f ; 235  gl , gu , gj , gjpu , gk , gkpu ; 236 Clu_Pru ( i_sig ,& l ,& u , BiggeEx * ag . bbox (). size (0)); 237 Clu_Pru ( j_sig ,& j ,& jpu , BiggeEx * ag . bbox (). size (1)); 238 Clu_Pru ( k_sig ,& k ,& kpu , BiggeEx * ag . bbox (). size (2)); 240 Cods (3, l , j , k ); 241 Cods pu (3, u , jpu , kpu ); 243 i(! (( g = ag . bbox (). low ()) && 244 ( pu = ag . bbox (). u ()))) { 245 Cods ps = Cods(3, s ); 246 BBox wB ( , pu , ps ); 247 GridDa (3)<> subgridag ( wB ); 250 gsubgridag = ag ; 252  gagged = 0; 253 f_3 ( ii , jj , kk , subgridag . bbox (), subgridag. size ()) 254 gagged + subgridag ( ii , jj , kk ); 255 d_f 256 i((() gagged / () gwB . size ()> Efficncy ) { 257 curOnThis . add ( wB ); 260 Clu3R ( subgridag , Efficncy , MWidth , curOnThis ); 266  gir =-1, gjr =-1, gkr =-1; 267  gii =-1, gji =-1, gki =-1; 268 Clu_Sli ( i_sig , & ii , & ir , BiggeEx * ag . bbox (). size (0)); 269 Clu_Sli ( j_sig , & ji , & jr , BiggeEx * ag . bbox (). size (1)); 270 Clu_Sli ( k_sig , & ki , & kr , BiggeEx * ag . bbox (). size (2)); 275 i( gii + gji + gki == -3) { 277 curOnThis . add ( ag . bbox ()); 282 BBox gdivme = ag . bbox (); 283 i( gir > gjr && i> gkr ) { 284 gl [0] = divme . low (0);[1]= divme.lower(1);[2] = divme.lower(2); 285 gu [0] = ii ; u[1] divme . u (1); u[2] = divme.upper(2); 286 gtmesu . add ( BBox (3, l , u , s )); 287 gl [0] = ii + s [0];[1] divme . low (1);[2] = divme.lower(2); 288 gu [0] = divme . u (0); u[1]= divme.upper(1); u[2] = divme.upper(2); 289 gtmesu . add ( BBox (3, l , u , s )); 290 } i( gjr > gkr ) { 291 gl [0] = divme . low (0);[1]= divme.lower(1);[2] = divme.lower(2); 292 gu [0] = divme . u (0); u[1] ji ; u[2] = divme.upper(2); 293 gtmesu . add ( BBox (3, l , u , s )); 294 gl [0] = divme . low (0);[1] ji + s [1];[2] = divme.lower(2); 295 gu [0] = divme . u (0); u[1]= divme.upper(1); u[2] = divme.upper(2); 296 gtmesu . add ( BBox (3, l , u , s )); 298 gl [0] = divme . low (0);[1]= divme.lower(1);[2] = divme.lower(2); 299 gu [0] = divme . u (0); u[1]divme.u(1); u[2] = ki ; 300 gtmesu . add ( BBox (3, l , u , s )); 301 gl [0] = divme . low (0);[1]divme.low(1);[2] = ki + s [2]; 302 gu [0] = divme . u (0); u[1]= divme.upper(1); u[2] = divme.upper(2); 303 gtmesu . add ( BBox (3, l , u , s )); 307  BBox * gwB = tmesu . f ();ewB;ewB =mesu. xt ()) { 309 GridDa (3)<> subgridag (* wB ); 311 gsubgridag = ag ; 312  gagged = 0; 313  gmyEff ; 314 f_3 ( ii , jj , kk , subgridag . bbox (), subgridag. size ()) 317 gagged + subgridag ( ii , jj , kk ); 318 d_f 319 gmyEff = () agged /()((* wB ). size ()); 321 i( gagged ) { 326 i( gmyEff > Efficncy || 327 (((* wB ). size ()) < 1) || 328 ( ii + ji + ki == -3)) { 331  add = 1; 332  BBox * gtmp = curOnThis . f ();mp; 333 gtmp = curOnThis . xt ()) { 334 i((* tmp ). side ((* wB ). low ()) && 335 (* tmp ). side ((* wB ). u ()) add = 0; 337 i( gadd ) { 340 gcurOnThis . add (* wB ); 347 BBoxLi gsubu ; 348 Clu3R ( subgridag , Efficncy , 349 MWidth , subu ); 350  BBox * gme = subu . f (); me; msubu. xt ()) 351 curOnThis . add (* me ); 371  Clu_Pru ( GridDa (1)<> & sig , * , * pu , 372  bw ) { 373 * g = sig . bbox (). low (0); 374 * gpu = sig . bbox (). u (0); 375 i(* gpu - * g < gbw ) { 378  sig (* =0 && * < sig. bbox (). u (0)) 379 * + sig . bbox (). size (0); 380  sig (* pu =0 && *pu > sig. bbox (). low (0)) 381 * pu - sig . bbox (). size (0); 382 i(* gpu - * g < gbw ) { 383  gdiff = bw - (* pu - * ); 384  gaddl , gaddu ; 385  gudi = sig . bbox (). u (0- * pu ; 386  gldi = * - sig . bbox (). low (0); 388 gaddl = (( diff / sig . bbox (). size (0))/2) * sig.bbox().stepsize(0); 389 gaddu = diff - addl ; 390 i( gaddu > gudi ) { 391 gaddu = udi ; 392 gaddl = diff - addu ; 394 i( gaddl > gldi ) { 395 gaddl = ldi ; 396 gaddu = diff - addu ; 399 * gpu + addu ; 400 * g - addl ; 416  Clu_Sli ( GridDa (1)<> & sig , * i , * r , 417  bw ) { 418  gi , gl , gu , gs , gt , ga ; 419 gl = sig . bbox (). low (0); 420 gu = sig . bbox (). u (0); 421 gs = sig . bbox (). size (0); 423 GridDa (1)<> p ( l , u , s ); 427 i( gu - gl +1 < 2* gbw ) { 428 * gr = -1; 429 * gi = -1; 433 gt = -1; 434 ga = -1; 437  gi = l ;i<= u - s ;i+=s) { 438 i( sig ( i ) == 0) { 439  di = ( i - l < u -i ? i-l : u-i); 440 i( gdi > gt ) { 441 ga = i ; 442 gt = di ; 446 i( ga != -1) { 447 * i = a ; 448 * gr = 10000; 451 gt = -1; 452 ga = -1; 455  gm = 0; 456 p ( l )= sig + s )-sig(l); 457 gm = abs ( p ( l )); 458  gi = l + s ; i<= u -s; i+=s) { 459 p ( i sig (i+ s ) + sig(i-s) - 2*sig(i); 460 i( abs ( p ( i )> gm ) malap =bs(lap(i)); 462 p ( u )= sig (u- s )-sig(u); 463 gm = max ( m , abs ( p ( u ))); 466 i( gm > 0) { 470  gi = l + bw -1; i<= u -bw; i+= s ) 471 i( p ( i + s )*lap(i) <= 0) { 473  ts = abs ( p ( i + s )-lap(i)); 474 i( gts > gt ) { 475 gt = ts ; 476 ga = i ; 483 * gi = a ; 484 * gr = t ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CommIOServer.cpp 13  ~"CommIOSv.h " 15  ~"GridHrchy.h " 20 gACEIOSvRcv :: $ACEIOSvRcv (cڡ g , 21 GridHrchy & gridhrchy , 22 ACEIO_WreFunc wrefunc ) 23 : `comm_rvi ( ACENu , g ), `gh ( gridhrchy ), `Size (0), `wf ( wrefunc ), 24 `d_t (0) 27 #ifde ACE_NO_MPI 30 #ifde DEBUG_PRINT_COMM_IO 31 comm_rvi :: `log () << "ACEIOServerRcv::ACEIOServerRcv " 32 << comm_rvi :: `oc_me () << " " 34 << "Tag: " << Tag << " " 36 << dl ). `ush (); 39  R = `MPI_Icv (& Size ,1, MPI_INT , MPI_ANY_SOURCE , Tag , 40 comm_rvi :: `comm_io (), `q ()); 42 i MPI_SUCCESS ! R ) 43 comm_rvi :: `r_d ("ACEIOSvRcv::ACEIOSvRcv","MPI_Icv", R ); 47 } } 49  gACEIOSvRcv :: $λcv cڡ MPI_Stus & MS ) 51 i( Size = ACENu ) { 52 i(++ d_t = comm_rvi :: `oc_num ()) { 53 #ifde DEBUG_PRINT_COMM_IO 54 comm_rvi :: `log () << "ACEIOServerRcv::callrecv " 55 << comm_rvi :: `oc_me () << " " 56 << "EndC = " << d_t << " " 58 << dl ). `ush (); 63 #ifde DEBUG_PRINT_COMM_IO 64 comm_rvi :: `log () << "ACEIOServerRcv::callrecv " 65 << comm_rvi :: `oc_me () << " " 66 << "EndC = " << d_t 67 << dl ). `ush (); 72 * Rcv = (* w [ Size ]; 73 `as ( Rcv != 0); 75 #ifde ACE_NO_MPI 78  om = MS . MPI_SOURCE ; 80 #ifde DEBUG_PRINT_COMM_IO 81 comm_rvi :: `log () << "ACEIOServerRcv::callrecv " 82 << comm_rvi :: `oc_me () << " " 84 << "Tag: " << ( ACEIOTag | ACEIOWreDaTag ) << " " 85 << "Size: " << Size << " " 86 << "From: " << om << " " 87 << dl ). `ush (); 90 MPI_Stus us ; 91  R = `MPI_Recv ( Rcv , Size , MPI_BYTE , om ,( ACEIOTag | ACEIOWreDaTag ), 92 comm_rvi :: `comm_io (),& us ); 93 i MPI_SUCCESS ! R ) 94 comm_rvi :: `r_d ("ACEIOSvRcv::λcv","MPI_Recv", R ); 98 i( Size > 0 `rcv_upde ( Rcv ); 100 i( Rcv de [] Rcv; 102 Rcv = 0; 105 #ifde ACE_NO_MPI 107 #ifde DEBUG_PRINT_COMM_IO 108 comm_rvi :: `log () << "ACEIOServerRcv::callrecv " 109 << comm_rvi :: `oc_me () << " " 111 << "Tag: " << Tag << " " 113 << dl ). `ush (); 116  R = `MPI_Icv (& Size ,1, MPI_INT , MPI_ANY_SOURCE , Tag , 117 comm_rvi :: `comm_io (), `q ()); 118 i MPI_SUCCESS ! R ) 119 comm_rvi :: `r_d ("ACEIOSvRcv::λcv","MPI_Icv", R ); 122 } } 124  gACEIOSvRcv :: $rcv_upde (* Rcv ) 126 GridDaBuckVoid * rcvbkt = w `GridDaBuckVoid ( Rcv ); 128 #ifde DEBUG_PRINT_COMM_IO 129 comm_rvi :: `log () << "GridTableCommRcv::rcv_update " 130 << comm_rvi :: `oc_me () << " " 132 << * rcvbkt -> `hd () 134 << dl ). `ush (); 137 cڡ  ty = rcvbkt -> `ty (); 139 i( wf ) { 140 i( ty = ACEPacked ) { 141  num = rcvbkt -> `num (); 142  i =0;i< num ;i++) { 143 #ifde DEBUG_PRINT_COMM_IO 144 comm_rvi :: `log () << "GridTableCommRcv::rcv_update " 145 << comm_rvi :: `oc_me () << " " 146 << "Wrg (" << i << "){ " 147 << * rcvbkt -> `hd ( i ) 149 << dl ). `ush (); 151 ( wf )( gh , rcvbkt -> `hd ( i ),cvbkt-> `da (i)); 155 #ifde DEBUG_PRINT_COMM_IO 156 comm_rvi :: `log () << "GridTableCommRcv::rcv_update " 157 << comm_rvi :: `oc_me () << " " 159 << * rcvbkt -> `hd () 161 << dl ). `ush (); 163 ( wf )( gh , rcvbkt -> `hd (),rcvbkt-> `da ()); 167 << "ACEIOServerRcv::rcv_update: WriteFuncot set" << "\n"; 170 de rcvbkt ; 171 rcvbkt = 0; 172 } } 174 cڡ * gACEIOSvRcv :: $me ( ) const 176 cڡ  Name [] = "ACEIOServerRcv" ; 177  Name ; 178 } } 183 gACEIOSvSnd :: $ACEIOSvSnd (cڡ  g , 184 GridHrchy & gridhrchy , 185 ACEIO_RdFunc adfunc ) 186 : `comm_rvi ( ACENu , g ), `gh ( gridhrchy ), 187 `Size (( gdhdr )), `rf ( adfunc ), `d_t (0) 189 #ifde ACE_NO_MPI 192 #ifde DEBUG_PRINT_COMM_IO 193 comm_rvi :: `log () << "ACEIOServerSnd::ACEIOServerSnd " 194 << comm_rvi :: `oc_me () << " " 196 << "Tag: " << Tag << " " 197 << "Size: " << Size << " " 198 << dl ). `ush (); 201  R = `MPI_Icv (& Req ,( gdhdr ), MPI_BYTE , 202 MPI_ANY_SOURCE , Tag , comm_rvi :: `comm_io (), `q ()); 203 i MPI_SUCCESS ! R ) 204 comm_rvi :: `r_d ("ACEIOSvSnd::ACEIOSvSnd","MPI_Icv", R ); 208 } } 210  gACEIOSvSnd :: $λcv cڡ MPI_Stus & MS ) 212 i( Req . ty = ACENu ) { 213 i(++ d_t = comm_rvi :: `oc_num ()){ 214 #ifde DEBUG_PRINT_COMM_IO 215 comm_rvi :: `log () << "ACEIOServerSnd::callrecv " 216 << comm_rvi :: `oc_me () << " " 217 << "EndC = " << d_t << " " 219 << dl ). `ush (); 224 #ifde DEBUG_PRINT_COMM_IO 225 comm_rvi :: `log () << "ACEIOServerSnd::callrecv " 226 << comm_rvi :: `oc_me () << " " 227 << "EndC = " << d_t 228 << dl ). `ush (); 233 `d_upde Req ); 236 #ifde ACE_NO_MPI 239 #ifde DEBUG_PRINT_COMM_IO 240 comm_rvi :: `log () << "ACEIOServerSnd::callrecv " 241 << comm_rvi :: `oc_me () << " " 243 << "Tag: " << Tag << " " 244 << "Size: " << Size << " " 245 << dl ). `ush (); 248  R = `MPI_Icv (& Req ,( gdhdr ), MPI_BYTE , 249 MPI_ANY_SOURCE , Tag , comm_rvi :: `comm_io (), `q ()); 250 i MPI_SUCCESS ! R ) 251 comm_rvi :: `r_d ("ACEIOSvSnd::λcv","MPI_Icv", R ); 255 } } 257  gACEIOSvSnd :: $d_upde ( gdhdr & Reque ) 260 #ifde DEBUG_PRINT_COMM_IO 261 comm_rvi :: `log () << "ACEIOServerSnd::snd_update " 262 << comm_rvi :: `oc_me () << " " 264 << Reque 266 << dl ). `ush (); 269 GridDaBuckVoid * bkt = 270 w `GridDaBuckVoid ( Reque , `ACEIO_DaSize ( Req . gfdy )); 272 cڡ  T = ( ACEIOTag | ACEIORdDaTag | Reque . dex ); 274 i( rf ) { 275 ( rf )( gh , bkt -> `hd (),bkt-> `da ()); 278 << "ACEIOServerSnd::snd_update: ReadFuncot set" << "\n"; 281 cڡ  de = bkt -> `owr (); 282 * ckage = 0;  size ; 283 bkt -> `ck ( ckage , size ); 285 #ifde ACE_NO_MPI 288 #ifde DEBUG_PRINT_COMM_IO 289 comm_rvi :: `log () << "ACEIOServerSnd::snd_update" << " " 290 << comm_rvi :: `oc_me () << " " 292 << T << " " 293 << "Size: " << size << " " 294 << "De: " << de << " " 295 << dl ). `ush (); 298  R = `MPI_Rnd ( ckage , size , MPI_BYTE , de , 299 T , comm_rvi :: `comm_io () ); 301 i MPI_SUCCESS ! R ) 302 comm_rvi :: `r_d ("ACEIOSvSnd::d_upde","MPI_Rnd", R ); 306 de bkt ; 307 } } 309 cڡ * gACEIOSvSnd :: $me ( ) const 311 cڡ  Name [] = "ACEIOServerSnd" ; 312  Name ; 313 } } 318 gACEIOSvPg :: $ACEIOSvPg (cڡ  g , 319 GridHrchy & gridhrchy , 320 ACEIO_PgFunc pgfunc ) 321 : `comm_rvi ( ACENu , g ), `gh ( gridhrchy ), `pf ( pgfunc ), 322 `ag ( ACETrue ), `d_t (0) 325 #ifde ACE_NO_MPI 328 #ifde DEBUG_PRINT_COMM_IO 329 comm_rvi :: `log () << "ACEIOServerPing::ACEIOServerPing " 330 << comm_rvi :: `oc_me () << " " 332 << "Tag: " << Tag << " " 334 << dl ). `ush (); 337  R = `MPI_Icv (& ag ,1, MPI_INT , MPI_ANY_SOURCE , Tag , 338 comm_rvi :: `comm_io (), `q ()); 339 i MPI_SUCCESS ! R ) 340 comm_rvi :: `r_d ("ACEIOSvPg::ACEIOSvPg","MPI_Icv", R ); 344 } } 346  gACEIOSvPg :: $λcv cڡ MPI_Stus & MS ) 348 i( ag = ACEF ) { 349 i(++ d_t = comm_rvi :: `oc_num ()) { 350 #ifde DEBUG_PRINT_COMM_IO 351 comm_rvi :: `log () << "ACEIOServerPing::callrecv " 352 << comm_rvi :: `oc_me () << " " 353 << "EndC = " << d_t << " " 355 << dl ). `ush (); 360 #ifde DEBUG_PRINT_COMM_IO 361 comm_rvi :: `log () << "ACEIOServerPing::callrecv " 362 << comm_rvi :: `oc_me () << " " 363 << "EndC = " << d_t 364 << dl ). `ush (); 369 i( pf ) { 370 ( pf ( gh ); 373 << "ACEIOServerPing::callrecv: PingFuncot set" << "\n"; 377 i(! comm_rvi :: `comm ()) ; 379 #ifde ACE_NO_MPI 382 #ifde DEBUG_PRINT_COMM_IO 383 comm_rvi :: `log () << "ACEIOServerPing::callrecv " 384 << comm_rvi :: `oc_me () << " " 386 << "Tag: " << Tag << " " 388 << dl ). `ush (); 391 ag = ACETrue ; 392  R = `MPI_Icv (& ag ,1, MPI_INT , MPI_ANY_SOURCE , Tag , 393 comm_rvi :: `comm_io (), `q ()); 394 i MPI_SUCCESS ! R ) 395 comm_rvi :: `r_d ("ACEIOSvPg::commcv","MPI_Icv", R ); 398 } } 400 cڡ * gACEIOSvPg :: $me ( ) const 402 cڡ  Name [] = "ACEIOServerPing" ; 403  Name ; 404 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CommIOServer.h 1 #ide _uded_CommIOSv_h 2  #_uded_CommIOSv_h ) 16  ~"ACEPams.h " 17  ~"ACEIOPams.h " 19  ~"PackedGridDaBuck.h " 21  ~"CommSv.h " 23  #ACEIOSvRcvNULL (( ACEIOSvRcv * NULL ) ) 24  #ACEIOSvSndNULL (( ACEIOSvSnd * NULL ) ) 25  #ACEIOSvPgNULL (( ACEIOSvPg * NULL ) ) 27 as cACEIOSvRcv : public comm_rvi 29 public : 30 ass GridHrchy & gh ; 31  mSize ; 32 ACEIO_WreFunc mwf ; 33  md_t ; 35 ACEIOSvRcv (cڡ  g , GridHrchy & gridhchy , 36 ACEIO_WreFunc wrefunc ); 37  λcv cڡ MPI_Stus & ); 38  rcv_upde ( * ); 39 le  $S_ACEIOWreFunc ( ACEIO_WreFunc wrefunc { wf = writefunc; } 40 cڡ * $me () const; 41 } }; 43 as cACEIOSvSnd : public comm_rvi 45 public : 46 ass GridHrchy & gh ; 47 ACEIO_RdFunc mrf ; 48  gdhdr mReq ; 49  mSize ; 50  md_t ; 52 ACEIOSvSnd (cڡ  g , GridHrchy & gridhchy , 53 ACEIO_RdFunc adfunc ); 54  λcv cڡ MPI_Stus & ); 55  d_upde  gdhdr & ); 56 le  $S_ACEIORdFunc ( ACEIO_RdFunc adfunc { rf =eadfunc; } 57 cڡ * $me () const; 58 } }; 60 as cACEIOSvPg : public comm_rvi 62 ass GridHrchy & gh ; 63 ACEIO_PgFunc mpf ; 64  mag ; 65  md_t ; 66 mpublic : 67 ACEIOSvPg (cڡ  g , GridHrchy & gridhchy , 68 ACEIO_PgFunc pgfunc ); 69  λcv cڡ MPI_Stus & ); 70 cڡ * $me () const; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CommRcvServer.h 1 #ide _uded_GridTabCommRcv_h 2  #_uded_GridTabCommRcv_h ) 14  ~"ACEPams.h " 16  ~"CommSv.h " 17  ~"GridTab.h " 19  #GridTabGhoRcvNULL (( GridTabGhoRcv * NULL ) ) 20  #GridTabDaRcvNULL (( GridTabDaRcv * NULL ) ) 22 as cGridTabGhoRcv : public comm_rvi 24 public : 25 GridTab & Tab ; 26 * mReque ; 27 cڡ  mSize ; 28  mrcvag ; 30 GridTabGhoRcv ( GridTab & GT , 31 cڡ  g , 32 cڡ  size , 33 cڡ  c = MPI_ANY_SOURCE ); 35 mle ~ $GridTabGhoRcv () 36 { i Reque ) de [] Request; } 38  `rcv_upde ( * ); 39  `λcv cڡ MPI_Stus & ); 40  `λcvNpo cڡ MPI_Stus & ); 41  `porcv (); 42  $ived ({  ( rcvag = ACETrue ); } } 43  $t_ived ({ rcvag = ACEF ; } } 44  $t_ived ({ rcvag = ACETrue ; } } 45 cڡ * $me () const; 46 } }; 48 as cGridTabDaRcv : public comm_rvi 50 public : 51 GridTab & Tab ; 52 * mReque ; 53 cڡ  mSize ; 54  mrcvag ; 56 GridTabDaRcv ( GridTab & GT , 57 cڡ  g , 58 cڡ  size , 59 cڡ  c = MPI_ANY_SOURCE ); 61 mle ~ $GridTabDaRcv () 62 { i Reque ) de [] Request; } 64  `rcv_upde ( * ); 65  `λcv cڡ MPI_Stus & ); 66  `λcvNpo cڡ MPI_Stus & ); 67  `porcv (); 68  $ived ({  ( rcvag = ACETrue ); } } 69  $t_ived ({ rcvag = ACEF ; } } 70  $t_ived ({ rcvag = ACETrue ; } } 71 cڡ * $me () const; 72 } }; 74 goam & gݔ << ( oam & , cڡ gMPI_Stus & ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CommRcvServerData.cpp 11  ~"CommRcvSv.h " 16 gGridTabDaRcv :: $GridTabDaRcv ( GridTab & GT , 17 cڡ  g , 18 cڡ  size , 19 cڡ  c ) 20 : `Tab ( GT ), `Size ( size ), `comm_rvi (GT. gfid , g , c ), 21 `Reque (0), $rcvag ( ACEF ) 23 i( `q () == 0) { 24 `eq ( Id , Tag , Src ); 28 Reque = w [ Size ]; 29 `as ( Reque != 0); 31 #ifde ACE_NO_MPI 34 #ifde DEBUG_PRINT_COMM 35 comm_rvi :: `log () << "GridTableDataRcv::GridTableDataRcv " 36 << "(" << comm_rvi :: `oc_me () << ") " 38 << "Tag: " << Tag << " " 39 << "Size: " << Size << " " 40 << "From: " << Src << " " 41 << dl ). `ush (); 44  R = `MPI_Icv ( Reque , Size , MPI_BYTE , 45 Src , Tag , comm_rvi :: `comm ( Id ), `q ()); 47 i MPI_SUCCESS ! R ) 48 comm_rvi :: `r_d ("GridTabDaRcv::GridTabDaRcv","MPI_Icv", R ); 51 } } 53  gGridTabDaRcv :: $λcv cڡ MPI_Stus & MS ) 55 rcvag = ACETrue ; 56 `rcv_upde ( Reque ); 57 Reque = (* NULL ; 58 Reque = w [ Size ]; 59 `as ( Reque != 0); 60 } } 62  gGridTabDaRcv :: $porcv () 65 #ifde ACE_NO_MPI 67 i(! Reque ) ; 68 i(* `q (! MPI_REQUEST_NULL ) ; 70 #ifde DEBUG_PRINT_COMM 71 comm_rvi :: `log () << "GridTableDataRcv::postrcv " 72 << "(" << comm_rvi :: `oc_me () << ") " 74 << "Tag: " << Tag << " " 75 << "Size: " << Size << " " 76 << "From: " << Src << " " 77 << dl ). `ush (); 80  R = `MPI_Icv ( Reque , Size , MPI_BYTE , 81 Src , Tag , comm_rvi :: `comm ( Id ), `q ()); 83 i MPI_SUCCESS ! R ) 84 comm_rvi :: `r_d ("GridTabDaRcv::porcv","MPI_Icv", R ); 88 rcvag = ACEF ; 89 } } 91  gGridTabDaRcv :: $λcvNpo cڡ MPI_Stus & MS ) 93 rcvag = ACETrue ; 94 `rcv_upde ( Reque ); 95 Reque = (* NULL ; 96 Reque = w [ Size ]; 97 `as ( Reque != 0); 99 #ifde ACE_NO_MPI 102 `as (* `q (= MPI_REQUEST_NULL ); 103 #ifde DEBUG_PRINT_COMM 104 comm_rvi :: `log () << "GridTableDataRcv::postrcv " 105 << "(" << comm_rvi :: `oc_me () << ") " 107 << "Tag: " << Tag << " " 108 << "Size: " << Size << " " 109 << "From: " << Src << " " 110 << dl ). `ush (); 113  R = `MPI_Icv ( Reque , Size , MPI_BYTE , 114 Src , Tag , comm_rvi :: `comm ( Id ), `q ()); 116 i MPI_SUCCESS ! R ) 117 comm_rvi :: `r_d ("GridTabDaRcv::λcv","MPI_Icv", R ); 121 rcvag = ACEF ; 122 } } 124  gGridTabDaRcv :: $rcv_upde (* Rcv ) 126 GridDaBuckVoid * rcvbkt = w `GridDaBuckVoid ( Rcv ); 128 #ifde DEBUG_PRINT_COMM 129 comm_rvi :: `log () << "GridTableDataRcv::rcv_update " 130 << "(" << comm_rvi :: `oc_me () << ") " 132 << * rcvbkt -> `hd () 134 << dl ). `ush (); 137  gdhdr * gdh = rcvbkt -> `hd (); 138 Li < GridDaBuckVoid *>& lgdbkt = Tab . `da ( gdh -> time ); 139 lgdbkt . `add ( rcvbkt -> `s ()); 140 rcvbkt -> ` (); 141 } } 143 cڡ * gGridTabDaRcv :: $me ( ) const 145 cڡ  Name [] = "GridTableDataRcv" ; 146  Name ; 147 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CommRcvServerGhost.cpp 11  ~"CommRcvSv.h " 16 gGridTabGhoRcv :: $GridTabGhoRcv ( GridTab & GT , 17 cڡ  g , 18 cڡ  size , 19 cڡ  c ) 20 : `Tab ( GT ), `Size ( size ), `comm_rvi (GT. gfid , g , c ), 21 `Reque (0), $rcvag ( ACEF ) 23 i( `q () == 0) { 24 `eq ( Id , Tag , Src ); 27 Reque = w [ Size ]; 28 `as ( Reque != 0); 30 #ifde ACE_NO_MPI 33 #ifde DEBUG_PRINT_COMM 34 comm_rvi :: `log () << "GridTableGhostRcv::GridTableGhostRcv " 35 << "(" << comm_rvi :: `oc_me () << ") " 37 << "Tag: " << Tag << " " 38 << "Size: " << Size << " " 39 << "From: " << Src << " " 40 << dl ). `ush (); 43  R = `MPI_Icv ( Reque , Size , MPI_BYTE , 44 Src , Tag , comm_rvi :: `comm ( Id ), `q ()); 46 i MPI_SUCCESS ! R ) 47 comm_rvi :: `r_d ("GridTabGhoRcv::GridTabGhoRcv","MPI_Icv", R ); 51 } } 53  gGridTabGhoRcv :: $λcv cڡ MPI_Stus & MS ) 55 rcvag = ACETrue ; 56 `rcv_upde ( Reque ); 57 Reque = (* NULL ; 58 Reque = w [ Size ]; 59 `as ( Reque != 0); 60 } } 62  gGridTabGhoRcv :: $porcv () 64 #ifde ACE_NO_MPI 67 i(! Reque ) ; 68 i(* `q (! MPI_REQUEST_NULL ) ; 70 #ifde DEBUG_PRINT_COMM 71 comm_rvi :: `log () << "GridTableGhostRcv::postrcv " 72 << "(" << comm_rvi :: `oc_me () << ") " 74 << "Tag: " << Tag << " " 75 << "Size: " << Size << " " 76 << "From: " << Src << " " 77 << dl ). `ush (); 80  R = `MPI_Icv ( Reque , Size , MPI_BYTE , 81 Src , Tag , comm_rvi :: `comm ( Id ), `q ()); 83 i MPI_SUCCESS ! R ) 84 comm_rvi :: `r_d ("GridTabGhoRcv::porcv","MPI_Icv", R ); 88 rcvag = ACEF ; 89 } } 91  gGridTabGhoRcv :: $λcvNpo cڡ MPI_Stus & MS ) 93 rcvag = ACETrue ; 94 `rcv_upde ( Reque ); 95 Reque = (* NULL ; 96 Reque = w [ Size ]; 97 `as ( Reque != 0); 99 #ifde ACE_NO_MPI 102 `as (* `q (= MPI_REQUEST_NULL ); 103 #ifde DEBUG_PRINT_COMM 104 comm_rvi :: `log () << "GridTableGhostRcv::postrcv " 105 << "(" << comm_rvi :: `oc_me () << ") " 107 << "Tag: " << Tag << " " 108 << "Size: " << Size << " " 109 << "From: " << Src << " " 110 << dl ). `ush (); 113  R = `MPI_Icv ( Reque , Size , MPI_BYTE , 114 Src , Tag , comm_rvi :: `comm ( Id ), `q ()); 116 i MPI_SUCCESS ! R ) 117 comm_rvi :: `r_d ("GridTabGhoRcv::λcv","MPI_Icv", R ); 121 rcvag = ACEF ; 122 } } 124  gGridTabGhoRcv :: $rcv_upde (* Rcv ) 126 GridDaBuckVoid * rcvbkt = w `GridDaBuckVoid ( Rcv ); 128 #ifde DEBUG_PRINT_COMM 129 comm_rvi :: `log () << "GridTableGhostRcv::rcv_update " 130 << "(" << comm_rvi :: `oc_me () << ") " 132 << * rcvbkt -> `hd () 134 << dl ). `ush (); 137  gdhdr * gdh = rcvbkt -> `hd (); 138 Li < GridDaBuckVoid *>& lgdbkt = Tab . `ghos ( gdh -> time ,gdh-> v ); 139 lgdbkt . `add ( rcvbkt -> `s ()); 140 rcvbkt -> ` (); 141 #ifde DEBUG_PRINT_COMM 142 comm_rvi :: `log () << "ADDED TO BKT [" 143 << gdh -> gfid << "," 144 << gdh -> time << "," 145 << gdh -> v << "," 146 << gdh -> idt 147 << "] " << lgdbkt . `numb (<< dl << ush ; 149 } } 151 cڡ * gGridTabGhoRcv :: $me ( ) const 153 cڡ  Name [] = "GridTableGhostRcv" ; 154  Name ; 155 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CommServer.cpp 6  ~ 7  ~"CommSv.h " 11  $dim_cube cڡ  N ) 12 {  i ;  i = 0 ; ( 1 << i ) < N ; i++ );  i ; } } 16 goam & gݔ << ( oam & gOS , cڡ gMPI_Stus & gMS ) 19 gOS << "{" << gdec << gMS . gMPI_SOURCE << " , " << MS. gMPI_TAG << dec << "}"; 27  gcomm_rvi :: $r_msg cڡ  who [] , cڡ  wh [] ,  R ) 30 #ifde ACE_NO_MPI 33  mesge [ MPI_MAX_ERROR_STRING ]; 34  me ; 35  n = MPI_MAX_ERROR_STRING ; 37 `MPI_Comm_nk CommWld , & me ); 39 `MPI_E_rg R , mesge , & n ); 41 << "P" << me << " : " << who << " " << wh << " => " << R << dl ; 44 } } 45  gcomm_rvi :: $r_d cڡ  who [] , cڡ  wh [] ,  R ) 47 `r_msg who , wh , R ); 48 `ex (-1); 49 } } 53 as ccomm_brr : public comm_rvi { 54 public : 55 cڡ  cye ; 56 cڡ  mwho ; 57  mag ; 58 MPI_Comm mcomm ; 60 comm_brr cڡ  Cye , cڡ  Who , MPI_Comm C , cڡ T ); 61 mle ~ $comm_brr () {} 63  `λcv cڡ MPI_Stus & ); 65 cڡ * $me () const ; 66 } }; 70 #ide CommInemt 71  #CommInemt (128) ) 76 ofam gcomm_rvi :: oog ; 78 #ide E10K 79 oam_whassign gcomm_rvi :: og ; 82  gcomm_rvi :: _ag = 0 ; 83  gcomm_rvi :: d_ag = 0 ; 85  gcomm_rvi :: PMe = -1 ; 87  gcomm_rvi :: NLi = 0 ; 88 comm_rvi ** gcomm_rvi :: SLi = 0 ; 89 comm_brr ** gcomm_rvi :: Brr = 0 ; 90 comm_brr ** gcomm_rvi :: BrrWld = 0 ; 91 MPI_Reque * gcomm_rvi :: RLi = 0 ; 93  gcomm_rvi :: PNum = -1 ; 94 MPI_Comm gcomm_rvi :: Comm = 0 ; 95 MPI_Group gcomm_rvi :: G = 0 ; 97  gcomm_rvi :: io_ag = 0; 98  gcomm_rvi :: PIO = -1; 99 MPI_Comm gcomm_rvi :: CommIO = 0; 101  gcomm_rvi :: PWld = 0; 102 MPI_Comm gcomm_rvi :: CommWld = 0; 103 MPI_Group gcomm_rvi :: GWld = 0 ; 105  gcomm_rvi :: NumCommAay = 0; 106 MPI_Comm * gcomm_rvi :: CommAay = 0; 108  gcomm_rvi :: Id_Time = 0.0 ; 109  gcomm_rvi :: Srvc_Time = 0.0 ; 113  gcomm_rvi :: $fdTag cڡ  Id , cڡ  Tag , cڡ  Src ) 115 cڡ  NL = NLi ; 116 comm_rvi ** cڡ SL = SLi ; 117   i = 1 ; i < NL ; i++ ) 118 i SL [ i ] && SL[i]-> Id == Id && 119 SL [ i ]-> Tag =Tag && SL[i]-> Src == Src )  i ; 121 } } 123  gcomm_rvi :: $fdSvi comm_rvi * cڡ CS ) 125 cڡ  NL = NLi ; 126 comm_rvi ** cڡ SL = SLi ; 127   i = 1 ; i < NL ; i++ ) i SL [i] = CS )  i ; 129 } } 131  gcomm_rvi :: $fdReque cڡ MPI_Reque q_ ) 133 cڡ  NL = NLi ; 134 cڡ MPI_Reque * cڡ RL = RLi ; 135   i = 1 ; i < NL ; i++ ) i RL [i] = q_ )  i ; 137 } } 139  gcomm_rvi :: $eq cڡ I , cڡ T , cڡ S ) 141  J ; 142 i( J = `fdTag ( I , T , S )) >= 0) 143 Req = RLi + J ; 145 Req = 0; 146 } } 151  gcomm_rvi :: $ MPI_Comm c ) 153 i( _ag =1 MPI_SUCCESS ; 155  ag ; 156 #ifde ACE_NO_MPI 157 ag = 0; 159 `MPI_Inlized (& ag ); 162 i( ag == 0) { 163 PMe = 0; 164 PNum = 1; 165 d_ag = 0; 166 CommWld = Comm = c ; 167 i( io_ag == 1) { 168 CommIO = c ; 169 PIO = 0; 171 PWld = 1; 173 #ifde DEBUG_PRINT 175  buf [64]; 176 oram `obuf ( buf ,(buf), ios :: out ); 177 obuf << "P" << PMe << ".log" << (()0) ; 178 oog . `ݒ buf , ios :: out ); 179 #ide E10K 180 og = oog . `rdbuf (); 185 _ag = 1; 186  MPI_SUCCESS ; 189 #ifde ACE_NO_MPI 192 i SLi )  MPI_ERR_COMM ; 195 i0 = c ) `MPI_Comm_dup ( MPI_COMM_WORLD , &c) ; 197 d_ag = 1 ; 200  R , Me , Num ; 201 i MPI_SUCCESS ! R = `MPI_Comm_nk c , & Me ) ) )  R ; 202 i MPI_SUCCESS ! R = `MPI_Comm_size c , & Num ) ) )  R ; 204 i( io_ag =1 && Num > 1) { 205 PMe = Me ; 206 PIO = Num -1; 207 PNum = Num -1 ; 208 PWld = Num ; 209 CommWld = CommIO = c ; 212  nks [1];ks[0] = Num -1; 213 `MPI_Comm_group ( CommWld , & GWld ); 214 `MPI_Group_ex ( GWld , 1, nks , & G ); 215 `MPI_Comm_ ( CommWld , G , & Comm ); 217 i( io_ag =1 && Num == 1) { 218 PMe = Me ; 219 PIO = Me ; 220 PNum = Num ; 221 PWld = Num ; 222 CommWld = CommIO = Comm = c ; 223 `MPI_Comm_group ( Comm , & G ); 224 GWld = G ; 227 PMe = Me ; 228 PWld = PNum = Num ; 229 CommWld = Comm = c ; 230 `MPI_Comm_group ( Comm , & G ); 231 GWld = G ; 235 #ifde DEBUG_PRINT 237  buf [64]; 238 oram `obuf ( buf ,(buf), ios :: out ); 239 obuf << "P" << PMe << ".log" << (()0) ; 240 oog . `ݒ buf , ios :: out ); 241 #ide E10K 242 og = oog . `rdbuf (); 248 comm_rvi ** cڡ SL = SLi = w comm_rvi*[ CommInemt ]; 249 MPI_Reque * cڡ RL = RLi = w MPI_Reque[ CommInemt ]; 250  i ; 251  i = 0 ; i < CommInemt ; i++ ) SL [i] = 0 ; 252  i = 0 ; i < CommInemt ; i++ ) RL [i] = MPI_REQUEST_NULL ; 254 NLi = 1 ; 256 _ag = 1; 259 i( PMe < PNum ) { 260 cڡ  me = PMe ; 261 cڡ  num = PNum ; 263 cڡ  dcube = `dim_cube num ); 264 i( dcube > 0) { 265 comm_brr ** cڡ B = Brr = w comm_br* [ dcube ]; 267   cye = 0 ; cy< dcube ; cycle++ ) { 268 B [ cye ] = 0 ; 270 cڡ  u = 1 << ( cye + 1 ); 271 cڡ  low = 1 << cye ; 272 cڡ  who = me ^ low ; 274 i who < num ) 275 i low < who && wh< u ) 276 || ( low < me && m< u ) ) 277 B [ cye ] = w `comm_brr cy, who , Comm , 278 ( comm_rvi_g | comm_rvi_comp_g ) ); 285 cڡ  me = PMe ; 286 cڡ  num = PWld ; 288 cڡ  dcube = `dim_cube num ); 289 i( dcube > 0) { 290 comm_brr ** cڡ B = BrrWld = w comm_br* [ dcube ]; 292   cye = 0 ; cy< dcube ; cycle++ ) { 294 B [ cye ] = 0 ; 296 cڡ  u = 1 << ( cye + 1 ); 297 cڡ  low = 1 << cye ; 298 cڡ  who = me ^ low ; 300 i who < num ) 301 i low < who && wh< u ) 302 || ( low < me && m< u ) ) 303 B [ cye ] = w `comm_brr cy, who , CommWld , 304 ( comm_rvi_g | comm_rvi_wld_g ) ); 311  MPI_SUCCESS ; 312 } } 317  gcomm_rvi :: $n () 320 #ifde ACE_NO_MPI 323 i(! d_ag ) ; 325 #ifde DEBUG_PRINT_COMM 326 oog << "comm_rvi::C˪g U!" << dl ). `ush (); 329 i Brr ) { 331 #ifde DEBUG_PRINT_COMM 332 oog << "comm_rvi::Dg Brr" << dl ). `ush (); 335 cڡ  dcube = `dim_cube PNum ); 336   i = 0 ; i < dcube ; i++ ) 337 i Brr [ i ] ) de Barrier[i] ; 338 de [] Brr ; 339 Brr = 0 ; 341 i BrrWld ) { 342 #ifde DEBUG_PRINT_COMM 343 oog << "comm_rvi::Dg BrrWld" << dl ). `ush (); 346 cڡ  dcube = `dim_cube PWld ); 347   i = 0 ; i < dcube ; i++ ) 348 i BrrWld [ i ] ) de BarrierWorld[i] ; 349 de [] BrrWld ; 350 BrrWld = 0 ; 354 comm_rvi ** cڡ SL = SLi ; 355 MPI_Reque * cڡ RL = RLi ; 356 cڡ  N = NLi ; 358   i = 0 ; i < N ; i++ ) { 359 i( RL [ i ] ! MPI_REQUEST_NULL ) { 360 i( comm_rvi :: `oc_me (=comm_rvi:: `oc_io ()) { 361  RL [ i ] ! MPI_REQUEST_NULL `rve (RL[i]); 364 `rve (); 365 #ide MPICH 366 MPI_Stus MS ; 367 `MPI_Cl RL + i ); 368 `MPI_Wa RL + i , & MS ); 370 `MPI_Reque_ RL + i ); 374 i SL [ i ] ) { 375 SL [ i ]-> Req = 0; 376 SL [ i ] = 0; 380 de [] SL ; 381 de [] RL ; 384  commcomp1 = MPI_IDENT ; 385  commcomp2 = MPI_IDENT ; 387 i( Comm =( MPI_Comm )-1) Comm = 0; 391 i( Comm !0 && Comm ! MPI_COMM_NULL ) 392 `MPI_Comm_com ( Comm , CommWld ,& commcomp1 ); 393 i( CommIO !0 && CommIO ! MPI_COMM_NULL ) 394 `MPI_Comm_com ( CommWld , CommIO ,& commcomp2 ); 396 i( commcomp1 = MPI_IDENT && commcomp2 == MPI_IDENT) { 397 i( CommWld !0 && CommWld ! MPI_COMM_NULL && CommWld ! MPI_COMM_WORLD ) 398 `MPI_Comm_ (& CommWld ); 400 i( commcomp1 = MPI_IDENT ) { 401 i( CommWld !0 && CommWld ! MPI_COMM_NULL && CommWld ! MPI_COMM_WORLD ) 402 `MPI_Comm_ (& CommWld ); 403 i( CommIO !0 && CommIO ! MPI_COMM_NULL && CommIO ! MPI_COMM_WORLD ) 404 `MPI_Comm_ (& CommIO ); 406 i( commcomp2 = MPI_IDENT ) { 407 i( CommWld !0 && CommWld ! MPI_COMM_NULL && CommWld ! MPI_COMM_WORLD ) 408 `MPI_Comm_ (& CommWld ); 409 i( Comm !0 && Comm ! MPI_COMM_NULL && Comm ! MPI_COMM_WORLD ) 410 `MPI_Comm_ (& Comm ); 413 i( CommIO !0 && CommIO ! MPI_COMM_NULL && CommIO ! MPI_COMM_WORLD ) 414 `MPI_Comm_ (& CommIO ); 415 i( CommWld !0 && CommWld ! MPI_COMM_NULL && CommWld ! MPI_COMM_WORLD ) 416 `MPI_Comm_ (& CommWld ); 417 i( Comm !0 && Comm ! MPI_COMM_NULL && Comm ! MPI_COMM_WORLD ) 418 `MPI_Comm_ (& Comm ); 421 i( CommAay de [] CommArray; 423 d_ag = 0; 425 #ifde DEBUG_PRINT_COMM 426 oog << "comm_rvi::DڐC˪g U!" << dl ). `ush (); 431 } } 433  gcomm_rvi :: $kl () 436 i d_ag ) `n () ; 438 #ifde DEBUG_PRINT_COMM 439 oog << "comm_rvi::kCommunitiڠshut-dow!" << dl ). `ush (); 442 #ifde DEBUG_PRINT 443 oog . `o (); 447 } } 452 gcomm_rvi :: $comm_rvi cڡ  I , cڡ  T , cڡ  S ) 453 : `Id ( I ), `Tag ( T ), `Src ( S ), `Req (0) 455 i! _ag ) comm_rvi :: ` (); 457 #ifde ACE_NO_MPI 460 i0 < `fdTag I , T , S ) ) { 461 Req = 0 ; 462 #ifde DEBUG_PRINT_COMM 463 oog << "comm_service::comm_service" 464 << "(Id:" << I << ")" 465 << "(Tag:" << T << ")" 466 << "(Src:" << S << ")" 468 << dl ; 469 oog . `ush (); 474 comm_rvi ** cڡ SL = SLi ; 475 MPI_Reque * cڡ RL = RLi ; 476 cڡ  N = NLi ; 480 i0 = N % CommInemt ) ) { 481 MPI_Reque * cڡ R = RLi = w MPI_Reque[ N + CommInemt ]; 482 comm_rvi ** cڡ S = SLi = w comm_rvi *[ N + CommInemt ]; 483  i ; 484 i SL ) { 485  i = 0 ; i < N ; i++ ) { 486 i( RL [ i ]) { 487 R [ i ] = RL [i] ; 488 RL [ i ] = MPI_REQUEST_NULL ; 490 R [ i ] = MPI_REQUEST_NULL ; 492 i( SL [ i ]) { 493 S [ i ] = SL [i]; 494 S [ i ]-> Req = ( R + i) ; 495 SL [ i ] = 0; 497 S [ i ] = 0 ; 499 de [] SL ; 500 de [] RL ; 502  i = N ; i < N + CommInemt ; i++ ) { 503 S [ i ] = 0 ; 504 R [ i ] = MPI_REQUEST_NULL ; 509 SLi [ N ] = this ; 510 SLi [ N ]-> Req = RLi + N ; 511 RLi [ N ] = MPI_REQUEST_NULL ; 513 #ifde DEBUG_PRINT_COMM 514 oog << "comm_service::comm_service" 515 << "(Id:" << Id << ")" 516 << "(Tag:" << Tag << ")" 517 << "(Src:" << Src << ")" 518 << "(NLi:" << NLi << ")" 519 << "(N:" << N << ")" 520 << "(*Req:" << * Req << ")" 521 << "(RLi[N]:" << RLi [ N ] << ")" 522 << dl ). `ush (); 525 NLi ++ ; 528 } } 533 gcomm_rvi ::~ $comm_rvi () 537 #ifde ACE_NO_MPI 540 i! Req )  ; 542 cڡ  I = `fdSvi this ); 544 i I < 0 ) { 545 #ifde DEBUG_PRINT_COMM 546 oog << "comm_rvi::~comm_rvi(UNREGISTERED OBJECT ?" << dl ; 547 oog . `ush (); 552 #ifde DEBUG_PRINT_COMM 553 oog << "comm_service::~comm_service" 554 << "(Id:" << Id << ")" 555 << "(Tag:" << Tag << ")" 556 << "(Src:" << Src << ")" 557 << "(NLi:" << NLi << ")" 558 << "(I:" << I << ")" 559 << "(*Req:" << * Req << ")" 560 << "(RLi[I]:" << RLi [ I ] << ")" 561 << dl ). `ush (); 565 i MPI_REQUEST_NULL !* Req ) { 566 #ide MPICH 567 MPI_Stus MS ; 568 `MPI_Cl Req ); 569 `MPI_Wa Req , & MS ); 571 `MPI_Reque_ Req ); 575 comm_rvi ** cڡ SL = SLi ; 576 MPI_Reque * cڡ RL = RLi ; 578 cڡ  N = NLi - 1 ; 581   i = I ; i < N ; i++ ) { 582 RL [ i ] = RL[i+1]; 583 SL [ i ] = SL[i+1]; 584 SL [ i ]-> Req = ( RL + i); 588 SL [ N ] = 0 ; 589 RL [ N ] = MPI_REQUEST_NULL ; 591 i0 = N % CommInemt ) ) { 592 i N > 0 ) { 593 MPI_Reque * cڡ R = RLi = w MPI_Reque[ N ]; 594 comm_rvi ** cڡ S = SLi = w comm_rvi*[ N ]; 595  i ; 596  i = 0 ; i < N ; i++ ) { 597 i( RL [ i ]) { 598 R [ i ] = RL [i] ; 599 RL [ i ] = MPI_REQUEST_NULL ; 601 R [ i ] = MPI_REQUEST_NULL ; 603 i( SL [ i ]) { 604 S [ i ] = SL [i]; 605 S [ i ]-> Req = R + i ; 606 SL [ i ] = 0; 608 S [ i ] = 0 ; 612 SLi = 0 ; 613 RLi = 0 ; 615 de [] SL ; 616 de [] RL ; 619 NLi -- ; 624 } } 628  gcomm_rvi :: $λcv cڡ MPI_Stus & MS ) 630 #ifde DEBUG_PRINT_COMM 631 oog << "comm_service::callrecv(" 632 << MS << "DEFAULT CALLBACK!" << dl ; 633 oog . `ush (); 635 } } 637 cڡ * gcomm_rvi :: $me ( ) const 639 cڡ  Name [] = "comm_service" ; 640  Name ; 641 } } 647  gcomm_rvi :: $rve ( ) 650 #ifde ACE_NO_MPI 653 i NLi <= 1 ) { 654 #ifde DEBUG_PRINT_COMM 655 oog << "comm_rvi::rve" << NLi << " <1" << dl ). `ush (); 657  MPI_SUCCESS ; 662  NumR ; 663 * cڡ IndR = w [ NLi ]; 664 MPI_Stus * cڡ MSR = w MPI_Stus[ NLi ]; 666 MSR [0]. MPI_SOURCE = MSR[0]. MPI_TAG = 0 ; 668  xt_time ; 669  t_time = `MPI_Wtime (); 671 cڡ  R = `MPI_Tesome ( NLi , RLi ,& NumR , IndR , MSR ); 673 i MPI_SUCCESS = R ) { 674   i = 0 ; i < NumR ; i++ ) { 675 cڡ  I = IndR [ i ]; 680 cڡ MPI_Stus & MS = MSR [ i ] ; 681 comm_rvi * cڡ CS = SLi [ I ]; 683 #ifde DEBUG_PRINT_COMM 684 i CS ) 685 oog << "MPI_Tesom#" << i << " (" << I << ")" << " => " << MS 686 << " => " << CS -> `me (<< dl ). `ush (); 688 oog << "MPI_Tesom#" << i << " => " << MS << dl ). `ush (); 691 i CS ) { 692 Id_Time + xt_time = `MPI_Wtime (- t_time ; 693 CS -> `λcv MS ); 694 Srvc_Time + t_time = `MPI_Wtime (- xt_time ; 699 de [] IndR ; 700 de [] MSR ; 702 Id_Time + `MPI_Wtime (- t_time ; 706  MPI_SUCCESS ; 707 } } 711  gcomm_rvi :: $rve MPI_Reque q_ ) 714 #ifde ACE_NO_MPI 717 #ifde DEBUG_PRINT_COMM 718 cڡ  me = PMe ; 721  t_time = `MPI_Wtime (); 722  xt_time ; 726 i0 = NLi ) { 727 MPI_Stus MS ; 728 cڡ  R = `MPI_Wa & q_ , & MS ); 729 Id_Time + `MPI_Wtime (- t_time ; 730  R ; 735  J = `fdReque q_ ); 736 i J < 0 ) RLi [ J = 0 ] = q_ ; 738  NumR = 0; 739 * cڡ IndR = w [ NLi ]; 740 MPI_Stus * cڡ MSR = w MPI_Stus[ NLi ]; 742 `as ( IndR != 0); 743 `as ( MSR != 0); 745 MSR [0]. MPI_SOURCE = MSR[0]. MPI_TAG = 0 ; 749 #ifde DEBUG_PRINT_COMM 750 oog << "MPI_Wasom" << J << "th" << dl ). `ush (); 753 cڡ  R = `MPI_Wasome ( NLi , RLi ,& NumR , IndR , MSR ); 755 i MPI_SUCCESS ! R ) { 756 Id_Time + `MPI_Wtime (- t_time ; 757 de [] IndR ; 758 de [] MSR ; 759  R ; 762 #ifde DEBUG_PRINT_COMM 763 oog << "MPI_Wasom" << NumR << "equerved" << dl ). `ush (); 766   i = 0 ; i < NumR ; i++ ) { 767 cڡ  I = IndR [ i ]; 771 cڡ MPI_Stus & MS = MSR [ i ] ; 773 comm_rvi * cڡ CS = SLi [ I ]; 775 #ifde DEBUG_PRINT_COMM 776 i CS ) 777 oog << "MPI_Wasom#" << i << "(" << I << ")" << " => " << MS 778 << " => " << CS -> `me (<< dl ). `ush (); 780 oog << "MPI_Wasom#" << i << "(" << I << ")" << " => " << MS << dl ). `ush (); 783 i CS ) { 784 Id_Time + xt_time = `MPI_Wtime (- t_time ; 785 CS -> `λcv MS ); 786 Srvc_Time + t_time = `MPI_Wtime (- xt_time ; 789 i J = I ) J = -1 ; 792 }  0 < J ); 794 i( IndR de [] IndR ; 795 i( MSR de [] MSR ; 797 RLi [0] = MPI_REQUEST_NULL ; 799 Id_Time + `MPI_Wtime (- t_time ; 803  MPI_SUCCESS ; 804 } } 810  gcomm_rvi :: $add_comm (cڡ id ) 812 #ifde ACE_NO_MPI 814 `MPI_Comm_dup ( Comm , & CommAay [ id ]) ; 815 NumCommAay ++ ; 817 } } 819  gcomm_rvi :: $de_comm (cڡ id ) 821 #ifde ACE_NO_MPI 823 `MPI_Comm_ (& CommAay [ id ]) ; 824 NumCommAay -- ; 826 } } 828  gcomm_rvi :: $t_comm (cڡ id ) 830 #ifde ACE_NO_MPI 832 i( CommAay [ id ] ! MPI_COMM_NULL ) { 833 `MPI_Comm_ (& CommAay [ id ]) ; 834 `MPI_Comm_dup ( Comm , & CommAay [ id ]) ; 837 } } 839  gcomm_rvi :: $c_commy (cڡ c ) 841 #ifde ACE_NO_MPI 843 MPI_Comm * cڡ CA = CommAay ; 844 cڡ  N = NumCommAay ; 846 MPI_Comm * cڡ C = CommAay = w MPI_Comm[ N + c ]; 847  i ; 848 i CA ) { 849  i = 0 ; i < N ; i++ ) { 850 i( CA [ i ] ! MPI_COMM_NULL ) { 851 C [ i ] = CA [i] ; 852 CA [ i ] = MPI_COMM_NULL ; 854 C [ i ] = MPI_COMM_NULL ; 856 de [] CA ; 858  i = N ; i < N + c ; i++ ) { 859 C [ i ] = MPI_COMM_NULL ; 862 } } 868  gcomm_rvi :: $brr (cڡ ty ) 870 #ifde ACE_NO_MPI 872  R ; 873 cڡ  me = PMe ; 874  num = 0; 875  g_efix = 0; 876 comm_brr ** B = 0; 877 MPI_Comm C = 0; 879 i( ty = comm_rvi_comp ) { 880 num = PNum ; 881 g_efix = ( comm_rvi_g | comm_rvi_comp_g ); 882 B = Brr ; 883 C = Comm ; 893 i( ty = comm_rvi_wld ) { 894 num = PWld ; 895 g_efix = ( comm_rvi_g | comm_rvi_wld_g ); 896 B = BrrWld ; 897 C = CommWld ; 900 num = PNum ; 901 g_efix = ( comm_rvi_g | comm_rvi_comp_g ); 902 B = Brr ; 903 C = Comm ; 906 cڡ  dcube = `dim_cube num ); 908 #ifde DEBUG_PRINT_COMM 909 oog << "comm_rvi::brr" << " DO " << dcube << dl ; 910 oog . `ush (); 915  cye ; 916  cye = dcube - 1 ; 0 <= cycle ; cycle-- ) { 917 cڡ  u = 1 << ( cye + 1 ); 918 cڡ  low = 1 << cye ; 919 cڡ  who = me ^ low ; 920 cڡ  g = g_efix | ( cye + 1 ) ; 922 i who < num ) { 924 i low < who && wh< u ) { 926 #ifde DEBUG_PRINT_COMM 927 oog << "comm_rvi::brr" << " <" << who << "..." << dl ). `ush (); 930 i! B [ cye ]-> ag ) { 931 cڡ  I = `fdTag comm_rvi_nu_id , g , MPI_ANY_SOURCE ); 932 i I < 0 ) `r_d ( "comm_service::barrier" , "comm_service::find" , 0 ); 933 R = `rve RLi [ I ] ); 934 i MPI_SUCCESS ! R ) `r_d ( "comm_service::barrier" , "comm_service::serve" , R ); 936 B [ cye ]-> ag = 0 ; 938 #ifde DEBUG_PRINT_COMM 939 oog << "comm_rvi::brr" << " <" << who << " DONE" << dl ). `ush (); 943 i low < me && m< u ) { 945 #ifde DEBUG_PRINT_COMM 946 oog << "comm_rvi::brr" << " => " << who ). `ush (); 949 MPI_Reque q ; 950 R = `MPI_Ind ((*)0, 0, MPI_BYTE , who , g , C , & q ); 951 i MPI_SUCCESS ! R ) `r_d ( "comm_service::barrier" , "MPI_Isend" , R ); 953 #ifde DEBUG_PRINT_COMM 954 oog << " Ind" << dl ). `ush (); 957 R = `rve q ); 958 i MPI_SUCCESS ! R ) `r_d ( "comm_service::barrier" , "comm_service::serve" , R ); 960 #ifde DEBUG_PRINT_COMM 961 oog << "comm_rvi::brr" << " => " << who << " De" << dl ). `ush (); 970  cye = 0 ; cy< dcube ; cycle++ ) { 971 cڡ  u = 1 << ( cye + 1 ); 972 cڡ  low = 1 << cye ; 973 cڡ  who = me ^ low ; 974 cڡ  g = g_efix | ( cye + 1 ) ; 976 i who < num ) { 978 i low < who && wh< u ) { 980 #ifde DEBUG_PRINT_COMM 981 oog << "comm_rvi::brr" << " => " << who ). `ush (); 984 MPI_Reque q ; 985 R = `MPI_Ind ((*)0, 0, MPI_BYTE , who , g , C , & q ); 986 i MPI_SUCCESS ! R ) `r_d ( "comm_service::barrier" , "MPI_Isend" , R ); 988 #ifde DEBUG_PRINT_COMM 989 oog << " Ind" << dl ). `ush (); 992 R = `rve q ); 993 i MPI_SUCCESS ! R ) `r_d ( "comm_service::barrier" , "comm_service::serve" , R ); 995 #ifde DEBUG_PRINT_COMM 996 oog << "comm_rvi::brr" << " => " << who << " De" << dl ). `ush (); 1000 i low < me && m< u ) { 1002 #ifde DEBUG_PRINT_COMM 1003 oog << "comm_rvi::brr" << " <" << who << "..." << dl ). `ush (); 1006 i! B [ cye ]-> ag ) { 1007 cڡ  I = `fdTag comm_rvi_nu_id , g , MPI_ANY_SOURCE ); 1008 i I < 0 ) `r_d ( "comm_service::barrier" , "comm_service::find" , 0 ); 1009 R = `rve RLi [ I ] ); 1010 i MPI_SUCCESS ! R ) `r_d ( "comm_service::barrier" , "comm_service::serve" , R ); 1013 #ifde DEBUG_PRINT_COMM 1014 oog << "comm_rvi::brr" << " <" << who << dl ). `ush (); 1017 B [ cye ]-> ag = 0 ; 1022 #ifde DEBUG_PRINT_COMM 1023 oog << "comm_rvi::brr" << " DONE" << dl ). `ush (); 1028 } } 1034 gcomm_brr :: $comm_brr cڡ  Cye , cڡ  Who , MPI_Comm C , cڡ T ) 1035 : `comm_rvi comm_rvi_nu_id , T | ( Cye +1) ) 1036 , `cye Cye ) , `who Who ), $comm ( C ) 1039 ag = 0 ; 1041 #ifde ACE_NO_MPI 1044 MPI_Stus MS ; 1046 #ifde DEBUG_PRINT_COMM 1047 comm_rvi :: `log (<< "comm_rvi::br" << Tag 1048 << " (" << * `q () << ")" 1049 << " (" << cye << "," << who << ")" 1050 << dl ). `ush (); 1053  R = `MPI_Icv ((*)0,0, MPI_BYTE , who , Tag , comm , `q ()); 1054 i MPI_SUCCESS ! R ) `r_d ( "comm_service::barrier" , "MPI_Irecv" , R ); 1057 } } 1061  gcomm_brr :: $λcv cڡ MPI_Stus & MS ) 1064 #ifde ACE_NO_MPI 1067 #ifde DEBUG_PRINT_COMM 1068 ( comm_rvi :: `log (<< "comm_brr::λcv()" << MS << dl ). `ush (); 1071 i ag ) { 1072 #ifde DEBUG_PRINT_COMM 1073 comm_rvi :: `log (<< "comm_brr::λcv()" << " ERROR: fg !0" << dl ; 1074 comm_rvi :: `log (). `ush (); 1078  R = `MPI_Icv ((*)0,0, MPI_BYTE , who , Tag , comm , `q ()); 1080 i MPI_SUCCESS ! R ) `r_d ( "comm_barrier::callrecv()" , "MPI_Irecv" , R ); 1082 ag = 1 ; 1087 } } 1090 cڡ * gcomm_brr :: $me ( ) const 1092 cڡ  Name [] = "comm_barrier" ; 1093  Name ; 1094 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CommServer.h 1 #ide _uded_CommSv_h 2  #_uded_CommSv_h ) 16  ~ 17 #ifde _VCPP 18  ~ 20  ~ 22  ~ 23  ~ 24 usg mea gd ; 25  ~ 27 #i defed ( __GNUG__ || defed( __GNUC__ ) 29 #i __GNUC__ > 2 30  gd :: tofam toam_whassign ; 32  _IO_oam_whassign toam_whassign ; 33  _IO_iam_whassign tiam_whassign ; 39  ~"ACEDeus.h " 41 #ifde ACE_NO_MPI 43  tMPI_Reque ; 44  tMPI_Group ; 45  tMPI_Comm ; 48  mcou ; 49  mMPI_SOURCE ; 50  mMPI_TAG ; 51 } tMPI_Stus ; 53  #MPI_PROC_NULL (-1) ) 54  #MPI_ANY_SOURCE (-2) ) 55  #MPI_ANY_TAG (-1) ) 56  #MPI_SUCCESS (0) ) 57  #MPI_ERR_COMM (28) ) 58  #MPI_COMM_WORLD (301053) ) 59  #MPI_COMM_NULL (( MPI_Comm )0) ) 60  #MPI_GROUP_NULL (( MPI_Group )0) ) 63 le  $MPI_Fize ({ } }; 67  ~ 75  #comm_rvi_comp ((0) ) 76  #comm_rvi_io ((1) ) 77  #comm_rvi_wld ((2) ) 79  #comm_rvi_g (((3)<<14) ) 80  #comm_rvi_comp_g (( comm_rvi_comp )<<12) ) 81  #comm_rvi_io_g (( comm_rvi_io )<<12) ) 82  #comm_rvi_wld_g (( comm_rvi_wld )<<12) ) 84  #comm_rvi_nu_id (-1) ) 86 ass comm_brr ; 88 as ccomm_rvi { 89 mive : 92  _ag ; 93  md_ag ; 95  mPMe ; 97  mNLi ; 98  MPI_Reque * mRLi ; 99  comm_rvi ** mSLi ; 100  comm_brr ** mBrr ; 101  comm_brr ** mBrrWld ; 103  ofam moog ; 104 #ide E10K 105  oam_whassign mog ; 109  mPNum ; 110  MPI_Comm mComm ; 111  MPI_Group mG ; 114  mio_ag ; 115  mPIO ; 116  MPI_Comm mCommIO ; 119  MPI_Comm mCommWld ; 120  mPWld ; 121  MPI_Group mGWld ; 124  mNumCommAay ; 125  MPI_Comm * mCommAay ; 128  mId_Time ; 129  mSrvc_Time ; 131 MPI_Reque * mReq ; 133  fdTag ( const , const , const ); 134  fdSvi comm_rvi * const ); 135  fdReque cڡ MPI_Reque ); 137 meed : 139 cڡ  Id ; 140 cڡ  mTag ; 141 cڡ  mSrc ; 143 comm_rvi cڡ  I , cڡ  T , cڡ  S = MPI_ANY_SOURCE ); 145 mvtu ~ comm_rvi (); 147 vtu  λcv cڡ MPI_Stus & ); 148 vtu cڡ * $me ( ) const ; 150  `eq (const , const , const ); 152 public : 156  ` MPI_Comm c = 0 ); 157  `n (); 158  `kl (); 162  `rve MPI_Reque ); 163  `rve ( ); 165  `brr cڡ ty = comm_rvi_comp ); 169 MPI_Reque * $q (cڡ {  Req ; } 170  $g (cڡ {  Tag ; } } 172  gofam & $og ({  oog ; } } 173 #ifde E10K 174  gofam & $log ({  oog ; } } 176  goam_whassign & $log ({  og ; } } 179  $d ({  d_ag ; } } 180  $oc_me ({  PMe ; } } 182  $oc_num ({  PNum ; } } 183  MPI_Comm $comm ({  Comm ; } } 184  MPI_Group $g ({  G ; } } 186  $num_rvis ({  NLi ; } } 188  $comm ({  ( _ag =1); } } 189  $t_comm ({ _ag = 1; } } 190  $t_comm ({ _ag = 0; } } 192  $io_abd ({  ( io_ag =1); } } 193  $t_io_ab ({ io_ag = 1; } } 194  $t_io_ab ({ io_ag = 0; } } 195  $oc_io ({  PIO ; } } 196  MPI_Comm $comm_io ({  CommIO ; } } 198  MPI_Comm $comm_wld ({  CommWld ; } } 199  $oc_wld ({  PWld ; } } 200  MPI_Group $g_wld ({  GWld ; } } 202  MPI_Comm $comm (cڡ id {  CommAay [id] ; } } 203  $num_comm ({  NumCommAay ; } } 205  add_comm (cڡ id ); 206  de_comm (cڡ id ); 207  t_comm (cڡ id ); 209  c_commy (cڡ c ); 211  $id_time ({  Id_Time ; } } 212  $vc_time ({  Srvc_Time ; } } 215  r_msg cڡ  who [] , cڡ  wh [] ,  R ); 216  r_d cڡ  who [] , cڡ  wh [] ,  R ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/Coords.cpp 11  ~"Cods.h " 13  #MATCH ( s , c (s). `g (!(c)) ) 18 ass Cods gCods :: _emy_cods ; 33 giam & gݔ >> (iam& gs , gCods & gc ) 35 MATCH ( s , '('); gs >> c (0); 36  gi ; i=1;i< gc . gnk ;i++{ MATCH ( s , ','); gs >> c ( i );} 37 MATCH ( s , ')'); 38 ( gs ); 53 goam & gݔ << (oam& gs , cڡ gCods & gc ) 55 gs << '(' << c (0); 56  gi =1;i< gc . gnk ;i++ gs << ',' << c ( i ); 57 gs << ')'; 58 ( gs ); 70 gifam & gݔ >> (ifam& gs , gCods & gc ) 72 i(& gc =( Cods *) NULL  s ; 74 gs . ad ((*)& c ,( Cods )); 76  gs ; 79 gofam & gݔ << (ofam& gs , cڡ gCods & gc ) 81 i(& gc =( Cods *) NULL  s ; 83 gs . wre ((*)& c ,( Cods )); 85  gs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/Coords.h 1 #ide _uded_Cods_h 2  #_uded_Cods_h ) 31  ~"ACEDeus.h " 33  ~"ͬx_cyright.h " 34  ~ 35  ~ 36 usg mea gd ; 37  ~ 39 #ide CodsMaxDim 40  #CodsMaxDim (3) ) 43  #CodsNULL (( Cods *) NULL ) ) 45 ass gCodsIt ; 47 as cCods 49 nd miam & mݔ >> (iam& ms , mCods & mc ); 50 nd moam & mݔ << (oam& ms , cڡ mCods & mc ); 51 nd mifam & mݔ >> (ifam& ms , mCods & mc ); 52 nd mofam & mݔ << (ofam& ms , cڡ mCods & mc ); 54  mc [ CodsMaxDim ]; 56 mpublic : 57  nk ; 58  ass Cods m_emy_cods ; 60 mpublic : 61  CodsIt tIt ; 64 le $Cods (: `nk (0) 65 { c [0] = 0; c[1] = 0; c[2] = 0; } 72 le $Cods (cڡ r , cڡ v : $nk ( r ) 73 { c [0] = v ; c[1] = v; c[2] = v; } } 75 le $Cods (cڡ r , cڡ * v : $nk ( r ) 76 {  i ; i=0; i< nk ; i++ c [i] = v [i]; 77 ; i < CodsMaxDim ; i++ c [i] = 0; } } 79 le $Cods ( Cods cڡ & h : $nk ( h . nk ) 80 { c [0] = h .c[0]; c[1] = oth.c[1]; c[2] = oth.c[2]; } } 83 le $Cods (cڡ r , cڡ i , cڡ j : $nk ( r ) 84 { `as ( r =2); c [0] = i ; c[1] = j ; ; c[2] = 0; } } 85 le $Cods (cڡ r , cڡ i , cڡ j , cڡ k : $nk ( r ) 86 { `as ( r =3); c [0] = i ; c[1] = j ; c[2] = k ; } } 88 gCods & gݔ = ( Cods cڡ & rhs ) 90 nk = rhs .rank; 91 gc [0] = rhs . c [0]; c[1] =hs.c[1]; c[2] =hs.c[2]; 92  * gthis ; 95 gCods & gݔ = (cڡ & rhs ) 96 { c [0] = c[1] = c[2] = rhs ;  * gthis ; } 98 gle ~ $Cods ({ } } 101 le & $ݔ ((cڡ i { ( c [i]); } } 102 le  $ݔ ((cڡ i cڡ { ( c [i]); } } 104 le * $ݔ (({ ( c ); } } 105 le cڡ * $ݔ ((cڡ { ( c ); } } 107 le ݔ * ({ ( gc ); } 108 le ݔ cڡ * (cڡ { ( gc ); } 111 le ݔ * ({ ((*) gc ); } 112 le ݔ cڡ * (cڡ { ((*) gc ); } 115  #Pot_Pot_Ot ( e , ) \ 116 Cods & ݔ `e (Codcڡ & rhs ) \ 118 c [0] e rhs .c[0]; \ 119 i( nk >1 c [1] e rhs .c[1]; \ 120 i( nk >2 c [2] e rhs .c[2]; \ 121 (* this ); \ 123 Cods ݔ $ ( Cods cڡ & rhs ) const \ 125 Cods `cods (* this ); \ 126 cods e rhs ; \ 127 ( cods ); \ 128 } ) } 129 Pot_Pot_Ot (+=,+) 130 Pot_Pot_Ot (-=,-) 131 $Pot_Pot_Ot (*=,*) 132 #unde Pot_Pot_Ot 135  #Pot_Sr_Ot ( e , ) \ 136 Cods & ݔ `e (cڡ rhs ) \ 138 c [0] e rhs ; \ 139 i( nk >1 c [1] e rhs ; \ 140 i( nk >2 c [2] e rhs ; \ 141 (* this ); \ 142 } } \ 143 Cods ݔ $ (cڡ rhs ) const \ 145 Cods `cods (* this ); \ 146 cods e rhs ; \ 147 ( cods ); \ 148 } ) } 149 Pot_Sr_Ot (+=,+) 150 Pot_Sr_Ot (-=,-) 151 $Pot_Sr_Ot (*=,*) 152 #unde Pot_Sr_Ot 155  #Pot_Pot_DivOt ( e , ) \ 156 Cods & ݔ `e (Codcڡ & rhs ) \ 158 i( rhs . c [0] !0c[0] e hs.c[0]; \ 159 i( nk >1 && rhs . c [1] !0c[1] e hs.c[1]; \ 160 i( nk >2 && rhs . c [2] !0c[2] e hs.c[2]; \ 161 (* this ); \ 162 } } \ 163 Cods ݔ $ ( Cods cڡ & rhs ) const \ 165 Cods `cods (* this ); \ 166 cods e rhs ; \ 167 ( cods ); \ 168 } ) } 169 Pot_Pot_DivOt (/=,/) 170 Pot_Pot_DivOt (%=,%) 171 #unde Pot_Pot_DivOt 174  #Pot_Sr_DivOt ( e , ) \ 175 Cods & ݔ `e (cڡ rhs ) \ 177 i( rhs !0{ c [0] e hs; \ 178 i( nk >1 c [1] e rhs ; \ 179 i( nk >2 c [2] e rhs ; } \ 180 (* this ); \ 182 Cods ݔ $ (cڡ rhs ) const \ 184 Cods `cods (* this ); \ 185 cods e rhs ; \ 186 ( cods ); \ 187 } ) } 188 Pot_Sr_DivOt (/=,/) 189 Pot_Sr_DivOt (%=,%) 190 #unde Pot_Sr_DivOt 193 le Cods gݔ - () const 195 Cods cods ( nk ,0); 196 gcods . gc [0] = - c [0]; coords.c[1] = -c[1]; coords.c[2] = -c[2]; 197 ( gcods ); 201 le  gݔ !( Cods cڡ & rhs ) const 203  ( nk ! rhs .rank || 204 (( nk > 0&& ( c [0] ! rhs .c[0])) || 205 (( nk > 1&& ( c [1] ! rhs .c[1])) || 206 (( nk > 2&& ( c [2] ! rhs .c[2])) 209 le  gݔ =( Cods cڡ & rhs ) const 210 { (!(* this ! rhs )); } 213 le  gݔ > ( Cods cڡ & grhs ) const 215  (!((( gnk > 0&& ( gc [0] < rhs . c [0])) || 216 (( nk > 1&& ( c [1] < rhs .c[1])) || 217 (( nk > 2&& ( c [2] < rhs .c[2]))) 220 le  gݔ < ( Cods cڡ & grhs ) const 222  (!((( gnk > 0&& ( gc [0] > rhs . c [0])) || 223 (( nk > 1&& ( c [1] > rhs .c[1])) || 224 (( nk > 2&& ( c [2] > rhs .c[2]))) 228 le  $tv (cڡ v ) 229 { c [0] = v ; c[1] = v; c[2] = v; } } 230 le  $tv ( Cods cڡ rhs ) 231 { c [0] = rhs .c[0]; c[1] =hs.c[1]; c[2] =hs.c[2]; } } 234 le  $m ( Cods cڡ & rhs ) 237 c [0] = ( rhs .c[0] < c[0]) ?hs.c[0] : c[0]; 238 i( nk > 1 c [1] = ( rhs .c[1] < c[1]) ?hs.c[1] : c[1]; 239 i( nk > 2 c [2] = ( rhs .c[2] < c[2]) ?hs.c[2] : c[2]; 240 } } 242 le  $max ( Cods cڡ & rhs ) 245 c [0] = ( rhs .c[0] > c[0]) ?hs.c[0] : c[0]; 246 i( nk > 1 c [1] = ( rhs .c[1] > c[1]) ?hs.c[1] : c[1]; 247 i( nk > 2 c [2] = ( rhs .c[2] > c[2]) ?hs.c[2] : c[2]; 248 } } 250 le Cods $gm ( Cods cڡ & rhs ) const 251 { Cods `h (* this ); h . `m ( rhs );  oth; } } 253 le Cods $gmax ( Cods cڡ & rhs ) const 254 { Cods `h (* this ); h . `max ( rhs );  oth; } } 256 le  $bs () 258 c [0] = (c[0] < 0) ? -c[0] : c[0]; 259 i( nk > 1 c [1] = (c[1] < 0) ? -c[1] : c[1]; 260 i( nk > 2 c [2] = (c[2] < 0) ? -c[2] : c[2]; 261 } } 263 le Cods $gabs () 264 { Cods `h (* this ); h . `bs ();  oth; } } 266 le  $g (cڡ Cods & ) 267 { Cods `mod (* this % ); mod . `bs (); *thi+mod; } } 268 le  $o (cڡ Cods & ) 269 { Cods `mod (* this % ); mod . `bs (); *thi-mod; } } 272 le Cods $max (cڡ Cods & a , cڡ Cod& b ) 273 { ( a . `gmax ( b )); } } 274 le Cods $m (cڡ Cods & a , cڡ Cod& b ) 275 { ( a . `gm ( b )); } } 278 goam & gݔ << (oam& gs , cڡ gCods & gc ); 279 giam & gݔ >> (iam& gs , gCods & gc ); 280 gifam & gݔ >>(ifam& gs , gCods & gc ); 281 gofam & gݔ <<(ofam& gs , cڡ gCods & gc ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/CoordsIterator.h 1 #ide CodsIt_h 2  #CodsIt_h ) 3  ~"BBox.h " 4  ~"Cods.h " 6 as cCodsIt { 7 BBox mb ; 8  mi [3]; 9  mr ; 11  $t ( BBox & bi ) { 12 b = bi ; 13  n =0;n< b . nk ;n++) 14 i [ n ]= b . `low (n); 15 r = b . nk - 1; 17  $c ( n ) { 18 i [ n ] + b . `size (n); 19 if( n < r && i [n] > b . `u (n)) { 20 i [ n ] = b . `low (n); 21 `c ( n +1); 23 } } 24 gpublic : 25 $CodsIt ({ } } 26 $CodsIt ( BBox bi { `t (bi); } } 27 gCodsIt & gݔ =( BBox & bi ) { 28 t ( bi ); 29  * gthis ; 31 ~ $CodsIt ({ } } 32  gݔ ++({ c (0); } 33  gݔ ++({ c (0); } 34  $good () { 35  i [ r ] < b . `u (r); 36 } } 37 ݔ ({  `good (); } } 38 Cods gݔ *({  Cods( r +1, i ); } 41 le goam & 42 gݔ <<( goam & go , gCodsIt & gbbi ) { 43  go << * gbbi ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DAGH2GrACE.h 1 #ide _uded_DAGH2GrACE_h 2  #_uded_DAGH2GrACE_h ) 11 #ifde DAGH_NO_REUSE_GDB 12  #ACE_NO_REUSE_GDB ) 15 #ifde DAGH_WRITEBOXES 16  #ACE_WRITEBOXES ) 19 #ifde DAGH_NO_MPI 20  #ACE_NO_MPI ) 23 #ifde DAGHVeGridFuni 24  #ACEVeGridFuni ) 27 #ifde DAGHUCluMge 28  #ACEUCluMge ) 31 #ifde DAGH_MERGE_OLD 32  #ACE_MERGE_OLD ) 35  #DAGHClu1d GrACEClu1d ) 36  #DAGHClu2d GrACEClu2d ) 37  #DAGHClu3d GrACEClu3d ) 39  #DAGHIOIn ACEIOIn ) 40  #DAGHIOTy ACEIOTy ) 41  #DAGHIOEnd ACEIOEnd ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DAGHParams.h 1 #ide _uded_DAGHPam_h 2  #_uded_DAGHPam_h ) 23 usg mea gd ; 28  #DAGHTrue (1) ) 29  #DAGHF (0) ) 32  #DAGHNu (-1) ) 33  #DAGHNoBody ( DAGHNu ) ) 34  #DAGHNuLev ( DAGHNu ) ) 36  #DAGHA (9999) ) 37  #DAGHSml (-999999) ) 38  #DAGHLge ( 999999) ) 41  #DAGHALevs ( DAGHA ) ) 44  #DAGHATimes ( DAGHA ) ) 45  #DAGHCutTime (0) ) 46  #DAGHNextTime (1) ) 47  #DAGHPviousTime (2) ) 50  #DAGHComposeDiributi (1) ) 51  #DAGHBlockXDiributi (2) ) 52  #DAGHBlockYDiributi (3) ) 53  #DAGHBlockZDiributi (4) ) 54  #DAGHBlockXYDiributi (5) ) 55  #DAGHBlockYZDiributi (6) ) 56  #DAGHBlockXZDiributi (7) ) 57  #DAGHBlockADiributi (8) ) 58  #DAGHUrDefDiributi (9) ) 61  #DAGHNoIai ( DAGHNu ) ) 62  #DAGHGhoIai (1) ) 65  #DAGHInGFOnCi ( DAGHF ) ) 68  #DAGHMaxRk (3) ) 70  #DAGH_X (0) ) 71  #DAGH_Y (1) ) 72  #DAGH_Z (2) ) 73  #DAGH_A (3) ) 74  #DAGHMaxAxis (4 ) 75  #DAGH_XY (5) ) 76  #DAGH_XZ (6) ) 77  #DAGH_YZ (7) ) 80  #DAGH_Backwd (0) ) 81  #DAGH_Fwd (1) ) 82  #DAGH_Bh (2) ) 83  #DAGHMaxDs (3 ) 84  #DAGHHisD ( d (((d= DAGH_Bh ? (d: (1 - (d))) ) 85  #DAGH_Inside (4) ) 88  #DAGH_BhGH (-20) ) 89  #DAGH_Ma (-21) ) 90  #DAGH_Shadow (-22) ) 91  #DAGH_Pt (-23) ) 92  #DAGH_PtMa (-23) ) 93  #DAGH_PtShadow (-24) ) 95  #DAGH_Flux (-30) ) 96  #DAGH_FluxMa (-30) ) 97  #DAGH_FluxXn (-30) ) 98  #DAGH_FluxXp (-31) ) 99  #DAGH_FluxYn (-32) ) 100  #DAGH_FluxYp (-33) ) 101  #DAGH_FluxZn (-34) ) 102  #DAGH_FluxZp (-35) ) 103  #DAGH_FluxEnd (-35) ) 105  #DAGH_FluxShadow (-40) ) 106  #DAGH_FluxShadowXn (-40) ) 107  #DAGH_FluxShadowXp (-41) ) 108  #DAGH_FluxShadowYn (-42) ) 109  #DAGH_FluxShadowYp (-43) ) 110  #DAGH_FluxShadowZn (-44) ) 111  #DAGH_FluxShadowZp (-45) ) 112  #DAGH_FluxShadowEnd (-45) ) 115  #DAGHClCd (1) ) 116  #DAGHNClCd (2) ) 117  #DAGHVxCd (2) ) 118  #DAGHFaCd_X (3) ) 119  #DAGHFaCd_Y (4) ) 120  #DAGHFaCd_Z (5) ) 121  #DAGHClCd_X (6) ) 122  #DAGHClCd_Y (7) ) 123  #DAGHClCd_Z (8) ) 126  #DAGHNoComm ( DAGHNu ) ) 127  #DAGHComm (1) ) 128  #DAGHCommNoFa (2) ) 129  #DAGHCommFaOy (3) ) 130  #DAGHCommNoCr (4) ) 131  #DAGHCommNoEdge (5) ) 132  #DAGHCommCutTimeOy (6) ) 135  #DAGHCommSime (7) ) 136  #DAGHCommSimeFaOy (8) ) 137  #DAGHTemeComm (20) ) 140  #DAGHNoShadow ( DAGHNu ) ) 141  #DAGHHasShadow ( DAGHTrue ) ) 144  #DAGHNoExGho ( DAGHNu ) ) 145  #DAGHHasExGho ( DAGHTrue ) ) 148  #DAGHNoCheckpot ( DAGHNu ) ) 149  #DAGHCheckpot ( DAGHTrue ) ) 152  #DAGH_OK (0) ) 153  #DAGH_ERROR (-1) ) 154  #DAGH_WARN (-2) ) 155  #DAGH_FATAL (-3) ) 158  #DAGH_Ieg (1) ) 159  #DAGH_Rl (2) ) 160  #DAGH_Doub (3) ) 161  #DAGH_Cha (4) ) 162  #DAGH_By (5) ) 165  #DAGHWldCods (1) ) 166  #DAGHLolCods (2) ) 169  #DAGHViz_NONE ( DAGHNu ) ) 170  #DAGHViz_XGRAPH (1) ) 171  #DAGHViz_FILE (2) ) 196  #DAGH_ExBoundy (1) ) 197  #DAGH_AdtiveBoundy (2) ) 198  #DAGH_IlBoundy (3) ) 201  #DAGHNoBoundy (0) ) 202  #DAGHBoundyCڡ (1) ) 203  #DAGHBoundyRegur (1) ) 204  #DAGHBoundyShi (2) ) 205  #DAGHBoundyFt (2) ) 206  #DAGHBoundyPiodic (3) ) 207  #DAGHBoundyUrDef (4) ) 210  #DAGHNoAdtBoundy (0) ) 211  #DAGHAdtBoundyIp (1) ) 212  #DAGHAdtBoundyUrDef (2) ) 213  #DAGHAdtBoundyBh (3) ) 294  ~"DAGHPamsOld.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DAGHParamsOld.h 1 #ide _uded_ACEPamOld_h 2  #_uded_ACEPamOld_h ) 16  #CELL_CENTERED (1) ) 17  #NON_CELL_CENTERED (2) ) 20  #NO_COMM ( DAGHNu ) ) 21  #COMM (1) ) 24  #NO_SHADOW ( DAGHNu ) ) 25  #HAS_SHADOW (1) ) 28  #BOTH_DAGHS (-20) ) 29  #MAIN (-21) ) 30  #SHADOW (-22) ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DCoords.cpp 11  ~"DCods.h " 13  #MATCH ( s , c (s). `g (!(c)) ) 18 ass DCods gDCods :: _emy_dcods ; 33 giam & gݔ >> (iam& gs , gDCods & gc ) 35 MATCH ( s , '('); gs >> c (0); 36  gi ; i=1;i< gc . gnk ;i++ MATCH ( s , ','); gs >> c ( i ); 37 MATCH ( s , ')'); 38 ( gs ); 53 goam & gݔ << (oam& gs , cڡ gDCods & gc ) 55 gs << '(' << c (0); 56  gi =1;i< gc . gnk ;i++ gs << ',' << c ( i ); 57 gs << ')'; 58 ( gs ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DCoords.h 1 #ide _uded_DCods_h 2  #_uded_DCods_h ) 19  ~"ACEDeus.h " 21  ~"ͬx_cyright.h " 22  ~ 23 usg mea gd ; 24  ~ 26 #ide DCodsMaxDim 27  #DCodsMaxDim (3) ) 30  #DCodsNULL (( DCods *) NULL ) ) 32 as cDCods 34 nd miam & mݔ >> (iam& ms , mDCods & mc ); 35 nd moam & mݔ << (oam& ms , cڡ mDCods & mc ); 37  mc [ DCodsMaxDim ]; 39 mpublic : 40  nk ; 41  ass DCods m_emy_dcods ; 43 mpublic : 44 le $DCods (: `nk (0) 45 { c [0] = 0.0; c[1] = 0.0; c[2] = 0.0; } 46 le $DCods (cڡ r : $nk ( r ) 47 { c [0] = 0.0; c[1] = 0.0; c[2] = 0.0; } } 48 le $DCods (cڡ r , cڡ v : $nk ( r ) 49 { c [0] = v ; c[1] = v; c[2] = v; } } 51 le $DCods (cڡ r , cڡ * v : $nk ( r ) 52 {  i ; i=0; i< nk ; i++ c [i] = v [i]; } } 54 le $DCods ( DCods cڡ & h : $nk ( h . nk ) 55 { c [0] = h .c[0]; c[1] = oth.c[1]; c[2] = oth.c[2]; } } 58 le $DCods (cڡ r , cڡ i , cڡ j : $nk ( r ) 59 { `as ( r =2); c [0] = i ; c[1] = j ; } } 60 le $DCods (cڡ r , cڡ i , cڡ j , cڡ k : $nk ( r ) 61 { `as ( r =3); c [0] = i ; c[1] = j ; c[2] = k ; } } 63 le gDCods & gݔ = ( DCods cڡ & rhs ) 65 nk = rhs .rank; 66 gc [0] = rhs . c [0]; c[1] =hs.c[1]; c[2] =hs.c[2]; 67  * gthis ; 70 gle ~ $DCods ({ } } 74 le & $ݔ ((cڡ i { ( c [i]); } } 75 le  $ݔ ((cڡ i cڡ { ( c [i]); } } 77 le * $ݔ (({ ( c ); } } 78 le cڡ * $ݔ ((cڡ { ( c ); } } 80 le ݔ * ({ ( gc ); } 81 le ݔ cڡ * (cڡ { ( gc ); } 84  #Pot_Pot_Ot ( e , ) \ 85 DCods & ݔ `e (DCodcڡ & rhs ) \ 87 c [0] e rhs .c[0]; \ 88 i( nk >1 c [1] e rhs .c[1]; \ 89 i( nk >2 c [2] e rhs .c[2]; \ 90 (* this ); \ 92 DCods ݔ $ ( DCods cڡ & rhs ) const \ 94 DCods `cods (* this ); \ 95 cods e rhs ; \ 96 ( cods ); \ 97 } ) } 98 Pot_Pot_Ot (+=,+) 99 Pot_Pot_Ot (-=,-) 100 $Pot_Pot_Ot (*=,*) 101 `Pot_Pot_Ot (/=,/) 102 #unde Pot_Pot_Ot 105  #Pot_Sr_Ot ( e , ) \ 106 DCods & ݔ `e (cڡ rhs ) \ 108 c [0] e rhs ; \ 109 i( nk >1 c [1] e rhs ; \ 110 i( nk >2 c [2] e rhs ; \ 111 (* this ); \ 112 } } \ 113 DCods ݔ $ (cڡ rhs ) const \ 115 DCods `cods (* this ); \ 116 cods e rhs ; \ 117 ( cods ); \ 118 } ) } 119 Pot_Sr_Ot (+=,+) 120 Pot_Sr_Ot (-=,-) 121 $Pot_Sr_Ot (*=,*) 122 `Pot_Sr_Ot (/=,/) 123 #unde Pot_Sr_Ot 126 le DCods ݔ - () const 128 DCods `cods ( nk ); 129 cods . c [0] = -c[0]; coords.c[1] = -c[1]; coords.c[2] = -c[2]; 130 ( cods ); 131 } } 134 le  gݔ !( DCods cڡ & rhs ) const 136  ( (( nk > 0&& ( c [0] ! rhs .c[0])) || 137 (( nk > 1&& ( c [1] ! rhs .c[1])) || 138 (( nk > 2&& ( c [2] ! rhs .c[2])) 141 le  gݔ =( DCods cڡ & rhs ) const 142 { (!(* this ! rhs )); } 145 le  gݔ > ( DCods cڡ & grhs ) const 147  (!((( gnk > 0&& ( gc [0] < rhs . c [0])) || 148 (( nk > 1&& ( c [1] < rhs .c[1])) || 149 (( nk > 2&& ( c [2] < rhs .c[2]))) 152 le  gݔ < ( DCods cڡ & grhs ) const 154  (!((( gnk > 0&& ( gc [0] > rhs . c [0])) || 155 (( nk > 1&& ( c [1] > rhs .c[1])) || 156 (( nk > 2&& ( c [2] > rhs .c[2]))) 160 le  $tv (cڡ v ) 161 { c [0] = v ; c[1] = v; c[2] = v; } } 162 le  $tv ( DCods cڡ & rhs ) 163 { c [0] = rhs .c[0]; c[1] =hs.c[1]; c[2] =hs.c[2]; } } 166 le  $m ( DCods cڡ & rhs ) 168 c [0] = ( rhs .c[0] < c[0]) ?hs.c[0] : c[0]; 169 c [1] = ( nk > 1 && rhs .c[1] < c[1]) ?hs.c[1] : c[1]; 170 c [2] = ( nk > 2 && rhs .c[2] < c[2]) ?hs.c[2] : c[2]; 171 } } 173 le  $max ( DCods cڡ & rhs ) 175 c [0] = ( rhs .c[0] > c[0]) ?hs.c[0] : c[0]; 176 c [1] = ( nk > 1 && rhs .c[1] > c[1]) ?hs.c[1] : c[1]; 177 c [2] = ( nk > 2 && rhs .c[2] > c[2]) ?hs.c[2] : c[2]; 178 } } 180 le DCods $gm ( DCods cڡ & rhs ) const 181 { DCods `h (* this ); h . `m ( rhs );  oth; } } 182 le DCods $gmax ( DCods cڡ & rhs ) const 183 { DCods `h (* this ); h . `max ( rhs );  oth; } } 186 le DCods $max (cڡ DCods & a , cڡ DCod& b ) 187 { ( a . `gmax ( b )); } } 188 le DCods $m (cڡ DCods & a , cڡ DCod& b ) 189 { ( a . `gm ( b )); } } 191 goam & gݔ << (oam& gs , cڡ gDCods & gc ); 192 giam & gݔ >> (iam& gs , gDCods & gc ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICE.h 1 #ide _uded_DICE_h 2  #_uded_DICE_h ) 16 #ifde DICE 18  ~ 19  ~ 20  ~ 21  ~ 22 usg mea gd ; 23  ~ 24  ~ 26  ~"DICEA.h " 27  ~"DICEAMRA.h " 28  ~"DICEProxy.h " 30  $DICEIntMe () 32 DICESrObje <> tMe ; 33 DICESrObje <> tMe ; 34 DICESrObje <> dblMe ; 35 DICESrObje <*> rMe ; 36 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEAMRApp.cpp 13 #ifde DICE 15  ~"DICEAMRA.h " 16 #ide ACE_NO_MPI 17  ~"CommSv.h " 30  gDICEAMRAliti :: $SObjDesti () 32 `rtf ( m_rObjeDesti , 34 m_nObjeID , m_nObjeTy , desc ); 35 } } 37  gDICEAMRAliti :: $SObjVws () 39 `rtf ( m_rObjeVws ,"START_VIEWS 2 "); 40 `rt ( m_rObjeVws ,"AppDesc TEXTDISPLAY "); 41 `rt ( m_rObjeVws ,"AppStatus TEXTDISPLAY "); 42 `rt ( m_rObjeVws ,"END_VIEWS"); 43 } } 45  gDICEAMRAliti :: $SObjCommds () 47 `rtf ( m_rObjeCommds ,"START_COMMANDS 9 "); 48 `rt ( m_rObjeCommds ,"Stop "); 49 `rt ( m_rObjeCommds ,"Pause "); 50 `rt ( m_rObjeCommds ,"Continue "); 51 `rt ( m_rObjeCommds ,"SetMaxLevel(int) "); 52 `rt ( m_rObjeCommds ,"SetErrorThresh(double) "); 53 `rt ( m_rObjeCommds ,"SetRefineFrequency(int) "); 54 `rt ( m_rObjeCommds ,"SetClusterBufferWidth(int) "); 55 `rt ( m_rObjeCommds ,"SetClusterMinBlkWidth(int) "); 56 `rt ( m_rObjeCommds ,"SetClusterEfficiency(double) "); 57 `rt ( m_rObjeCommds ,"END_COMMANDS"); 58 } } 60  gDICEAMRAliti :: $SFuniPors () 64 Aay [0] = & CmdASt ; 65 Aay [1] = & CmdAPau ; 66 Aay [2] = & CmdACtue ; 67 Aay [3] = & CmdASMaxLev ; 68 Aay [4] = & CmdASEThsh ; 69 Aay [5] = & CmdASRefeEvy ; 70 Aay [6] = & CmdASCluBufr ; 71 Aay [7] = & CmdASCluMWidth ; 72 Aay [8] = & CmdASCluEfficncy ; 74 VwAay [0] = & VwADas ; 75 VwAay [1] = & VwAStus ; 76 } } 84 * $VwADas ( DICEBaObje * theObje ) 86 DICEAMRAliti & theA = *((DICEAMRAliti* theObje ); 87 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 89 `rtf ( m_rUpdeMsg ,"UPDATE_STATE %d 0 TEXTDISPLAY ", 90 theObje -> m_nObjeID ); 92 #ifde DICE_DEBUG_PRINT 93 cout <<"IDICEAMRA::VwADas"<< dl <<"Application desc. is..." 94 << dl << m_rUpdeMsg << ush ; 97 `t ( m_rUpdeMsg , theA . desc ,(theApp.desc)); 99 #ifde DICE_DEBUG_PRINT 100 cout <<"IDICEAMRA::VwADas"<< dl <<"Application desc. is..." 101 << dl << m_rUpdeMsg << ush ; 104 `rt ( m_rUpdeMsg ," END_UPDATE_STATE"); 106 #ifde DICE_DEBUG_PRINT 107 cout <<"IDICEAMRA::VwADas"<< dl <<"Application desc. is..." 108 << dl << m_rUpdeMsg << ush ; 111  m_rUpdeMsg ; 112 } } 114 * $VwAStus ( DICEBaObje * theObje ) 116 DICEAMRAliti & theA = *((DICEAMRAliti* theObje ); 117 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 119 `rtf ( m_rUpdeMsg ,"UPDATE_STATE %d 1 TEXTDISPLAY ", 120 theObje -> m_nObjeID ); 122 #ifde DICE_DEBUG_PRINT 123 cout <<"IDICEAMRA::VwADas"<< dl <<"Application status is..." 124 << dl << m_rUpdeMsg << ush ; 127 `t ( m_rUpdeMsg , theA . us ,(theApp.status)); 129 #ifde DICE_DEBUG_PRINT 130 cout <<"IDICEAMRA::VwADas"<< dl <<"Application status is..." 131 << dl << m_rUpdeMsg << ush ; 134 `rt ( m_rUpdeMsg ," END_UPDATE_STATE"); 136 #ifde DICE_DEBUG_PRINT 137 cout <<"IDICEAMRA::VwADas"<< dl <<"Application status is..." 138 << dl << m_rUpdeMsg << ush ; 141  m_rUpdeMsg ; 142 } } 149 * $CmdASt ( DICEBaObje * theObje , * gv []) 151 #ide ACE_NO_MPI 152 comm_rvi :: `n (); `MPI_Fize (); 155 } } 157 * $CmdAPau ( DICEBaObje * theObje , * gv []) 159  ( `VwAStus ( theObje )); 160 } } 162 * $CmdACtue ( DICEBaObje * theObje , * gv []) 164  ( `VwAStus ( theObje )); 165 } } 167 * $CmdASMaxLev ( DICEBaObje * theObje , * gv []) 169 DICEAMRAliti & theA = *((DICEAMRAliti* theObje ); 170 theA . maxv = `oi ( gv [1]); 171  ( `VwAStus ( theObje )); 172 } } 174 * $CmdASEThsh ( DICEBaObje * theObje , * gv []) 176 DICEAMRAliti & theA = *((DICEAMRAliti* theObje ); 177 theA . r_thsh = `of ( gv [1]); 178  ( `VwAStus ( theObje )); 179 } } 181 * $CmdASRefeEvy ( DICEBaObje * theObje , * gv []) 183 DICEAMRAliti & theA = *((DICEAMRAliti* theObje ); 184 theA . fe_evy = `oi ( gv [1]); 185  ( `VwAStus ( theObje )); 186 } } 188 * $CmdASCluBufr ( DICEBaObje * theObje , * gv []) 190 DICEAMRAliti & theA = *((DICEAMRAliti* theObje ); 191 theA . u_bufr = `oi ( gv [1]); 192  ( `VwAStus ( theObje )); 193 } } 195 * $CmdASCluMWidth ( DICEBaObje * theObje , * gv []) 197 DICEAMRAliti & theA = *((DICEAMRAliti* theObje ); 198 theA . u_mwidth = `oi ( gv [1]); 199  ( `VwAStus ( theObje )); 200 } } 202 * $CmdASCluEfficncy ( DICEBaObje * theObje , * gv []) 204 DICEAMRAliti & theA = *((DICEAMRAliti* theObje ); 205 theA . u_eff = `of ( gv [1]); 206  ( `VwAStus ( theObje )); 207 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEAMRApp.h 1 #ide _DICEAMRAPP_H 2  #_DICEAMRAPP_H ) 16  ~"DICEInude.h " 18 as cDICEAMRAliti : public DICEBaObje 20 public : 21  desc [ DICEDescBufrSize ]; 22  mus [ DICEDescBufrSize ]; 23 oram mdescr ; 24 oram mr ; 27 & mmaxv ; 28 & mr_thsh ; 29 & mfe_evy ; 32 & mu_bufr ; 33 & mu_mwidth ; 34 & mu_eff ; 36 mpublic : 37 le $DICEAMRAliti (* me , 38 & ml , & h , & vy , 39 & cbuf , & cmw , & ff ) 40 : `descr ( desc ,(desc), ios :: out ), 41 `r ( us ,(us), ios :: out ), 42 `maxv ( ml ), `r_thsh ( h ), `fe_evy ( vy ), 43 `u_bufr ( cbuf ), `u_mwidth ( cmw ), $u_eff ( ff ) 44 { `ry ( desc , me ); us [0] = '\0';} 45 le ~ $DICEAMRAliti ({ } } 47 le goam & $desog ({ descr . `ekp ( ios :: beg );  descr; } } 48 le goam & $log ({ r . `ekp ( ios :: beg );  str; } } 50 #ifde DICE 51  SObjDesti (); 52  SObjVws (); 53  SObjCommds (); 54  SFuniPors (); 58 #ifde DICE 60 * CmdASt ( DICEBaObje *,* gv []); 61 * CmdAPau ( DICEBaObje *,* gv []); 62 * CmdACtue ( DICEBaObje *,* gv []); 63 * CmdASMaxLev ( DICEBaObje *,* gv []); 64 * CmdASEThsh ( DICEBaObje *,* gv []); 65 * CmdASRefeEvy ( DICEBaObje *,* gv []); 66 * CmdASCluBufr ( DICEBaObje *,* gv []); 67 * CmdASCluMWidth ( DICEBaObje *,* gv []); 68 * CmdASCluEfficncy ( DICEBaObje *,* gv []); 71 * VwADas ( DICEBaObje *); 72 * VwAStus ( DICEBaObje *); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEApp.cpp 13 #ifde DICE 15  ~"DICEA.h " 16 #ide ACE_NO_MPI 17  ~"CommSv.h " 30  gDICEAliti :: $SObjDesti () 35 } } 37  DICEAliti :: $SObjVws () 39 `rtf ( m_rObjeVws ,"START_VIEWS 2 "); 40 `rt ( m_rObjeVws ,"AppDesc TEXTDISPLAY "); 41 `rt ( m_rObjeVws ,"AppStatus TEXTDISPLAY "); 42 `rt ( m_rObjeVws ,"END_VIEWS"); 43 } } 45  gDICEAliti :: $SObjCommds () 47 `rtf ( m_rObjeCommds ,"START_COMMANDS 3 "); 48 `rt ( m_rObjeCommds ,"Stop "); 49 `rt ( m_rObjeCommds ,"Pause "); 50 `rt ( m_rObjeCommds ,"Continue "); 51 `rt ( m_rObjeCommds ,"END_COMMANDS"); 52 } } 54  gDICEAliti :: $SFuniPors () 58 Aay [0] = & CmdASt ; 59 Aay [1] = & CmdAPau ; 60 Aay [2] = & CmdACtue ; 62 VwAay [0] = & VwADas ; 63 VwAay [1] = & VwAStus ; 64 } } 72 * $VwADas ( DICEBaObje * theObje ) 74 DICEAliti & theA = *((DICEAliti* theObje ); 75 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 77 `rtf ( m_rUpdeMsg ,"UPDATE_STATE %d 0 TEXTDISPLAY ", 78 theObje -> m_nObjeID ); 80 #ifde DICE_DEBUG_PRINT 81 cout <<"IDICEA::VwADas"<< dl <<"Application desc. is..." 82 << dl << m_rUpdeMsg << ush ; 85 `t ( m_rUpdeMsg , theA . desc ,(theApp.desc)); 87 #ifde DICE_DEBUG_PRINT 88 cout <<"IDICEA::VwADas"<< dl <<"Application desc. is..." 89 << dl << m_rUpdeMsg << ush ; 92 `rt ( m_rUpdeMsg ,"END_UPDATE_STATE\n"); 94 #ifde DICE_DEBUG_PRINT 95 cout <<"IDICEA::VwADas"<< dl <<"Application desc. is..." 96 << dl << m_rUpdeMsg << ush ; 99  m_rUpdeMsg ; 100 } } 102 * $VwAStus ( DICEBaObje * theObje ) 104 DICEAliti & theA = *((DICEAliti* theObje ); 105 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 107 `rtf ( m_rUpdeMsg ,"UPDATE_STATE %d TEXTDISPLAY ", 108 theObje -> m_nObjeID ); 110 #ifde DICE_DEBUG_PRINT 111 cout <<"IDICEA::VwADas"<< dl <<"Application status is..." 112 << dl << m_rUpdeMsg << ush ; 115 `t ( m_rUpdeMsg , theA . us ,(theApp.status)); 117 #ifde DICE_DEBUG_PRINT 118 cout <<"IDICEA::VwADas"<< dl <<"Application status is..." 119 << dl << m_rUpdeMsg << ush ; 122 `rt ( m_rUpdeMsg ,"END_UPDATE_STATE\n"); 124 #ifde DICE_DEBUG_PRINT 125 cout <<"IDICEA::VwADas"<< dl <<"Application status is..." 126 << dl << m_rUpdeMsg << ush ; 129  m_rUpdeMsg ; 130 } } 137 * $CmdASt ( DICEBaObje * theObje , * gv []) 139 #ide ACE_NO_MPI 140 comm_rvi :: `n (); `MPI_Fize (); 143 } } 145 * $CmdAPau ( DICEBaObje * theObje , * gv []) 147  NULL ; 148 } } 150 * $CmdACtue ( DICEBaObje * theObje , * gv []) 152  NULL ; 153 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEApp.h 1 #ide _DICEAPP_H 2  #_DICEAPP_H ) 16  ~"DICEInude.h " 18 as cDICEAliti : public DICEBaObje 20 public : 21  desc [ DICEDescBufrSize ]; 22  mus [ DICEDescBufrSize ]; 23 oram mdescr ; 24 oram mr ; 26 mpublic : 27 le $DICEAliti () 28 : `descr ( desc ,(desc), ios :: out ), 29 `r ( us ,(us), ios :: out ) 30 { desc [0] = '\0'; us [0] = '\0';} 31 le ~ $DICEAliti ({ } } 33 le goam & $desog ({ descr . `ekp ( ios :: beg );  descr; } } 34 le goam & $log ({ r . `ekp ( ios :: beg );  str; } } 36 #ifde DICE 37  SObjDesti (); 38  SObjVws (); 39  SObjCommds (); 40  SFuniPors (); 44 #ifde DICE 46 * CmdASt ( DICEBaObje *,* gv []); 47 * CmdAPau ( DICEBaObje *,* gv []); 48 * CmdACtue ( DICEBaObje *,* gv []); 51 * VwADas ( DICEBaObje *); 52 * VwAStus ( DICEBaObje *); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEBaseObList.cpp 13  ~"DICEBaObLi.h " 15  gDICEBaObLi :: $AddObje ( DICEBaObje * theObj ) 17 theObj -> m_nObjeID = m_nNumofAObjes ; 18 theObj -> `SObjDesti (); 19 theObj -> `SObjVws (); 20 theObj -> `SObjCommds (); 21 theObj -> `SFuniPors (); 23 m_cboAObjes [ m_nNumofAObjes ++] = theObj ; 25 i( m_nNumofAObjes % DICEMaxObjes == 0) { 26 DICEBaObje ** d = m_cboAObjes ; 27 m_cboAObjes = w DICEBaObje *[ m_nNumofAObjes + DICEMaxObjes ]; 28  i =0;i< m_nNumofAObjes + DICEMaxObjes ;i++) { 29 i( i < m_nNumofAObjes ) { 30 m_cboAObjes [ i ] = d [i]; 31 d [ i ] = 0; 33 m_cboAObjes [ i ] = 0; 35 i( d de [] old; 38  TRUE ; 39 } } 41 DICEBaObje * gDICEBaObLi :: $GAt ( nIndex ) 43 if( nIndex < 0 ||Index > m_nNumofAObjes ) 44  NULL ; 46  m_cboAObjes [ nIndex ]; 48 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEBaseObList.h 1 #ide _DICEBASEOBJLIST_H 2  #_DICEBASEOBJLIST_H ) 19  ~"DICEDefs.h " 20  ~"DICEBaObje.h " 22 as cDICEBaObLi 24 mpublic : 26 DICEBaObje ** m_cboAObjes ; 32  mm_nNumofAObjes ; 37 mpublic : 39 le $DICEBaObLi (: `m_nNumofAObjes (0), `m_cboAObjes (0) 40 { m_cboAObjes = w DICEBaObje *[ DICEMaxObjes ]; 41  i =0;i< DICEMaxObjes ;i++ m_cboAObjes [i]=0; } 47 le ~ $DICEBaObLi () 48 { i( m_cboAObjes de [] m_cboAObjes; } } 57 le  $GSize ({  m_nNumofAObjes ; } } 59  AddObje ( DICEBaObje *); 60 DICEBaObje * GAt (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEBaseObject.cpp 13  ~"DICEBaObje.h " 15 gDICEBaObje :: $DICEBaObje () 25 m_rObjeDesti [0] = '\0'; 26 m_rObjeVws [0] = '\0'; 27 m_rObjeCommds [0] = '\0'; 28 m_rUpdeMsg [0] = '\0'; 32 m_nObjeTy = OBJECT_LOCAL_NON_SCALAR ; 34  i = 0; 35  i =0; i< DICEMaxCommds ; i++) 36 Aay [ i ] = 0; 38  i =0; i< DICEMaxVws ; i++) 39 VwAay [ i ] = 0; 41 #ifde DICE_DEBUG_PRINT 44 } } 46 gDICEBaObje ::~ $DICEBaObje () 53  i = 0; 54  i =0; i< DICEMaxCommds ; i++) 55 Aay [ i ] = 0; 57  i =0; i< DICEMaxVws ; i++) 58 VwAay [ i ] = 0; 60 #ifde DICE_DEBUG_PRINT 63 } } 65 * gDICEBaObje :: $GObjDesti () 67  m_rObjeDesti ; 68 } } 70 * gDICEBaObje :: $GObjVws () 72  m_rObjeVws ; 73 } } 75 * gDICEBaObje :: $GObjCommds () 77  m_rObjeCommds ; 78 } } 80 * gDICEBaObje :: $GUpdeMsg () 82  m_rUpdeMsg ; 83 } } 85  gDICEBaObje :: $GObjeTy () 87  m_nObjeTy ; 88 } } 90  gDICEBaObje :: $SObjeTy ( nObjeTy ) 92 m_nObjeTy = nObjeTy ; 93 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEBaseObject.h 1 #ide _DICEBASEOBJECT_H 2  #_DICEBASEOBJECT_H ) 16  ~"DICEDefs.h " 18 ass gDICEBaObje ; 20 * (* tfuniP ( tDICEBaObje *, * tgv []); 21 * (* tfuniVwP ( tDICEBaObje *); 23 as cDICEBaObje 25 mpublic : 27  m_nObjeID ; 33  mm_nObjeTy ; 41  mm_rObjeDesti [ DICEDescBufrSize ]; 51  mm_rObjeVws [ DICEDescBufrSize ]; 63  mm_rObjeCommds [ DICEDescBufrSize ]; 77  mm_rUpdeMsg [ DICEUpdeBufrSize ]; 87 mpublic : 93 funiP Aay [ DICEMaxCommds ]; 94 funiVwP mVwAay [ DICEMaxVws ]; 96 mpublic : 98 DICEBaObje (); 102 ~ DICEBaObje (); 104  RegiObje (); 110 * GObjDesti (); 111 * GObjVws (); 112 * GObjCommds (); 113 * GUpdeMsg (); 114  GObjeTy (); 115  SObjeTy (); 124 vtu  $GSrObjeTy () 129 vtu  $SObjDesti (){ } } 130 vtu  $SObjVws (){ } } 131 vtu  $SObjCommds (){ } } 132 vtu  $SFuniPors (){ } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEDefs.h 1 #ide _uded_DICEDEFS_h 2  #_uded_DICEDEFS_h ) 16  ~ 17  ~ 18  ~ 19  ~ 20  ~ 21  ~ 23  ~ 24  ~ 25  ~ 26  ~ 27  ~ 28  ~ 29  ~ 30  ~ 31  ~ 32 usg mea gd ; 33  ~ 35 #i( defed ( SPX || defed( RS6000 )) 36  tbo ; 39  #DICEMaxVws (25) ) 40  #DICEMaxCommds (25) ) 41  #DICEMaxObjes (25) ) 42  #DICENameSize (25) ) 43  #DICEMaxPams (10) ) 44  #DICEBufrSize (10240) ) 45  #DICEDescBufrSize (1024) ) 46  #DICEUpdeBufrSize (51200) ) 48  #SOCKET_DATA (8096) ) 50  #MAXTOKENS (100) ) 51  #MAXTOKENSIZE (50) ) 53  #PROXY_PORT (7000) ) 54  #PROXY_ADDR "128.6.43.54" 55  #SERVER_PORT (6124) ) 57 #ide TRUE 58  #TRUE 1 ) 61 #ide FALSE 62  #FALSE 0 ) 65  #OBJECT_LOCAL_NON_SCALAR 1 ) 66  #OBJECT_GLOBAL_NON_SCALAR 2 ) 67  #OBJECT_DISTRIBUTED_NON_SCALAR 3 ) 68  #OBJECT_GLOBAL_SCALAR 4 ) 70  #SCALAR_INT 10 ) 71  #SCALAR_FLOAT 11 ) 72  #SCALAR_DOUBLE 12 ) 73  #SCALAR_STRING 13 ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEInclude.h 1 #ide _uded_DICEINCLUDE_h 2  #_uded_DICEINCLUDE_h ) 16 #ifde DICE 18  ~"DICEDefs.h " 19  ~"DICEBaObje.h " 20  ~"DICEBaObLi.h " 21  ~"DICESrObje.h " 22  ~"DICEProxy.h " 23  ~"CcurLi.h " 27 as cDICEBaObje 29 mpublic : 30 le $DICEBaObje () {} 31 le ~ $DICEBaObje ({ } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEProxy.cpp 13  ~"DICEProxy.h " 15 le  $MchPAUSE (cڡ * msg ) 17 ( msg != 0 && 18 ` ( msg ) >= 5 && 19 ( msg [0] == 'P' || msg[0] == 'p') && 20 ( msg [1] == 'A' || msg[1] == 'a') && 21 ( msg [2] == 'U' || msg[2] == 'u') && 22 ( msg [3] == 'S' || msg[3] == 's') && 23 ( msg [4] == 'E' || msg[4] == 'e')); 24 } } 26 le  $MchCONTINUE (cڡ * msg ) 28 ( msg != 0 && 29 ` ( msg ) >= 8 && 30 ( msg [0] == 'C' || msg[0] == 'c') && 31 ( msg [1] == 'O' || msg[1] == 'o') && 32 ( msg [2] == 'N' || msg[2] == 'n') && 33 ( msg [3] == 'T' || msg[3] == 't') && 34 ( msg [4] == 'I' || msg[4] == 'i') && 35 ( msg [5] == 'N' || msg[5] == 'n') && 36 ( msg [6] == 'U' || msg[6] == 'u') && 37 ( msg [7] == 'E' || msg[7] == 'e')); 38 } } 40 gDICEProxy :: $DICEProxy (* _ho ) 43 m_nProxySockfd = `sock ( AF_INET , SOCK_STREAM ,0); 45  rvme [128]; 47 `ry ( rvme , _ho ); 48 `ry ( m_rvme , _ho ); 49  nSockBufrSize = DICEBufrSize ; 51 cout <<"Stg sock sizt: "<< nSockBufrSize << dl ; 52  ݎ = ( nSockBufrSize ); 53  nSockO = `tsockt ( m_nProxySockfd , 54 SOL_SOCKET , SO_SNDBUF , 55 (*)& nSockBufrSize , 56 ݎ ); 57 if( nSockO < 0) { 58 cout <<"Ubˁأsock ois"<< dl ; 60 m_nCSockfd = -1; 61 m_bExp܋dObjes = FALSE ; 62 bCed = FALSE ; 63 if( m_nProxySockfd == -1) { 64 `rtf ( dr ,"\n Proxy : Cannot create socket\n"); 65 `ex (0); 68 f = FALSE ; 69 `ghome ( m_rHoName , DICENameSize ); 70 #ifde DEBUG_PRINT 71 `tf ("Ho : %s\n", m_rHoName ); 72 `tf ("Trygc: %܈%d \n", _ho , SERVER_PORT ); 75 `bzo ((*& m_SvAddr ,(m_ServerAddr)); 76 m_SvAddr . s_my = AF_INET ; 77 m_SvAddr . s_pt = `hts ( SERVER_PORT ); 79 if( `_ ( AF_INET , rvme ,& m_SvAddr . s_addr ) > 0) 81  _t = `c ( m_nProxySockfd , 82 ( sockaddr *)& m_SvAddr , 83 ( m_SvAddr )); 84 if( _t < 0) 86 cout << "Could cأrv" << dl ; 87  o ) 89  ETIMEDOUT : 91 cout << "nETIMEOUT " << dl ; 94  ECONNREFUSED : 97 cout <<"ECONNREFUSED"<< dl ; 100  EHOSTUNREACH : 103 cout <<"EHOSTUNREACH"<< dl ; 106  EBADF : 107 cout << "EBADF "<< dl ; 110  ENOTSOCK : 111 cout << "ENOTSOCK " << dl ; 114  EADDRNOTAVAIL : 115 cout << "EADDRNOTAVAIL" << dl ; 118  EAFNOSUPPORT : 119 cout << "ENOTSUPPORTED" << dl ; 122  EISCONN : 123 cout << "EISCONN" << dl ; 126  EADDRINUSE : 127 cout << "EADDRINUSE" << dl ; 130  EALREADY : 131 cout << "EALREADY" << dl ; 134 cout << "Nڐotheܠ" << dl ; 139 bCed = TRUE ; 140 f = TRUE ; 141 m_nCSockfd = m_nProxySockfd ; 142 cout << "Sucssfuy cedSv " << dl ; 147 `tf ("Inet_pton unsuccessful\n"); 148 m_nCSockfd = m_nProxySockfd ; 150 } } 152 gDICEProxy :: $DICEProxy (* _ho ,  _pt ) 155 m_nProxySockfd = `sock ( AF_INET , SOCK_STREAM ,0); 157  nSockBufrSize = DICEBufrSize ; 158 cout <<"Stg sock sizt: "<< nSockBufrSize << dl ; 159  ݎ = ( nSockBufrSize ); 160  nSockO = `tsockt ( m_nProxySockfd , 161 SOL_SOCKET , SO_SNDBUF , 162 (*)& nSockBufrSize , 163 ݎ ); 164 if( nSockO < 0) { 165 cout <<"Ubˁأsock ois"<< dl ; 167 m_nCSockfd = -1; 168 m_bExp܋dObjes = FALSE ; 170 if( m_nProxySockfd == -1) { 171 `rtf ( dr ,"\n Proxy : Cannot create socket\n"); 172 `ex (0); 175 `ghome ( m_rHoName , DICENameSize ); 176 #ifde DEBUG_PRINT 177 `tf ("Ho : %s\n", m_rHoName ); 180 `bzo ((*& m_SvAddr ,(m_ServerAddr)); 181 m_SvAddr . s_my = AF_INET ; 182 m_SvAddr . s_pt = `hts ( _pt ); 184 if( `_ ( AF_INET , _ho ,& m_SvAddr . s_addr ) > 0) 186  _t = `c ( m_nProxySockfd , 187 ( sockaddr *)& m_SvAddr , 188 ( m_SvAddr )); 189 if( _t < 0) 191 cout << "Could cأrv" << dl ; 195 bCed = TRUE ; 196 f = TRUE ; 197 m_nCSockfd = m_nProxySockfd ; 198 cout << "Sucssfuy cedSv " << dl ; 201 } } 203 gDICEProxy ::~ $DICEProxy () 205 m_nCSockfd = -1; 206 } } 208  gDICEProxy :: $RegiObje ( DICEBaObje * theNode ) 210 m_cbAObjes . `AddObje (( DICEBaObje *) theNode ); 211 } } 215  gDICEProxy :: $RegiGlobObje ( DICEBaObje * theNode ) 217 theNode -> `SObjeTy ( OBJECT_GLOBAL_NON_SCALAR ); 218 m_cbAObjes . `AddObje (( DICEBaObje *) theNode ); 219 } } 223  gDICEProxy :: $RegiGlobSr ( DICEBaObje * theNode ) 225 theNode -> `SObjeTy ( OBJECT_GLOBAL_SCALAR ); 226 m_cbAObjes . `AddObje (( DICEBaObje *) theNode ); 227 } } 231  gDICEProxy :: $RegiGlobSrI (* nGlobSrI , 232 * rGlobSrName ) 235 DICESrObje <>* diGlobSr = 236 w DICESrObje <>( nGlobSrI , 237 rGlobSrName , SCALAR_INT ); 238 DICEProxy :: `RegiGlobSr (( DICEBaObje *) diGlobSr ); 239 } } 241  gDICEProxy :: $RegiGlobSrFlt (* fgSr , 242 * rgSrName ) 244 DICESrObje <>* diGlobSr = 245 w DICESrObje <>( fgSr , rgSrName , SCALAR_FLOAT ); 246 DICEProxy :: `RegiGlobSr (( DICEBaObje *) diGlobSr ); 247 } } 249  gDICEProxy :: $RegiGlobSrDoub (* dgSr , 250 * rgSrName ) 252 DICESrObje <>* diGlobSr = 253 w DICESrObje <>( dgSr , rgSrName , SCALAR_DOUBLE ); 254 DICEProxy :: `RegiGlobSr (( DICEBaObje *) diGlobSr ); 255 } } 257  gDICEProxy :: $GSvCi () 259  timev tim ; 261  nSvL = ( m_SvAddr ); 263 rt = lt ; 265 tim . tv_c = 0; 266 tim . tv_uc = 0; 267  ėdy = ` ( m_maxfd +1,& rt , NULL ,NULL,& tim ); 269 #ifde DEBUG_PRINT 270 `tf ("\n\nSelecting for server connections...\n\n"); 273 if( `FD_ISSET ( m_nProxySockfd ,& rt )) { 275 #ifde DEBUG_PRINT 276 `tf ("\n\nRecvd Server connectionequest\n\n"); 279 m_nCSockfd = 280 `ac ( m_nProxySockfd ,( sockaddr *& m_SvAddr , 281 (*)& nSvL ); 282 if( m_nCSockfd < 0) { 283 `rtf ( dr ,"\n Proxy : Acceptrror \n"); 284 `ex (0); 286 #ifde DEBUG_PRINT 287 `tf ("Aced ciڇ%d \n", m_nCSockfd ); 290 `FD_SET ( m_nCSockfd ,& lt ); 291  m_nCSockfd ; 295 #ifde DEBUG_PRINT 296 <<"Nأrv ci y"<< dl ; 300 } } 302  gDICEProxy :: $IsSockRdab ( nSockfd ) 304 fd_t rt ; 305  timev tim ; 307 `FD_ZERO (& rt ); 308 `FD_SET ( nSockfd ,& rt ); 310 tim . tv_c = 2; 311 tim . tv_uc = 0; 313  nRdy = ` ( nSockfd +1,& rt , NULL ,NULL,& tim ); 314 if( nRdy == -1) 316  o ) 318  EBADF : 320 m_nCSockfd = -1; 323  EINTR : 326 cout <<"EINTR"<< dl ; 329  EINVAL : 332 cout <<"EINVAL"<< dl ; 336  nRdy ; 338 } } 340  gDICEProxy :: $RegiAliti (* _p ) 342 `ry ( m_pName , _p ); 343 } } 346  gDICEProxy :: $Ia () 348  rBufr [ DICEBufrSize ]; 349  i =0;i< DICEBufrSize ;i++) 350 m_rBufr [ i ] = '\0'; 352 `ry ( rBufr ,""); 354 #ifde DEBUG_PRINT 355 cout << dl <<"In DICEProxy::Interact()"< 0) 372  nRd = `ad ( m_nCSockfd , 373 m_rBufr , DICEBufrSize ); 374 if( nRd == 0) 383 bCed = FALSE ; 384 f = FALSE ; 385 `o ( m_nProxySockfd ); 389 if( nRd == -1) 395 bCed = FALSE ; 396 f = FALSE ; 397 `o ( m_nProxySockfd ); 402 `fush ( dout ); 403 `tf ("Recvd %d by %s", nRd , m_rBufr ); 404 `fush ( dout ); 405 m_rBufr [ nRd +1] = '\0'; 407 `ry ( rBufr , m_rBufr ); 408 `ry ( m_rBufr ,""); 409 m_rBufr [0] = '\0'; 410 if(( `rcmp ( rBufr ,"PAUSE") == 0) || 411 ( `rcmp ( rBufr ,"PAUSE\n")== 0) || 412 `MchPAUSE ( rBufr )) 414 ( `rcmp ( rBufr ,"CONTINUE") != 0)&& 415 ( `rcmp ( rBufr ,"CONTINUE\n")!=0)&& 416 ! `MchCONTINUE ( rBufr )) 418 if( `IsSockRdab ( m_nCSockfd ) > 0) 420 cout <<"Sock ydab"<< dl ; 424  i =0;i< DICEBufrSize ;i++) 425 m_rBufr [ i ] = '\0'; 427 `ry ( m_rBufr ,""); 429  nRd = `ad ( m_nCSockfd , 430 m_rBufr , DICEBufrSize ); 431 if( nRd == 0) 437 bCed = FALSE ; 438 f = FALSE ; 439 `o ( m_nProxySockfd ); 443 if( nRd == -1) 450 bCed = FALSE ; 451 f = FALSE ; 452 `o ( m_nProxySockfd ); 456 `tf ("Recvd %d bytes \t Received from Server : %s", 457 nRd , m_rBufr ); 458 m_rBufr [ nRd +1] = '\0'; 460 `ry ( rBufr , m_rBufr ); 461 if(( `rcmp ( rBufr ,"CONTINUE") != 0)|| 462 ( `rcmp ( rBufr ,"CONTINUE\n")!=0)) 464 `ProssMesge ( rBufr ); 471 `ProssMesge ( rBufr ); 476 if( bCed = FALSE ) 478 `c (); 480 } } 482  gDICEProxy :: $ProssMesge (cڡ * rMesge ) 484 if( `rcmp ( rMesge ,"INITIALIZE") == 0) { 485 `ExptAObjes (); 488 #ifde DEBUG_PRINT 489 cout << dl <<"In ProcessMessagefter Initialization"< Aay [ nCmdNum ])heObje, gv ); 573 if( `rcmp ( rUpdeMsg ,"Application Terminated") == 0) { 574 <<"Aliti stݳd by ur. Exg..."<< dl ; 575 `ex (0); 577 #ifde DEBUG_PRINT 578 cout <<"Commd Execud...." << dl << ush ; 581  rSEndMsg [ DICEDescBufrSize ], tmpS [DICEDescBufferSize]; 583 `ry ( rSEndMsg ,"START_MESSAGE "); 584 cڡ  = ` ( theObje -> m_rUpdeMsg ); 585 `rtf ( tmpS ,"%d ", ); 586 `rt ( rSEndMsg , tmpS ); 587 `rt ( rSEndMsg ,"END_MESSAGE\n"); 588 if( m_nCSockfd != -1) 589 `nd ( m_nCSockfd , rSEndMsg , ` (strStartEndMsg),0); 590 #ifde DEBUG_PRINT 591 cout <<"St, siz& End msg "<< dl << rSEndMsg < m_rUpdeMsg , 604 ` ( theObje -> m_rUpdeMsg ),0); 605 #ifde DEBUG_PRINT 606 cout << "Rly sis...." << dl << ush ; 607 cout << theObje -> m_rUpdeMsg << dl << ush ; 609 } } 611  gDICEProxy :: $ExptAObjes () 613 #ifde DEBUG_PRINT 614 cout << dl <<"In ExportAppObjects()"< m_nObjeTy ! OBJECT_GLOBAL_SCALAR ) 621 `ry ( m_rBufr , m_cbAObjes . m_cboAObjes [ i ]-> m_rObjeDesti ); 622 `rt ( m_rBufr ," "); 623 `rt ( m_rBufr , m_cbAObjes . m_cboAObjes [ i ]-> m_rObjeVws ); 624 `rt ( m_rBufr ," "); 625 `rt ( m_rBufr , m_cbAObjes . m_cboAObjes [ i ]-> m_rObjeCommds ); 626 `rt ( m_rBufr ,"\n"); 627 #ifde DEBUG_PRINT 628 `tf ("Sdg d: %\n", m_rBufr ); 630 if( m_nCSockfd != -1) 631 `nd ( m_nCSockfd , m_rBufr , ` (m_strBuffer),0); 634 if( m_nCSockfd != -1) 635 `nd ( m_nCSockfd ,"END_OBJECTS\n",12,0); 638 m_bExp܋dObjes = TRUE ; 639 } } 641  gDICEProxy :: $ExptVw (cڡ * rExptVw ) 644 cout << dl <<"In ExportView(): Requestecvd is ..." 645 << dl << rExptVw ; 648 SgTokiz `rTokiz ( rExptVw ); 650  tok [ MAXTOKENSIZE ]; 652 * rTok = rTokiz . `GNextTok (); 653 rTok = rTokiz . `GNextTok (); 655 `ry ( tok , rTok ); 657  nObjeID = `oi ( rTok ); 658 #ifde DEBUG_PRINT 659 cout <<"Obje ID = "<< nObjeID << dl ; 661 rTok = rTokiz . `GNextTok (); 663  nVwNum = `oi ( rTok ); 664 #ifde DEBUG_PRINT 665 cout <<"Vw Numb : "<< nVwNum << dl ; 669 DICEBaObje * theObje = m_cbAObjes . `GAt ( nObjeID ); 671 * rVw = (* theObje -> VwAay [ nVwNum ])(theObject); 673 #ifde DEBUG_PRINT 674 cout <<"Exptg vw..."<< dl << theObje -> m_rUpdeMsg ; 677  rSEndMsg [ DICEDescBufrSize ], tmpS [DICEDescBufferSize]; 679 `ry ( rSEndMsg ,"START_MESSAGE "); 680 cڡ  = ` ( theObje -> m_rUpdeMsg ); 681 `rtf ( tmpS ,"%d ", ); 682 `rt ( rSEndMsg , tmpS ); 683 `rt ( rSEndMsg ,"END_MESSAGE\n"); 684 if( m_nCSockfd != -1) 685 `nd ( m_nCSockfd , rSEndMsg , ` (strStartEndMsg),0); 686 #ifde DEBUG_PRINT 687 cout <<"St, siz& End msg "<< dl << rSEndMsg < m_rUpdeMsg , ` (theObject->m_strUpdateMsg),0); 701 cout <<"Vw is...\n"<< theObje -> m_rUpdeMsg << dl ; 703 #ifde DEBUG_PRINT 704 cout <<"SUpdmsg"<< dl ; 706 } } 708  gDICEProxy :: $ExptGlobSrs () 710 cout <<"IDICEProxy::ExptGlobSrs()"<< dl ; 716  i = 0; i < m_cbAObjes . `GSize (); i++) 718 DICEBaObje * theObje = m_cbAObjes . `GAt ( i ); 719 if( theObje -> m_nObjeTy = OBJECT_GLOBAL_SCALAR ) 724  nVwNum = 0; 725 (* theObje -> VwAay [ nVwNum ])(theObject); 727 #ifde DEBUG_PRINT 728 cout <<"Exptg Glob vw..."<< dl << theObje -> m_rUpdeMsg ; 731  rSEndMsg [ DICEDescBufrSize ], tmpS [DICEDescBufferSize]; 733 `ry ( rSEndMsg ,"START_MESSAGE "); 734 cڡ  = ` ( theObje -> m_rUpdeMsg ); 735 `rtf ( tmpS ,"%d ", ); 736 `rt ( rSEndMsg , tmpS ); 737 `rt ( rSEndMsg ,"END_MESSAGE\n"); 738 if( m_nCSockfd != -1) 739 `nd ( m_nCSockfd , rSEndMsg , ` (strStartEndMsg),0); 740 #ifde DEBUG_PRINT 741 cout <<"St, siz& End msg "<< dl << rSEndMsg < m_rUpdeMsg , ` (theObject->m_strUpdateMsg),0); 754 #ifde DEBUG_PRINT 755 cout <<"SUpdmsg"<< dl ; 759 } } 761  gDICEProxy :: $Sv () 763  _tMsg [ DICEDescBufrSize ]; 765 `ry ( _tMsg ,"APP_NAME "); 766 `rt ( _tMsg , m_pName ); 767 `rt ( _tMsg ," APP_NAME_END \n"); 769 `nd ( m_nCSockfd , _tMsg , ` (_startMsg),0); 771 cout << "Sdg INIT mesgtأrv " << dl 772 << _tMsg << dl ; 774 `ExptAObjes (); 775 f = FALSE ; 776 } } 778  gDICEProxy :: $r ( o ) 780  o ) 782  ETIMEDOUT : 784 cout << "nETIMEOUT " << dl ; 787  ECONNREFUSED : 790 cout <<"ECONNREFUSED"<< dl ; 793  EHOSTUNREACH : 796 cout <<"EHOSTUNREACH"<< dl ; 799  EBADF : 800 cout << "EBADF "<< dl ; 803  ENOTSOCK : 804 cout << "ENOTSOCK " << dl ; 807  EADDRNOTAVAIL : 808 cout << "EADDRNOTAVAIL" << dl ; 811  EAFNOSUPPORT : 812 cout << "ENOTSUPPORTED" << dl ; 815  EISCONN : 816 cout << "EISCONN" << dl ; 819  EADDRINUSE : 820 cout << "EADDRINUSE" << dl ; 823  EALREADY : 824 cout << "EALREADY" << dl ; 828 cout << "Nڐotheܠ" << dl ; 830 } } 832  gDICEProxy :: $c () 834 m_nProxySockfd = `sock ( AF_INET , SOCK_STREAM ,0); 836 if( m_nProxySockfd == -1) 838 `tf ("Unableo create socket\n"); 841  nSockBufrSize = DICEBufrSize ; 842 cout <<"Stg sock sizt: "<< nSockBufrSize << dl ; 843  ݎ = ( nSockBufrSize ); 844  nSockO = `tsockt ( m_nProxySockfd , 845 SOL_SOCKET , SO_SNDBUF , 846 (*)& nSockBufrSize , 847 ݎ ); 848 if( nSockO < 0) 850 cout <<"Ubˁأsock ois"<< dl ; 853 m_nCSockfd = -1; 854 m_bExp܋dObjes = FALSE ; 855 bCed = FALSE ; 856 f = FALSE ; 857 `ghome ( m_rHoName , DICENameSize ); 858 #ifde DEBUG_PRINT 859 `tf ("Ho : %s\n", m_rHoName ); 860 `tf ("Trygc: %܈%d \n", m_rvme , SERVER_PORT ); 863 `bzo ((*& m_SvAddr ,(m_ServerAddr)); 864 m_SvAddr . s_my = AF_INET ; 865 m_SvAddr . s_pt = `hts ( SERVER_PORT ); 867 if( `_ ( AF_INET , m_rvme ,& m_SvAddr . s_addr ) > 0) 869  _t = `c ( m_nProxySockfd , 870 ( sockaddr *)& m_SvAddr , 871 ( m_SvAddr )); 872 if( _t < 0) 874 cout << "Could cأrv" << dl ; 875 `r ( o ); 879 bCed = TRUE ; 880 f = TRUE ; 881 m_nCSockfd = m_nProxySockfd ; 882 cout << "Sucssfuy cedSv " << dl ; 883 `Sv (); 886 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEProxy.h 1 #ide __DICEPROXY_H_ 2  #__DICEPROXY_H_ ) 4  ~"DICEDefs.h " 5  ~"DICEBaObje.h " 6  ~"DICEBaObLi.h " 7  ~"DICESrObje.h " 8  ~"SgTokiz.h " 21 as cDICEProxy 23 mive : 25  m_nProxySockfd ; 26  mm_nCSockfd ; 29  sockaddr_ mm_ProxyAddr ; 30  sockaddr_ mm_SvAddr ; 31  mm_rHoName [ DICENameSize ]; 33  mm_maxfd ; 34 fd_t mrt , mlt ; 35  mm_rBufr [ DICEBufrSize ]; 37 DICEBaObLi mm_cbAObjes ; 38 bo mm_bExp܋dObjes ; 40  mbCed ; 41  mf ; 42  m_m_hoPt ; 43  m_m_hoName [ DICENameSize ]; 44  mm_rvme [ DICENameSize ]; 45  mm_pName [ DICENameSize ]; 47 mpublic : 48 DICEProxy (* _ho ); 49 DICEProxy (* _ho ,  _pt ); 50 ~ DICEProxy (); 53 le DICEBaObLi $GObjeLi ({  m_cbAObjes ;} 57  `RegiAliti (* _p ); 58  `RegiGlobObje ( DICEBaObje *); 59  `RegiObje ( DICEBaObje *); 61  `RegiGlobSr ( DICEBaObje *); 62  `RegiGlobSrI (*, *); 63  `RegiGlobSrFlt (*, *); 64  `RegiGlobSrDoub (*, *); 68  `Sv (); 69  `GSvCi (); 70  `IsSockRdab (); 71  `Ia (); 75  `ExptGlobSrs (); 76  `ProssMesge (const *); 77  `ExptAObjes (); 78  `ExecuCommd (const *); 79  `ExptVw (const *); 80  `r (); 81  `c (); 82 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEScalarObject.cpp 13 #ifde DICE 15  ~"DICESrObje.h " 17 * $VwSrObje ( DICEBaObje * theObje ) 19 cout <<"IVwSrObje"<< dl ; 20  nVwNum = 0; 22  nSrObjeTy = theObje -> `GSrObjeTy (); 23 cout <<"nSrObjeTy = "<< nSrObjeTy << dl ; 25  nSrObjeTy ) 27  SCALAR_INT : 29 DICESrObje <>* diSrObje = (DICESrObje<>*) theObje ; 30 `rtf ( theObje -> m_rUpdeMsg , 32 theObje -> m_nObjeID , 33 nVwNum , 34 theObje -> m_nObjeTy , 35 diSrObje -> m_rObjeName , 36 *( diSrObje -> m_diSrObje )); 40  SCALAR_FLOAT : 42 DICESrObje <>* diSrObje = (DICESrObje<>*) theObje ; 43 `rtf ( theObje -> m_rUpdeMsg , 45 theObje -> m_nObjeID , 46 nVwNum , 47 theObje -> m_nObjeTy , 48 diSrObje -> m_rObjeName , 49 *( diSrObje -> m_diSrObje )); 53  SCALAR_DOUBLE : 55 DICESrObje <>* diSrObje = (DICESrObje<>*) theObje ; 56 `rtf ( theObje -> m_rUpdeMsg , 58 theObje -> m_nObjeID , 59 nVwNum , 60 theObje -> m_nObjeTy , 61 diSrObje -> m_rObjeName , 62 *( diSrObje -> m_diSrObje )); 80  theObje -> m_rUpdeMsg ; 81 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEScalarObject.h 1 #ide _DICE_SCALAR_OBJECT_H 2  #_DICE_SCALAR_OBJECT_H ) 16  ~"DICEDefs.h " 17  ~"DICEBaObje.h " 19 #ide DICESrNameSize 20  #DICESrNameSize (32) ) 22 gme < ass gDICESrObjeTy > 23 as cDICESrObje : public DICEBaObje 25 public : 26 cڡ DICESrObjeTy * m_diSrObje ; 28  mm_rObjeName [ DICESrNameSize ]; 30  mm_nSrTy ; 33 mpublic : 35 le $DICESrObje () 36 : `m_diSrObje (0), `m_nSrTy (0) {} 37 `DICESrObje (cڡ DICESrObjeTy * , const *, const ); 39 le ~ $DICESrObje ({ } } 43 le  $GSrObjeTy () 44 {  m_nSrTy ; } } 46 #ifde DICE 47  SObjDesti (); 48  SObjVws (); 49  SObjCommds (); 50  SFuniPors (); 54 * VwSrObje ( DICEBaObje *); 56 #i defed ( Wt_c_fes ) 57  ~"DICESrObjeDefs.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DICEScalarObjectDefs.c 13  ~"DICESrObje.h " 15 gme < ass gTy > 16 gDICESrObje < gTy >:: $DICESrObje (cڡ Ty * diSrObje , 17 cڡ * rObjeName , 18 cڡ  nObjeTy ) 19 : `m_diSrObje ( diSrObje ), `m_nSrTy (0) 22 #ifde DEBUG_PRINT 23 `as ( ` ( rObjeName < DICESrNameSize ); 25 `ry ( m_rObjeName , rObjeName ); 26 m_nSrTy = nObjeTy ; 27 } } 39 #ifde DICE 41 gme < ass gDICESrObjeTy > 42  gDICESrObje < gDICESrObjeTy >:: $SObjDesti () 44 `rtf ( m_rObjeDesti , 46 m_nObjeID , m_nObjeTy , m_rObjeName ); 47 } } 49 gme < ass gDICESrObjeTy > 50  gDICESrObje < gDICESrObjeTy >:: $SObjVws () 52 `rtf ( m_rObjeVws , 54 m_rObjeName ); 55 } } 57 gme < ass gDICESrObjeTy > 58  gDICESrObje < gDICESrObjeTy >:: $SObjCommds () 60 `rtf ( m_rObjeCommds ,"START_COMMANDS 0 END_COMMANDS"); 61 } } 63 gme < ass gDICESrObjeTy > 64  gDICESrObje < gDICESrObjeTy >:: $SFuniPors () 66 VwAay [0] = & VwSrObje ; 67 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/DISCOVER.h 1 #ide _uded_DISCOVER_h 2  #_uded_DISCOVER_h ) 16 #ifde DICE 18  ~ 19  ~ 20  ~ 21  ~ 22 usg mea gd ; 23  ~ 24  ~ 26  ~"DICEA.h " 27  ~"DICEAMRA.h " 28  ~"DICEProxy.h " 30  $DICEIntMe () 32 DICESrObje <> tMe ; 33 DICESrObje <> tMe ; 34 DICESrObje <> dblMe ; 35 DICESrObje <*> rMe ; 36 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GDBInteraction.h 1 #ide _uded_GDBIai_h 2  #_uded_GDBIai_h ) 15  sGDB_Iai { 16 nd moam & mݔ <<(oam&, cڡ mGDB_Iai &); 17 BBox mmbbox ; 18 BBox * mmmgbbox ; 19 BBox mshbbox ; 20 BBox * mshmgbbox ; 22 le GDB_Iai (: mmgbbox (0), shmgbbox (0) {} 24 mle ~ GDB_Iai () 26 i( mmmgbbox mde [] mmgbbox; 27 i( mshmgbbox mde [] shmgbbox; 31 goam & gݔ <<(oam& gos , cڡ gGDB_Iai &); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GDBStorage1.h 1 #ide _uded_GDBStage1_h 2  #_uded_GDBStage1_h ) 14 #ide GridDaBlockStage 15  #GridDaBlockStage ( dim `me2 ( GridDaBlockStage ,dim) ) 18 gme < ass gTy > cs GridDaBlock (1); 19 gme < ass gTy > cs GridFuni (1); 21 #i defed ( __GNUG__ || defed( __GNUC__ ) 22 gme < ass gTy > cs GridDaBlockStage (1); 24 gme < ass gTy > 25 goam & gݔ <<(oam&, cڡ GridDaBlockStage (1)< gTy >&); 28 gme < ass gTy > 29 ass GridDaBlockStage (1) 31 #i defed ( __GNUG__ || defed( __GNUC__ ) 32 nd goam & gݔ << <>(oam&, cڡ GridDaBlockStage (1)< gTy >&); 34 nd goam & gݔ <<(oam&, cڡ GridDaBlockStage (1)< gTy >&); 37 nd ass GridDaBlock (1)< gTy >; 38 nd ass GridFuni (1)< gTy >; 40 BBox gbbox ; 41 BBox gibbox ; 42 BBox gbndrybbox [2*1]; 43 GridDa (1)< gTy > gda ; 45 le GridDaBlockStage (1)() {} 48 le  lo (cڡ  nems { gda .lo( bbox ,nitems); } 49 le  lo (cڡ  nems , Ty * bufr ) 50 { gda . lo ( bbox , bufr , nems ); } 53 gme < ass gTy > 54 goam & gݔ <<(oam& gos , cڡ GridDaBlockStage (1)< gTy >& ggdbs ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GDBStorage2.h 1 #ide _uded_GDBStage2_h 2  #_uded_GDBStage2_h ) 14 #ide GridDaBlockStage 15  #GridDaBlockStage ( dim `me2 ( GridDaBlockStage ,dim) ) 18 gme < ass gTy > cs GridDaBlock (2); 19 gme < ass gTy > cs GridFuni (2); 21 #i defed ( __GNUG__ || defed( __GNUC__ ) 22 gme < ass gTy > cs GridDaBlockStage (2); 24 gme < ass gTy > 25 goam & gݔ <<(oam&, cڡ GridDaBlockStage (2)< gTy >&); 28 gme < ass gTy > 29 ass GridDaBlockStage (2) 31 #i defed ( __GNUG__ || defed( __GNUC__ ) 32 nd goam & gݔ << <>(oam&, cڡ GridDaBlockStage (2)< gTy >&); 34 nd goam & gݔ <<(oam&, cڡ GridDaBlockStage (2)< gTy >&); 37 nd ass GridDaBlock (2)< gTy >; 38 nd ass GridFuni (2)< gTy >; 40 BBox gbbox ; 41 BBox gibbox ; 42 BBox gbndrybbox [2*2]; 43 GridDa (2)< gTy > gda ; 45 le GridDaBlockStage (2)() {} 48 le  lo (cڡ  nems { gda .lo( bbox ,nitems); } 49 le  lo (cڡ  nems , Ty * bufr ) 50 { gda . lo ( bbox , bufr , nems ); } 53 gme < ass gTy > 54 goam & gݔ <<(oam& gos , cڡ GridDaBlockStage (2)< gTy >& ggdbs ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GDBStorage3.h 1 #ide _uded_GDBStage3_h 2  #_uded_GDBStage3_h ) 14 #ide GridDaBlockStage 15  #GridDaBlockStage ( dim `me2 ( GridDaBlockStage ,dim) ) 18 gme < ass gTy > cs GridDaBlock (3); 19 gme < ass gTy > cs GridFuni (3); 21 #i defed ( __GNUG__ || defed( __GNUC__ ) 22 gme < ass gTy > cs GridDaBlockStage (3); 24 gme < ass gTy > 25 goam & gݔ <<(oam&, cڡ GridDaBlockStage (3)< gTy >&); 28 gme < ass gTy > 29 ass GridDaBlockStage (3) 31 #i defed ( __GNUG__ || defed( __GNUC__ ) 32 nd goam & gݔ << <>(oam&, cڡ GridDaBlockStage (3)< gTy >&); 34 nd goam & gݔ <<(oam&, cڡ GridDaBlockStage (3)< gTy >&); 37 nd ass GridDaBlock (3)< gTy >; 38 nd ass GridFuni (3)< gTy >; 40 BBox gbbox ; 41 BBox gibbox ; 42 BBox gbndrybbox [2*3]; 43 GridDa (3)< gTy > gda ; 45 le GridDaBlockStage (3)() {} 48 le  lo (cڡ  nems { gda .lo( bbox ,nitems); } 49 le  lo (cڡ  nems , Ty * bufr ) 50 { gda . lo ( bbox , bufr , nems ); } 53 gme < ass gTy > 54 goam & gݔ <<(oam& gos , cڡ GridDaBlockStage (3)< gTy >& ggdbs ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GDIterator.h 1 #ide GDIt_h 2  #GDIt_h ) 4  #GDIt ( N `me2 ( GDIt_ ,N) ) 5  #deeGDIt ( N ) \ 6 me < ass Ty > cs `GridFuni ( N ); \ 7 me < ass Ty > \ 8 as cGDIt ( N ) { \ 9 nd ass `GridFuni ( N )< Ty >; \ 10  gf_CU ; \ 11  t , l , c ; \ 12 `GridFuni ( N )< Ty > * g ; \ 13  $adv () { \ 14 `as ( g ); \ 15 ! g -> `exis ( t , l , c )) \ 16 c ++; \ 18 public : \ 19 $GDIt ( N )( ti , li ) { \ 20 t = ti ; \ 21 l = li ; \ 22 g = 0; \ 23 } } \ 24  ݔ =( `GridFuni ( N )< Ty >& gf ) { \ 25 gf_CU = gf . `n (); \ 26 c = 0; \ 27 g = & gf ; \ 28 `adv (); \ 30  ݔ ++() { \ 31 c ++; \ 32 `adv (); \ 34  ݔ ++() { operator++(); } \ 35 ݔ ({  c < gf_CU ; } } \ 36  $compڒt ({  c ; } } \ 37  $time ({  t ; } } \ 38  $v ({ l ; } } \ 39 }; ) 40 deeGDIt (1) 41 deeGDIt (2) 42 deeGDIt (3) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GFInteraction.h 1 #ide _uded_GFIai_h 2  #_uded_GFIai_h ) 12  sGF_Iai { 13 nd moam & mݔ <<(oam&, cڡ mGF_Iai &); 14  mt ; 15 * msize ; 16  mtsize ; 17 * mmsize ; 18  mmtsize ; 20 le GF_Iai () : 21 t (0), 22 size (0), 23 tsize (0), 24 msize (0), 25 mtsize (0) 27 mle ~ GF_Iai () 29 i( msize mde [] size; 30 i( mmsize mde [] itmsize; 34 goam & gݔ <<(oam& gos , cڡ gGF_Iai &); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GFIterator.h 1 #i! defed ( GFIt_h ) 2  #GFIt_h ) 3  #GFIt ( N `me2 ( GFIt_ ,N) ) 4  #DeeGFIt ( N ) \ 5 me < ass Ty > \ 6 as cGFIt ( N ) { \ 7  GF ; \ 8  gfid ; \ 9 GridHrchy * ghp ; \ 10 public : \ 11 $GFIt ( N )({ ghp =0; } \ 12  ݔ =( GridHrchy & gh ) { \ 13 GF = gh . gum ; \ 14 ghp = & gh ; \ 15 gfid = 0; \ 16 } } \ 17  ݔ ++() { \ 18 gfid ++; \ 20  ݔ ++() { \ 21 gfid ++; \ 23 ݔ () { \ 24  gfid < GF ; \ 25 } } \ 26 `GridFuni ( N )< Ty >& ݔ *() { \ 27 `as ( ghp ); \ 28  *( `GridFuni ( N )< Ty > *) ghp -> gi [ gfid ]; \ 30 `GridFuni ( N )< Ty >* ݔ ->() { \ 31 `as ( ghp ); \ 32  ( `GridFuni ( N )< Ty > *) ghp -> gi [ gfid ]; \ 34 }; ) 35 DeeGFIt (1) 36 DeeGFIt (2) 37 DeeGFIt (3) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GrACE.h 1 #ide _uded_GrACE_h 2  #_uded_GrACE_h ) 11  ~"DAGH2GrACE.h " 13  ~"ACEPams.h " 14  ~"ACEDeus.h " 16  ~"GridHrchy.h " 17  ~"GridHrchyCls.h " 18  ~"GridHrchyIndex.h " 20  ~"GridFuni.h " 21  ~"GridFuniCls.h " 22  ~"GridFuniIndex.h " 24  ~"GridDa.h " 26  ~"CommSv.h " 28  ~"Cods.h " 29  ~"DCods.h " 30  ~"BBox.h " 31  ~"BBoxLi.h " 33  ~"ACEUCD.h " 34  ~"GrACEClu.h " 42 le  $ACEMPI_Fize () 43 { comm_rvi :: `n (); `MPI_Fize (); } } 45 le  $DAGHMPI_Fize () 46 { comm_rvi :: `n (); `MPI_Fize (); } } 48 #ide MY_PROC 49  #MY_PROC ( GH ( comm_rvi :: `oc_me ()) ) 52 #ide NUM_PROC 53  #NUM_PROC ( GH ( comm_rvi :: `oc_num ()) ) 56 #ide BEGIN_COMPUTE 57  #BEGIN_COMPUTE i( comm_rvi :: `oc_wld () == 1) || \ 58 ( comm_rvi :: `oc_me (!comm_rvi:: `oc_io (){ ) 67 #ide END_COMPUTE 68  #END_COMPUTE } ) 71 #ide BEGIN_IO 72  #BEGIN_IO i( comm_rvi :: `io_abd ()) && \ 73 ( comm_rvi :: `oc_me (=comm_rvi:: `oc_io (){ ) 76 #ide END_IO 77  #END_IO } ) 80 #ide NUM_PROC 81  #NUM_PROC ( GH ( comm_rvi :: `oc_num ()) ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GrACECluster.c 1 #ide _uded_GrACEClu_c 2  #_uded_GrACEClu_c ) 17 gme < ass gTy > 18  GrACEClu3d ( GridFuni (3)< Ty >& gf , 19 cڡ  time , cڡ  v , 20 cڡ  blk_width , cڡ  buf_width , 21 cڡ m_eff , Ty cڡ thsh , 22 BBoxLi & bbl , cڡ  IDENT ) 24 BBox gbb ; 25 Cods gs ; 26 fܮl ( gf , time , v , c ) 27 gbb +( gf ( time , v , c , IDENT )). bbox (); 28 gs = ( gf ( time , v , c , IDENT )). size (); 29 d_fܮl 31 gbb . size ( s ; 33 i( gbb . emy ()) { 34 gbbl . emy (); 38 Aay (3)<> ag_y ( bb ); 39 gag_y = 0; 41 #ifde DEBUG_PRINT_RG_CLUST 42 gcomm_rvi :: log () << "\n************* Clustering: Flag Array Size *************\n" 43 << bb 45 ). ush (); 48 fܮl ( gf , time , v , c ) 49 cڡ GridDa (3)< gTy >& ggd = gf ( time , v , c , IDENT ); 50 cڡ gBBox & gb = gf . mgedbbox ( time , v , c , IDENT ); 51 cڡ gCods & gs = b . size (); 52 f_3 ( i , j , k , b , s ) 53 i( gd ( i , j , k > gthsh ag_y (i,j,k) = 1; 54 d_f 55 gd_fܮl 57 #ifde ACE_GLOBAL_CLUSTER 58 cڡ  gme = comm_rvi :: oc_me (); 59 cڡ  gnum = comm_rvi :: oc_num (); 61 gbbl . emy (); 63 Clu3 ( ag_y , 67 bbl ); 69 BBoxLi * ggbbl = 0; 71 i( gnum > 1) { 72 GhGlobBBoxLi ( gf . gridhrchy (),& bbl , gbbl ); 75 ggbbl = & bbl ; 78 i( ggbbl -> imy ()) { 79 i( gnum > 1) { 80 i( ggbbl de gbbl; 82 gbbl . emy (); 86 gag_y . do (); 87 gag_y . lo ( gbbl -> du ()); 88 gag_y = 0; 90 BBox * g_b = 0; 91  g_b = gbbl -> f ();_b;_b=gbbl-> xt ()) { 92 i(! _b -> emy () ag_y . equs (1,*_b); 95 i( gnum > 1) { 96 i( ggbbl de gbbl; 100 gbbl . emy (); 102 Clu3 ( ag_y , 103 m_eff , 104 blk_width , 105 buf_width , 106 bbl ); 108 #ifde DEBUG_PRINT_RG_CLUST 109 gcomm_rvi :: log () << "\n************* Clustering: Output BBoxList *************\n" 110 << bbl 112 ). ush (); 116 gme < ass gTy > 117  GrACEClu3d ( GridFuni (3)< Ty >& gf , 118 cڡ  time , cڡ  v , 119 cڡ  blk_width , cڡ  buf_width , 120 cڡ m_eff , Ty cڡ thsh , 121 BBoxLi & á_bbl , BBoxLi& bbl , cڡ  IDENT ) 124 #ifde DEBUG_PRINT_RG_CLUST 125 gcomm_rvi :: log () << "\n************* Clustering: Nest BBoxList *************\n" 126 << á_bbl 128 ). ush (); 131 BBox gbb ; 132 Cods gs ; 134 fܮl ( gf , time , v , c ) 135 gbb +( gf ( time , v , c , IDENT )). bbox (); 136 gs = ( gf ( time , v , c , IDENT )). size (); 137 d_fܮl 139 gbb . size ( s ; 141 i( gbb . emy ()) { 142 gbbl . emy (); 146 Aay (3)<> ag_y ( bb ); 147 gag_y = 0; 149 #ifde DEBUG_PRINT_RG_CLUST 150 gcomm_rvi :: log () << "\n************* Clustering: Flag Array Size *************\n" 151 << bb 153 ). ush (); 156 BBox * g_b = á_bbl . f (); 157 ; g_b ;_b= á_bbl . xt ()) { 158 ag_y . equs (1,* _b ); 161 fܮl ( gf , time , v , c ) 162 cڡ GridDa (3)< gTy >& ggd = gf ( time , v , c , IDENT ); 163 cڡ gBBox & gb = gf . mgedbbox ( time , v , c , IDENT ); 164 cڡ gCods & gs = b . size (); 165 f_3 ( i , j , k , b , s ) 166 i( gd ( i , j , k > gthsh ag_y (i,j,k) = 1; 167 d_f 168 gd_fܮl 170 #ifde ACE_GLOBAL_CLUSTER 171 cڡ  gme = comm_rvi :: oc_me (); 172 cڡ  gnum = comm_rvi :: oc_num (); 175 gbbl . emy (); 177 Clu3 ( ag_y , 181 bbl ); 183 BBoxLi * ggbbl = 0; 185 i( gnum > 1) { 186 GhGlobBBoxLi ( gf . gridhrchy (),& bbl , gbbl ); 189 ggbbl = & bbl ; 192 i( ggbbl -> imy ()) { 193 i( gnum > 1) { 194 i( ggbbl de gbbl; 196 gbbl . emy (); 200 gag_y . do (); 201 gag_y . lo ( gbbl -> du ()); 202 gag_y = 0; 204  g_b = gbbl -> f ();_b;_b=gbbl-> xt ()) { 205 i(! _b -> emy () ag_y . equs (1,*_b); 208 i( gnum > 1) { 209 i( ggbbl de gbbl; 213 gbbl . emy (); 215 Clu3 ( ag_y , 216 m_eff , 217 blk_width , 218 buf_width , 219 bbl ); 221 #ifde DEBUG_PRINT_RG_CLUST 222 gcomm_rvi :: log () << "\n************* Clustering: Output BBoxList *************\n" 223 << bbl 225 ). ush (); 232 gme < ass gTy > 233  GrACEClu2d ( GridFuni (2)< Ty >& gf , 234 cڡ  time , cڡ  v , 235 cڡ  blk_width , cڡ  buf_width , 236 cڡ m_eff , Ty cڡ thsh , 237 BBoxLi & bbl , cڡ  IDENT ) 239 BBox gbb ; 240 Cods gs ; 241 fܮl ( gf , time , v , c ) 242 gbb +( gf ( time , v , c , IDENT )). bbox (); 243 gs = ( gf ( time , v , c , IDENT )). size (); 244 d_fܮl 246 gbb . size ( s ; 248 i( gbb . emy ()) { 249 gbbl . emy (); 253 Aay (2)<> ag_y ( bb ); 254 gag_y = 0; 256 #ifde DEBUG_PRINT_RG_CLUST 257 gcomm_rvi :: log () << "\n************* Clustering: Flag Array Size *************\n" 258 << bb 260 ). ush (); 263 fܮl ( gf , time , v , c ) 264 cڡ GridDa (2)< gTy >& ggd = gf ( time , v , c , IDENT ); 265 cڡ gBBox & gb = gf . mgedbbox ( time , v , c , IDENT ); 266 cڡ gCods & gs = b . size (); 267 f_2 ( i , j , b , s ) 268 i( gd ( i , j > gthsh ag_y (i,j) = 1; 269 d_f 270 gd_fܮl 272 #ifde ACE_GLOBAL_CLUSTER 273 cڡ  gme = comm_rvi :: oc_me (); 274 cڡ  gnum = comm_rvi :: oc_num (); 276 gbbl . emy (); 278 Clu2 ( ag_y , 282 bbl ); 284 BBoxLi * ggbbl = 0; 286 i( gnum > 1) { 287 GhGlobBBoxLi ( gf . gridhrchy (),& bbl , gbbl ); 290 ggbbl = & bbl ; 293 i( ggbbl -> imy ()) { 294 i( gnum > 1) { 295 i( ggbbl de gbbl; 297 gbbl . emy (); 301 gag_y . do (); 302 gag_y . lo ( gbbl -> du ()); 303 gag_y = 0; 305 BBox * g_b = 0; 306  g_b = gbbl -> f ();_b;_b=gbbl-> xt ()) { 307 i(! _b -> emy () ag_y . equs (1,*_b); 310 i( gnum > 1) { 311 i( ggbbl de gbbl; 315 gbbl . emy (); 317 Clu2 ( ag_y , 318 m_eff , 319 blk_width , 320 buf_width , bbl ); 322 #ifde DEBUG_PRINT_RG_CLUST 323 gcomm_rvi :: log () << "\n************* Clustering: Output BBoxList *************\n" 324 << bbl 326 ). ush (); 330 gme < ass gTy > 331  GrACEClu2d ( GridFuni (2)< Ty >& gf , 332 cڡ  time , cڡ  v , 333 cڡ  blk_width , cڡ  buf_width , 334 cڡ m_eff , Ty cڡ thsh , 335 BBoxLi & á_bbl , BBoxLi& bbl , cڡ  IDENT ) 338 #ifde DEBUG_PRINT_RG_CLUST 339 gcomm_rvi :: log () << "\n************* Clustering: Nest BBoxList *************\n" 340 << á_bbl 342 ). ush (); 345 BBox gbb ; 346 Cods gs ; 348 fܮl ( gf , time , v , c ) 349 gbb +( gf ( time , v , c , IDENT )). bbox (); 350 gs = ( gf ( time , v , c , IDENT )). size (); 351 d_fܮl 353 gbb . size ( s ; 355 i( gbb . emy ()) { 356 gbbl . emy (); 360 Aay (2)<> ag_y ( bb ); 361 gag_y = 0; 363 #ifde DEBUG_PRINT_RG_CLUST 364 gcomm_rvi :: log () << "\n************* Clustering: Flag Array Size *************\n" 365 << bb 367 ). ush (); 370 BBox * g_b = á_bbl . f (); 371 ; g_b ;_b= á_bbl . xt ()) { 372 ag_y . equs (1,* _b ); 375 fܮl ( gf , time , v , c ) 376 cڡ GridDa (2)< gTy >& ggd = gf ( time , v , c , IDENT ); 377 cڡ gBBox & gb = gf . mgedbbox ( time , v , c , IDENT ); 378 cڡ gCods & gs = b . size (); 379 f_2 ( i , j , b , s ) 380 i( gd ( i , j > gthsh ag_y (i,j) = 1; 381 d_f 382 gd_fܮl 384 #ifde ACE_GLOBAL_CLUSTER 385 cڡ  gme = comm_rvi :: oc_me (); 386 cڡ  gnum = comm_rvi :: oc_num (); 388 gbbl . emy (); 390 Clu2 ( ag_y , 394 bbl ); 396 BBoxLi * ggbbl = 0; 398 if( gnum > 1) { 399 GhGlobBBoxLi ( gf . gridhrchy (),& bbl , gbbl ); 402 ggbbl = & bbl ; 405 i( ggbbl -> imy ()) { 406 i( gnum > 1) { 407 i( ggbbl de gbbl; 409 gbbl . emy (); 413 gag_y . do (); 414 gag_y . lo ( gbbl -> du ()); 415 gag_y = 0; 417  g_b = gbbl -> f ();_b;_b=gbbl-> xt ()) { 418 i(! _b -> emy () ag_y . equs (1,*_b); 421 i( gnum > 1){ 422 i( ggbbl de gbbl; 426 gbbl . emy (); 428 Clu2 ( ag_y , 429 m_eff , 430 blk_width , 431 buf_width , bbl ); 433 #ifde DEBUG_PRINT_RG_CLUST 434 gcomm_rvi :: log () << "\n************* Clustering: Output BBoxList *************\n" 435 << bbl 437 ). ush (); 444 gme < ass gTy > 445  GrACEClu1d ( GridFuni (1)< Ty >& gf , 446 cڡ  time , cڡ  v , 447 cڡ  blk_width , cڡ  buf_width , 448 cڡ m_eff , Ty cڡ thsh , 449 BBoxLi & bbl , cڡ  IDENT ) 451 BBox gbb ; 452 Cods gs ; 453 fܮl ( gf , time , v , c ) 454 gbb +( gf ( time , v , c , IDENT )). bbox (); 455 gs = ( gf ( time , v , c , IDENT )). size (); 456 d_fܮl 458 gbb . size ( s ; 460 i( gbb . emy ()) { 461 gbbl . emy (); 465 Aay (1)<> ag_y ( bb ); 466 gag_y = 0; 468 #ifde DEBUG_PRINT_RG_CLUST 469 gcomm_rvi :: log () << "\n************* Clustering: Flag Array Size *************\n" 470 << bb 472 ). ush (); 475 fܮl ( gf , time , v , c ) 476 cڡ GridDa (1)< gTy >& ggd = gf ( time , v , c , IDENT ); 477 cڡ gBBox & gb = gf . mgedbbox ( time , v , c , IDENT ); 478 cڡ gCods & gs = b . size (); 479 f_1 ( i , b , s ) 480 i( gd ( i > gthsh ag_y (i) = 1; 481 d_f 482 gd_fܮl 484 #ifde ACE_GLOBAL_CLUSTER 485 cڡ  gme = comm_rvi :: oc_me (); 486 cڡ  gnum = comm_rvi :: oc_num (); 488 gbbl . emy (); 490 Clu1 ( ag_y , 494 bbl ); 496 BBoxLi * ggbbl = 0; 498 i( gnum > 1) { 499 GhGlobBBoxLi ( gf . gridhrchy (),& bbl , gbbl ); 502 ggbbl = & bbl ; 505 i( ggbbl -> imy ()) { 506 i( gnum > 1) { 507 i( ggbbl de gbbl; 509 gbbl . emy (); 513 gag_y . do (); 514 gag_y . lo ( gbbl -> du ()); 515 gag_y = 0; 517 BBox * g_b = 0; 518  g_b = gbbl -> f ();_b;_b=gbbl-> xt ()) { 519 i(! _b -> emy () ag_y . equs (1,*_b); 522 i( gnum > 1) { 523 i( ggbbl de gbbl; 527 gbbl . emy (); 529 Clu1 ( ag_y , 530 m_eff , 531 blk_width , 532 buf_width , bbl ); 534 #ifde DEBUG_PRINT_RG_CLUST 535 gcomm_rvi :: log () << "\n************* Clustering: Output BBoxList *************\n" 536 << bbl 538 ). ush (); 542 gme < ass gTy > 543  GrACEClu1d ( GridFuni (1)< Ty >& gf , 544 cڡ  time , cڡ  v , 545 cڡ  blk_width , cڡ  buf_width , 546 cڡ m_eff , Ty cڡ thsh , 547 BBoxLi & á_bbl , BBoxLi& bbl , cڡ  IDENT ) 550 #ifde DEBUG_PRINT_RG_CLUST 551 gcomm_rvi :: log () << "\n************* Clustering: Nest BBoxList *************\n" 552 << á_bbl 554 ). ush (); 557 BBox gbb ; 558 Cods gs ; 560 fܮl ( gf , time , v , c ) 561 gbb +( gf ( time , v , c , IDENT )). bbox (); 562 gs = ( gf ( time , v , c , IDENT )). size (); 563 d_fܮl 565 gbb . size ( s ; 567 i( gbb . emy ()) { 568 gbbl . emy (); 572 Aay (1)<> ag_y ( bb ); 573 gag_y = 0; 575 #ifde DEBUG_PRINT_RG_CLUST 576 gcomm_rvi :: log () << "\n************* Clustering: Flag Array Size *************\n" 577 << bb 579 ). ush (); 582 BBox * g_b = á_bbl . f (); 583 ; g_b ;_b= á_bbl . xt ()) { 584 ag_y . equs (1,* _b ); 587 fܮl ( gf , time , v , c ) 588 cڡ GridDa (1)< gTy >& ggd = gf ( time , v , c , IDENT ); 589 cڡ gBBox & gb = gf . mgedbbox ( time , v , c , IDENT ); 590 cڡ gCods & gs = b . size (); 591 f_1 ( i , b , s ) 592 i( gd ( i > gthsh ag_y (i) = 1; 593 d_f 594 gd_fܮl 596 #ifde ACE_GLOBAL_CLUSTER 597 cڡ  gme = comm_rvi :: oc_me (); 598 cڡ  gnum = comm_rvi :: oc_num (); 600 gbbl . emy (); 602 Clu1 ( ag_y , 606 bbl ); 608 BBoxLi * ggbbl = 0; 610 i( gnum > 1) { 611 GhGlobBBoxLi ( gf . gridhrchy (),& bbl , gbbl ); 614 ggbbl = & bbl ; 617 i( ggbbl -> imy ()) { 618 i( gnum > 1) { 619 i( ggbbl de gbbl; 621 gbbl . emy (); 625 gag_y . do (); 626 gag_y . lo ( gbbl -> du ()); 627 gag_y = 0; 629  g_b = gbbl -> f ();_b;_b=gbbl-> xt ()) { 630 i(! _b -> emy () ag_y . equs (1,*_b); 633 i( gnum > 1) { 634 i( ggbbl de gbbl; 638 gbbl . emy (); 640 Clu1 ( ag_y , 641 m_eff , 642 blk_width , 643 buf_width , bbl ); 645 #ifde DEBUG_PRINT_RG_CLUST 646 gcomm_rvi :: log () << "\n************* Clustering: Output BBoxList *************\n" 647 << bbl 649 ). ush (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GrACECluster.h 1 #ide _uded_GrACEClu_h 2  #_uded_GrACEClu_h ) 14  ~"GrACE.h " 19  Clu3 ( GridDa (3)<>&, , , , BBoxLi &); 20  Clu2 ( GridDa (2)<>&, , , , BBoxLi &); 21  Clu1 ( GridDa (1)<>&, , , , BBoxLi &); 27  GhGlobBBoxLi (cڡ GridHrchy & dagh , 28 BBoxLi * bbl , 29 BBoxLi *& gbbl ); 35 gme < ass gTy > 36  GrACEClu3d ( GridFuni (3)< Ty >& gf , 37 cڡ  time , cڡ  v , 38 cڡ  blk_width , cڡ  buf_width , 39 cڡ  m_eff , cڡ Ty thsh , 40 BBoxLi & bbl , cڡ  IDENT ); 42 gme < ass gTy > 43  GrACEClu3d ( GridFuni (3)< Ty >& gf , 44 cڡ  time , cڡ  v , 45 cڡ  blk_width , cڡ  buf_width , 46 cڡ  m_eff , cڡ Ty thsh , 47 BBoxLi & ábbl , BBoxLi& bbl , cڡ  IDENT ); 53 gme < ass gTy > 54  GrACEClu2d ( GridFuni (2)< Ty >& gf , 55 cڡ  time , cڡ  v , 56 cڡ  blk_width , cڡ  buf_width , 57 cڡ  m_eff , cڡ Ty thsh , 58 BBoxLi & bbl , cڡ  IDENT ); 60 gme < ass gTy > 61  GrACEClu2d ( GridFuni (2)< Ty >& gf , 62 cڡ  time , cڡ  v , 63 cڡ  blk_width , cڡ  buf_width , 64 cڡ  m_eff , cڡ Ty thsh , 65 BBoxLi & ábbl , BBoxLi& bbl , cڡ  IDENT ); 71 gme < ass gTy > 72  GrACEClu1d ( GridFuni (1)< Ty >& gf , 73 cڡ  time , cڡ  v , 74 cڡ  blk_width , cڡ  buf_width , 75 cڡ  m_eff , cڡ Ty thsh , 76 BBoxLi & bbl , cڡ  IDENT ); 78 gme < ass gTy > 79  GrACEClu1d ( GridFuni (1)< Ty >& gf , 80 cڡ  time , cڡ  v , 81 cڡ  blk_width , cڡ  buf_width , 82 cڡ  m_eff , cڡ Ty thsh , 83 BBoxLi & ábbl , BBoxLi& bbl , cڡ  IDENT ); 86 #i defed ( Wt_c_fes ) 87  ~"GrACEClu.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GrACEClusterDum.cpp 11  ~"GrACEClu.h " 16  $GhGlobBBoxLi (cڡ GridHrchy & dagh , 17 BBoxLi * bbl , 18 BBoxLi *& gbbl ) 20 cڡ  me = comm_rvi :: `oc_me (); 21 cڡ  num = comm_rvi :: `oc_num (); 23 i( num > 1) { 24  dsize =0, rcvsize =0; 25 * dbuf = bbl -> `ck ( dsize ); 26 * rcvbuf = 0; 27 dagh . `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize , comm_rvi :: `comm ()); 28 i( gbbl de gbbl; 29 gbbl = w `BBoxLi ( rcvbuf , rcvsize , num ); 33 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GrACEIO.h 1 #ide _uded_ACEIO_h 2  #_uded_ACEIO_h ) 14  #ACEIO_TYPES (5) ) 17  #ACEIO_NONE (0) ) 18  #ACEIO_HDF_RNPL (1) ) 19  #ACEIO_HDF_NCSA (2) ) 20  #ACEIO_IEEEIO_NCSA (3) ) 21  #ACEIO_DUMMY (4) ) 24  #DAGHIO_NONE (0) ) 25  #DAGHIO_HDF_RNPL (1) ) 26  #DAGHIO_HDF_NCSA (2) ) 27  #DAGHIO_IEEEIO_NCSA (3) ) 28  #DAGHIO_DUMMY (4) ) 30  ~"ACEIOPams.h " 33  ACEIO_HDF_RNPL_Wre ( ass GridHrchy &,  gdhdr *, *); 34  ACEIO_HDF_RNPL_Rd ( ass GridHrchy &,  gdhdr *, *); 37  ACEIO_HDF_NCSA_Wre ( ass GridHrchy &,  gdhdr *, *); 38  ACEIO_HDF_NCSA_Rd ( ass GridHrchy &,  gdhdr *, *); 39  ACEIO_HDF_NCSA_Fize (); 42  ACEIO_IEEEIO_NCSA_Inlize (); 43  ACEIO_IEEEIO_NCSA_Wre ( ass GridHrchy &,  gdhdr *, *); 44  ACEIO_IEEEIO_NCSA_Rd ( ass GridHrchy &,  gdhdr *, *); 45  ACEIO_IEEEIO_NCSA_Fize (); 48 le  $ACEIO_DUMMY_Inlize () 49 { << dl << "ACEIO_Dummy_Inlize" <= ev ;v-= v ) { 37 num +( `gbBBox ( v , ovp )). `size (); 39  num ; 40 } } 42  gGridBox :: $gbWk (cڡ  ev , 43 cڡ  ovp ) const 45  wk = 0; 46  v = fev ;v>= ev ;v-= v ) { 47 wk +(1 << ( v - ev )* ( `gbBBox ev, ovp )). `size (); 49  wk ; 50 } } 52  gGridBox :: $gbNum (cڡ  v , 53 cڡ  ovp ) const 55  (( v <= fev &&ev>= ev ) ? 56 ( `gbBBox ( v , ovp )). `size () : 0); 57 } } 59  gGridBox :: $gbWk (cڡ  v , 60 cڡ  ev , 61 cڡ  ovp ) const 63  (( v <= fev &&ev>= ev ) ? 64 ((1 << ( v - ev )* ( `gbBBox ev, ovp )). `size ()) : 0); 65 } } 67  gGridBox :: $gbNum (cڡ * ovp ) const 69  num = 0; 70  v = fev ;v>= ev ;v-= v ) { 71 num +( `gbBBox ( v , ovp )). `size (); 73  num ; 74 } } 76  gGridBox :: $gbWk (cڡ  ev , 77 cڡ * ovp ) const 79  wk = 0; 80  v = fev ;v>= ev ;v-= v ) { 81 wk +(1 << ( v - ev )* ( `gbBBox ev, ovp )). `size (); 83  wk ; 84 } } 86  gGridBox :: $gbNum (cڡ  v , 87 cڡ * ovp ) const 89  (( v <= fev &&ev>= ev ) ? 90 ( `gbBBox ( v , ovp )). `size () : 0); 91 } } 93  gGridBox :: $gbWk (cڡ  v , cڡ  ev , 94 cڡ * ovp ) const 96  (( v <= fev &&ev>= ev ) ? 97 ((1 << ( v - ev )* ( `gbBBox ev, ovp )). `size ()) : 0); 98 } } 115 BBox gGridBox :: $gbBBox (cڡ  v , 116 cڡ  ޭ , 117 cڡ  extgh ) const 119 i( bbox . `emy (|| v > fev ||ev < ev ) 120  ( BBox :: _emy_bbox ); 121 i( v = fev ) 122  ( ( ޭ ==0 && extgh ==0? bbox : 123 ( extgh ==0? `growu ( bbox , ޭ ) : 124 `grow ( `growu ( bbox , ޭ ), extgh ) ); 125 i( v > fev ) 126  ( ( ޭ ==0 && extgh ==0) ? 127 `fe ( bbox , `GCdy (1, v - fev ),1) : 128 ( extgh ==0) ? 129 `growu ( `fe ( bbox , `GCdy (1, v - fev ),1), 130 ޭ ) : 131 `grow ( `growu ( `fe ( bbox , `GCdy (1, v - fev ),1), 132 ޭ ), extgh ) ); 133 i( v < fev ) 134  ( ( ޭ ==0 && extgh ==0) ? 135 `crn ( bbox , `GCdy (1, fev - v )) : 136 ( extgh ==0) ? 137 `growu ( `crn ( bbox , `GCdy (1, fev - v )), 138 ޭ ) : 139 `grow ( `growu ( `crn ( bbox , `GCdy (1, fev - v )), 140 ޭ ), extgh ) ); 142  ( BBox :: _emy_bbox ); 143 } } 145 BBox gGridBox :: $gbBBox (cڡ  v , 146 cڡ * ޭ , 147 cڡ  extgh ) const 149 i( bbox . `emy (|| v > fev ||ev < ev ) 150  ( BBox :: _emy_bbox ); 151 i( v = fev ) 152  ( ( ޭ ==0 && extgh ==0? bbox : 153 ( extgh ==0? `growubydim ( bbox , ޭ ) : 154 `grow ( `growubydim ( bbox , ޭ ), extgh ) ); 155 i( v > fev ) 156  ( ( ޭ ==0 && extgh ==0) ? 157 `fe ( bbox , `GCdy (1, v - fev ),1) : 158 ( extgh ==0) ? 159 `growubydim ( `fe ( bbox , `GCdy (1, v - fev ),1), 160 ޭ ) : 161 `grow ( `growubydim ( `fe ( bbox , `GCdy (1, v - fev ),1), 162 ޭ ), extgh ) ); 163 i( v < fev ) 164  ( ( ޭ ==0 && extgh ==0) ? 165 `crn ( bbox , `GCdy (1, fev - v )) : 166 ( extgh ==0) ? 167 `growubydim ( `crn ( bbox , `GCdy (1, fev - v )), 168 ޭ ) : 169 `grow ( `growubydim ( `crn ( bbox , `GCdy (1, fev - v )), 170 ޭ ), extgh ) ); 172  ( BBox :: _emy_bbox ); 173 } } 175 BBox gGridBox :: $gbBBox (cڡ  v , 176 cڡ * ޭ , 177 cڡ * extgh ) const 179 i( bbox . `emy (|| v > fev ||ev < ev ) 180  ( BBox :: _emy_bbox ); 181 i( v = fev ) 182  ( ( ޭ ==0 && extgh ==0? bbox : 183 ( extgh ==0? `growubydim ( bbox , ޭ ) : 184 `growbydim ( `growubydim ( bbox , ޭ ), extgh ) ); 185 i( v > fev ) 186  ( ( ޭ ==0 && extgh ==0) ? 187 `fe ( bbox , `GCdy (1, v - fev ),1) : 188 ( extgh ==0) ? 189 `growubydim ( `fe ( bbox , `GCdy (1, v - fev ),1), 190 ޭ ) : 191 `growbydim ( `growubydim ( `fe ( bbox , `GCdy (1, v - fev ),1), 192 ޭ ), extgh ) ); 193 i( v < fev ) 194  ( ( ޭ ==0 && extgh ==0) ? 195 `crn ( bbox , `GCdy (1, fev - v )) : 196 ( extgh ==0) ? 197 `growubydim ( `crn ( bbox , `GCdy (1, fev - v )), 198 ޭ ) : 199 `growbydim ( `growubydim ( `crn ( bbox , `GCdy (1, fev - v )), 200 ޭ ), extgh ) ); 202  ( BBox :: _emy_bbox ); 203 } } 205 BBox gGridBox :: $gbBBoxAbs (cڡ  v , 206 cڡ  ޭ , 207 cڡ  extgh ) const 209 i( bbox . `emy ()) 210  ( BBox :: _emy_bbox ); 211 i( v = fev ) 212  ( ( ޭ ==0 && extgh ==0? bbox : 213 ( extgh ==0? `growu ( bbox , ޭ ) : 214 `grow ( `growu ( bbox , ޭ ), extgh ) ); 215 i( v > fev ) 216  ( ( ޭ ==0 && extgh ==0) ? 217 `fe ( bbox , `GCdy (1, v - fev ),1) : 218 ( extgh ==0) ? 219 `growu ( `fe ( bbox , `GCdy (1, v - fev ),1), 220 ޭ ) : 221 `grow ( `growu ( `fe ( bbox , `GCdy (1, v - fev ),1), 222 ޭ ), extgh ) ); 223 i( v < fev ) 224  ( ( ޭ ==0 && extgh ==0) ? 225 `crn ( bbox , `GCdy (1, fev - v )) : 226 ( extgh ==0) ? 227 `growu ( `crn ( bbox , `GCdy (1, fev - v )), 228 ޭ ) : 229 `grow ( `growu ( `crn ( bbox , `GCdy (1, fev - v )), 230 ޭ ), extgh ) ); 232  ( BBox :: _emy_bbox ); 233 } } 235 BBox gGridBox :: $gbBBoxAbs (cڡ  v , 236 cڡ * ޭ , 237 cڡ  extgh ) const 239 i( bbox . `emy ()) 240  ( BBox :: _emy_bbox ); 241 i( v = fev ) 242  ( ( ޭ ==0 && extgh ==0? bbox : 243 ( extgh ==0? `growubydim ( bbox , ޭ ) : 244 `grow ( `growubydim ( bbox , ޭ ), extgh ) ); 245 i( v > fev ) 246  ( ( ޭ ==0 && extgh ==0) ? 247 `fe ( bbox , `GCdy (1, v - fev ),1) : 248 ( extgh ==0) ? 249 `growubydim ( `fe ( bbox , `GCdy (1, v - fev ),1), 250 ޭ ) : 251 `grow ( `growubydim ( `fe ( bbox , `GCdy (1, v - fev ),1), 252 ޭ ), extgh ) ); 253 i( v < fev ) 254  ( ( ޭ ==0 && extgh ==0) ? 255 `crn ( bbox , `GCdy (1, fev - v )) : 256 ( extgh ==0) ? 257 `growubydim ( `crn ( bbox , `GCdy (1, fev - v )), 258 ޭ ) : 259 `grow ( `growubydim ( `crn ( bbox , `GCdy (1, fev - v )), 260 ޭ ), extgh ) ); 262  ( BBox :: _emy_bbox ); 263 } } 265 BBox gGridBox :: $gbBBox (cڡ  ml , 266 cڡ  maxl , 267 cڡ * ޭ , 268 cڡ  extgh ) const 270 i( bbox . `emy (|| ml > fev || maxl < ev ) 271  ( BBox :: _emy_bbox ); 272 i( maxl > fev ) 273  ( ( ޭ ==0 && extgh ==0? bbox : 274 ( extgh ==0? `growubydim ( bbox , ޭ ) : 275 `grow ( `growubydim ( bbox , ޭ ), extgh ) ); 276 i( maxl < fev ) 277  ( ( ޭ ==0 && extgh ==0) ? 278 `crn ( bbox , `GCdy (1, fev - maxl )) : 279 ( extgh ==0) ? 280 `growubydim ( `crn ( bbox , `GCdy (1, fev - maxl )), 281 ޭ ) : 282 `grow ( `growubydim ( `crn ( bbox , `GCdy (1, fev - maxl )), 283 ޭ ), extgh ) ); 285  ( BBox :: _emy_bbox ); 286 } } 305 goam & gݔ << (oam& gos , cڡ gGridBox & ggb ) 308 i(& ggb =( GridBox *) NULL  os ; 310 gos << "Owr: " << ggb . gowr << " "; 311 gos << "Idx: " << ggb . gdex << " "; 312 gos << "PIdx: " << ggb . gpdex << " "; 313 gos << "CLev: " << ggb . gev << " "; 314 gos << "Fv: " << ggb . gfev << " "; 315 gos << "LevSp: " << ggb . gv << " "; 316 gos << "NLev: " << ggb . gbNumLev () << " "; 318  gi = gb . ev ;i<=gb. fev ;i+=gb. v ) { 319 os << "\n"; 320 gos << "Lev " << gi << ":"; 321 gos << ggb . gbBBox ( i ) << " "; 322 gos << ( ggb . gbBBox ( i )). exs () << " "; 323 gos << ( ggb . gbBBox ( i )). size () << " "; 324 gos << "\n"; 326  gos ; 345 gofam & gݔ << (ofam& gofs , cڡ gGridBox & ggb ) 348 i(& ggb =( GridBox *) NULL  ofs ; 350 gofs . wre ((*)& gb ,( GridBox )); 352  gofs ; 355 gifam & gݔ >> (ifam& gifs , gGridBox & ggb ) 358 i(& ggb =( GridBox *) NULL  ifs ; 360 gifs . ad ((*)& gb ,( GridBox )); 362  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridBox.h 1 #ide _uded_GridBox_h 2  #_uded_GridBox_h ) 14  ~"ACEPams.h " 15  ~"BBox.h " 17  #GridBoxNULL (( GridBox * NULL ) ) 19 as cGridBox 21 nd moam & mݔ <<(oam&, cڡ mGridBox &); 22 nd mofam & mݔ <<(ofam&, cڡ mGridBox &); 23 nd mifam & mݔ >>(ifam&, mGridBox &); 24 nd ass mGridBoxLi ; 26  mowr ; 27  mdex ; 28  mpdex ; 29  mev ; 30  mfev ; 31  mv ; 33 BBox mbbox ; 35 mpublic : 37 le $GridBox () 38 : `owr ( ACENoBody ), 39 `dex ( ACENu ), 40 `pdex ( ACENu ), 41 `ev (0), 42 `fev (0), 43 `v (0) {} 45 le $GridBox (cڡ  own , 46 cڡ  idx , 47 cڡ  pidx , 48 cڡ  ev , 49 cڡ  ev , 50 cڡ  l , 51 cڡ BBox & bb ) 52 : `owr ( own ), 53 `dex ( idx ), 54 `pdex ( pidx ), 55 `ev ( ev ), 56 `fev ( ev ), 57 `v ( l ), 58 $bbox ( bb { } } 60 le $GridBox ( GridBox cڡ & h ) 61 : `owr ( h . owr ), 62 `dex ( h . dex ), 63 `pdex ( h . pdex ), 64 `ev ( h . ev ), 65 `fev ( h . fev ), 66 `v ( h . v ), 67 $bbox ( h . bbox { } } 69 gle ~ $GridBox ({ } } 71 le GridBox cڡ & gݔ (GridBox cڡ & h ) 73 owr = h .owner; 74 gdex = h . dex ; 75 gpdex = h . pdex ; 76 gev = h . ev ; 77 gfev = h . fev ; 78 gv = h . v ; 79 gbbox = h . bbox ; 80  (* gthis ); 83 le  $SGridBox (cڡ  own , 84 cڡ  idx , 85 cڡ  pidx , 86 cڡ  ev , 87 cڡ  ev , 88 cڡ  l , 89 cڡ BBox & bb ) 91 owr = own ; 92 dex = idx ; 93 pdex = pidx ; 94 ev = ev ; 95 fev = ev ; 96 v = l ; 97 bbox = bb ; 98 } } 100 le  $GCdy (cڡ  dim , 101 cڡ  v ) const 102 {  ()1<<( v * dim ); } } 105 le  gݔ =( GridBox cڡ & h ) const 107 i(( this =& h || ( ev == other.crslev && 108 gbBBox ( ev = h .gbBBox(crslev)))  1; 113 le  $gbOwr (cڡ {  ( owr ); } } 114 le  $gbIndex (cڡ {  ( dex ); } } 115 le  $gbPIndex (cڡ {  ( pdex ); } } 116 le  $gbRk (cڡ {  ( bbox . nk ); } } 117 le  $gbFeLev (cڡ {  ( fev ); } } 118 le  $gbCrsLev (cڡ {  ( ev ); } } 119 le  $gbNumLev () const 120 {  (( fev - ev )/ v +1); } } 121 le  $gbLevSp (cڡ {  ( v ); } } 122 le  $gbLevIndex (cڡ  v ) const 123 {  (( v - ev )/ v ); } } 125 le  $gbCڏs (cڡ  v ) const 126 {  ( v <= fev &&ev>= ev ); } } 127 le  $gbCڏs (cڡ  mv , 128 cڡ  maxv ) const 129 {  ( mv <= fev && maxv >= ev ); } } 131 le  $gbSIndex (cڡ  idx { dex = idx; } } 132 le  $gbSOwr (cڡ  p { owr =; } } 134  $gbNum (cڡ  ovp ) const; 135  $gbWk (cڡ  ev , 136 cڡ  ovp ) const; 137  $gbNum (cڡ  v , 138 cڡ  ovp ) const; 139  $gbWk (cڡ  v , 140 cڡ  ev , 141 cڡ  ovp ) const; 143  $gbNum (cڡ * ovp ) const; 144  $gbWk (cڡ  ev , 145 cڡ * ovp ) const; 146  $gbNum (cڡ  v , 147 cڡ * ovp ) const; 148  $gbWk (cڡ  v , 149 cڡ  ev , 150 cڡ * ovp ) const; 152 le  $gbSBBox (cڡ BBox & bb { bbox = bb; } } 154 le cڡ gBBox & $gbBBox (cڡ {  bbox ; } } 156 le BBox $gbBBox (cڡ  v ) const 157 {  (( v = fev ? bbox : (v < fev &&ev > ev ) ? 158 `crn ( bbox , `GCdy (1, fev - v )) : 159 BBox :: _emy_bbox ); } } 161 le BBox $gbBBoxAbs (cڡ  v ) const 162 {  (( v = fev ? bbox : (lev < finelev) ? 163 `crn ( bbox , `GCdy (1, fev - v )) : 164 `fe ( bbox , `GCdy (1, v - fev ),1)); } } 166 BBox gbBBox (cڡ  v , 167 cڡ  ޭ , 168 cڡ  extgh =0) const; 169 BBox gbBBox (cڡ  v , 170 cڡ * ޭ , 171 cڡ  extgh =0) const; 172 BBox $gbBBox (cڡ  v , 173 cڡ * ޭ , 174 cڡ * extgh ) const; 176 BBox `gbBBoxAbs (cڡ  v , 177 cڡ  ޭ , 178 cڡ  extgh =0) const; 179 BBox `gbBBoxAbs (cڡ  v , 180 cڡ * ޭ , 181 cڡ  extgh =0) const; 183 BBox `gbBBox (cڡ  ml , 184 cڡ  maxl , 185 cڡ * ޭ , 186 cڡ  extgh =0) const; 189 le  $gbGLevs ( GridBox & gb , 190 cڡ  v ) const 192 gb . owr =owner; 193 gb . dex =index; 194 gb . pdex =pindex; 195 gb . ev = v ; 196 gb . fev = v ; 197 gb . v =levstep; 198 gb . bbox = `gbBBoxAbs (gb. fev ); 199 } } 201 le  $gbRefe ( GridBox & gb , 202 cڡ  vs ) const 204 gb . owr =owner; 205 gb . dex =index; 206 gb . pdex =pindex; 207 gb . ev = fev + v ; 208 gb . fev =fev+ v * vs ; 209 gb . v =levstep; 210 gb . bbox = `gbBBoxAbs (gb. fev ); 211 } } 214 le  $gbSLevs ( GridBox & gb , 215 cڡ  v ) const 217 gb . ev = v ; 218 gb . fev = v ; 219 gb . bbox = `gbBBoxAbs (gb. fev ); 220 } } 222 le  $gbSRefe ( GridBox & gb , 223 cڡ  vs ) const 225 gb . ev =gb. fev +gb. v ; 226 gb . fev +=(gb. v * vs ); 227 gb . bbox = `gbBBoxAbs (gb. fev ); 228 } } 231 goam & gݔ << (oam& gos , cڡ gGridBox & ggb ); 232 gofam & gݔ << (ofam& gofs , cڡ gGridBox & ggb ); 233 gifam & gݔ >> (ifam& gifs , gGridBox & ggb ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridBoxList.cpp 10  ~"GridBoxLi.h " 12 #ifde DEBUG_PRINT 13  ~"CommSv.h " 31 gGridBoxLi & GridBoxLi:: ݔ = (cڡ GridBoxLi & ch ) 33 GridBoxLi & h = (GridBoxLi &) ch ; 34  cd * gtmpcur = h . cuec (); 35 i( gnum !0 emy (); 36 GridBox * ggb = 0; 37  ggb = h . f ();gb;gb=h. xt () add (* gb ); 38 as ( num == h .num); 39 gh . tcuec ( tmpcur ); 40  * gthis ; 60  gGridBoxLi :: $difn ( GridBoxLi & gbl , 61 cڡ GridBox lhsgb , 62 cڡ GridBox rhsgb ) 64 cڡ  ev = lhsgb . `gbCrsLev (); 65 cڡ BBox hs = lhsgb . `gbBBox ( ev ); 66 cڡ BBox hs = rhsgb . `gbBBox ( ev ); 68 i(! hs . `rs ( hs ) ACEF ; 69 i( hs = hs  ACETrue ; 71 cڡ  v = lhsgb . `gbFeLev (); 72 cڡ BBox lhs = lhsgb . `gbBBoxAbs ( v ); 73 cڡ BBox rhs = rhsgb . `gbBBoxAbs ( v ); 75 cڡ Cods & s = lhs . `size (); 80 Cods lhb = lhs . `low (); 81 Cods lhsub = lhs . `u (); 82 cڡ Cods & rhb = rhs . `low (); 83 cڡ Cods & rhsub = rhs . `u (); 85  d =0;d< lhs . nk ;d++) { 86 i( `lhsub ( d > `rhsub (d)) { 87 GridBox * wgb = gbl . ` ( lhsgb ); gbl. `ev (); 88 wgb -> bbox . `low ( d `rhsub (d+ `s (d); 89 `lhsub ( d `rhsub (d); 91 i( `lhb ( d < `rhb (d)) { 92 GridBox * wgb = gbl . ` ( lhsgb ); gbl. `ev (); 93 wgb -> bbox . `u ( d `rhb (d- `s (d); 94 `lhb ( d `rhb (d); 97  ACETrue ; 98 } } 115  gGridBoxLi :: $ri ( GridBoxLi & gbl , 116 cڡ GridBox lhsgb , 117 cڡ GridBox rhsgb ) 119 cڡ  ev = lhsgb . `gbCrsLev (); 120 cڡ BBox hs = lhsgb . `gbBBox ( ev ); 121 cڡ BBox hs = rhsgb . `gbBBox ( ev ); 123 i(! hs . `rs ( hs ) ACEF ; 125 cڡ  v = lhsgb . `gbFeLev (); 126 cڡ BBox lhs = lhsgb . `gbBBoxAbs ( v ); 127 cڡ BBox rhs = rhsgb . `gbBBoxAbs ( v ); 129 cڡ Cods & s = lhs . `size (); 131 i( lhs . `rs ( rhs )) { 132 gbl . `ev (); 133 GridBox * wgb = gbl . ` ( lhsgb ); 134 wgb -> bbox * rhs ; 135 gbl . `xt (); 136  ACETrue ; 139  ACEF ; 140 } } 158  gGridBoxLi :: ݔ -(cڡ GridBoxLi & rhs ) 160 GridBoxLi & diff = * this ; 162 gGridBoxLi & gr = ( GridBoxLi & rhs ; 163  cd * gtmpcur = r . cuec (); 165  gag = ACEF ; 167 cڡ GridBox * grhsgb = r . f (); 168  GridBox * ggb = 0; 169 ; grhsgb ;rhsgb= r . xt ()) { 170  gb = diff . f ();( ggb || gag ); 171 ggb = diff . xt (), gag = ACEF ) { 172 i( difn ( diff ,* gb ,* rhsgb )) { 173 diff . move (); 174 i(! ggb gag = ACETrue ; 179 gr . tcuec ( tmpcur ); 199  gGridBoxLi :: ݔ *(cڡ GridBoxLi & rhs ) 201 GridBoxLi & r = * this ; 203 gGridBoxLi & gr = ( GridBoxLi & rhs ; 204  cd * gtmpcur = r . cuec (); 206 cڡ GridBox * grhsgb = r . f (); 207  GridBox * ggb = r . f (); 208 ; ggb ;gb= r . xt ()) { 209 ; grhsgb ;rhsgb= r . xt ()) { 210 ri ( r ,* gb ,* rhsgb ); 211 ggb = r . cut (); 213 i(! grhsgb ) { 214 gr . move (); 215 grhsgb = r . f (); 218 gr . tcuec ( tmpcur ); 236  gGridBoxLi :: $ld (cڡ  ev , 237 cڡ  ޭ ) 239  ld = 0; 240  cd * tmpcur = `cuec (); 241  GridBox * g = 0; 242  g = `f (); g ! GridBoxNULL ; g = `xt () ) 243 { ld + g -> `gbWk ( ev , ޭ ); } 244 `tcuec ( tmpcur ); 245  ld ; 246 } } 248  gGridBoxLi :: $ld (cڡ  v , 249 cڡ  ev , 250 cڡ  ޭ ) 252  ld = 0; 253  cd * tmpcur = `cuec (); 254  GridBox * g = 0; 255  g = `f (); g ! GridBoxNULL ; g = `xt () ) 256 { ld + g -> `gbWk ( v , ev , ޭ ); } 257 `tcuec ( tmpcur ); 258  ld ; 259 } } 261  gGridBoxLi :: $numems (cڡ  ޭ ) 263  gem = 0; 264  cd * tmpcur = `cuec (); 265  GridBox * g = 0; 266  g = `f (); g ! GridBoxNULL ; g = `xt () ) 267 { gem + g -> `gbNum ( ޭ ); } 268 `tcuec ( tmpcur ); 269  gem ; 270 } } 272  gGridBoxLi :: $numems (cڡ  v , 273 cڡ  ޭ ) 275  gem = 0; 276  cd * tmpcur = `cuec (); 277  GridBox * g = 0; 278  g = `f (); g ! GridBoxNULL ; g = `xt () ) 279 { gem + g -> `gbNum ( v , ޭ ); } 280 `tcuec ( tmpcur ); 281  gem ; 282 } } 284  gGridBoxLi :: $ld (cڡ  ev , 285 cڡ * ޭ ) 287  ld = 0; 288  cd * tmpcur = `cuec (); 289  GridBox * g = 0; 290  g = `f (); g ! GridBoxNULL ; g = `xt () ) 291 { ld + g -> `gbWk ( ev , ޭ ); } 292 `tcuec ( tmpcur ); 293  ld ; 294 } } 296  gGridBoxLi :: $ld (cڡ  v , 297 cڡ  ev , 298 cڡ * ޭ ) 300  ld = 0; 301  cd * tmpcur = `cuec (); 302  GridBox * g = 0; 303  g = `f (); g ! GridBoxNULL ; g = `xt () ) 304 { ld + g -> `gbWk ( v , ev , ޭ ); } 305 `tcuec ( tmpcur ); 306  ld ; 307 } } 309  gGridBoxLi :: $numems (cڡ * ޭ ) 311  gem = 0; 312  cd * tmpcur = `cuec (); 313  GridBox * g = 0; 314  g = `f (); g ! GridBoxNULL ; g = `xt () ) 315 { gem + g -> `gbNum ( ޭ ); } 316 `tcuec ( tmpcur ); 317  gem ; 318 } } 320  gGridBoxLi :: $numems (cڡ  v , cڡ * ޭ ) 322  gem = 0; 323  cd * tmpcur = `cuec (); 324  GridBox * g = 0; 325  g = `f (); g ! GridBoxNULL ; g = `xt () ) 326 { gem + g -> `gbNum ( v , ޭ ); } 327 `tcuec ( tmpcur ); 328  gem ; 329 } } 346  gGridBoxLi :: $fe () 348  ev = 0; 349  cd * tmpcur = `cuec (); 350  GridBox * g = 0; 351  g = `f (); g ! GridBoxNULL ; g = `xt () ) 352 { ev = ( g -> fev > flev) ? g->finelev : flev; } 353 `tcuec ( tmpcur ); 354  ( ev ); 355 } } 357  gGridBoxLi :: $cr () 359  ev = ACELge ; 360  cd * tmpcur = `cuec (); 361  GridBox * g = 0; 362  g = `f (); g ! GridBoxNULL ; g = `xt () ) 363 { ev = ( g -> ev < clev) ? g->crslev : clev; } 364 `tcuec ( tmpcur ); 365  ( ev ); 366 } } 386  gGridBoxLi :: $smˡ (cڡ  v ) 388 i( num =0 ACENu ; 389  cd * tmpcur = `cuec (); 390  GridBox * g = `f (); 391 cڡ  nk = g -> `gbRk (); 392  xt = ACENu ; 393  e = 0; 394  ; g ! GridBoxNULL ; g = `xt () ) { 395 i(! g -> `gbCڏs ( v )) ; 396 cڡ Cods & ext = ( g -> `gbBBox ( v )). `exs (); 397 i( xt = ACENu x `ext (0); 398 xt = (( e = `ext (0)) < sext) ? :sext; 399 xt = ( nk > 1 && ( e = `ext (1)) < sext) ? :sext; 400 xt = ( nk > 2 && ( e = `ext (2)) < sext) ? :sext; 402 `tcuec ( tmpcur ); 403  ( xt ); 404 } } 423  gGridBoxLi :: $mches (cڡ BBox & bb , cڡ  v ) 425  t = 0; 426 i( bb . `emy () t ; 427  cd * tmpcur = `cuec (); 428  GridBox * g = `f (); 429  ; g ! GridBoxNULL ; g = `xt () ) 430 i(( g -> `gbBBox ( v )). `rs ( bb ) t ++; 431 `tcuec ( tmpcur ); 432  ( t ); 433 } } 435  gGridBoxLi :: $absmches (cڡ BBox & bb , cڡ  v ) 437  t = 0; 438 i( bb . `emy () t ; 439  cd * tmpcur = `cuec (); 440  GridBox * g = `f (); 441  ; g ! GridBoxNULL ; g = `xt () ) 442 i(( g -> `gbBBox ( v )= bb t ++; 443 `tcuec ( tmpcur ); 444  ( t ); 445 } } 463  gGridBoxLi :: $dex (cڡ BBox & bb , cڡ  v ) 465 i( bb . `emy () ACENu ; 466  cd * tmpcur = `cuec (); 467  GridBox * g = `f (); 468  ; g ! GridBoxNULL ; g = `xt () ) 469 i(( g -> `gbBBox ( v )). `rs ( bb )) ; 471 `tcuec ( tmpcur ); 472  ( g ? g-> `gbIndex (: ACENu ); 473 } } 491  gGridBoxLi :: $absdex (cڡ BBox & bb , cڡ  v ) 493 i( bb . `emy () ACENu ; 494  cd * tmpcur = `cuec (); 495  GridBox * g = `f (); 496  ; g ! GridBoxNULL ; g = `xt () ) 497 i(( g -> `gbBBox ( v )= bb ) ; 498 `tcuec ( tmpcur ); 499  ( g != GridBoxNULL ? g-> `gbIndex (: ACENu ); 500 } } 518  gGridBoxLi :: $maxdex () 520 i( num =0 ACENu ; 521  cd * tmpcur = `cuec (); 522  GridBox * g = `f (); 523  mi = g -> `gbIndex (); 524  i = 0; 525  ; g ! GridBoxNULL ; g = `xt () ) 526 { mi = (( i = g -> dex ) > mi) ? i : mi; } 527 `tcuec ( tmpcur ); 528  ( mi ); 529 } } 547 cڡ gGridBox & gGridBoxLi :: $fd (cڡ BBox & bb , cڡ  v ) 549  cd * tmpcur = `cuec (); 550  GridBox * g = `f (); 551  ; g ! GridBoxNULL ; g = `xt () ) 552 i(( g -> `gbBBox ( v )). `rs ( bb )) ; 554 `tcuec ( tmpcur ); 555  (* g ); 556 } } 574  gGridBoxLi :: $r (cڡ BBox & rhs , cڡ  v , 575 GridBoxLi & gbl ) 577 i(! gbl . `imy ()gbl. `emy (); 578 i( rhs . `emy ()) ; 579  GridBox * gb = `f (); 580 ; gb ;gb= `xt ()) 581 i(( gb -> `gbBBox ( v )). `rs ( rhs )) 582 gbl . `add (* gb ); 583 } } 585  gGridBoxLi :: $r (cڡ BBox & rhs , cڡ  v , 586 GridBoxLi & gbl , cڡ  ޭ , 587 cڡ  extgh ) 589 i(! gbl . `imy ()gbl. `emy (); 590 i( rhs . `emy ()) ; 591  GridBox * gb = `f (); 592 ; gb ;gb= `xt ()) 593 i(( gb -> `gbBBox ( v , ޭ , extgh )). `rs ( rhs )) 594 gbl . `add (* gb ); 595 } } 597  gGridBoxLi :: $r (cڡ BBoxLi & hs , cڡ  v , 598 GridBoxLi & gbl , cڡ  ޭ , 599 cڡ  extgh ) 601 BBoxLi & rhs = (BBoxLi & hs ; 602  cd * tmpcur = rhs . `cuec (); 604 i(! gbl . `imy ()gbl. `emy (); 606  BBox * rhsbb = 0; 608 BBox bb ; 609  GridBox * gb = `f (); 610 ; gb ;gb= `xt ()) { 611 bb = gb -> `gbBBox ( v , ޭ , extgh ); 612 if(! bb . `emy ()) { 613  rhsbb = rhs . `f ();rhsbb;rhsbbhs. `xt ()) { 614 i(! rhsbb -> `emy (&& bb . `rs (*rhsbb)) { 615 gbl . `add (* gb ); 622 rhs . `tcuec ( tmpcur ); 623 } } 625  gGridBoxLi :: $r (cڡ BBox & rhs , cڡ  v , 626 GridBoxLi & gbl , cڡ * ޭ , 627 cڡ  extgh ) 629 i(! gbl . `imy ()gbl. `emy (); 630 i( rhs . `emy ()) ; 631  GridBox * gb = `f (); 632 ; gb ;gb= `xt ()) 633 i(( gb -> `gbBBox ( v , ޭ , extgh )). `rs ( rhs )) 634 gbl . `add (* gb ); 635 } } 637  gGridBoxLi :: $r (cڡ BBoxLi & hs , cڡ  v , 638 GridBoxLi & gbl , cڡ * ޭ , 639 cڡ  extgh ) 641 BBoxLi & rhs = (BBoxLi & hs ; 642  cd * tmpcur = rhs . `cuec (); 644 i(! gbl . `imy ()gbl. `emy (); 646  BBox * rhsbb = 0; 648 BBox bb ; 649  GridBox * gb = `f (); 650 ; gb ;gb= `xt ()) { 651 bb = gb -> `gbBBox ( v , ޭ , extgh ); 652 if(! bb . `emy ()) { 653  rhsbb = rhs . `f ();rhsbb;rhsbbhs. `xt ()) { 654 i(! rhsbb -> `emy (&& bb . `rs (*rhsbb)) { 655 gbl . `add (* gb ); 662 rhs . `tcuec ( tmpcur ); 663 } } 681  gGridBoxLi :: $bboxli ( BBoxLi & bbl , cڡ  v , 682 cڡ  ޭ ) 684 cڡ  extgh = 0; 685 if(! bbl . `imy ()bbl. `emy (); 687 GridBox vgb ; 688  GridBox * tmpgb = `f (); 689 ; tmpgb ;tmpgb= `xt ()) { 690 bbl . `add ( tmpgb -> `gbBBox ( v , ޭ , extgh )); 692 } } 696  gGridBoxLi :: $bboxli ( BBoxLi & bbl , cڡ  v , 697 cڡ  ޭ , cڡ  vid ) 699 cڡ  extgh = 0; 700 if(! bbl . `imy ()bbl. `emy (); 702 GridBox vgb ; 703  GridBox * tmpgb = `f (); 704 ; tmpgb ;tmpgb= `xt ()) { 705 i( tmpgb -> `gbCڏs ( v )) 706 bbl . `add ( tmpgb -> `gbBBoxAbs ( v - vid , ޭ , extgh )); 708 BBox b ; 709 bbl . `add ( b ); 712 } } 714  gGridBoxLi :: $bboxli ( BBoxLi & bbl , cڡ  v , 715 cڡ * ޭ , cڡ  extgh ) 717 if(! bbl . `imy ()bbl. `emy (); 719 GridBox vgb ; 720  GridBox * tmpgb = `f (); 721 ; tmpgb ;tmpgb= `xt ()) { 722 bbl . `add ( tmpgb -> `gbBBox ( v , ޭ , extgh )); 724 } } 728  gGridBoxLi :: $bboxli ( BBoxLi & bbl , cڡ  v , 729 cڡ * ޭ , cڡ  vid , 730 cڡ  extgh ) 732 if(! bbl . `imy ()bbl. `emy (); 734 GridBox vgb ; 735  GridBox * tmpgb = `f (); 736 ; tmpgb ;tmpgb= `xt ()) { 737 i( tmpgb -> `gbCڏs ( v )) 738 bbl . `add ( tmpgb -> `gbBBoxAbs ( v - vid , ޭ , extgh )); 740 BBox b ; 741 bbl . `add ( b ); 744 } } 762  gGridBoxLi :: $vli ( GridBoxLi & gbl , cڡ  v ) 764 if(! gbl . `imy ()gbl. `emy (); 766  GridBox * tmpgb = `f (); 767 ; tmpgb ;tmpgb= `xt ()) { 768 i( tmpgb -> `gbCڏs ( v )) { 769 tmpgb -> `gbSLevs (*( gbl . `add (*tmpgb)), v ); 772 } } 774  gGridBoxLi :: $vli ( GridBoxLi & gbl , 775 cڡ  mv , 776 cڡ  maxv ) 778 if(! gbl . `imy ()gbl. `emy (); 780  ev = 0; 781  ev = 0; 782  GridBox * tmpgb = `f (); 783 ; tmpgb ;tmpgb= `xt ()) { 784 ev = tmpgb -> `gbFeLev (); 785 ev = tmpgb -> `gbCrsLev (); 786 i( mv > ev || maxv < ev ) ; 787 i( maxv > ev ) { 788 tmpgb -> `gbSLevs (*( gbl . `add (*tmpgb)), ev ); 790 i( maxv < ev ) { 791 tmpgb -> `gbSLevs (*( gbl . `add (*tmpgb)), maxv ); 794 } } 812 GridBoxLi * gGridBoxLi :: $fi (cڡ  v , 813 cڡ  vs ) 815 GridBoxLi * fgbl = w GridBoxList; 817 GridBoxLi vgbl ; 818 `vli ( vgbl , v ); 819  GridBox * vgb = 0; 821  vgb = vgbl . `f ();vgb;vgbevgbl. `xt ()) { 822 vgb -> `gbSRefe (*( fgbl -> `add (*vgb)), vs ); 824  fgbl ; 825 } } 843 goam & gݔ << (oam& gos , cڡ gGridBoxLi & gcgbl ) 845 i(& gcgbl = GridBoxLiNULL  os ; 847 gGridBoxLi & ggbl = ( GridBoxLi & cgbl ; 848  cd * gtmpcur = gbl . cuec (); 850 gos << "Num:" << ggbl . gnum << " "; 851 gos << "\n"; 853 i( ggbl . gnum =0 os ; 855 GridBox * gg = 0; 856 gos << * ggbl . f (); 857 gos << "\n**********************************\n"; 859  ( gg = gbl . xt ()! GridBoxNULL ) { 860 os << * g ; 861 gos << "\n**********************************\n"; 862 gos << gush ; 865 ggbl . tcuec ( tmpcur ); 867  gos ; 870 gofam & gݔ << (ofam& gofs , cڡ gGridBoxLi & gcgbl ) 872 i(& gcgbl = GridBoxLiNULL  ofs ; 874 gGridBoxLi & ggbl = ( GridBoxLi & cgbl ; 875  cd * gtmpcur = gbl . cuec (); 877 gofs . wre ((*)& gbl . num ,()); 879 i( ggbl . gnum =0 ofs ; 881 GridBox * gg = 0; 882  gg = gbl . f (); g ! GridBoxNULL ; g = gbl. xt ()) 883 ofs << * g ; 885 ggbl . tcuec ( tmpcur ); 887  gofs ; 906 gifam & gݔ >> (ifam& gifs , gGridBoxLi & gcgbl ) 908 i(& gcgbl = GridBoxLiNULL  ifs ; 910 gGridBoxLi & ggbl = ( GridBoxLi & cgbl ; 911  cd * gtmpcur = gbl . cuec (); 913  gnum ; 914 gifs . ad ((*)& num ,()); 916 i( gnum =0 ifs ; 918  GridBox * ggb = 0; 919  gn =0;< gnum ;++) { 920 ggb = gbl . add (); 921 gifs >> * ggb ; 924 ggbl . tcuec ( tmpcur ); 926  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridBoxList.h 1 #ide _uded_GridBoxLi_h 2  #_uded_GridBoxLi_h ) 13  ~"ACEDeus.h " 14  ~"ACEPams.h " 16  ~"BBoxLi.h " 17  ~"GridBox.h " 18  ~"BuckTy.h " 19  ~"ObjeCou.h " 21 #ide DefGridBoxLiSize 22  #DefGridBoxLiSize (128) ) 25  #GridBoxLiNULL (( GridBoxLi * NULL ) ) 31 ass gGridBoxLi : public Buck < GridBox >,ubli gObjeCou 33 nd goam & gݔ <<(oam&, cڡ gGridBoxLi &); 34 nd gofam & gݔ <<(ofam&, cڡ gGridBoxLi &); 35 nd gifam & gݔ >>(ifam&, gGridBoxLi &); 37  gnum ; 39 give : 40  le  cytyda ( GridBox * to , cڡ GridBox* om ) 41 { memy ((* to , (* om , ( GridBox )); } 46 le  ts () 47 { gnum =0; GridBox * gg = f ();g;g= xt ()) num ++;} 49 gpublic : 53 le GridBoxLi () 54 : Buck < GridBox >( DefGridBoxLiSize ), num (0) {} 58 le GridBoxLi (cڡ  maxnum , cڡ  dumg ) 59 : Buck < GridBox >( maxnum ), num (0) {} 61 le GridBoxLi (cڡ * ckage , cڡ  size , 62 cڡ  n ) 63 : Buck < GridBox >( ckage , gsize , gn ), num (0{ ts (); } 65 le GridBoxLi (cڡ GridBoxLi& h ) 66 : Buck < GridBox >( h ), num (other.num) {} 71 gGridBoxLi & gݔ = (cڡ GridBoxLi &); 76 gle ~ GridBoxLi () {} 81 le GridBoxLi * s () 82 { (( gGridBoxLi * gObjeCou :: s ()); } 87  difn ( GridBoxLi & gbl , 88 cڡ GridBox lhs , 89 cڡ GridBox rhs ); 90  ri ( GridBoxLi & gbl , 91 cڡ GridBox lhs , 92 cڡ GridBox rhs ); 93  gݔ -(cڡ GridBoxLi & rhs ); 94  gݔ *(cڡ GridBoxLi & rhs ); 102 give : 110 public : 111  r (cڡ BBox & rhs , cڡ  v , GridBoxLi & gbl ); 112  r (cڡ BBox & rhs , cڡ  v , GridBoxLi & gbl , 113 cڡ  ޭ , cڡ  extgh =0); 114  r (cڡ BBoxLi & rhs , cڡ  v , GridBoxLi & gbl , 115 cڡ  ޭ , cڡ  extgh =0); 116  r (cڡ BBox & rhs , cڡ  v , GridBoxLi & gbl , 117 cڡ * ޭ , cڡ  extgh =0); 118  r (cڡ BBoxLi & rhs , cڡ  v , GridBoxLi & gbl , 119 cڡ * ޭ , cڡ  extgh =0); 124 gpublic : 125 le  imy (cڡ { ( num == 0); } 126 le  numb (cڡ { ( gnum ); } 128  ld (cڡ  ev , 129 cڡ  ޭ ); 130  ld (cڡ  v , 131 cڡ  ev , 132 cڡ  ޭ ); 133  numems (cڡ  ޭ ); 134  numems (cڡ  v , 135 cڡ  ޭ ); 137  ld (cڡ  ev , 138 cڡ * ޭ ); 139  ld (cڡ  v , 140 cڡ  ev , 141 cڡ * ޭ ); 142  numems (cڡ * ޭ ); 143  numems (cڡ  v , 144 cڡ * ޭ ); 146  cr (); 147  fe (); 148  smˡ (cڡ  v ); 149  maxdex (); 151  mches (cڡ BBox & bb , cڡ  v ); 152  absmches (cڡ BBox & bb , cڡ  v ); 154  dex (cڡ BBox & bb , cڡ  v ); 155  absdex (cڡ BBox & bb , cڡ  v ); 156 cڡ gGridBox & fd (cڡ BBox & bb , cڡ  v ); 161 gpublic : 162 le  tdex () 163 {  idx =0; 164  GridBox * gg = f ();g;g= xt () g -> dex = idx ++; } 165 le  towr (cڡ  p ) 166 {  GridBox * gg = f ();g;g= xt () g -> owr = p ; } 167 le  t (cڡ  p ) 168 {  GridBox * gg = f ();g;g= xt () g -> pdex = p ; } 173 le  emy () 174 { gBuck < gGridBox >:: emy (); gnum = 0; } 179 le GridBox * add () 180 { gnum ++;  ( gBuck < gGridBox >:: add ()); } 181 le GridBox * add (cڡ GridBox& gb ) 182 { gnum ++;  ( gBuck < gGridBox >:: add ( gb )); } 183 le GridBox * (cڡ GridBox& gb ) 184 { gnum ++;  ( gBuck < gGridBox >:: ( gb )); } 185 le  move () 186 { i( cut (){ gnum --; gBuck < gGridBox >:: move (); }} 191  vli ( GridBoxLi & gbl , cڡ  v ); 192  vli ( GridBoxLi & gbl , cڡ  mv , 193 cڡ  maxv ); 198 GridBoxLi * fi (cڡ  v , cڡ  vs ); 203 gpublic : 204  bboxli ( BBoxLi & bbl , cڡ  v , cڡ  ޭ ); 205  bboxli ( BBoxLi & bbl , cڡ  v , cڡ  ޭ , 206 cڡ  vid ); 207  bboxli ( BBoxLi & bbl , cڡ  v , cڡ * ޭ , 208 cڡ  extgh ); 209  bboxli ( BBoxLi & bbl , cڡ  v , cڡ * ޭ , 210 cڡ  vid , cڡ  extgh ); 213 goam & gݔ << (oam& gos , cڡ gGridBoxLi & ggbl ); 214 gofam & gݔ << (ofam& gofs , cڡ gGridBoxLi & ggbl ); 215 gifam & gݔ >> (ifam& gifs , gGridBoxLi & ggbl ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridData.cpp 16  ~"GridDa.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridData.h 1 #ide _uded_GridDa_h 2  #_uded_GridDa_h ) 19  ~"GridDa3.h " 20  ~"GridDa2.h " 21  ~"GridDa1.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridData1.c 1 #ide _uded_GridDa_1_c 2  #_uded_GridDa_1_c ) 14 gme < ass gTy > 15 GridDa (1)< gTy >::GridData(1)() 16 : _bbox (), 17 _exs (0,0), 18 _ (1,1), 19 _size (0), 20 _nems (1), 21 _tsize (0), 22 _btom (0), 23 _da (( Ty * NULL ) {} 25 gme < ass gTy > 26 GridDa (1)< gTy >::GridDa(1)(cڡ BBox & bb , 27 cڡ  gnems ) 28 : _bbox ( bb ), 29 _exs ( bb . exs ()), 30 _ ( bb . size ()), 31 _size ( bb . size ()), 32 _nems ( nems ), 33 _tsize ( _nems * _size ), 34 _btom ( bb . btom ()), 35 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 37 #ifde DEBUG_PRINT_GD 38 as ( _da ); 39 as ( _da + _tsize -1); 41 #ifde DEBUG_PRINT_GD_MEMORY 42 gACEMemyT :: loc (( Ty )* _tsize ); 44 #ifde DEBUG_PRINT_GD_FILL 45 fl (9999); 49 gme < ass gTy > 50 GridDa (1)< gTy >::GridDa(1)(cڡ BBox & bb , Ty * gdabuf , 51 cڡ  gnems ) 52 : _bbox ( bb ), 53 _exs ( bb . exs ()), 54 _ ( bb . size ()), 55 _size ( bb . size ()), 56 _nems ( nems ), 57 _tsize ( _nems * _size ), 58 _btom ( bb . btom ()), 59 $_da ( dabuf ) 61 #ifde DEBUG_PRINT_GD 62 `as ( _da ); 63 `as ( _da + _tsize -1); 65 #ifde DEBUG_PRINT_GD_FILL 66 `fl (9999); 68 } } 70 gme < ass gTy > 72 GridDa (1)< gTy >::GridDa(1(cڡ  i , 73 cڡ  gii ) 74 : _bbox (1, i , ii ,1), 76 _exs ( _bbox . exs ()), 77 _ ( _bbox . size ()), 78 _size ( _bbox . size ()), 79 _nems (1), 80 _tsize ( _nems * _size ), 81 _btom ( _bbox . btom ()), 82 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 84 #ifde DEBUG_PRINT_GD 85 as ( _da ); 86 as ( _da + _tsize -1); 88 #ifde DEBUG_PRINT_GD_MEMORY 89 gACEMemyT :: loc (( Ty )* _tsize ); 91 #ifde DEBUG_PRINT_GD_FILL 92 fl (9999); 96 gme < ass gTy > 98 GridDa (1)< gTy >::GridDa(1(cڡ  i , 99 cڡ  gii , 100 cڡ  gs ) 101 : _bbox (1, i , ii , s ), 103 _exs ( _bbox . exs ()), 104 _ ( _bbox . size ()), 105 _size ( _bbox . size ()), 106 _nems (1), 107 _tsize ( _nems * _size ), 108 _btom ( _bbox . btom ()), 109 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 111 #ifde DEBUG_PRINT_GD 112 as ( _da ); 113 as ( _da + _tsize -1); 115 #ifde DEBUG_PRINT_GD_MEMORY 116 gACEMemyT :: loc (( Ty )* _tsize ); 118 #ifde DEBUG_PRINT_GD_FILL 119 fl (9999); 123 gme < ass gTy > 125 GridDa (1)< gTy >::GridDa(1(cڡ  i , 126 cڡ  gii , 127 cڡ  gs , 128 cڡ  gnems ) 129 : _bbox (1, i , ii , s ), 131 _exs ( _bbox . exs ()), 132 _ ( _bbox . size ()), 133 _size ( _bbox . size ()), 134 _nems ( nems ), 135 _tsize ( _nems * _size ), 136 _btom ( _bbox . btom ()), 137 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 139 #ifde DEBUG_PRINT_GD 140 as ( _da ); 141 as ( _da + _tsize -1); 143 #ifde DEBUG_PRINT_GD_MEMORY 144 gACEMemyT :: loc (( Ty )* _tsize ); 146 #ifde DEBUG_PRINT_GD_FILL 147 fl (9999); 151 #ide GRIDDATAONLY 152 gme < ass gTy > 153 GridDa (1)< gTy >::GridDa(1)( GridDaBuck < Ty >& gdbkt ) 154 : _bbox ( gdbkt . bbox ()), 155 _exs (( gdbkt . bbox ()). exs ()), 156 _ (( gdbkt . bbox ()). size ()), 157 _size (( gdbkt . bbox ()). size ()), 158 _nems ( gdbkt . nems ()), 159 _tsize ( _nems * _size ), 160 _btom (( gdbkt . bbox ()). btom ()), 161 _da ( gdbkt . $da ()) 163 #ifde DEBUG_PRINT_GD 164 `as ( _da ); 165 `as ( _da + _tsize -1); 167 #ifde DEBUG_PRINT_GD_FILL 170 } } 172 gme < ass gTy > 173 GridDa (1)< gTy >::GridDa(1)( GridDaBuck < Ty >& gdbkt , cڡ  gn ) 174 : _bbox ( gdbkt . bbox ( n )), 175 _exs (( gdbkt . bbox ( n )). exs ()), 176 _ (( gdbkt . bbox ( n )). size ()), 177 _size (( gdbkt . bbox ( n )). size ()), 178 _nems ( gdbkt . nems ( n )), 179 _tsize ( _nems * _size ), 180 _btom (( gdbkt . bbox ( n )). btom ()), 181 _da ( gdbkt . $da ( n )) 183 #ifde DEBUG_PRINT_GD 184 `as ( _da ); 185 `as ( _da + _tsize -1); 187 #ifde DEBUG_PRINT_GD_FILL 190 } } 193 gme < ass gTy > 194 GridDa (1)< gTy >::GridDa(1)(cڡ GridDa(1)< Ty >& h ) 195 : _bbox ( h ._bbox), 196 _exs ( h ._extents), 197 _ ( h ._step), 198 _size ( h ._size), 199 _nems ( h ._nitems), 200 _tsize ( h ._tsize), 201 _btom ( h ._bottom), 202 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 204 #ifde DEBUG_PRINT_GD 205 as ( _da ); 206 as ( _da + _tsize -1); 208 #ifde DEBUG_PRINT_GD_MEMORY 209 gACEMemyT :: loc (( Ty )* _tsize ); 211 #ifde ACENOCOPYGD 212 #ifde DEBUG_PRINT_GD_FILL 213 fl (9999); 216 memy ( _da , h ._da,( Ty )* _tsize ); 221 gme < ass gTy > 222  GridDa (1)< gTy >:: $lo (cڡ BBox & bb , 223 cڡ  nems ) 225 _bbox = bb ; 226 _exs = _bbox . `exs (); 227 _ = _bbox . `size (); 228 _size = _bbox . `size (); 229 _nems = nems ; 230 _tsize = _nems * _size ; 231 _btom = _bbox . `btom (); 232 _da = _tsize ? w Ty [_tsize] : (Ty * NULL ; 233 #ifde DEBUG_PRINT_GD 234 `as ( _da ); 235 `as ( _da + _tsize -1); 237 #ifde DEBUG_PRINT_GD_MEMORY 238 ACEMemyT :: `loc (( Ty )* _tsize ); 240 #ifde DEBUG_PRINT_GD_FILL 241 `fl (9999); 243 } } 245 gme < ass gTy > 246  GridDa (1)< gTy >:: $lo (cڡ BBox & bb , Ty * dabuf , 247 cڡ  nems ) 249 _bbox = bb ; 250 _exs = _bbox . `exs (); 251 _ = _bbox . `size (); 252 _size = _bbox . `size (); 253 _nems = nems ; 254 _tsize = _nems * _size ; 255 _btom = _bbox . `btom (); 256 #ifde DEBUG_PRINT_GD 257 `as (! _da ); 259 _da = dabuf ; 260 #ifde DEBUG_PRINT_GD 261 `as ( _da ); 262 `as ( _da + _tsize -1); 264 #ifde DEBUG_PRINT_GD_FILL 265 `fl (9999); 267 } } 269 gme < ass gTy > 270  GridDa (1)< gTy >:: $fl (cڡ Ty & v , 271 cڡ  m ) 273 `as (( m ! ACEA && itm >0 && _nems > itm) || 274 ( m = ACEA )); 276 cڡ  r = ( m = ACEA ) ? 0 : itm; 277 cڡ  d = ( m = ACEA ? _nems : itm+1; 279  i , j ; 281  i = r ; i < d ; i++) 282  j = 0; j < _size ; j++) 283 _da [ i * _size + j ] = v ; 284 } } 286 gme < ass gTy > 287  GridDa (1)< gTy >:: cy (cڡ GridDa(1)< Ty >& gd , 288 cڡ  m ) 290 i(& ggd ! this ) { 291 BBox ri = _bbox * gd ._bbox; 292 i(! gri . emy ()) { 293 Cods gmax_ = max ( _ , gd ._step); 294 BBox to ( ri ); gto . tsize ( _ ); 295 BBox om ( ri ); gom . tsize ( gd . _ ); 296 gd_CyRegi ( gd , to , om , max_ , m ); 301 gme < ass gTy > 302  GridDa (1)< gTy >:: cy (cڡ GridDa(1)< Ty >& gd , 303 cڡ BBox & whe , 304 cڡ  m ) 306 i(& ggd ! this ) { 307 BBox ri = _bbox * gd ._bbox * whe ; 308 i(! gri . emy ()) { 309 Cods gmax_ = max ( _ , gd ._step); 310 BBox to ( ri ); gto . tsize ( _ ); 311 BBox om ( ri ); gom . tsize ( gd . _ ); 312 gd_CyRegi ( gd , to , om , max_ , m ); 317 gme < ass gTy > 318  GridDa (1)< gTy >:: cy (cڡ GridDa(1)< Ty >& gd , 319 cڡ BBox & to , cڡ BBox& om , 320 cڡ  m ) 322 cڡ Cods gtoshi = om . low (- to .lower(); 323 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 324 i(! gwom . emy ()) { 325 BBox gwto = shiabs ( wom , - toshi ); 326 Cods gmax_ = max ( _ , gd ._step); 327 gwto . tsize ( _ ); 328 gwom . tsize ( gd . _ ); 329 gd_CyRegi ( gd , wto , wom , max_ , m ); 333 gme < ass gTy > 334  GridDa (1)< gTy >:: cy (cڡ GridDa(1)< Ty >& gd , 335 cڡ BBox & to , cڡ BBox& om , 336 cڡ BBox & mask , 337 cڡ  m ) 339 cڡ Cods gtoshi = om . low (- to .lower(); 340 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 341 i(! gwom . emy ()) { 342 BBox gwto = shiabs ( wom , - toshi ); 343 Cods gmax_ = max ( _ , gd ._step); 344 gwto . tsize ( _ ); 345 gwom . tsize ( gd . _ ); 346 gd_CyRegi ( gd , wto , wom , max_ , mask , m ); 350 #ide GRIDDATAONLY 351 gme < ass gTy > 352  GridDa (1)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 353 cڡ  m ) 355 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 356 BBox gri = _bbox * gdbktbb ; 357 i(! gri . emy ()) { 358 Cods gmax_ = max ( _ , gdbktbb . size ()); 359 BBox to ( ri ); gto . tsize ( _ ); 360 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 361 gdb_CyRegi ( gdbkt , to , om , max_ , m ); 365 gme < ass gTy > 366  GridDa (1)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 367 cڡ BBox & whe , 368 cڡ  m ) 370 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 371 BBox gri = _bbox * gdbktbb * whe ; 372 i(! gri . emy ()) { 373 Cods gmax_ = max ( _ , gdbktbb . size ()); 374 BBox to ( ri ); gto . tsize ( _ ); 375 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 376 gdb_CyRegi ( gdbkt , to , om , max_ , m ); 380 gme < ass gTy > 381  GridDa (1)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 382 cڡ BBox & to , cڡ BBox& om , 383 cڡ  m ) 385 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 386 cڡ Cods gtoshi = om . low (- to .lower(); 387 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 388 i(! gwom . emy ()) { 389 BBox gwto = shiabs ( wom , - toshi ); 390 Cods gmax_ = max ( _ , gdbktbb . size ()); 391 gwto . tsize ( _ ); 392 gwom . tsize ( gdbktbb . size ()); 393 gdb_CyRegi ( gdbkt , wto , wom , max_ , m ); 397 gme < ass gTy > 398  GridDa (1)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 399 cڡ BBox & to , cڡ BBox& om , 400 cڡ BBox & mask , 401 cڡ  m ) 403 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 404 cڡ Cods gtoshi = om . low (- to .lower(); 405 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 406 i(! gwom . emy ()) { 407 BBox gwto = shiabs ( wom , - toshi ); 408 Cods gmax_ = max ( _ , gdbktbb . size ()); 409 gwto . tsize ( _ ); 410 gwom . tsize ( gdbktbb . size ()); 411 gdb_CyRegi ( gdbkt , wto , wom , max_ , mask , m ); 415 gme < ass gTy > 416  GridDa (1)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 417 cڡ  n , 418 cڡ  m ) 420 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 421 BBox gri = _bbox * gdbktbb ; 422 i(! gri . emy ()) { 423 Cods gmax_ = max ( _ , gdbktbb . size ()); 424 BBox to ( ri ); gto . tsize ( _ ); 425 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 426 gdb_CyRegi ( gdbkt , n , to , om , max_ , m ); 430 gme < ass gTy > 431  GridDa (1)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 432 cڡ BBox & whe , 433 cڡ  m ) 435 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 436 BBox gri = _bbox * gdbktbb * whe ; 437 i(! gri . emy ()) { 438 Cods gmax_ = max ( _ , gdbktbb . size ()); 439 BBox to ( ri ); gto . tsize ( _ ); 440 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 441 gdb_CyRegi ( gdbkt , n , to , om , max_ , m ); 445 gme < ass gTy > 446  GridDa (1)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 447 cڡ BBox & to , cڡ BBox& om , 448 cڡ  m ) 450 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 451 cڡ Cods gtoshi = om . low (- to .lower(); 452 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 453 i(! gwom . emy ()) { 454 BBox gwto = shiabs ( wom , - toshi ); 455 Cods gmax_ = max ( _ , gdbktbb . size ()); 456 gwto . tsize ( _ ); 457 gwom . tsize ( gdbktbb . size ()); 458 gdb_CyRegi ( gdbkt , n , wto , wom , max_ , m ); 462 gme < ass gTy > 463  GridDa (1)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 464 cڡ BBox & to , cڡ BBox& om , 465 cڡ BBox & mask , 466 cڡ  m ) 468 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 469 cڡ Cods gtoshi = om . low (- to .lower(); 470 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 471 i(! gwom . emy ()) { 472 BBox gwto = shiabs ( wom , - toshi ); 473 Cods gmax_ = max ( _ , gdbktbb . size ()); 474 gwto . tsize ( _ ); 475 gwom . tsize ( gdbktbb . size ()); 476 gdb_CyRegi ( gdbkt , n , wto , wom , max_ , mask , m ); 481 gme < ass gTy > 482  GridDa (1)< gTy >:: gd_CyRegi (cڡ GridDa(1)< Ty >& c , 483 cڡ BBox & to , 484 cڡ BBox & om , 485 cڡ Cods & , 486 cڡ  m ) 488 as (( m ! ACEA && 489 m >0 && _nems > itm && c ._nitems > itm) || 490 ( m = ACEA && _nems = c ._nitems)); 492 GridDa (1)< gTy >& gd = * this ; 495 cڡ  gdi = om . low (0)- to .lower(0); 498 BegFaIndex1 ( c , src. _bbox , src. _da , cڡ Ty ); 499 BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 501 cڡ  gr = ( m = ACEA ) ? 0 : itm; 502 cڡ  gd = ( m = ACEA ? _nems : itm+1; 504  g = r ; i< gd ; it++) { 505 SIndexOfft ( c , ); 506 SIndexOfft ( d , ); 509 f_1 ( i , to , ) 510 FaIndex1 ( d , i FaIndex1( c ,i+ di ); 511 gd_f 515 EndFaIndex1 ( d ); 516 EndFaIndex1 ( c ); 519 #ide GRIDDATAONLY 520 gme < ass gTy > 521  GridDa (1)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 522 cڡ BBox & to , 523 cڡ BBox & om , 524 cڡ Cods & , 525 cڡ  m ) 527 as (( m ! ACEA && itm = gdbkt . em (&& _nems > itm) || 528 ( m = ACEA && _nems = gdbkt . nems ())); 531 GridDa (1)< gTy >& gd = * this ; 534 cڡ  gdi = om . low (0)- to .lower(0); 537 BegFaIndex1 ( c , gdbkt . bbox (), gdbkt. da (), cڡ Ty ); 538 BegFaIndex1 ( d , d. bbox (), d. da (), Ty ); 540 cڡ  gr = ( m = ACEA ) ? 0 : itm; 541 cڡ  gd = ( m = ACEA ? _nems : itm+1; 543 cڡ  gdr = ( gdbkt . nems (=1? 0 : r ; 545  g , gd ; 546  g = r , gd = dr ; i< gd ; it++, dit++) { 547 SIndexOfft ( c , ); 548 SIndexOfft ( d , d ); 551 f_1 ( i , to , ) 552 FaIndex1 ( d , i FaIndex1( c ,i+ di ); 553 gd_f 557 EndFaIndex1 ( d ); 558 EndFaIndex1 ( c ); 561 gme < ass gTy > 562  GridDa (1)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 563 cڡ  n , 564 cڡ BBox & to , 565 cڡ BBox & om , 566 cڡ Cods & , 567 cڡ  m ) 569 as (( m ! ACEA && itm = gdbkt . em ( n && _nems > itm) || 570 ( m = ACEA && _nems = gdbkt . nems ( n ))); 573 GridDa (1)< gTy >& gd = * this ; 576 cڡ  gdi = om . low (0)- to .lower(0); 579 BegFaIndex1 ( c , gdbkt . bbox ( n ), gdbkt. da ), cڡ Ty ); 580 BegFaIndex1 ( d , d. bbox (), d. da (), Ty ); 582 cڡ  gr = ( m = ACEA ) ? 0 : itm; 583 cڡ  gd = ( m = ACEA ? _nems : itm+1; 585 cڡ  gdr = ( gdbkt . nems ( n =1? 0 : r ; 587  g , gd ; 588  g = r , gd = dr ; i< gd ; it++, dit++) { 589 SIndexOfft ( c , ); 590 SIndexOfft ( d , d ); 593 f_1 ( i , to , ) 594 FaIndex1 ( d , i FaIndex1( c ,i+ di ); 595 gd_f 599 EndFaIndex1 ( d ); 600 EndFaIndex1 ( c ); 604 gme < ass gTy > 605  GridDa (1)< gTy >:: gd_CyRegi (cڡ GridDa(1)< Ty >& c , 606 cڡ BBox & to , 607 cڡ BBox & om , 608 cڡ Cods & , 609 cڡ BBox & mask , 610 cڡ  m ) 612 as (( m ! ACEA && 613 m >0 && _nems > itm && c ._nitems > itm) || 614 ( m = ACEA && _nems = c ._nitems)); 616 GridDa (1)< gTy >& gd = * this ; 619 cڡ  gdi = om . low (0)- to .lower(0); 622 BegFaIndex1 ( c , src. _bbox , src. _da , cڡ Ty ); 623 BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 625 cڡ  gr = ( m = ACEA ) ? 0 : itm; 626 cڡ  gd = ( m = ACEA ? _nems : itm+1; 628  g = r ; i< gd ; it++) { 629 SIndexOfft ( c , ); 630 SIndexOfft ( d , ); 633 maskedf_1 ( i , to , , mask ) 634 FaIndex1 ( d , i FaIndex1( c ,i+ di ); 635 gd_f 639 EndFaIndex1 ( d ); 640 EndFaIndex1 ( c ); 643 #ide GRIDDATAONLY 644 gme < ass gTy > 645  GridDa (1)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 646 cڡ BBox & to , 647 cڡ BBox & om , 648 cڡ Cods & , 649 cڡ BBox & mask , 650 cڡ  m ) 652 as (( m ! ACEA && itm = gdbkt . em (&& _nems > itm) || 653 ( m = ACEA && _nems = gdbkt . nems ())); 656 GridDa (1)< gTy >& gd = * this ; 659 cڡ  gdi = om . low (0)- to .lower(0); 662 BegFaIndex1 ( c , gdbkt . bbox (), gdbkt. da (), cڡ Ty ); 663 BegFaIndex1 ( d , d. bbox (), d. da (), Ty ); 665 cڡ  gr = ( m = ACEA ) ? 0 : itm; 666 cڡ  gd = ( m = ACEA ? _nems : itm+1; 668 cڡ  gdr = ( gdbkt . nems (=1? 0 : r ; 670  g , gd ; 671  g = r , gd = dr ; i< gd ; it++, dit++) { 672 SIndexOfft ( c , ); 673 SIndexOfft ( d , d ); 676 maskedf_1 ( i , to , , mask ) 677 FaIndex1 ( d , i FaIndex1( c ,i+ di ); 678 gd_f 682 EndFaIndex1 ( d ); 683 EndFaIndex1 ( c ); 686 gme < ass gTy > 687  GridDa (1)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 688 cڡ  n , 689 cڡ BBox & to , 690 cڡ BBox & om , 691 cڡ Cods & , 692 cڡ BBox & mask , 693 cڡ  m ) 695 as (( m ! ACEA && itm = gdbkt . em ( n && _nems > itm) || 696 ( m = ACEA && _nems = gdbkt . nems ( n ))); 699 GridDa (1)< gTy >& gd = * this ; 702 cڡ  gdi = om . low (0)- to .lower(0); 705 BegFaIndex1 ( c , gdbkt . bbox ( n ), gdbkt. da ), cڡ Ty ); 706 BegFaIndex1 ( d , d. bbox (), d. da (), Ty ); 708 cڡ  gr = ( m = ACEA ) ? 0 : itm; 709 cڡ  gd = ( m = ACEA ? _nems : itm+1; 711 cڡ  gdr = ( gdbkt . nems ( n =1? 0 : r ; 713  g , gd ; 714  g = r , gd = dr ; i< gd ; it++, dit++) { 715 SIndexOfft ( c , ); 716 SIndexOfft ( d , d ); 719 maskedf_1 ( i , to , , mask ) 720 FaIndex1 ( d , i FaIndex1( c ,i+ di ); 721 gd_f 725 EndFaIndex1 ( d ); 726 EndFaIndex1 ( c ); 730 gme < ass gTy > 731  GridDa (1)< gTy >:: $PackRegi ( Ty * ndbuf , 732 cڡ BBox & om , 733 cڡ  m ) const 735 `as (( m ! ACEA && itm >0 && _nems > itm) || 736 ( m = ACEA )); 738 `GridDa (1)< Ty > cڡ& c = * this ; 740  p = 0; 742 `BegFaIndex1 ( c , src. _bbox , src. _da , cڡ Ty ); 744 cڡ  r = ( m = ACEA ) ? 0 : itm; 745 cڡ  d = ( m = ACEA ? _nems : itm+1; 747  = r ; i< d ; it++) { 748 `SIndexOfft ( c , ); 751 `f_1 ( i , om , _ ) 752 ndbuf [ p ++] = `FaIndex1 ( c , i ); 753 d_f 757 `EndFaIndex1 ( c ); 758 } } 760 gme < ass gTy > 761  GridDa (1)< gTy >:: $UnPackRegi (cڡ Ty * cvbuf , 762 cڡ BBox & to , 763 cڡ  m ) 765 `as (( m ! ACEA && itm >0 && _nems > itm) || 766 ( m = ACEA )); 768 `GridDa (1)< Ty >& d = * this ; 770  p = 0; 772 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 774 cڡ  r = ( m = ACEA ) ? 0 : itm; 775 cڡ  d = ( m = ACEA ? _nems : itm+1; 777  = r ; i< d ; it++) { 778 `SIndexOfft ( d , ); 781 `f_1 ( i , to , _ ) 782 `FaIndex1 ( d , i cvbuf [ p ++]; 783 d_f 787 `EndFaIndex1 ( d ); 788 } } 790 gme < ass gTy > 791 goam & gݔ << (oam& gos , cڡ GridDa (1)< gTy >& ggd ) 793 i(& ggd =(cڡ GridDa (1)< Ty > *) NULL  os ; 795 gos << "BBox: " << ggd . g_bbox << " " << "Exs: " << gd. g_exs << " "; 796 gos << "Sp: " << ggd . g_ << " "; 797 gos << "Size: " << ggd . g_size << " " << "Btom: " << gd. g_btom << " "; 799 gos << "\n"; 801 i( ggd . g_bbox . emy () gos ; 803 cڡ gCods & gl = gd . _bbox . low (); 804 cڡ gCods & gu = gd . _bbox . u (); 805 cڡ gCods & g = gd . _bbox . size (); 807  gm =0; itm < ggd . g_nems ; itm++) { 809  gi = l (0);i<= u (0);i+= (0)) { 810 os << "[" << m << "," << i << "]=" 811 << gd ( i , m ) << " "; 812 } gos << "\n"; 816  gos ; 819 gme < ass gTy > 820 gofam & gݔ << (ofam& gofs , cڡ GridDa (1)< gTy >& ggd ) 822 i(& ggd =(cڡ GridDa (1)< Ty > *) NULL  ofs ; 824 gofs . wre ((*)& gd . _bbox ,( BBox )); 825 gofs . wre ((*)& gd . _nems ,()); 826 gofs . wre ((*) gd . _da ,gd. _tsize *( Ty )); 828  gofs ; 831 gme < ass gTy > 832 gifam & gݔ >> (ifam& gifs , GridDa (1)< gTy >& ggd ) 834 i(& ggd =(cڡ GridDa (1)< Ty > *) NULL  ifs ; 836 BBox gbb ; 837  gnems = 1; 839 gifs . ad ((*)& bb ,( BBox )); 840 gifs . ad ((*)& nems ,()); 842 i(! ggd . ok_to_dex ()) 843 { ggd . lo ( bb , nems ); } 845 i( gbb = gd . _bbox && nems =gd. _nems ) { 846 ifs . ad ((*) gd . _da ,gd. _tsize *( Ty )); 849 GridDa (1)< gTy > tmpgd ( bb , nems ); 850 gifs . ad ((*) tmpgd . _da ,tmpgd. _tsize *( Ty )); 851 ggd . cy ( tmpgd ); 854  gifs ; 857  ~"GridDaOps1.h " 858  ~"GridDaOpsRed1.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridData1.h 1 #ide _uded_GridDa_1_h 2  #_uded_GridDa_1_h ) 14  ~"ACEPams.h " 15  ~"GridDaPams.h " 17 #ide ACEA 18  #ACEA (9999) ) 21 #ifde DEBUG_PRINT_GD_MEMORY 22  ~"ACEMemyT.h " 25  ~"BBox.h " 26  ~"Cods.h " 28 #ide GRIDDATAONLY 29  ~"PackedGridDaBuck.h " 32 #ifde DEBUG_PRINT 33  ~"CommSv.h " 36  ~"IndexGridDa1.h " 38 #ide GridDa 39  #GridDa ( dim `me2 ( GridDa ,dim) ) 42 #ide gd_ORegi 43  #gd_ORegi ( `me2 ( gd_ORegi ,) ) 46  ~"GDIt.h " 48 #i defed ( __GNUG__ || defed( __GNUC__ ) 49 gme < ass gTy > cs GridDa (1); 51 gme < ass gTy > goam & gݔ <<(oam&, cڡ GridDa (1)&); 52 gme < ass gTy > gofam & gݔ <<(ofam&, cڡ GridDa (1)&); 53 gme < ass gTy > gifam & gݔ >>(ifam&, GridDa (1)&); 56 gme < ass gTy > cs GridDa (1) 58 #i defed ( __GNUG__ || defed( __GNUC__ ) 59 nd goam & gݔ << <>(oam&, cڡ GridDa (1)< gTy >&); 60 nd gofam & gݔ << <>(ofam&, cڡ GridDa (1)< gTy >&); 61 nd gifam & gݔ >> <>(ifam&, GridDa (1)< gTy >&); 63 nd goam & gݔ <<(oam&, cڡ GridDa (1)< gTy >&); 64 nd gofam & gݔ <<(ofam&, cڡ GridDa (1)< gTy >&); 65 nd gifam & gݔ >>(ifam&, GridDa (1)< gTy >&); 68 BBox g_bbox ; 69 Cods g_exs ; 70 Cods g_ ; 71  g_size ; 72  g_nems ; 73  g_tsize ; 74  g_btom ; 75 Ty * g_da ; 77 give : 79 public : 80 GridDa (1)(); 81 GridDa (1)(cڡ gBBox & gbbox , 82 cڡ  gnems =1); 83 GridDa (1)(cڡ gBBox & gbbox , Ty * gdabuf , 84 cڡ  gnems =1); 87 GridDa (1)(cڡ  gi , 88 cڡ  gii ); 92 GridDa (1)(cڡ  gi , 93 cڡ  gii , 94 cڡ  gs ); 95 GridDa (1)(cڡ  gi , 96 cڡ  gii , 97 cڡ  gs , 98 cڡ  gnems ); 101 #ide GRIDDATAONLY 102 GridDa (1)( gGridDaBuck < gTy >& ggdbkt ); 103 GridDa (1)( gGridDaBuck < gTy >& ggdbkt , cڡ  gn ); 107 GridDa (1(cڡ GridDa(1)< gTy >& gh ); 109 gle ~ GridDa (1)() 111 i( g_da ) { 112 #ifde DEBUG_PRINT_GD_MEMORY 113 gACEMemyT :: (( Ty )* _tsize ); 115 gde [] g_da ; _d( Ty *)0; 119  lo (cڡ BBox & bbox , 120 cڡ  nems =1); 121  lo (cڡ BBox & bbox , Ty * dabuf , 122 cڡ  nems =1); 124 le  lo ( Ty * dabuf ) 126 i( g_da ) { 127 gde [] g_da ; _d( Ty *)0; 128 #ifde DEBUG_PRINT_GD_MEMORY 129 gACEMemyT :: (( Ty )* _tsize ); 132 g_da = dabuf ; 135 le  do () 137 i( g_da ) { 138 #ifde DEBUG_PRINT_GD_MEMORY 139 gACEMemyT :: (( Ty )* _tsize ); 141 gde [] g_da ; _d( Ty *)0; 145 le  do ( Ty *& dabuf ) 146 { gdabuf = _da ; g_da = ( Ty *) 0; } 148 * dabufr ({  ((* g_da ); } 150  tdabufr ({ g_da = ( Ty *) 0; } 153 le cڡ gCods & low (cڡ { ( g_bbox .lower()); } 154 le cڡ gCods & u (cڡ { ( g_bbox .upper()); } 155 le cڡ gCods & exs (cڡ { ( g_exs ); } 156 le cڡ gCods & size (cڡ { ( g_ ); } 157 le Cods low ({ ( g_bbox .lower()); } 158 le Cods u ({ ( g_bbox .upper()); } 159 le Cods exs ({ ( g_exs ); } 160 le Cods size ({ ( g_ ); } 161 le  btom (cڡ { ( g_btom ); } 162 le  low (cڡ  i cڡ { ( g_bbox .lower(i)); } 163 le  u (cڡ  i cڡ { ( g_bbox .upper(i)); } 164 le  exs (cڡ  i cڡ { ( _exs (i)); } 165 le  size (cڡ  i cڡ { ( _ (i)); } 166 le cڡ gBBox & bbox (cڡ { ( g_bbox ); } 168 le  ok_to_dex ({ ( g_da !( Ty * NULL ); } 170 le  size (cڡ { ( g_size ); } 172 le  nems (cڡ { ( g_nems ); } 173 le cڡ * nem (cڡ { (& g_nems ); } 174 le  tsize (cڡ { ( g_tsize ); } 176 give : 178 le  idx (cڡ  i , cڡ  m ) const 179 { ( m * g_size )+ g_btom +( gi / _ (0)) ); } 182 gpublic : 184 le cڡ Ty & ݔ ((cڡ  i ) const 185 { as ( idx ( i ,0>0 && idx(i,0< _tsize ); 186 ( g_da [ idx ( i ,0)]); } 187 le gTy & ݔ ((cڡ  gi ) 188 { as ( idx ( i ,0>0 && idx(i,0< _tsize ); 189 ( g_da [ idx ( i ,0)]); } 191 le cڡ gTy & ݔ ((cڡ  gi , cڡ  gm ) const 192 { as ( idx ( i , m >0 && idx(i,m< _tsize ); 193 ( g_da [ idx ( i , m )]); } 194 le gTy & ݔ ((cڡ  gi , cڡ  gm ) 195 { as ( idx ( i , m >0 && idx(i,m< _tsize ); 196 ( g_da [ idx ( i , m )]); } 198 le cڡ gTy & ݔ ((cڡ gCods & gc ) const 199 { as ( idx ( c (0),0>0 && idx(c(0),0< _tsize ); 200 ( g_da [ idx ( c (0),0)]); } 201 le gTy & ݔ ((cڡ gCods & gc ) 202 { as ( idx ( c (0),0>0 && idx(c(0),0< _tsize ); 203 ( g_da [ idx ( c (0),0)]); } 205 le cڡ gTy & ݔ ((cڡ gCods & gc , cڡ  gm ) const 206 { as ( idx ( c (0), m >0 && idx(c(0),m< _tsize ); 207 ( g_da [ idx ( c (0), m )]); } 208 le gTy & ݔ ((cڡ gCods & gc , cڡ  gm ) 209 { as ( idx ( c (0), m >0 && idx(c(0),m< _tsize ); 210 ( g_da [ idx ( c (0), m )]); } 212 le cڡ Ty * r (cڡ  i , cڡ  m =0) const 213 { as ( idx ( i , m >0 && idx(i,m< _tsize ); 214 ( g_da + idx ( i , m )); } 215 le Ty * r (cڡ  i , cڡ  m =0) 216 { as ( idx ( i , m >0 && idx(i,m< _tsize ); 217 ( g_da + idx ( i , m )); } 219 le cڡ Ty * r (cڡ Cods & c , cڡ  m =0) const 220 { as ( idx ( c (0), m >0 && idx(c(0),m< _tsize ); 221 ( g_da + idx ( c (0), m )); } 222 le Ty * r (cڡ Cods & c , cڡ  m =0) 223 { as ( idx ( c (0), m >0 && idx(c(0),m< _tsize ); 224 ( g_da + idx ( c (0), m )); } 227 le cڡ Ty * da (cڡ { ( g_da ); } 228 le Ty * da ({ ( g_da ); } 230 le cڡ Ty * da (cڡ  m cڡ { ( g_da +( _size * gm )); } 231 le Ty * da (cڡ  m { ( g_da +( _size * gm )); } 233  fl (cڡ Ty & v , 234 cڡ  m = ACEA ); 237  cy (cڡ GridDa (1)< Ty >& gd , 238 cڡ  m = ACEA ); 239  cy (cڡ GridDa (1)< Ty >& gd , 240 cڡ BBox & whe , 241 cڡ  m = ACEA ); 242  cy (cڡ GridDa (1)< Ty >& gd , 243 cڡ BBox & to , cڡ BBox& om , 244 cڡ  m = ACEA ); 245  cy (cڡ GridDa (1)< Ty >& gd , 246 cڡ BBox & to , cڡ BBox& om , 247 cڡ BBox & mask , 248 cڡ  m = ACEA ); 250 #ide GRIDDATAONLY 251  cy (cڡ GridDaBuck < Ty >& gdbkt , 252 cڡ  m ); 253  cy (cڡ GridDaBuck < Ty >& gdbkt , 254 cڡ BBox & whe , 255 cڡ  m ); 256  cy (cڡ GridDaBuck < Ty >& gdbkt , 257 cڡ BBox & to , cڡ BBox& om , 258 cڡ  m ); 259  cy (cڡ GridDaBuck < Ty >& gdbkt , 260 cڡ BBox & to , cڡ BBox& om , 261 cڡ BBox & mask , 262 cڡ  m ); 264  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 265 cڡ  m ); 266  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 267 cڡ BBox & whe , 268 cڡ  m ); 269  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 270 cڡ BBox & to , cڡ BBox& om , 271 cڡ  m ); 272  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 273 cڡ BBox & to , cڡ BBox& om , 274 cڡ BBox & mask , 275 cڡ  m ); 279  l_ (cڡ GridDa (1)< Ty >& gd1 , cڡ  ac1 , 280 cڡ GridDa (1)< Ty >& gd2 , cڡ  ac2 , 281 cڡ BBox & whe , 282 cڡ  m = ACEA ); 283 le  l_ (cڡ GridDa (1)< Ty >& gd1 , cڡ  ac1 , 284 cڡ GridDa (1)< Ty >& gd2 , cڡ  ac2 , 285 cڡ  m = ACEA ) 286 { GridDa (1)< Ty >:: l_ ( gd1 , ac1 , gd2 , ac2 , _bbox , m ); } 289 Ty momt1 (cڡ  axis , 290 cڡ BBox & whe , 291 cڡ  m = ACEA ); 292 le Ty momt1 (cڡ  axis , 293 cڡ  m = ACEA ) 294 {  ( GridDa (1)< Ty >:: momt1 ( axis , _bbox , m )); } 297  sumsqrd (cڡ BBox & whe , 298 Ty & s , & c , 299 cڡ  m = ACEA ); 300 le  sumsqrd ( Ty & s , & c , 301 cڡ  m = ACEA ) 302 { GridDa (1)< Ty >:: sumsqrd ( _bbox , s , c , m ); } 305  equs (cڡ Ty & v , 306 cڡ BBox & whe , 307 cڡ  m = ACEA ); 308 le  equs (cڡ Ty & v , 309 cڡ  m = ACEA ) 310 { GridDa (1)< Ty >:: equs ( v , _bbox , m ); } 312  equs (cڡ GridDa (1)< Ty >& gd , 313 cڡ BBox & to , cڡ BBox& om , 314 cڡ  m = ACEA ); 315 le  equs (cڡ GridDa (1)< Ty >& gd , 316 cڡ  m = ACEA ) 317 { GridDa (1)< Ty >:: equs ( gd , gd. _bbox , gd._bbox, m ); } 318 le  equs (cڡ GridDa (1)< Ty >& gd , 319 cڡ BBox & whe , 320 cڡ  m = ACEA ) 321 { GridDa (1)< Ty >:: equs ( gd , whe , whe, m ); } 324  us (cڡ Ty & v , 325 cڡ BBox & whe , 326 cڡ  m = ACEA ); 327 le  us (cڡ Ty & v , 328 cڡ  m = ACEA ) 329 { GridDa (1)< Ty >:: us ( v , _bbox , m ); } 331  us (cڡ GridDa (1)< Ty >& gd , 332 cڡ BBox & to , cڡ BBox& om , 333 cڡ  m = ACEA ); 334 le  us (cڡ GridDa (1)< Ty >& gd , 335 cڡ  m = ACEA ) 336 { GridDa (1)< Ty >:: us ( gd , gd. _bbox , gd._bbox, m ); } 337 le  us (cڡ GridDa (1)< Ty >& gd , 338 cڡ BBox & whe , 339 cڡ  m = ACEA ) 340 { GridDa (1)< Ty >:: us ( gd , whe , whe, m ); } 342 #ide GRIDDATAONLY 343 le  us ( GridDaBuck < Ty >& gdbkt , 344 cڡ BBox & to , cڡ BBox& om , 345 cڡ  m = ACEA ) 347 GridDa (1)< Ty > tmpgd ( gdbkt ); 348 us ( tmpgd , to , om , m ); 349 gtmpgd . tdabufr (); 351 le  us ( GridDaBuck < Ty >& gdbkt , cڡ  n , 352 cڡ BBox & to , cڡ BBox& om , 353 cڡ  m = ACEA ) 355 GridDa (1)< Ty > tmpgd ( gdbkt , n ); 356 us ( tmpgd , to , om , m ); 357 gtmpgd . tdabufr (); 362  mus (cڡ Ty & v , 363 cڡ BBox & whe , 364 cڡ  m = ACEA ); 365 le  mus (cڡ Ty & v , 366 cڡ  m = ACEA ) 367 { GridDa (1)< Ty >:: mus ( v , _bbox , m ); } 369  mus (cڡ GridDa (1)< Ty >& gd , 370 cڡ BBox & to , cڡ BBox& om , 371 cڡ  m = ACEA ); 372 le  mus (cڡ GridDa (1)< Ty >& gd , 373 cڡ  m = ACEA ) 374 { GridDa (1)< Ty >:: mus ( gd , gd. _bbox , gd._bbox, m ); } 375 le  mus (cڡ GridDa (1)< Ty >& gd , 376 cڡ BBox & whe , 377 cڡ  m = ACEA ) 378 { GridDa (1)< Ty >:: mus ( gd , whe , whe, m ); } 381  muɝly (cڡ Ty & v , 382 cڡ BBox & whe , 383 cڡ  m = ACEA ); 384 le  muɝly (cڡ Ty & v , 385 cڡ  m = ACEA ) 386 { GridDa (1)< Ty >:: muɝly ( v , _bbox , m ); } 388  muɝly (cڡ GridDa (1)< Ty >& gd , 389 cڡ BBox & to , cڡ BBox& om , 390 cڡ  m = ACEA ); 391 le  muɝly (cڡ GridDa (1)< Ty >& gd , 392 cڡ  m = ACEA ) 393 { GridDa (1)< Ty >:: muɝly ( gd , gd. _bbox , gd._bbox, m ); } 394 le  muɝly (cڡ GridDa (1)< Ty >& gd , 395 cڡ BBox & whe , 396 cڡ  m = ACEA ) 397 { GridDa (1)< Ty >:: muɝly ( gd , whe , whe, m ); } 400  divide (cڡ Ty & v , 401 cڡ BBox & whe , 402 cڡ  m = ACEA ); 403 le  divide (cڡ Ty & v , 404 cڡ  m = ACEA ) 405 { GridDa (1)< Ty >:: divide ( v , _bbox , m ); } 407  divide (cڡ GridDa (1)< Ty >& gd , 408 cڡ BBox & to , cڡ BBox& om , 409 cڡ  m = ACEA ); 410 le  divide (cڡ GridDa (1)< Ty >& gd , 411 cڡ  m = ACEA ) 412 { GridDa (1)< Ty >:: divide ( gd , gd. _bbox , gd._bbox, m ); } 413 le  divide (cڡ GridDa (1)< Ty >& gd , const 414 BBox & whe , 415 cڡ  m = ACEA ) 416 { GridDa (1)< Ty >:: divide ( gd , whe , whe, m ); } 419 le  gݔ = (cڡ Ty & v ) 420 { GridDa (1)< Ty >:: equs ( v , _bbox ); } 421 le  gݔ = (cڡ GridDa (1)< Ty >& gd ) 422 { GridDa (1)< Ty >:: equs ( gd , gd. _bbox , gd._bbox); } 424 le  gݔ +(cڡ Ty & v ) 425 { GridDa (1)< Ty >:: us ( v , _bbox ); } 426 le  gݔ +(cڡ GridDa (1)< Ty >& gd ) 427 { GridDa (1)< Ty >:: us ( gd , gd. _bbox , gd._bbox); } 429 le  gݔ -(cڡ Ty & v ) 430 { GridDa (1)< Ty >:: mus ( v , _bbox ); } 431 le  gݔ -(cڡ GridDa (1)< Ty >& gd ) 432 { GridDa (1)< Ty >:: mus ( gd , gd. _bbox , gd._bbox); } 434 le  gݔ *(cڡ Ty & v ) 435 { GridDa (1)< Ty >:: muɝly ( v , _bbox ); } 436 le  gݔ *(cڡ GridDa (1)< Ty >& gd ) 437 { GridDa (1)< Ty >:: muɝly ( gd , gd. _bbox , gd._bbox); } 439 le  gݔ /(cڡ Ty & v ) 440 { GridDa (1)< Ty >:: divide ( v , _bbox ); } 441 le  gݔ /(cڡ GridDa (1)< Ty >& gd ) 442 { GridDa (1)< Ty >:: divide ( gd , gd. _bbox , gd._bbox); } 448 Ty maxv (cڡ BBox & whe , 449 cڡ  m = ACEA ); 450 le Ty maxv (cڡ  m = ACEA ) 451 {  ( GridDa (1)< Ty >:: maxv ( _bbox , m )); } 453 Ty mv (cڡ BBox & whe , 454 cڡ  m = ACEA ); 455 le Ty mv (cڡ  m = ACEA ) 456 {  ( GridDa (1)< Ty >:: mv ( _bbox , m )); } 458 Ty sum (cڡ BBox & whe , 459 cڡ  m = ACEA ); 460 le Ty sum (cڡ  m = ACEA ) 461 {  ( GridDa (1)< Ty >:: sum ( _bbox , m )); } 463 Ty odu (cڡ BBox & whe , 464 cڡ  m = ACEA ); 465 le Ty odu (cڡ  m = ACEA ) 466 {  ( GridDa (1)< Ty >:: odu ( _bbox , m )); } 470 give : 471  gd_CyRegi (cڡ GridDa (1)< Ty >& gd , 472 cڡ BBox & to , 473 cڡ BBox & om , 474 cڡ Cods & , 475 cڡ  m ); 477 #ide GRIDDATAONLY 478  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 479 cڡ BBox & to , 480 cڡ BBox & om , 481 cڡ Cods & , 482 cڡ  m ); 483  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 484 cڡ BBox & to , 485 cڡ BBox & om , 486 cڡ Cods & , 487 cڡ  m ); 490  gd_CyRegi (cڡ GridDa (1)< Ty >& gd , 491 cڡ BBox & to , 492 cڡ BBox & om , 493 cڡ Cods & , 494 cڡ BBox & mask , 495 cڡ  m ); 497 #ide GRIDDATAONLY 498  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 499 cڡ BBox & to , 500 cڡ BBox & om , 501 cڡ Cods & , 502 cڡ BBox & mask , 503 cڡ  m ); 504  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 505 cڡ BBox & to , 506 cڡ BBox & om , 507 cڡ Cods & , 508 cڡ BBox & mask , 509 cڡ  m ); 512  gd_ORegi ( equ )(cڡ gTy & gv , 513 cڡ gBBox & gto , 514 cڡ gBBox & gom , 515 cڡ gCods & g , 516 cڡ  gm ); 517  gd_ORegi ( equ )(cڡ GridDa (1)< gTy >& ggd , 518 cڡ gBBox & gto , 519 cڡ gBBox & gom , 520 cڡ gCods & g , 521 cڡ  gm ); 523  gd_ORegi ( us )(cڡ gTy & gv , 524 cڡ gBBox & gto , 525 cڡ gBBox & gom , 526 cڡ gCods & g , 527 cڡ  gm ); 528  gd_ORegi ( us )(cڡ GridDa (1)< gTy >& ggd , 529 cڡ gBBox & gto , 530 cڡ gBBox & gom , 531 cڡ gCods & g , 532 cڡ  gm ); 534  gd_ORegi ( mus )(cڡ gTy & gv , 535 cڡ gBBox & gto , 536 cڡ gBBox & gom , 537 cڡ gCods & g , 538 cڡ  gm ); 539  gd_ORegi ( mus )(cڡ GridDa (1)< gTy >& ggd , 540 cڡ gBBox & gto , 541 cڡ gBBox & gom , 542 cڡ gCods & g , 543 cڡ  gm ); 545  gd_ORegi ( mu )(cڡ gTy & gv , 546 cڡ gBBox & gto , 547 cڡ gBBox & gom , 548 cڡ gCods & g , 549 cڡ  gm ); 550  gd_ORegi ( mu )(cڡ GridDa (1)< gTy >& ggd , 551 cڡ gBBox & gto , 552 cڡ gBBox & gom , 553 cڡ gCods & g , 554 cڡ  gm ); 556  gd_ORegi ( div )(cڡ gTy & gv , 557 cڡ gBBox & gto , 558 cڡ gBBox & gom , 559 cڡ gCods & g , 560 cڡ  gm ); 561  gd_ORegi ( div )(cڡ GridDa (1)< gTy >& ggd , 562 cڡ gBBox & gto , 563 cڡ gBBox & gom , 564 cڡ gCods & g , 565 cڡ  gm ); 567 gpublic : 569  PackRegi ( Ty * ndbuf , cڡ BBox & om , cڡ  m = ACEA ) const; 570  UnPackRegi (cڡ Ty * cvbuf , cڡ BBox & to , cڡ  m = ACEA ); 573 #i defed ( Wt_c_fes ) 574  ~"GridDa1.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridData2.c 1 #ide _uded_GridDa_2_c 2  #_uded_GridDa_2_c ) 14 gme < ass gTy > 15 GridDa (2)< gTy >::GridData(2)() 16 : _bbox (), 17 _exs (0,0), 18 _ (2,1), 19 _size (0), 20 _nems (1), 21 _tsize (0), 22 _btom (0), 23 _da (( Ty * NULL ) {} 25 gme < ass gTy > 26 GridDa (2)< gTy >::GridDa(2)(cڡ BBox & bb , 27 cڡ  gnems ) 28 : _bbox ( bb ), 29 _exs ( bb . exs ()), 30 _ ( bb . size ()), 31 _size ( bb . size ()), 32 _nems ( nems ), 33 _tsize ( _nems * _size ), 34 _btom ( bb . btom ()), 35 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 37 #ifde DEBUG_PRINT_GD 38 as ( _da ); 39 as ( _da + _tsize -1); 41 #ifde DEBUG_PRINT_GD_MEMORY 42 gACEMemyT :: loc (( Ty )* _tsize ); 44 #ifde DEBUG_PRINT_GD_FILL 45 fl (9999); 49 gme < ass gTy > 50 GridDa (2)< gTy >::GridDa(2)(cڡ BBox & bb , Ty * gdabuf , 51 cڡ  gnems ) 52 : _bbox ( bb ), 53 _exs ( bb . exs ()), 54 _ ( bb . size ()), 55 _size ( bb . size ()), 56 _nems ( nems ), 57 _tsize ( _nems * _size ), 58 _btom ( bb . btom ()), 59 $_da ( dabuf ) 61 #ifde DEBUG_PRINT_GD 62 `as ( _da ); 63 `as ( _da + _tsize -1); 65 #ifde DEBUG_PRINT_GD_FILL 66 `fl (9999); 68 } } 70 gme < ass gTy > 72 GridDa (2)< gTy >::GridDa(2(cڡ  i , cڡ  gj , 73 cڡ  gii , cڡ  gjj ) 74 : _bbox (2, i , j , ii , jj ,1), 76 _exs ( _bbox . exs ()), 77 _ ( _bbox . size ()), 78 _size ( _bbox . size ()), 79 _nems (1), 80 _tsize ( _nems * _size ), 81 _btom ( _bbox . btom ()), 82 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 84 #ifde DEBUG_PRINT_GD 85 as ( _da ); 86 as ( _da + _tsize -1); 88 #ifde DEBUG_PRINT_GD_MEMORY 89 gACEMemyT :: loc (( Ty )* _tsize ); 91 #ifde DEBUG_PRINT_GD_FILL 92 fl (9999); 96 gme < ass gTy > 98 GridDa (2)< gTy >::GridDa(2(cڡ  i , cڡ  gj , 99 cڡ  gii , cڡ  gjj , 100 cڡ  gs ) 101 : _bbox (2, i , j , ii , jj , s ), 103 _exs ( _bbox . exs ()), 104 _ ( _bbox . size ()), 105 _size ( _bbox . size ()), 106 _nems (1), 107 _tsize ( _nems * _size ), 108 _btom ( _bbox . btom ()), 109 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 111 #ifde DEBUG_PRINT_GD 112 as ( _da ); 113 as ( _da + _tsize -1); 115 #ifde DEBUG_PRINT_GD_MEMORY 116 gACEMemyT :: loc (( Ty )* _tsize ); 118 #ifde DEBUG_PRINT_GD_FILL 119 fl (9999); 123 gme < ass gTy > 125 GridDa (2)< gTy >::GridDa(2(cڡ  i , cڡ  gj , 126 cڡ  gii , cڡ  gjj , 127 cڡ  gs , cڡ  gss , 128 cڡ  gnems ) 129 : _bbox (2, i , j , ii , jj , s , ss ), 131 _exs ( _bbox . exs ()), 132 _ ( _bbox . size ()), 133 _size ( _bbox . size ()), 134 _nems ( nems ), 135 _tsize ( _nems * _size ), 136 _btom ( _bbox . btom ()), 137 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 139 #ifde DEBUG_PRINT_GD 140 as ( _da ); 141 as ( _da + _tsize -1); 143 #ifde DEBUG_PRINT_GD_MEMORY 144 gACEMemyT :: loc (( Ty )* _tsize ); 146 #ifde DEBUG_PRINT_GD_FILL 147 fl (9999); 151 #ide GRIDDATAONLY 152 gme < ass gTy > 153 GridDa (2)< gTy >::GridDa(2)( GridDaBuck < Ty >& gdbkt ) 154 : _bbox ( gdbkt . bbox ()), 155 _exs (( gdbkt . bbox ()). exs ()), 156 _ (( gdbkt . bbox ()). size ()), 157 _size (( gdbkt . bbox ()). size ()), 158 _nems ( gdbkt . nems ()), 159 _tsize ( _nems * _size ), 160 _btom (( gdbkt . bbox ()). btom ()), 161 _da ( gdbkt . $da ()) 163 #ifde DEBUG_PRINT_GD 164 `as ( _da ); 165 `as ( _da + _tsize -1); 167 #ifde DEBUG_PRINT_GD_FILL 170 } } 172 gme < ass gTy > 173 GridDa (2)< gTy >::GridDa(2)( GridDaBuck < Ty >& gdbkt , cڡ  gn ) 174 : _bbox ( gdbkt . bbox ( n )), 175 _exs (( gdbkt . bbox ( n )). exs ()), 176 _ (( gdbkt . bbox ( n )). size ()), 177 _size (( gdbkt . bbox ( n )). size ()), 178 _nems ( gdbkt . nems ( n )), 179 _tsize ( _nems * _size ), 180 _btom (( gdbkt . bbox ( n )). btom ()), 181 _da ( gdbkt . $da ( n )) 183 #ifde DEBUG_PRINT_GD 184 `as ( _da ); 185 `as ( _da + _tsize -1); 187 #ifde DEBUG_PRINT_GD_FILL 190 } } 193 gme < ass gTy > 194 GridDa (2)< gTy >::GridDa(2)(cڡ GridDa(2)< Ty >& h ) 195 : _bbox ( h ._bbox), 196 _exs ( h ._extents), 197 _ ( h ._step), 198 _size ( h ._size), 199 _nems ( h ._nitems), 200 _tsize ( h ._tsize), 201 _btom ( h ._bottom), 202 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 204 #ifde DEBUG_PRINT_GD 205 as ( _da ); 206 as ( _da + _tsize -1); 208 #ifde DEBUG_PRINT_GD_MEMORY 209 gACEMemyT :: loc (( Ty )* _tsize ); 211 #ifde ACENOCOPYGD 212 #ifde DEBUG_PRINT_GD_FILL 213 fl (9999); 216 memy ( _da , h ._da,( Ty )* _tsize ); 221 gme < ass gTy > 222  GridDa (2)< gTy >:: $lo (cڡ BBox & bb , 223 cڡ  nems ) 225 _bbox = bb ; 226 _exs = _bbox . `exs (); 227 _ = _bbox . `size (); 228 _size = _bbox . `size (); 229 _nems = nems ; 230 _tsize = _nems * _size ; 231 _btom = _bbox . `btom (); 232 _da = _tsize ? w Ty [_tsize] : (Ty * NULL ; 233 #ifde DEBUG_PRINT_GD 234 `as ( _da ); 235 `as ( _da + _tsize -1); 237 #ifde DEBUG_PRINT_GD_MEMORY 238 ACEMemyT :: `loc (( Ty )* _tsize ); 240 #ifde DEBUG_PRINT_GD_FILL 241 `fl (9999); 243 } } 245 gme < ass gTy > 246  GridDa (2)< gTy >:: $lo (cڡ BBox & bb , Ty * dabuf , 247 cڡ  nems ) 249 _bbox = bb ; 250 _exs = _bbox . `exs (); 251 _ = _bbox . `size (); 252 _size = _bbox . `size (); 253 _nems = nems ; 254 _tsize = _nems * _size ; 255 _btom = _bbox . `btom (); 256 #ifde DEBUG_PRINT_GD 257 `as (! _da ); 259 _da = dabuf ; 260 #ifde DEBUG_PRINT_GD 261 `as ( _da ); 262 `as ( _da + _tsize -1); 264 #ifde DEBUG_PRINT_GD_FILL 265 `fl (9999); 267 } } 269 gme < ass gTy > 270  GridDa (2)< gTy >:: $fl (cڡ Ty & v , 271 cڡ  m ) 273 `as (( m ! ACEA && itm >0 && _nems > itm) || 274 ( m = ACEA )); 276 cڡ  r = ( m = ACEA ) ? 0 : itm; 277 cڡ  d = ( m = ACEA ? _nems : itm+1; 279  i , j ; 281  i = r ; i < d ; i++) 282  j = 0; j < _size ; j++) 283 _da [ i * _size + j ] = v ; 284 } } 286 gme < ass gTy > 287  GridDa (2)< gTy >:: cy (cڡ GridDa(2)< Ty >& gd , 288 cڡ  m ) 290 i(& ggd ! this ) { 291 BBox ri = _bbox * gd ._bbox; 292 i(! gri . emy ()) { 293 Cods gmax_ = max ( _ , gd ._step); 294 BBox to ( ri ); gto . tsize ( _ ); 295 BBox om ( ri ); gom . tsize ( gd . _ ); 296 gd_CyRegi ( gd , to , om , max_ , m ); 301 gme < ass gTy > 302  GridDa (2)< gTy >:: cy (cڡ GridDa(2)< Ty >& gd , 303 cڡ BBox & whe , 304 cڡ  m ) 306 i(& ggd ! this ) { 307 BBox ri = _bbox * gd ._bbox * whe ; 308 i(! gri . emy ()) { 309 Cods gmax_ = max ( _ , gd ._step); 310 BBox to ( ri ); gto . tsize ( _ ); 311 BBox om ( ri ); gom . tsize ( gd . _ ); 312 gd_CyRegi ( gd , to , om , max_ , m ); 317 gme < ass gTy > 318  GridDa (2)< gTy >:: cy (cڡ GridDa(2)< Ty >& gd , 319 cڡ BBox & to , cڡ BBox& om , 320 cڡ  m ) 322 cڡ Cods gtoshi = om . low (- to .lower(); 323 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 324 i(! gwom . emy ()) { 325 BBox gwto = shiabs ( wom , - toshi ); 326 Cods gmax_ = max ( _ , gd ._step); 327 gwto . tsize ( _ ); 328 gwom . tsize ( gd . _ ); 329 gd_CyRegi ( gd , wto , wom , max_ , m ); 333 gme < ass gTy > 334  GridDa (2)< gTy >:: cy (cڡ GridDa(2)< Ty >& gd , 335 cڡ BBox & to , cڡ BBox& om , 336 cڡ BBox & mask , 337 cڡ  m ) 339 cڡ Cods gtoshi = om . low (- to .lower(); 340 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 341 i(! gwom . emy ()) { 342 BBox gwto = shiabs ( wom , - toshi ); 343 Cods gmax_ = max ( _ , gd ._step); 344 gwto . tsize ( _ ); 345 gwom . tsize ( gd . _ ); 346 gd_CyRegi ( gd , wto , wom , max_ , mask , m ); 350 #ide GRIDDATAONLY 351 gme < ass gTy > 352  GridDa (2)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 353 cڡ  m ) 355 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 356 BBox gri = _bbox * gdbktbb ; 357 i(! gri . emy ()) { 358 Cods gmax_ = max ( _ , gdbktbb . size ()); 359 BBox to ( ri ); gto . tsize ( _ ); 360 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 361 gdb_CyRegi ( gdbkt , to , om , max_ , m ); 365 gme < ass gTy > 366  GridDa (2)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 367 cڡ BBox & whe , 368 cڡ  m ) 370 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 371 BBox gri = _bbox * gdbktbb * whe ; 372 i(! gri . emy ()) { 373 Cods gmax_ = max ( _ , gdbktbb . size ()); 374 BBox to ( ri ); gto . tsize ( _ ); 375 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 376 gdb_CyRegi ( gdbkt , to , om , max_ , m ); 380 gme < ass gTy > 381  GridDa (2)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 382 cڡ BBox & to , cڡ BBox& om , 383 cڡ  m ) 385 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 386 cڡ Cods gtoshi = om . low (- to .lower(); 387 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 388 i(! gwom . emy ()) { 389 BBox gwto = shiabs ( wom , - toshi ); 390 Cods gmax_ = max ( _ , gdbktbb . size ()); 391 gwto . tsize ( _ ); 392 gwom . tsize ( gdbktbb . size ()); 393 gdb_CyRegi ( gdbkt , wto , wom , max_ , m ); 397 gme < ass gTy > 398  GridDa (2)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 399 cڡ BBox & to , cڡ BBox& om , 400 cڡ BBox & mask , 401 cڡ  m ) 403 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 404 cڡ Cods gtoshi = om . low (- to .lower(); 405 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 406 i(! gwom . emy ()) { 407 BBox gwto = shiabs ( wom , - toshi ); 408 Cods gmax_ = max ( _ , gdbktbb . size ()); 409 gwto . tsize ( _ ); 410 gwom . tsize ( gdbktbb . size ()); 411 gdb_CyRegi ( gdbkt , wto , wom , max_ , mask , m ); 415 gme < ass gTy > 416  GridDa (2)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 417 cڡ  n , 418 cڡ  m ) 420 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 421 BBox gri = _bbox * gdbktbb ; 422 i(! gri . emy ()) { 423 Cods gmax_ = max ( _ , gdbktbb . size ()); 424 BBox to ( ri ); gto . tsize ( _ ); 425 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 426 gdb_CyRegi ( gdbkt , n , to , om , max_ , m ); 430 gme < ass gTy > 431  GridDa (2)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 432 cڡ BBox & whe , 433 cڡ  m ) 435 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 436 BBox gri = _bbox * gdbktbb * whe ; 437 i(! gri . emy ()) { 438 Cods gmax_ = max ( _ , gdbktbb . size ()); 439 BBox to ( ri ); gto . tsize ( _ ); 440 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 441 gdb_CyRegi ( gdbkt , n , to , om , max_ , m ); 445 gme < ass gTy > 446  GridDa (2)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 447 cڡ BBox & to , cڡ BBox& om , 448 cڡ  m ) 450 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 451 cڡ Cods gtoshi = om . low (- to .lower(); 452 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 453 i(! gwom . emy ()) { 454 BBox gwto = shiabs ( wom , - toshi ); 455 Cods gmax_ = max ( _ , gdbktbb . size ()); 456 gwto . tsize ( _ ); 457 gwom . tsize ( gdbktbb . size ()); 458 gdb_CyRegi ( gdbkt , n , wto , wom , max_ , m ); 462 gme < ass gTy > 463  GridDa (2)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 464 cڡ BBox & to , cڡ BBox& om , 465 cڡ BBox & mask , 466 cڡ  m ) 468 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 469 cڡ Cods gtoshi = om . low (- to .lower(); 470 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 471 i(! gwom . emy ()) { 472 BBox gwto = shiabs ( wom , - toshi ); 473 Cods gmax_ = max ( _ , gdbktbb . size ()); 474 gwto . tsize ( _ ); 475 gwom . tsize ( gdbktbb . size ()); 476 gdb_CyRegi ( gdbkt , n , wto , wom , max_ , mask , m ); 481 gme < ass gTy > 482  GridDa (2)< gTy >:: gd_CyRegi (cڡ GridDa(2)< Ty >& c , 483 cڡ BBox & to , 484 cڡ BBox & om , 485 cڡ Cods & , 486 cڡ  m ) 488 as (( m ! ACEA && 489 m >0 && _nems > itm && c ._nitems > itm) || 490 ( m = ACEA && _nems = c ._nitems)); 492 GridDa (2)< gTy >& gd = * this ; 495 cڡ  gdi = om . low (0)- to .lower(0); 496 cڡ  gdj = om . low (1)- to .lower(1); 499 BegFaIndex2 ( c , src. _bbox , src. _da , cڡ Ty ); 500 BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 502 cڡ  gr = ( m = ACEA ) ? 0 : itm; 503 cڡ  gd = ( m = ACEA ? _nems : itm+1; 505  g = r ; i< gd ; it++) { 506 SIndexOfft ( c , ); 507 SIndexOfft ( d , ); 510 f_2 ( i , j , to , ) 511 FaIndex2 ( d , i , j FaIndex2( c ,i+ di ,j+ dj ); 512 gd_f 516 EndFaIndex2 ( d ); 517 EndFaIndex2 ( c ); 520 #ide GRIDDATAONLY 521 gme < ass gTy > 522  GridDa (2)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 523 cڡ BBox & to , 524 cڡ BBox & om , 525 cڡ Cods & , 526 cڡ  m ) 528 as (( m ! ACEA && itm = gdbkt . em (&& _nems > itm) || 529 ( m = ACEA && _nems = gdbkt . nems ())); 532 GridDa (2)< gTy >& gd = * this ; 535 cڡ  gdi = om . low (0)- to .lower(0); 536 cڡ  gdj = om . low (1)- to .lower(1); 539 BegFaIndex2 ( c , gdbkt . bbox (), gdbkt. da (), cڡ Ty ); 540 BegFaIndex2 ( d , d. bbox (), d. da (), Ty ); 542 cڡ  gr = ( m = ACEA ) ? 0 : itm; 543 cڡ  gd = ( m = ACEA ? _nems : itm+1; 545 cڡ  gdr = ( gdbkt . nems (=1? 0 : r ; 547  g , gd ; 548  g = r , gd = dr ; i< gd ; it++, dit++) { 549 SIndexOfft ( c , ); 550 SIndexOfft ( d , d ); 553 f_2 ( i , j , to , ) 554 FaIndex2 ( d , i , j FaIndex2( c ,i+ di ,j+ dj ); 555 gd_f 559 EndFaIndex2 ( d ); 560 EndFaIndex2 ( c ); 563 gme < ass gTy > 564  GridDa (2)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 565 cڡ  n , 566 cڡ BBox & to , 567 cڡ BBox & om , 568 cڡ Cods & , 569 cڡ  m ) 571 as (( m ! ACEA && itm = gdbkt . em ( n && _nems > itm) || 572 ( m = ACEA && _nems = gdbkt . nems ( n ))); 575 GridDa (2)< gTy >& gd = * this ; 578 cڡ  gdi = om . low (0)- to .lower(0); 579 cڡ  gdj = om . low (1)- to .lower(1); 582 BegFaIndex2 ( c , gdbkt . bbox ( n ), gdbkt. da ), cڡ Ty ); 583 BegFaIndex2 ( d , d. bbox (), d. da (), Ty ); 585 cڡ  gr = ( m = ACEA ) ? 0 : itm; 586 cڡ  gd = ( m = ACEA ? _nems : itm+1; 588 cڡ  gdr = ( gdbkt . nems ( n =1? 0 : r ; 590  g , gd ; 591  g = r , gd = dr ; i< gd ; it++, dit++) { 592 SIndexOfft ( c , ); 593 SIndexOfft ( d , d ); 596 f_2 ( i , j , to , ) 597 FaIndex2 ( d , i , j FaIndex2( c ,i+ di ,j+ dj ); 598 gd_f 602 EndFaIndex2 ( d ); 603 EndFaIndex2 ( c ); 607 gme < ass gTy > 608  GridDa (2)< gTy >:: gd_CyRegi (cڡ GridDa(2)< Ty >& c , 609 cڡ BBox & to , 610 cڡ BBox & om , 611 cڡ Cods & , 612 cڡ BBox & mask , 613 cڡ  m ) 615 as (( m ! ACEA && 616 m >0 && _nems > itm && c ._nitems > itm) || 617 ( m = ACEA && _nems = c ._nitems)); 619 GridDa (2)< gTy >& gd = * this ; 622 cڡ  gdi = om . low (0)- to .lower(0); 623 cڡ  gdj = om . low (1)- to .lower(1); 626 BegFaIndex2 ( c , src. _bbox , src. _da , cڡ Ty ); 627 BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 629 cڡ  gr = ( m = ACEA ) ? 0 : itm; 630 cڡ  gd = ( m = ACEA ? _nems : itm+1; 632  g = r ; i< gd ; it++) { 633 SIndexOfft ( c , ); 634 SIndexOfft ( d , ); 637 maskedf_2 ( i , j , to , , mask ) 638 FaIndex2 ( d , i , j FaIndex2( c ,i+ di ,j+ dj ); 639 gd_f 643 EndFaIndex2 ( d ); 644 EndFaIndex2 ( c ); 647 #ide GRIDDATAONLY 648 gme < ass gTy > 649  GridDa (2)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 650 cڡ BBox & to , 651 cڡ BBox & om , 652 cڡ Cods & , 653 cڡ BBox & mask , 654 cڡ  m ) 656 as (( m ! ACEA && itm = gdbkt . em (&& _nems > itm) || 657 ( m = ACEA && _nems = gdbkt . nems ())); 660 GridDa (2)< gTy >& gd = * this ; 663 cڡ  gdi = om . low (0)- to .lower(0); 664 cڡ  gdj = om . low (1)- to .lower(1); 667 BegFaIndex2 ( c , gdbkt . bbox (), gdbkt. da (), cڡ Ty ); 668 BegFaIndex2 ( d , d. bbox (), d. da (), Ty ); 670 cڡ  gr = ( m = ACEA ) ? 0 : itm; 671 cڡ  gd = ( m = ACEA ? _nems : itm+1; 673 cڡ  gdr = ( gdbkt . nems (=1? 0 : r ; 675  g , gd ; 676  g = r , gd = dr ; i< gd ; it++, dit++) { 677 SIndexOfft ( c , ); 678 SIndexOfft ( d , d ); 681 maskedf_2 ( i , j , to , , mask ) 682 FaIndex2 ( d , i , j FaIndex2( c ,i+ di ,j+ dj ); 683 gd_f 687 EndFaIndex2 ( d ); 688 EndFaIndex2 ( c ); 691 gme < ass gTy > 692  GridDa (2)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 693 cڡ  n , 694 cڡ BBox & to , 695 cڡ BBox & om , 696 cڡ Cods & , 697 cڡ BBox & mask , 698 cڡ  m ) 700 as (( m ! ACEA && itm = gdbkt . em ( n && _nems > itm) || 701 ( m = ACEA && _nems = gdbkt . nems ( n ))); 704 GridDa (2)< gTy >& gd = * this ; 707 cڡ  gdi = om . low (0)- to .lower(0); 708 cڡ  gdj = om . low (1)- to .lower(1); 711 BegFaIndex2 ( c , gdbkt . bbox ( n ), gdbkt. da ), cڡ Ty ); 712 BegFaIndex2 ( d , d. bbox (), d. da (), Ty ); 714 cڡ  gr = ( m = ACEA ) ? 0 : itm; 715 cڡ  gd = ( m = ACEA ? _nems : itm+1; 717 cڡ  gdr = ( gdbkt . nems ( n =1? 0 : r ; 719  g , gd ; 720  g = r , gd = dr ; i< gd ; it++, dit++) { 721 SIndexOfft ( c , ); 722 SIndexOfft ( d , d ); 725 maskedf_2 ( i , j , to , , mask ) 726 FaIndex2 ( d , i , j FaIndex2( c ,i+ di ,j+ dj ); 727 gd_f 731 EndFaIndex2 ( d ); 732 EndFaIndex2 ( c ); 736 gme < ass gTy > 737  GridDa (2)< gTy >:: $PackRegi ( Ty * ndbuf , 738 cڡ BBox & om , 739 cڡ  m ) const 741 `as (( m ! ACEA && itm >0 && _nems > itm) || 742 ( m = ACEA )); 744 `GridDa (2)< Ty > cڡ& c = * this ; 746  p = 0; 748 `BegFaIndex2 ( c , src. _bbox , src. _da , cڡ Ty ); 750 cڡ  r = ( m = ACEA ) ? 0 : itm; 751 cڡ  d = ( m = ACEA ? _nems : itm+1; 753  = r ; i< d ; it++) { 754 `SIndexOfft ( c , ); 757 `f_2 ( i , j , om , _ ) 758 ndbuf [ p ++] = `FaIndex2 ( c , i , j ); 759 d_f 763 `EndFaIndex2 ( c ); 764 } } 766 gme < ass gTy > 767  GridDa (2)< gTy >:: $UnPackRegi (cڡ Ty * cvbuf , 768 cڡ BBox & to , 769 cڡ  m ) 771 `as (( m ! ACEA && itm >0 && _nems > itm) || 772 ( m = ACEA )); 774 `GridDa (2)< Ty >& d = * this ; 776  p = 0; 778 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 780 cڡ  r = ( m = ACEA ) ? 0 : itm; 781 cڡ  d = ( m = ACEA ? _nems : itm+1; 783  = r ; i< d ; it++) { 784 `SIndexOfft ( d , ); 787 `f_2 ( i , j , to , _ ) 788 `FaIndex2 ( d , i , j cvbuf [ p ++]; 789 d_f 793 `EndFaIndex2 ( d ); 794 } } 796 gme < ass gTy > 797 goam & gݔ << (oam& gos , cڡ GridDa (2)< gTy >& ggd ) 799 i(& ggd =(cڡ GridDa (2)< Ty > *) NULL  os ; 801 gos << "BBox: " << ggd . g_bbox << " " << "Exs: " << gd. g_exs << " "; 802 gos << "Sp: " << ggd . g_ << " "; 803 gos << "Size: " << ggd . g_size << " " << "Btom: " << gd. g_btom << " "; 805 gos << "\n"; 807 i( ggd . g_bbox . emy () gos ; 809 cڡ gCods & gl = gd . _bbox . low (); 810 cڡ gCods & gu = gd . _bbox . u (); 811 cڡ gCods & g = gd . _bbox . size (); 813  gm =0; itm < ggd . g_nems ; itm++) { 816  gj = u (1);j>= l (1);j-= (1)) { 817  i = l (0); gi <= u (0);i+= (0)) { 818 os << "[" << m << "," << i << "," << j << "]=" 819 << gd ( i , j , m ) << " "; 820 } gos << "\n"; 821 } gos << "\n"; 825  gos ; 828 gme < ass gTy > 829 gofam & gݔ << (ofam& gofs , cڡ GridDa (2)< gTy >& ggd ) 831 i(& ggd =(cڡ GridDa (2)< Ty > *) NULL  ofs ; 833 gofs . wre ((*)& gd . _bbox ,( BBox )); 834 gofs . wre ((*)& gd . _nems ,()); 835 gofs . wre ((*) gd . _da ,gd. _tsize *( Ty )); 837  gofs ; 840 gme < ass gTy > 841 gifam & gݔ >> (ifam& gifs , GridDa (2)< gTy >& ggd ) 843 i(& ggd =(cڡ GridDa (2)< Ty > *) NULL  ifs ; 845 BBox gbb ; 846  gnems = 1; 848 gifs . ad ((*)& bb ,( BBox )); 849 gifs . ad ((*)& nems ,()); 851 i(! ggd . ok_to_dex ()) 852 { ggd . lo ( bb , nems ); } 854 i( gbb = gd . _bbox && nems =gd. _nems ) { 855 ifs . ad ((*) gd . _da ,gd. _tsize *( Ty )); 858 GridDa (2)< gTy > tmpgd ( bb , nems ); 859 gifs . ad ((*) tmpgd . _da ,tmpgd. _tsize *( Ty )); 860 ggd . cy ( tmpgd ); 863  gifs ; 866  ~"GridDaOps2.h " 867  ~"GridDaOpsRed2.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridData2.h 1 #ide _uded_GridDa_2_h 2  #_uded_GridDa_2_h ) 14  ~"ACEPams.h " 15  ~"GridDaPams.h " 17 #ide ACEA 18  #ACEA (9999) ) 21 #ifde DEBUG_PRINT_GD_MEMORY 22  ~"ACEMemyT.h " 25  ~"BBox.h " 26  ~"Cods.h " 28 #ide GRIDDATAONLY 29  ~"PackedGridDaBuck.h " 32 #ifde DEBUG_PRINT 33  ~"CommSv.h " 36  ~"IndexGridDa2.h " 38 #ide GridDa 39  #GridDa ( dim `me2 ( GridDa ,dim) ) 42 #ide gd_ORegi 43  #gd_ORegi ( `me2 ( gd_ORegi ,) ) 46  ~"GDIt.h " 48 #i defed ( __GNUG__ || defed( __GNUC__ ) 49 gme < ass gTy > cs GridDa (2); 51 gme < ass gTy > goam & gݔ <<(oam&, cڡ GridDa (2)&); 52 gme < ass gTy > gofam & gݔ <<(ofam&, cڡ GridDa (2)&); 53 gme < ass gTy > gifam & gݔ >>(ifam&, GridDa (2)&); 56 gme < ass gTy > cs GridDa (2) 58 #i defed ( __GNUG__ || defed( __GNUC__ ) 59 nd goam & gݔ << <>(oam&, cڡ GridDa (2)< gTy >&); 60 nd gofam & gݔ << <>(ofam&, cڡ GridDa (2)< gTy >&); 61 nd gifam & gݔ >> <>(ifam&, GridDa (2)< gTy >&); 63 nd goam & gݔ <<(oam&, cڡ GridDa (2)< gTy >&); 64 nd gofam & gݔ <<(ofam&, cڡ GridDa (2)< gTy >&); 65 nd gifam & gݔ >>(ifam&, GridDa (2)< gTy >&); 68 BBox g_bbox ; 69 Cods g_exs ; 70 Cods g_ ; 71  g_size ; 72  g_nems ; 73  g_tsize ; 74  g_btom ; 75 Ty * g_da ; 77 give : 79 public : 80 GridDa (2)(); 81 GridDa (2)(cڡ gBBox & gbbox , 82 cڡ  gnems =1); 83 GridDa (2)(cڡ gBBox & gbbox , Ty * gdabuf , 84 cڡ  gnems =1); 87 GridDa (2)(cڡ  gi , cڡ  gj , 88 cڡ  gii , cڡ  gjj ); 92 GridDa (2)(cڡ  gi , cڡ  gj , 93 cڡ  gii , cڡ  gjj , 94 cڡ  gs ); 99 GridDa (2)(cڡ  gi , cڡ  gj , 100 cڡ  gii , cڡ  gjj , 101 cڡ  gs , cڡ  gss , 102 cڡ  gnems ); 105 #ide GRIDDATAONLY 106 GridDa (2)( gGridDaBuck < gTy >& ggdbkt ); 107 GridDa (2)( gGridDaBuck < gTy >& ggdbkt , cڡ  gn ); 111 GridDa (2(cڡ GridDa(2)< gTy >& gh ); 113 gle ~ GridDa (2)() 115 i( g_da ) { 116 #ifde DEBUG_PRINT_GD_MEMORY 117 gACEMemyT :: (( Ty )* _tsize ); 119 gde [] g_da ; _d( Ty *)0; 123  lo (cڡ BBox & bbox , 124 cڡ  nems =1); 125  lo (cڡ BBox & bbox , Ty * dabuf , 126 cڡ  nems =1); 128 le  lo ( Ty * dabuf ) 130 i( g_da ) { 131 gde [] g_da ; _d( Ty *)0; 132 #ifde DEBUG_PRINT_GD_MEMORY 133 gACEMemyT :: (( Ty )* _tsize ); 136 g_da = dabuf ; 139 le  do () 141 i( g_da ) { 142 #ifde DEBUG_PRINT_GD_MEMORY 143 gACEMemyT :: (( Ty )* _tsize ); 145 gde [] g_da ; _d( Ty *)0; 149 le  do ( Ty *& dabuf ) 150 { gdabuf = _da ; g_da = ( Ty *) 0; } 152 * dabufr ({  ((* g_da ); } 154  tdabufr ({ g_da = ( Ty *) 0; } 157 le cڡ gCods & low (cڡ { ( g_bbox .lower()); } 158 le cڡ gCods & u (cڡ { ( g_bbox .upper()); } 159 le cڡ gCods & exs (cڡ { ( g_exs ); } 160 le cڡ gCods & size (cڡ { ( g_ ); } 161 le Cods low ({ ( g_bbox .lower()); } 162 le Cods u ({ ( g_bbox .upper()); } 163 le Cods exs ({ ( g_exs ); } 164 le Cods size ({ ( g_ ); } 165 le  btom (cڡ { ( g_btom ); } 166 le  low (cڡ  i cڡ { ( g_bbox .lower(i)); } 167 le  u (cڡ  i cڡ { ( g_bbox .upper(i)); } 168 le  exs (cڡ  i cڡ { ( _exs (i)); } 169 le  size (cڡ  i cڡ { ( _ (i)); } 170 le cڡ gBBox & bbox (cڡ { ( g_bbox ); } 172 le  ok_to_dex ({ ( g_da !( Ty * NULL ); } 174 le  size (cڡ { ( g_size ); } 176 le  nems (cڡ { ( g_nems ); } 177 le cڡ * nem (cڡ { (& g_nems ); } 178 le  tsize (cڡ { ( g_tsize ); } 180 give : 182 le  idx (cڡ  i , cڡ  j , cڡ  m ) const 183 { ( m * g_size )+ g_btom +( gi / _ (0)+ _exs (0)*( gj /_step(1))) ); } 186 gpublic : 188 le cڡ Ty & ݔ ((cڡ  i , cڡ  gj ) const 189 { as ( idx ( i , j ,0>0 && idx(i,j,0< _tsize ); 190 ( g_da [ idx ( i , j ,0)]); } 191 le gTy & ݔ ((cڡ  gi , cڡ  gj ) 192 { as ( idx ( i , j ,0>0 && idx(i,j,0< _tsize ); 193 ( g_da [ idx ( i , j ,0)]); } 195 le cڡ gTy & ݔ ((cڡ  gi , cڡ  gj , cڡ  gm ) const 196 { as ( idx ( i , j , m >0 && idx(i,j,m< _tsize ); 197 ( g_da [ idx ( i , j , m )]); } 198 le gTy & ݔ ((cڡ  gi , cڡ  gj , cڡ  gm ) 199 { as ( idx ( i , j , m >0 && idx(i,j,m< _tsize ); 200 ( g_da [ idx ( i , j , m )]); } 202 le cڡ gTy & ݔ ((cڡ gCods & gc ) const 203 { as ( idx ( c (0),c(1),0>0 && idx(c(0),c(1),0< _tsize ); 204 ( g_da [ idx ( c (0),c(1),0)]); } 205 le gTy & ݔ ((cڡ gCods & gc ) 206 { as ( idx ( c (0),c(1),0>0 && idx(c(0),c(1),0< _tsize ); 207 ( g_da [ idx ( c (0),c(1),0)]); } 209 le cڡ gTy & ݔ ((cڡ gCods & gc , cڡ  gm ) const 210 { as ( idx ( c (0),c(1), m >0 && idx(c(0),c(1),m< _tsize ); 211 ( g_da [ idx ( c (0),c(1), m )]); } 212 le gTy & ݔ ((cڡ gCods & gc , cڡ  gm ) 213 { as ( idx ( c (0),c(1), m >0 && idx(c(0),c(1),m< _tsize ); 214 ( g_da [ idx ( c (0),c(1), m )]); } 216 le cڡ Ty * r (cڡ  i , cڡ  j , cڡ  m =0) const 217 { as ( idx ( i , j , m >0 && idx(i,j,m< _tsize ); 218 ( g_da + idx ( i , j , m )); } 219 le Ty * r (cڡ  i , cڡ  j , cڡ  m =0) 220 { as ( idx ( i , j , m >0 && idx(i,j,m< _tsize ); 221 ( g_da + idx ( i , j , m )); } 223 le cڡ Ty * r (cڡ Cods & c , cڡ  m =0) const 224 { as ( idx ( c (0),c(1), m >0 && idx(c(0),c(1),m< _tsize ); 225 ( g_da + idx ( c (0),c(1), m )); } 226 le Ty * r (cڡ Cods & c , cڡ  m =0) 227 { as ( idx ( c (0),c(1), m >0 && idx(c(0),c(1),m< _tsize ); 228 ( g_da + idx ( c (0),c(1), m )); } 231 le cڡ Ty * da (cڡ { ( g_da ); } 232 le Ty * da ({ ( g_da ); } 234 le cڡ Ty * da (cڡ  m cڡ { ( g_da +( _size * gm )); } 235 le Ty * da (cڡ  m { ( g_da +( _size * gm )); } 237  fl (cڡ Ty & v , 238 cڡ  m = ACEA ); 241  cy (cڡ GridDa (2)< Ty >& gd , 242 cڡ  m = ACEA ); 243  cy (cڡ GridDa (2)< Ty >& gd , 244 cڡ BBox & whe , 245 cڡ  m = ACEA ); 246  cy (cڡ GridDa (2)< Ty >& gd , 247 cڡ BBox & to , cڡ BBox& om , 248 cڡ  m = ACEA ); 249  cy (cڡ GridDa (2)< Ty >& gd , 250 cڡ BBox & to , cڡ BBox& om , 251 cڡ BBox & mask , 252 cڡ  m = ACEA ); 254 #ide GRIDDATAONLY 255  cy (cڡ GridDaBuck < Ty >& gdbkt , 256 cڡ  m ); 257  cy (cڡ GridDaBuck < Ty >& gdbkt , 258 cڡ BBox & whe , 259 cڡ  m ); 260  cy (cڡ GridDaBuck < Ty >& gdbkt , 261 cڡ BBox & to , cڡ BBox& om , 262 cڡ  m ); 263  cy (cڡ GridDaBuck < Ty >& gdbkt , 264 cڡ BBox & to , cڡ BBox& om , 265 cڡ BBox & mask , 266 cڡ  m ); 268  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 269 cڡ  m ); 270  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 271 cڡ BBox & whe , 272 cڡ  m ); 273  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 274 cڡ BBox & to , cڡ BBox& om , 275 cڡ  m ); 276  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 277 cڡ BBox & to , cڡ BBox& om , 278 cڡ BBox & mask , 279 cڡ  m ); 283  l_ (cڡ GridDa (2)< Ty >& gd1 , cڡ  ac1 , 284 cڡ GridDa (2)< Ty >& gd2 , cڡ  ac2 , 285 cڡ BBox & whe , 286 cڡ  m = ACEA ); 287 le  l_ (cڡ GridDa (2)< Ty >& gd1 , cڡ  ac1 , 288 cڡ GridDa (2)< Ty >& gd2 , cڡ  ac2 , 289 cڡ  m = ACEA ) 290 { GridDa (2)< Ty >:: l_ ( gd1 , ac1 , gd2 , ac2 , _bbox , m ); } 293 Ty momt1 (cڡ  axis , 294 cڡ BBox & whe , 295 cڡ  m = ACEA ); 296 le Ty momt1 (cڡ  axis , 297 cڡ  m = ACEA ) 298 {  ( GridDa (2)< Ty >:: momt1 ( axis , _bbox , m )); } 301  sumsqrd (cڡ BBox & whe , 302 Ty & s , & c , 303 cڡ  m = ACEA ); 304 le  sumsqrd ( Ty & s , & c , 305 cڡ  m = ACEA ) 306 { GridDa (2)< Ty >:: sumsqrd ( _bbox , s , c , m ); } 309  equs (cڡ Ty & v , 310 cڡ BBox & whe , 311 cڡ  m = ACEA ); 312 le  equs (cڡ Ty & v , 313 cڡ  m = ACEA ) 314 { GridDa (2)< Ty >:: equs ( v , _bbox , m ); } 316  equs (cڡ GridDa (2)< Ty >& gd , 317 cڡ BBox & to , cڡ BBox& om , 318 cڡ  m = ACEA ); 319 le  equs (cڡ GridDa (2)< Ty >& gd , 320 cڡ  m = ACEA ) 321 { GridDa (2)< Ty >:: equs ( gd , gd. _bbox , gd._bbox, m ); } 322 le  equs (cڡ GridDa (2)< Ty >& gd , 323 cڡ BBox & whe , 324 cڡ  m = ACEA ) 325 { GridDa (2)< Ty >:: equs ( gd , whe , whe, m ); } 328  us (cڡ Ty & v , 329 cڡ BBox & whe , 330 cڡ  m = ACEA ); 331 le  us (cڡ Ty & v , 332 cڡ  m = ACEA ) 333 { GridDa (2)< Ty >:: us ( v , _bbox , m ); } 335  us (cڡ GridDa (2)< Ty >& gd , 336 cڡ BBox & to , cڡ BBox& om , 337 cڡ  m = ACEA ); 338 le  us (cڡ GridDa (2)< Ty >& gd , 339 cڡ  m = ACEA ) 340 { GridDa (2)< Ty >:: us ( gd , gd. _bbox , gd._bbox, m ); } 341 le  us (cڡ GridDa (2)< Ty >& gd , 342 cڡ BBox & whe , 343 cڡ  m = ACEA ) 344 { GridDa (2)< Ty >:: us ( gd , whe , whe, m ); } 346 #ide GRIDDATAONLY 347 le  us ( GridDaBuck < Ty >& gdbkt , 348 cڡ BBox & to , cڡ BBox& om , 349 cڡ  m = ACEA ) 351 GridDa (2)< Ty > tmpgd ( gdbkt ); 352 us ( tmpgd , to , om , m ); 353 gtmpgd . tdabufr (); 355 le  us ( GridDaBuck < Ty >& gdbkt , cڡ  n , 356 cڡ BBox & to , cڡ BBox& om , 357 cڡ  m = ACEA ) 359 GridDa (2)< Ty > tmpgd ( gdbkt , n ); 360 us ( tmpgd , to , om , m ); 361 gtmpgd . tdabufr (); 366  mus (cڡ Ty & v , 367 cڡ BBox & whe , 368 cڡ  m = ACEA ); 369 le  mus (cڡ Ty & v , 370 cڡ  m = ACEA ) 371 { GridDa (2)< Ty >:: mus ( v , _bbox , m ); } 373  mus (cڡ GridDa (2)< Ty >& gd , 374 cڡ BBox & to , cڡ BBox& om , 375 cڡ  m = ACEA ); 376 le  mus (cڡ GridDa (2)< Ty >& gd , 377 cڡ  m = ACEA ) 378 { GridDa (2)< Ty >:: mus ( gd , gd. _bbox , gd._bbox, m ); } 379 le  mus (cڡ GridDa (2)< Ty >& gd , 380 cڡ BBox & whe , 381 cڡ  m = ACEA ) 382 { GridDa (2)< Ty >:: mus ( gd , whe , whe, m ); } 385  muɝly (cڡ Ty & v , 386 cڡ BBox & whe , 387 cڡ  m = ACEA ); 388 le  muɝly (cڡ Ty & v , 389 cڡ  m = ACEA ) 390 { GridDa (2)< Ty >:: muɝly ( v , _bbox , m ); } 392  muɝly (cڡ GridDa (2)< Ty >& gd , 393 cڡ BBox & to , cڡ BBox& om , 394 cڡ  m = ACEA ); 395 le  muɝly (cڡ GridDa (2)< Ty >& gd , 396 cڡ  m = ACEA ) 397 { GridDa (2)< Ty >:: muɝly ( gd , gd. _bbox , gd._bbox, m ); } 398 le  muɝly (cڡ GridDa (2)< Ty >& gd , 399 cڡ BBox & whe , 400 cڡ  m = ACEA ) 401 { GridDa (2)< Ty >:: muɝly ( gd , whe , whe, m ); } 404  divide (cڡ Ty & v , 405 cڡ BBox & whe , 406 cڡ  m = ACEA ); 407 le  divide (cڡ Ty & v , 408 cڡ  m = ACEA ) 409 { GridDa (2)< Ty >:: divide ( v , _bbox , m ); } 411  divide (cڡ GridDa (2)< Ty >& gd , 412 cڡ BBox & to , cڡ BBox& om , 413 cڡ  m = ACEA ); 414 le  divide (cڡ GridDa (2)< Ty >& gd , 415 cڡ  m = ACEA ) 416 { GridDa (2)< Ty >:: divide ( gd , gd. _bbox , gd._bbox, m ); } 417 le  divide (cڡ GridDa (2)< Ty >& gd , const 418 BBox & whe , 419 cڡ  m = ACEA ) 420 { GridDa (2)< Ty >:: divide ( gd , whe , whe, m ); } 423 le  gݔ = (cڡ Ty & v ) 424 { GridDa (2)< Ty >:: equs ( v , _bbox ); } 425 le  gݔ = (cڡ GridDa (2)< Ty >& gd ) 426 { GridDa (2)< Ty >:: equs ( gd , gd. _bbox , gd._bbox); } 428 le  gݔ +(cڡ Ty & v ) 429 { GridDa (2)< Ty >:: us ( v , _bbox ); } 430 le  gݔ +(cڡ GridDa (2)< Ty >& gd ) 431 { GridDa (2)< Ty >:: us ( gd , gd. _bbox , gd._bbox); } 433 le  gݔ -(cڡ Ty & v ) 434 { GridDa (2)< Ty >:: mus ( v , _bbox ); } 435 le  gݔ -(cڡ GridDa (2)< Ty >& gd ) 436 { GridDa (2)< Ty >:: mus ( gd , gd. _bbox , gd._bbox); } 438 le  gݔ *(cڡ Ty & v ) 439 { GridDa (2)< Ty >:: muɝly ( v , _bbox ); } 440 le  gݔ *(cڡ GridDa (2)< Ty >& gd ) 441 { GridDa (2)< Ty >:: muɝly ( gd , gd. _bbox , gd._bbox); } 443 le  gݔ /(cڡ Ty & v ) 444 { GridDa (2)< Ty >:: divide ( v , _bbox ); } 445 le  gݔ /(cڡ GridDa (2)< Ty >& gd ) 446 { GridDa (2)< Ty >:: divide ( gd , gd. _bbox , gd._bbox); } 452 Ty maxv (cڡ BBox & whe , 453 cڡ  m = ACEA ); 454 le Ty maxv (cڡ  m = ACEA ) 455 {  ( GridDa (2)< Ty >:: maxv ( _bbox , m )); } 457 Ty mv (cڡ BBox & whe , 458 cڡ  m = ACEA ); 459 le Ty mv (cڡ  m = ACEA ) 460 {  ( GridDa (2)< Ty >:: mv ( _bbox , m )); } 462 Ty sum (cڡ BBox & whe , 463 cڡ  m = ACEA ); 464 le Ty sum (cڡ  m = ACEA ) 465 {  ( GridDa (2)< Ty >:: sum ( _bbox , m )); } 467 Ty odu (cڡ BBox & whe , 468 cڡ  m = ACEA ); 469 le Ty odu (cڡ  m = ACEA ) 470 {  ( GridDa (2)< Ty >:: odu ( _bbox , m )); } 474 give : 475  gd_CyRegi (cڡ GridDa (2)< Ty >& gd , 476 cڡ BBox & to , 477 cڡ BBox & om , 478 cڡ Cods & , 479 cڡ  m ); 481 #ide GRIDDATAONLY 482  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 483 cڡ BBox & to , 484 cڡ BBox & om , 485 cڡ Cods & , 486 cڡ  m ); 487  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 488 cڡ BBox & to , 489 cڡ BBox & om , 490 cڡ Cods & , 491 cڡ  m ); 494  gd_CyRegi (cڡ GridDa (2)< Ty >& gd , 495 cڡ BBox & to , 496 cڡ BBox & om , 497 cڡ Cods & , 498 cڡ BBox & mask , 499 cڡ  m ); 501 #ide GRIDDATAONLY 502  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 503 cڡ BBox & to , 504 cڡ BBox & om , 505 cڡ Cods & , 506 cڡ BBox & mask , 507 cڡ  m ); 508  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 509 cڡ BBox & to , 510 cڡ BBox & om , 511 cڡ Cods & , 512 cڡ BBox & mask , 513 cڡ  m ); 516  gd_ORegi ( equ )(cڡ gTy & gv , 517 cڡ gBBox & gto , 518 cڡ gBBox & gom , 519 cڡ gCods & g , 520 cڡ  gm ); 521  gd_ORegi ( equ )(cڡ GridDa (2)< gTy >& ggd , 522 cڡ gBBox & gto , 523 cڡ gBBox & gom , 524 cڡ gCods & g , 525 cڡ  gm ); 527  gd_ORegi ( us )(cڡ gTy & gv , 528 cڡ gBBox & gto , 529 cڡ gBBox & gom , 530 cڡ gCods & g , 531 cڡ  gm ); 532  gd_ORegi ( us )(cڡ GridDa (2)< gTy >& ggd , 533 cڡ gBBox & gto , 534 cڡ gBBox & gom , 535 cڡ gCods & g , 536 cڡ  gm ); 538  gd_ORegi ( mus )(cڡ gTy & gv , 539 cڡ gBBox & gto , 540 cڡ gBBox & gom , 541 cڡ gCods & g , 542 cڡ  gm ); 543  gd_ORegi ( mus )(cڡ GridDa (2)< gTy >& ggd , 544 cڡ gBBox & gto , 545 cڡ gBBox & gom , 546 cڡ gCods & g , 547 cڡ  gm ); 549  gd_ORegi ( mu )(cڡ gTy & gv , 550 cڡ gBBox & gto , 551 cڡ gBBox & gom , 552 cڡ gCods & g , 553 cڡ  gm ); 554  gd_ORegi ( mu )(cڡ GridDa (2)< gTy >& ggd , 555 cڡ gBBox & gto , 556 cڡ gBBox & gom , 557 cڡ gCods & g , 558 cڡ  gm ); 560  gd_ORegi ( div )(cڡ gTy & gv , 561 cڡ gBBox & gto , 562 cڡ gBBox & gom , 563 cڡ gCods & g , 564 cڡ  gm ); 565  gd_ORegi ( div )(cڡ GridDa (2)< gTy >& ggd , 566 cڡ gBBox & gto , 567 cڡ gBBox & gom , 568 cڡ gCods & g , 569 cڡ  gm ); 571 gpublic : 573  PackRegi ( Ty * ndbuf , cڡ BBox & om , cڡ  m = ACEA ) const; 574  UnPackRegi (cڡ Ty * cvbuf , cڡ BBox & to , cڡ  m = ACEA ); 577 #i defed ( Wt_c_fes ) 578  ~"GridDa2.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridData3.c 1 #ide _uded_GridDa_3_c 2  #_uded_GridDa_3_c ) 14 gme < ass gTy > 15 GridDa (3)< gTy >::GridData(3)() 16 : _bbox (), 17 _exs (0,0), 18 _ (3,1), 19 _size (0), 20 _nems (1), 21 _tsize (0), 22 _btom (0), 23 _da (( Ty * NULL ) {} 25 gme < ass gTy > 26 GridDa (3)< gTy >::GridDa(3)(cڡ BBox & bb , 27 cڡ  gnems ) 28 : _bbox ( bb ), 29 _exs ( bb . exs ()), 30 _ ( bb . size ()), 31 _size ( bb . size ()), 32 _nems ( nems ), 33 _tsize ( _nems * _size ), 34 _btom ( bb . btom ()), 35 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 37 #ifde DEBUG_PRINT_GD 38 as ( _da ); 39 as ( _da + _tsize -1); 41 #ifde DEBUG_PRINT_GD_MEMORY 42 gACEMemyT :: loc (( Ty )* _tsize ); 44 #ifde DEBUG_PRINT_GD_FILL 45 fl (9999); 49 gme < ass gTy > 50 GridDa (3)< gTy >::GridDa(3)(cڡ BBox & bb , Ty * gdabuf , 51 cڡ  gnems ) 52 : _bbox ( bb ), 53 _exs ( bb . exs ()), 54 _ ( bb . size ()), 55 _size ( bb . size ()), 56 _nems ( nems ), 57 _tsize ( _nems * _size ), 58 _btom ( bb . btom ()), 59 $_da ( dabuf ) 61 #ifde DEBUG_PRINT_GD 62 `as ( _da ); 63 `as ( _da + _tsize -1); 65 #ifde DEBUG_PRINT_GD_FILL 66 `fl (9999); 68 } } 70 gme < ass gTy > 72 GridDa (3)< gTy >::GridDa(3(cڡ  i , cڡ  gj , cڡ  gk , 73 cڡ  gii , cڡ  gjj , cڡ  gkk ) 74 : _bbox (3, i , j , k , ii , jj , kk ,1), 76 _exs ( _bbox . exs ()), 77 _ ( _bbox . size ()), 78 _size ( _bbox . size ()), 79 _nems (1), 80 _tsize ( _nems * _size ), 81 _btom ( _bbox . btom ()), 82 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 84 #ifde DEBUG_PRINT_GD 85 as ( _da ); 86 as ( _da + _tsize -1); 88 #ifde DEBUG_PRINT_GD_MEMORY 89 gACEMemyT :: loc (( Ty )* _tsize ); 91 #ifde DEBUG_PRINT_GD_FILL 92 fl (9999); 96 gme < ass gTy > 98 GridDa (3)< gTy >::GridDa(3(cڡ  i , cڡ  gj , cڡ  gk , 99 cڡ  gii , cڡ  gjj , cڡ  gkk , 100 cڡ  gs ) 101 : _bbox (3, i , j , k , ii , jj , kk , s ), 103 _exs ( _bbox . exs ()), 104 _ ( _bbox . size ()), 105 _size ( _bbox . size ()), 106 _nems (1), 107 _tsize ( _nems * _size ), 108 _btom ( _bbox . btom ()), 109 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 111 #ifde DEBUG_PRINT_GD 112 as ( _da ); 113 as ( _da + _tsize -1); 115 #ifde DEBUG_PRINT_GD_MEMORY 116 gACEMemyT :: loc (( Ty )* _tsize ); 118 #ifde DEBUG_PRINT_GD_FILL 119 fl (9999); 123 gme < ass gTy > 125 GridDa (3)< gTy >::GridDa(3(cڡ  i , cڡ  gj , cڡ  gk , 126 cڡ  gii , cڡ  gjj , cڡ  gkk , 127 cڡ  gs , cڡ  gss , cڡ  gsss , 128 cڡ  gnems ) 129 : _bbox (3, i , j , k , ii , jj , kk , s , ss , sss ), 131 _exs ( _bbox . exs ()), 132 _ ( _bbox . size ()), 133 _size ( _bbox . size ()), 134 _nems ( nems ), 135 _tsize ( _nems * _size ), 136 _btom ( _bbox . btom ()), 137 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 139 #ifde DEBUG_PRINT_GD 140 as ( _da ); 141 as ( _da + _tsize -1); 143 #ifde DEBUG_PRINT_GD_MEMORY 144 gACEMemyT :: loc (( Ty )* _tsize ); 146 #ifde DEBUG_PRINT_GD_FILL 147 fl (9999); 151 #ide GRIDDATAONLY 152 gme < ass gTy > 153 GridDa (3)< gTy >::GridDa(3)( GridDaBuck < Ty >& gdbkt ) 154 : _bbox ( gdbkt . bbox ()), 155 _exs (( gdbkt . bbox ()). exs ()), 156 _ (( gdbkt . bbox ()). size ()), 157 _size (( gdbkt . bbox ()). size ()), 158 _nems ( gdbkt . nems ()), 159 _tsize ( _nems * _size ), 160 _btom (( gdbkt . bbox ()). btom ()), 161 _da ( gdbkt . $da ()) 163 #ifde DEBUG_PRINT_GD 164 `as ( _da ); 165 `as ( _da + _tsize -1); 167 #ifde DEBUG_PRINT_GD_FILL 170 } } 172 gme < ass gTy > 173 GridDa (3)< gTy >::GridDa(3)( GridDaBuck < Ty >& gdbkt , cڡ  gn ) 174 : _bbox ( gdbkt . bbox ( n )), 175 _exs (( gdbkt . bbox ( n )). exs ()), 176 _ (( gdbkt . bbox ( n )). size ()), 177 _size (( gdbkt . bbox ( n )). size ()), 178 _nems ( gdbkt . nems ( n )), 179 _tsize ( _nems * _size ), 180 _btom (( gdbkt . bbox ( n )). btom ()), 181 _da ( gdbkt . $da ( n )) 183 #ifde DEBUG_PRINT_GD 184 `as ( _da ); 185 `as ( _da + _tsize -1); 187 #ifde DEBUG_PRINT_GD_FILL 190 } } 193 gme < ass gTy > 194 GridDa (3)< gTy >::GridDa(3)(cڡ GridDa(3)< Ty >& h ) 195 : _bbox ( h ._bbox), 196 _exs ( h ._extents), 197 _ ( h ._step), 198 _size ( h ._size), 199 _nems ( h ._nitems), 200 _tsize ( h ._tsize), 201 _btom ( h ._bottom), 202 _da ( _tsize ? w Ty [_tsize] : ((Ty * NULL )) 204 #ifde DEBUG_PRINT_GD 205 as ( _da ); 206 as ( _da + _tsize -1); 208 #ifde DEBUG_PRINT_GD_MEMORY 209 gACEMemyT :: loc (( Ty )* _tsize ); 211 #ifde ACENOCOPYGD 212 #ifde DEBUG_PRINT_GD_FILL 213 fl (9999); 216 memy ( _da , h ._da,( Ty )* _tsize ); 221 gme < ass gTy > 222  GridDa (3)< gTy >:: $lo (cڡ BBox & bb , 223 cڡ  nems ) 225 _bbox = bb ; 226 _exs = _bbox . `exs (); 227 _ = _bbox . `size (); 228 _size = _bbox . `size (); 229 _nems = nems ; 230 _tsize = _nems * _size ; 231 _btom = _bbox . `btom (); 232 _da = _tsize ? w Ty [_tsize] : (Ty * NULL ; 233 #ifde DEBUG_PRINT_GD 234 `as ( _da ); 235 `as ( _da + _tsize -1); 237 #ifde DEBUG_PRINT_GD_MEMORY 238 ACEMemyT :: `loc (( Ty )* _tsize ); 240 #ifde DEBUG_PRINT_GD_FILL 241 `fl (9999); 243 } } 245 gme < ass gTy > 246  GridDa (3)< gTy >:: $lo (cڡ BBox & bb , Ty * dabuf , 247 cڡ  nems ) 249 _bbox = bb ; 250 _exs = _bbox . `exs (); 251 _ = _bbox . `size (); 252 _size = _bbox . `size (); 253 _nems = nems ; 254 _tsize = _nems * _size ; 255 _btom = _bbox . `btom (); 256 #ifde DEBUG_PRINT_GD 257 `as (! _da ); 259 _da = dabuf ; 260 #ifde DEBUG_PRINT_GD 261 `as ( _da ); 262 `as ( _da + _tsize -1); 264 #ifde DEBUG_PRINT_GD_FILL 265 `fl (9999); 267 } } 269 gme < ass gTy > 270  GridDa (3)< gTy >:: $fl (cڡ Ty & v , 271 cڡ  m ) 273 `as (( m ! ACEA && itm >0 && _nems > itm) || 274 ( m = ACEA )); 276 cڡ  r = ( m = ACEA ) ? 0 : itm; 277 cڡ  d = ( m = ACEA ? _nems : itm+1; 279  i , j ; 281  i = r ; i < d ; i++) 282  j = 0; j < _size ; j++) 283 _da [ i * _size + j ] = v ; 284 } } 286 gme < ass gTy > 287  GridDa (3)< gTy >:: cy (cڡ GridDa(3)< Ty >& gd , 288 cڡ  m ) 290 i(& ggd ! this ) { 291 BBox ri = _bbox * gd ._bbox; 292 i(! gri . emy ()) { 293 Cods gmax_ = max ( _ , gd ._step); 294 BBox to ( ri ); gto . tsize ( _ ); 295 BBox om ( ri ); gom . tsize ( gd . _ ); 296 gd_CyRegi ( gd , to , om , max_ , m ); 301 gme < ass gTy > 302  GridDa (3)< gTy >:: cy (cڡ GridDa(3)< Ty >& gd , 303 cڡ BBox & whe , 304 cڡ  m ) 306 i(& ggd ! this ) { 307 BBox ri = _bbox * gd ._bbox * whe ; 308 i(! gri . emy ()) { 309 Cods gmax_ = max ( _ , gd ._step); 310 BBox to ( ri ); gto . tsize ( _ ); 311 BBox om ( ri ); gom . tsize ( gd . _ ); 312 gd_CyRegi ( gd , to , om , max_ , m ); 317 gme < ass gTy > 318  GridDa (3)< gTy >:: cy (cڡ GridDa(3)< Ty >& gd , 319 cڡ BBox & to , cڡ BBox& om , 320 cڡ  m ) 322 cڡ Cods gtoshi = om . low (- to .lower(); 323 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 324 i(! gwom . emy ()) { 325 BBox gwto = shiabs ( wom , - toshi ); 326 Cods gmax_ = max ( _ , gd ._step); 327 gwto . tsize ( _ ); 328 gwom . tsize ( gd . _ ); 329 gd_CyRegi ( gd , wto , wom , max_ , m ); 333 gme < ass gTy > 334  GridDa (3)< gTy >:: cy (cڡ GridDa(3)< Ty >& gd , 335 cڡ BBox & to , cڡ BBox& om , 336 cڡ BBox & mask , 337 cڡ  m ) 339 cڡ Cods gtoshi = om . low (- to .lower(); 340 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 341 i(! gwom . emy ()) { 342 BBox gwto = shiabs ( wom , - toshi ); 343 Cods gmax_ = max ( _ , gd ._step); 344 gwto . tsize ( _ ); 345 gwom . tsize ( gd . _ ); 346 gd_CyRegi ( gd , wto , wom , max_ , mask , m ); 350 #ide GRIDDATAONLY 351 gme < ass gTy > 352  GridDa (3)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 353 cڡ  m ) 355 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 356 BBox gri = _bbox * gdbktbb ; 357 i(! gri . emy ()) { 358 Cods gmax_ = max ( _ , gdbktbb . size ()); 359 BBox to ( ri ); gto . tsize ( _ ); 360 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 361 gdb_CyRegi ( gdbkt , to , om , max_ , m ); 365 gme < ass gTy > 366  GridDa (3)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 367 cڡ BBox & whe , 368 cڡ  m ) 370 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 371 BBox gri = _bbox * gdbktbb * whe ; 372 i(! gri . emy ()) { 373 Cods gmax_ = max ( _ , gdbktbb . size ()); 374 BBox to ( ri ); gto . tsize ( _ ); 375 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 376 gdb_CyRegi ( gdbkt , to , om , max_ , m ); 380 gme < ass gTy > 381  GridDa (3)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 382 cڡ BBox & to , cڡ BBox& om , 383 cڡ  m ) 385 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 386 cڡ Cods gtoshi = om . low (- to .lower(); 387 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 388 i(! gwom . emy ()) { 389 BBox gwto = shiabs ( wom , - toshi ); 390 Cods gmax_ = max ( _ , gdbktbb . size ()); 391 gwto . tsize ( _ ); 392 gwom . tsize ( gdbktbb . size ()); 393 gdb_CyRegi ( gdbkt , wto , wom , max_ , m ); 397 gme < ass gTy > 398  GridDa (3)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 399 cڡ BBox & to , cڡ BBox& om , 400 cڡ BBox & mask , 401 cڡ  m ) 403 cڡ gBBox & ggdbktbb = gdbkt . bbox (); 404 cڡ Cods gtoshi = om . low (- to .lower(); 405 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 406 i(! gwom . emy ()) { 407 BBox gwto = shiabs ( wom , - toshi ); 408 Cods gmax_ = max ( _ , gdbktbb . size ()); 409 gwto . tsize ( _ ); 410 gwom . tsize ( gdbktbb . size ()); 411 gdb_CyRegi ( gdbkt , wto , wom , max_ , mask , m ); 415 gme < ass gTy > 416  GridDa (3)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , 417 cڡ  n , 418 cڡ  m ) 420 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 421 BBox gri = _bbox * gdbktbb ; 422 i(! gri . emy ()) { 423 Cods gmax_ = max ( _ , gdbktbb . size ()); 424 BBox to ( ri ); gto . tsize ( _ ); 425 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 426 gdb_CyRegi ( gdbkt , n , to , om , max_ , m ); 430 gme < ass gTy > 431  GridDa (3)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 432 cڡ BBox & whe , 433 cڡ  m ) 435 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 436 BBox gri = _bbox * gdbktbb * whe ; 437 i(! gri . emy ()) { 438 Cods gmax_ = max ( _ , gdbktbb . size ()); 439 BBox to ( ri ); gto . tsize ( _ ); 440 BBox om ( ri ); gom . tsize ( gdbktbb . size ()); 441 gdb_CyRegi ( gdbkt , n , to , om , max_ , m ); 445 gme < ass gTy > 446  GridDa (3)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 447 cڡ BBox & to , cڡ BBox& om , 448 cڡ  m ) 450 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 451 cڡ Cods gtoshi = om . low (- to .lower(); 452 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 453 i(! gwom . emy ()) { 454 BBox gwto = shiabs ( wom , - toshi ); 455 Cods gmax_ = max ( _ , gdbktbb . size ()); 456 gwto . tsize ( _ ); 457 gwom . tsize ( gdbktbb . size ()); 458 gdb_CyRegi ( gdbkt , n , wto , wom , max_ , m ); 462 gme < ass gTy > 463  GridDa (3)< gTy >:: cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 464 cڡ BBox & to , cڡ BBox& om , 465 cڡ BBox & mask , 466 cڡ  m ) 468 cڡ gBBox & ggdbktbb = gdbkt . bbox ( n ); 469 cڡ Cods gtoshi = om . low (- to .lower(); 470 BBox gwom = gdbktbb * om * shiabs ( _bbox * to , toshi ); 471 i(! gwom . emy ()) { 472 BBox gwto = shiabs ( wom , - toshi ); 473 Cods gmax_ = max ( _ , gdbktbb . size ()); 474 gwto . tsize ( _ ); 475 gwom . tsize ( gdbktbb . size ()); 476 gdb_CyRegi ( gdbkt , n , wto , wom , max_ , mask , m ); 481 gme < ass gTy > 482  GridDa (3)< gTy >:: gd_CyRegi (cڡ GridDa(3)< Ty >& c , 483 cڡ BBox & to , 484 cڡ BBox & om , 485 cڡ Cods & , 486 cڡ  m ) 488 as (( m ! ACEA && 489 m >0 && _nems > itm && c ._nitems > itm) || 490 ( m = ACEA && _nems = c ._nitems)); 492 GridDa (3)< gTy >& gd = * this ; 495 cڡ  gdi = om . low (0)- to .lower(0); 496 cڡ  gdj = om . low (1)- to .lower(1); 497 cڡ  gdk = om . low (2)- to .lower(2); 500 BegFaIndex3 ( c , src. _bbox , src. _da , cڡ Ty ); 501 BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 503 cڡ  gr = ( m = ACEA ) ? 0 : itm; 504 cڡ  gd = ( m = ACEA ? _nems : itm+1; 506  g = r ; i< gd ; it++) { 507 SIndexOfft ( c , ); 508 SIndexOfft ( d , ); 511 f_3 ( i , j , k , to , ) 512 FaIndex3 ( d , i , j , k FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 513 gd_f 517 EndFaIndex3 ( d ); 518 EndFaIndex3 ( c ); 521 #ide GRIDDATAONLY 522 gme < ass gTy > 523  GridDa (3)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 524 cڡ BBox & to , 525 cڡ BBox & om , 526 cڡ Cods & , 527 cڡ  m ) 529 as (( m ! ACEA && itm = gdbkt . em (&& _nems > itm) || 530 ( m = ACEA && _nems = gdbkt . nems ())); 533 GridDa (3)< gTy >& gd = * this ; 536 cڡ  gdi = om . low (0)- to .lower(0); 537 cڡ  gdj = om . low (1)- to .lower(1); 538 cڡ  gdk = om . low (2)- to .lower(2); 541 BegFaIndex3 ( c , gdbkt . bbox (), gdbkt. da (), cڡ Ty ); 542 BegFaIndex3 ( d , d. bbox (), d. da (), Ty ); 544 cڡ  gr = ( m = ACEA ) ? 0 : itm; 545 cڡ  gd = ( m = ACEA ? _nems : itm+1; 547 cڡ  gdr = ( gdbkt . nems (=1? 0 : r ; 549  g , gd ; 550  g = r , gd = dr ; i< gd ; it++, dit++) { 551 SIndexOfft ( c , ); 552 SIndexOfft ( d , d ); 555 f_3 ( i , j , k , to , ) 556 FaIndex3 ( d , i , j , k FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 557 gd_f 561 EndFaIndex3 ( d ); 562 EndFaIndex3 ( c ); 565 gme < ass gTy > 566  GridDa (3)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 567 cڡ  n , 568 cڡ BBox & to , 569 cڡ BBox & om , 570 cڡ Cods & , 571 cڡ  m ) 573 as (( m ! ACEA && itm = gdbkt . em ( n && _nems > itm) || 574 ( m = ACEA && _nems = gdbkt . nems ( n ))); 577 GridDa (3)< gTy >& gd = * this ; 580 cڡ  gdi = om . low (0)- to .lower(0); 581 cڡ  gdj = om . low (1)- to .lower(1); 582 cڡ  gdk = om . low (2)- to .lower(2); 585 BegFaIndex3 ( c , gdbkt . bbox ( n ), gdbkt. da ), cڡ Ty ); 586 BegFaIndex3 ( d , d. bbox (), d. da (), Ty ); 588 cڡ  gr = ( m = ACEA ) ? 0 : itm; 589 cڡ  gd = ( m = ACEA ? _nems : itm+1; 591 cڡ  gdr = ( gdbkt . nems ( n =1? 0 : r ; 593  g , gd ; 594  g = r , gd = dr ; i< gd ; it++, dit++) { 595 SIndexOfft ( c , ); 596 SIndexOfft ( d , d ); 599 f_3 ( i , j , k , to , ) 600 FaIndex3 ( d , i , j , k FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 601 gd_f 605 EndFaIndex3 ( d ); 606 EndFaIndex3 ( c ); 610 gme < ass gTy > 611  GridDa (3)< gTy >:: gd_CyRegi (cڡ GridDa(3)< Ty >& c , 612 cڡ BBox & to , 613 cڡ BBox & om , 614 cڡ Cods & , 615 cڡ BBox & mask , 616 cڡ  m ) 618 as (( m ! ACEA && 619 m >0 && _nems > itm && c ._nitems > itm) || 620 ( m = ACEA && _nems = c ._nitems)); 622 GridDa (3)< gTy >& gd = * this ; 625 cڡ  gdi = om . low (0)- to .lower(0); 626 cڡ  gdj = om . low (1)- to .lower(1); 627 cڡ  gdk = om . low (2)- to .lower(2); 630 BegFaIndex3 ( c , src. _bbox , src. _da , cڡ Ty ); 631 BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 633 cڡ  gr = ( m = ACEA ) ? 0 : itm; 634 cڡ  gd = ( m = ACEA ? _nems : itm+1; 636  g = r ; i< gd ; it++) { 637 SIndexOfft ( c , ); 638 SIndexOfft ( d , ); 641 maskedf_3 ( i , j , k , to , , mask ) 642 FaIndex3 ( d , i , j , k FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 643 gd_f 647 EndFaIndex3 ( d ); 648 EndFaIndex3 ( c ); 651 #ide GRIDDATAONLY 652 gme < ass gTy > 653  GridDa (3)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 654 cڡ BBox & to , 655 cڡ BBox & om , 656 cڡ Cods & , 657 cڡ BBox & mask , 658 cڡ  m ) 660 as (( m ! ACEA && itm = gdbkt . em (&& _nems > itm) || 661 ( m = ACEA && _nems = gdbkt . nems ())); 664 GridDa (3)< gTy >& gd = * this ; 667 cڡ  gdi = om . low (0)- to .lower(0); 668 cڡ  gdj = om . low (1)- to .lower(1); 669 cڡ  gdk = om . low (2)- to .lower(2); 672 BegFaIndex3 ( c , gdbkt . bbox (), gdbkt. da (), cڡ Ty ); 673 BegFaIndex3 ( d , d. bbox (), d. da (), Ty ); 675 cڡ  gr = ( m = ACEA ) ? 0 : itm; 676 cڡ  gd = ( m = ACEA ? _nems : itm+1; 678 cڡ  gdr = ( gdbkt . nems (=1? 0 : r ; 680  g , gd ; 681  g = r , gd = dr ; i< gd ; it++, dit++) { 682 SIndexOfft ( c , ); 683 SIndexOfft ( d , d ); 686 maskedf_3 ( i , j , k , to , , mask ) 687 FaIndex3 ( d , i , j , k FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 688 gd_f 692 EndFaIndex3 ( d ); 693 EndFaIndex3 ( c ); 696 gme < ass gTy > 697  GridDa (3)< gTy >:: gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 698 cڡ  n , 699 cڡ BBox & to , 700 cڡ BBox & om , 701 cڡ Cods & , 702 cڡ BBox & mask , 703 cڡ  m ) 705 as (( m ! ACEA && itm = gdbkt . em ( n && _nems > itm) || 706 ( m = ACEA && _nems = gdbkt . nems ( n ))); 709 GridDa (3)< gTy >& gd = * this ; 712 cڡ  gdi = om . low (0)- to .lower(0); 713 cڡ  gdj = om . low (1)- to .lower(1); 714 cڡ  gdk = om . low (2)- to .lower(2); 717 BegFaIndex3 ( c , gdbkt . bbox ( n ), gdbkt. da ), cڡ Ty ); 718 BegFaIndex3 ( d , d. bbox (), d. da (), Ty ); 720 cڡ  gr = ( m = ACEA ) ? 0 : itm; 721 cڡ  gd = ( m = ACEA ? _nems : itm+1; 723 cڡ  gdr = ( gdbkt . nems ( n =1? 0 : r ; 725  g , gd ; 726  g = r , gd = dr ; i< gd ; it++, dit++) { 727 SIndexOfft ( c , ); 728 SIndexOfft ( d , d ); 731 maskedf_3 ( i , j , k , to , , mask ) 732 FaIndex3 ( d , i , j , k FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 733 gd_f 737 EndFaIndex3 ( d ); 738 EndFaIndex3 ( c ); 742 gme < ass gTy > 743  GridDa (3)< gTy >:: $PackRegi ( Ty * ndbuf , 744 cڡ BBox & om , 745 cڡ  m ) const 747 `as (( m ! ACEA && itm >0 && _nems > itm) || 748 ( m = ACEA )); 750 `GridDa (3)< Ty > cڡ& c = * this ; 752  p = 0; 754 `BegFaIndex3 ( c , src. _bbox , src. _da , cڡ Ty ); 756 cڡ  r = ( m = ACEA ) ? 0 : itm; 757 cڡ  d = ( m = ACEA ? _nems : itm+1; 759  = r ; i< d ; it++) { 760 `SIndexOfft ( c , ); 763 `f_3 ( i , j , k , om , _ ) 764 ndbuf [ p ++] = `FaIndex3 ( c , i , j , k ); 765 d_f 769 `EndFaIndex3 ( c ); 770 } } 772 gme < ass gTy > 773  GridDa (3)< gTy >:: $UnPackRegi (cڡ Ty * cvbuf , 774 cڡ BBox & to , 775 cڡ  m ) 777 `as (( m ! ACEA && itm >0 && _nems > itm) || 778 ( m = ACEA )); 780 `GridDa (3)< Ty >& d = * this ; 782  p = 0; 784 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 786 cڡ  r = ( m = ACEA ) ? 0 : itm; 787 cڡ  d = ( m = ACEA ? _nems : itm+1; 789  = r ; i< d ; it++) { 790 `SIndexOfft ( d , ); 793 `f_3 ( i , j , k , to , _ ) 794 `FaIndex3 ( d , i , j , k cvbuf [ p ++]; 795 d_f 799 `EndFaIndex3 ( d ); 800 } } 802 gme < ass gTy > 803 goam & gݔ << (oam& gos , cڡ GridDa (3)< gTy >& ggd ) 805 i(& ggd =(cڡ GridDa (3)< Ty > *) NULL  os ; 807 gos << "BBox: " << ggd . g_bbox << " " << "Exs: " << gd. g_exs << " "; 808 gos << "Sp: " << ggd . g_ << " "; 809 gos << "Size: " << ggd . g_size << " " << "Btom: " << gd. g_btom << " "; 811 gos << "\n"; 813 i( ggd . g_bbox . emy () gos ; 815 cڡ gCods & gl = gd . _bbox . low (); 816 cڡ gCods & gu = gd . _bbox . u (); 817 cڡ gCods & g = gd . _bbox . size (); 819  gm =0; itm < ggd . g_nems ; itm++) { 821  gk = l (2);k<= u (2);k+= (2)) { 822  j = l (1); gj <= u (1);j+= (1)) { 824  i = l (0); gi <= u (0);i+= (0)) { 825 os << "[" << m << "," << i << "," << j << "," << k << "]=" 826 << gd ( i , j , k , m ) << " "; 827 } gos << "\n"; 828 } gos << "\n"; 829 } gos << "\n"; 833  gos ; 836 gme < ass gTy > 837 gofam & gݔ << (ofam& gofs , cڡ GridDa (3)< gTy >& ggd ) 839 i(& ggd =(cڡ GridDa (3)< Ty > *) NULL  ofs ; 841 gofs . wre ((*)& gd . _bbox ,( BBox )); 842 gofs . wre ((*)& gd . _nems ,()); 843 gofs . wre ((*) gd . _da ,gd. _tsize *( Ty )); 845  gofs ; 848 gme < ass gTy > 849 gifam & gݔ >> (ifam& gifs , GridDa (3)< gTy >& ggd ) 851 i(& ggd =(cڡ GridDa (3)< Ty > *) NULL  ifs ; 853 BBox gbb ; 854  gnems = 1; 856 gifs . ad ((*)& bb ,( BBox )); 857 gifs . ad ((*)& nems ,()); 859 i(! ggd . ok_to_dex ()) 860 { ggd . lo ( bb , nems ); } 862 i( gbb = gd . _bbox && nems =gd. _nems ) { 863 ifs . ad ((*) gd . _da ,gd. _tsize *( Ty )); 866 GridDa (3)< gTy > tmpgd ( bb , nems ); 867 gifs . ad ((*) tmpgd . _da ,tmpgd. _tsize *( Ty )); 868 ggd . cy ( tmpgd ); 871  gifs ; 874  ~"GridDaOps3.h " 875  ~"GridDaOpsRed3.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridData3.h 1 #ide _uded_GridDa_3_h 2  #_uded_GridDa_3_h ) 14  ~"ACEPams.h " 15  ~"GridDaPams.h " 17 #ide ACEA 18  #ACEA (9999) ) 21 #ifde DEBUG_PRINT_GD_MEMORY 22  ~"ACEMemyT.h " 25  ~"BBox.h " 26  ~"Cods.h " 28 #ide GRIDDATAONLY 29  ~"PackedGridDaBuck.h " 32 #ifde DEBUG_PRINT 33  ~"CommSv.h " 36  ~"IndexGridDa3.h " 38 #ide GridDa 39  #GridDa ( dim `me2 ( GridDa ,dim) ) 42 #ide gd_ORegi 43  #gd_ORegi ( `me2 ( gd_ORegi ,) ) 46  ~"GDIt.h " 48 #i defed ( __GNUG__ || defed( __GNUC__ ) 49 gme < ass gTy > cs GridDa (3); 51 gme < ass gTy > goam & gݔ <<(oam&, cڡ GridDa (3)&); 52 gme < ass gTy > gofam & gݔ <<(ofam&, cڡ GridDa (3)&); 53 gme < ass gTy > gifam & gݔ >>(ifam&, GridDa (3)&); 56 gme < ass gTy > cs GridDa (3) 58 #i defed ( __GNUG__ || defed( __GNUC__ ) 59 nd goam & gݔ << <>(oam&, cڡ GridDa (3)< gTy >&); 60 nd gofam & gݔ << <>(ofam&, cڡ GridDa (3)< gTy >&); 61 nd gifam & gݔ >> <>(ifam&, GridDa (3)< gTy >&); 63 nd goam & gݔ <<(oam&, cڡ GridDa (3)< gTy >&); 64 nd gofam & gݔ <<(ofam&, cڡ GridDa (3)< gTy >&); 65 nd gifam & gݔ >>(ifam&, GridDa (3)< gTy >&); 68 BBox g_bbox ; 69 Cods g_exs ; 70 Cods g_ ; 71  g_size ; 72  g_nems ; 73  g_tsize ; 74  g_btom ; 75 Ty * g_da ; 77 give : 79 public : 80 GridDa (3)(); 81 GridDa (3)(cڡ gBBox & gbbox , 82 cڡ  gnems =1); 83 GridDa (3)(cڡ gBBox & gbbox , Ty * gdabuf , 84 cڡ  gnems =1); 87 GridDa (3)(cڡ  gi , cڡ  gj , cڡ  gk , 88 cڡ  gii , cڡ  gjj , cڡ  gkk ); 93 GridDa (3)(cڡ  gi , cڡ  gj , cڡ  gk , 94 cڡ  gii , cڡ  gjj , cڡ  gkk , 95 cڡ  gs ); 101 GridDa (3)(cڡ  gi , cڡ  gj , cڡ  gk , 102 cڡ  gii , cڡ  gjj , cڡ  gkk , 103 cڡ  gs , cڡ  gss , cڡ  gsss , 104 cڡ  gnems ); 107 #ide GRIDDATAONLY 108 GridDa (3)( gGridDaBuck < gTy >& ggdbkt ); 109 GridDa (3)( gGridDaBuck < gTy >& ggdbkt , cڡ  gn ); 113 GridDa (3(cڡ GridDa(3)< gTy >& gh ); 115 gle ~ GridDa (3)() 117 i( g_da ) { 118 #ifde DEBUG_PRINT_GD_MEMORY 119 gACEMemyT :: (( Ty )* _tsize ); 121 gde [] g_da ; _d( Ty *)0; 125  lo (cڡ BBox & bbox , 126 cڡ  nems =1); 127  lo (cڡ BBox & bbox , Ty * dabuf , 128 cڡ  nems =1); 130 le  lo ( Ty * dabuf ) 132 i( g_da ) { 133 gde [] g_da ; _d( Ty *)0; 134 #ifde DEBUG_PRINT_GD_MEMORY 135 gACEMemyT :: (( Ty )* _tsize ); 138 g_da = dabuf ; 141 le  do () 143 i( g_da ) { 144 #ifde DEBUG_PRINT_GD_MEMORY 145 gACEMemyT :: (( Ty )* _tsize ); 147 gde [] g_da ; _d( Ty *)0; 151 le  do ( Ty *& dabuf ) 152 { gdabuf = _da ; g_da = ( Ty *) 0; } 154 * dabufr ({  ((* g_da ); } 156  tdabufr ({ g_da = ( Ty *) 0; } 159 le cڡ gCods & low (cڡ { ( g_bbox .lower()); } 160 le cڡ gCods & u (cڡ { ( g_bbox .upper()); } 161 le cڡ gCods & exs (cڡ { ( g_exs ); } 162 le cڡ gCods & size (cڡ { ( g_ ); } 163 le Cods low ({ ( g_bbox .lower()); } 164 le Cods u ({ ( g_bbox .upper()); } 165 le Cods exs ({ ( g_exs ); } 166 le Cods size ({ ( g_ ); } 167 le  btom (cڡ { ( g_btom ); } 168 le  low (cڡ  i cڡ { ( g_bbox .lower(i)); } 169 le  u (cڡ  i cڡ { ( g_bbox .upper(i)); } 170 le  exs (cڡ  i cڡ { ( _exs (i)); } 171 le  size (cڡ  i cڡ { ( _ (i)); } 172 le cڡ gBBox & bbox (cڡ { ( g_bbox ); } 174 le  ok_to_dex ({ ( g_da !( Ty * NULL ); } 176 le  size (cڡ { ( g_size ); } 178 le  nems (cڡ { ( g_nems ); } 179 le cڡ * nem (cڡ { (& g_nems ); } 180 le  tsize (cڡ { ( g_tsize ); } 182 give : 184 le  idx (cڡ  i , cڡ  j , cڡ  k , cڡ  m ) const 185 { ( m * g_size )+ g_btom +( gi / _ (0)+ _exs (0)*( gj /_(1)+_exs(1)* gk /_step(2))) ); } 188 gpublic : 190 le cڡ Ty & ݔ ((cڡ  i , cڡ  gj , cڡ  gk ) const 191 { as ( idx ( i , j , k ,0>0 && idx(i,j,k,0< _tsize ); 192 ( g_da [ idx ( i , j , k ,0)]); } 193 le gTy & ݔ ((cڡ  gi , cڡ  gj , cڡ  gk ) 194 { as ( idx ( i , j , k ,0>0 && idx(i,j,k,0< _tsize ); 195 ( g_da [ idx ( i , j , k ,0)]); } 197 le cڡ gTy & ݔ ((cڡ  gi , cڡ  gj , cڡ  gk , cڡ  gm ) const 198 { as ( idx ( i , j , k , m >0 && idx(i,j,k,m< _tsize ); 199 ( g_da [ idx ( i , j , k , m )]); } 200 le gTy & ݔ ((cڡ  gi , cڡ  gj , cڡ  gk , cڡ  gm ) 201 { as ( idx ( i , j , k , m >0 && idx(i,j,k,m< _tsize ); 202 ( g_da [ idx ( i , j , k , m )]); } 204 le cڡ gTy & ݔ ((cڡ gCods & gc ) const 205 { as ( idx ( c (0),c(1),c(2),0>0 && idx(c(0),c(1),c(2),0< _tsize ); 206 ( g_da [ idx ( c (0),c(1),c(2),0)]); } 207 le gTy & ݔ ((cڡ gCods & gc ) 208 { as ( idx ( c (0),c(1),c(2),0>0 && idx(c(0),c(1),c(2),0< _tsize ); 209 ( g_da [ idx ( c (0),c(1),c(2),0)]); } 211 le cڡ gTy & ݔ ((cڡ gCods & gc , cڡ  gm ) const 212 { as ( idx ( c (0),c(1),c(2), m >0 && idx(c(0),c(1),c(2),m< _tsize ); 213 ( g_da [ idx ( c (0),c(1),c(2), m )]); } 214 le gTy & ݔ ((cڡ gCods & gc , cڡ  gm ) 215 { as ( idx ( c (0),c(1),c(2), m >0 && idx(c(0),c(1),c(2),m< _tsize ); 216 ( g_da [ idx ( c (0),c(1),c(2), m )]); } 218 le cڡ Ty * r (cڡ  i , cڡ  j , cڡ  k , cڡ  m =0) const 219 { as ( idx ( i , j , k , m >0 && idx(i,j,k,m< _tsize ); 220 ( g_da + idx ( i , j , k , m )); } 221 le Ty * r (cڡ  i , cڡ  j , cڡ  k , cڡ  m =0) 222 { as ( idx ( i , j , k , m >0 && idx(i,j,k,m< _tsize ); 223 ( g_da + idx ( i , j , k , m )); } 225 le cڡ Ty * r (cڡ Cods & c , cڡ  m =0) const 226 { as ( idx ( c (0),c(1),c(2), m >0 && idx(c(0),c(1),c(2),m< _tsize ); 227 ( g_da + idx ( c (0),c(1),c(2), m )); } 228 le Ty * r (cڡ Cods & c , cڡ  m =0) 229 { as ( idx ( c (0),c(1),c(2), m >0 && idx(c(0),c(1),c(2),m< _tsize ); 230 ( g_da + idx ( c (0),c(1),c(2), m )); } 233 le cڡ Ty * da (cڡ { ( g_da ); } 234 le Ty * da ({ ( g_da ); } 236 le cڡ Ty * da (cڡ  m cڡ { ( g_da +( _size * gm )); } 237 le Ty * da (cڡ  m { ( g_da +( _size * gm )); } 239  fl (cڡ Ty & v , 240 cڡ  m = ACEA ); 243  cy (cڡ GridDa (3)< Ty >& gd , 244 cڡ  m = ACEA ); 245  cy (cڡ GridDa (3)< Ty >& gd , 246 cڡ BBox & whe , 247 cڡ  m = ACEA ); 248  cy (cڡ GridDa (3)< Ty >& gd , 249 cڡ BBox & to , cڡ BBox& om , 250 cڡ  m = ACEA ); 251  cy (cڡ GridDa (3)< Ty >& gd , 252 cڡ BBox & to , cڡ BBox& om , 253 cڡ BBox & mask , 254 cڡ  m = ACEA ); 256 #ide GRIDDATAONLY 257  cy (cڡ GridDaBuck < Ty >& gdbkt , 258 cڡ  m ); 259  cy (cڡ GridDaBuck < Ty >& gdbkt , 260 cڡ BBox & whe , 261 cڡ  m ); 262  cy (cڡ GridDaBuck < Ty >& gdbkt , 263 cڡ BBox & to , cڡ BBox& om , 264 cڡ  m ); 265  cy (cڡ GridDaBuck < Ty >& gdbkt , 266 cڡ BBox & to , cڡ BBox& om , 267 cڡ BBox & mask , 268 cڡ  m ); 270  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 271 cڡ  m ); 272  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 273 cڡ BBox & whe , 274 cڡ  m ); 275  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 276 cڡ BBox & to , cڡ BBox& om , 277 cڡ  m ); 278  cy (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 279 cڡ BBox & to , cڡ BBox& om , 280 cڡ BBox & mask , 281 cڡ  m ); 285  l_ (cڡ GridDa (3)< Ty >& gd1 , cڡ  ac1 , 286 cڡ GridDa (3)< Ty >& gd2 , cڡ  ac2 , 287 cڡ BBox & whe , 288 cڡ  m = ACEA ); 289 le  l_ (cڡ GridDa (3)< Ty >& gd1 , cڡ  ac1 , 290 cڡ GridDa (3)< Ty >& gd2 , cڡ  ac2 , 291 cڡ  m = ACEA ) 292 { GridDa (3)< Ty >:: l_ ( gd1 , ac1 , gd2 , ac2 , _bbox , m ); } 295 Ty momt1 (cڡ  axis , 296 cڡ BBox & whe , 297 cڡ  m = ACEA ); 298 le Ty momt1 (cڡ  axis , 299 cڡ  m = ACEA ) 300 {  ( GridDa (3)< Ty >:: momt1 ( axis , _bbox , m )); } 303  sumsqrd (cڡ BBox & whe , 304 Ty & s , & c , 305 cڡ  m = ACEA ); 306 le  sumsqrd ( Ty & s , & c , 307 cڡ  m = ACEA ) 308 { GridDa (3)< Ty >:: sumsqrd ( _bbox , s , c , m ); } 311  equs (cڡ Ty & v , 312 cڡ BBox & whe , 313 cڡ  m = ACEA ); 314 le  equs (cڡ Ty & v , 315 cڡ  m = ACEA ) 316 { GridDa (3)< Ty >:: equs ( v , _bbox , m ); } 318  equs (cڡ GridDa (3)< Ty >& gd , 319 cڡ BBox & to , cڡ BBox& om , 320 cڡ  m = ACEA ); 321 le  equs (cڡ GridDa (3)< Ty >& gd , 322 cڡ  m = ACEA ) 323 { GridDa (3)< Ty >:: equs ( gd , gd. _bbox , gd._bbox, m ); } 324 le  equs (cڡ GridDa (3)< Ty >& gd , 325 cڡ BBox & whe , 326 cڡ  m = ACEA ) 327 { GridDa (3)< Ty >:: equs ( gd , whe , whe, m ); } 330  us (cڡ Ty & v , 331 cڡ BBox & whe , 332 cڡ  m = ACEA ); 333 le  us (cڡ Ty & v , 334 cڡ  m = ACEA ) 335 { GridDa (3)< Ty >:: us ( v , _bbox , m ); } 337  us (cڡ GridDa (3)< Ty >& gd , 338 cڡ BBox & to , cڡ BBox& om , 339 cڡ  m = ACEA ); 340 le  us (cڡ GridDa (3)< Ty >& gd , 341 cڡ  m = ACEA ) 342 { GridDa (3)< Ty >:: us ( gd , gd. _bbox , gd._bbox, m ); } 343 le  us (cڡ GridDa (3)< Ty >& gd , 344 cڡ BBox & whe , 345 cڡ  m = ACEA ) 346 { GridDa (3)< Ty >:: us ( gd , whe , whe, m ); } 348 #ide GRIDDATAONLY 349 le  us ( GridDaBuck < Ty >& gdbkt , 350 cڡ BBox & to , cڡ BBox& om , 351 cڡ  m = ACEA ) 353 GridDa (3)< Ty > tmpgd ( gdbkt ); 354 us ( tmpgd , to , om , m ); 355 gtmpgd . tdabufr (); 357 le  us ( GridDaBuck < Ty >& gdbkt , cڡ  n , 358 cڡ BBox & to , cڡ BBox& om , 359 cڡ  m = ACEA ) 361 GridDa (3)< Ty > tmpgd ( gdbkt , n ); 362 us ( tmpgd , to , om , m ); 363 gtmpgd . tdabufr (); 368  mus (cڡ Ty & v , 369 cڡ BBox & whe , 370 cڡ  m = ACEA ); 371 le  mus (cڡ Ty & v , 372 cڡ  m = ACEA ) 373 { GridDa (3)< Ty >:: mus ( v , _bbox , m ); } 375  mus (cڡ GridDa (3)< Ty >& gd , 376 cڡ BBox & to , cڡ BBox& om , 377 cڡ  m = ACEA ); 378 le  mus (cڡ GridDa (3)< Ty >& gd , 379 cڡ  m = ACEA ) 380 { GridDa (3)< Ty >:: mus ( gd , gd. _bbox , gd._bbox, m ); } 381 le  mus (cڡ GridDa (3)< Ty >& gd , 382 cڡ BBox & whe , 383 cڡ  m = ACEA ) 384 { GridDa (3)< Ty >:: mus ( gd , whe , whe, m ); } 387  muɝly (cڡ Ty & v , 388 cڡ BBox & whe , 389 cڡ  m = ACEA ); 390 le  muɝly (cڡ Ty & v , 391 cڡ  m = ACEA ) 392 { GridDa (3)< Ty >:: muɝly ( v , _bbox , m ); } 394  muɝly (cڡ GridDa (3)< Ty >& gd , 395 cڡ BBox & to , cڡ BBox& om , 396 cڡ  m = ACEA ); 397 le  muɝly (cڡ GridDa (3)< Ty >& gd , 398 cڡ  m = ACEA ) 399 { GridDa (3)< Ty >:: muɝly ( gd , gd. _bbox , gd._bbox, m ); } 400 le  muɝly (cڡ GridDa (3)< Ty >& gd , 401 cڡ BBox & whe , 402 cڡ  m = ACEA ) 403 { GridDa (3)< Ty >:: muɝly ( gd , whe , whe, m ); } 406  divide (cڡ Ty & v , 407 cڡ BBox & whe , 408 cڡ  m = ACEA ); 409 le  divide (cڡ Ty & v , 410 cڡ  m = ACEA ) 411 { GridDa (3)< Ty >:: divide ( v , _bbox , m ); } 413  divide (cڡ GridDa (3)< Ty >& gd , 414 cڡ BBox & to , cڡ BBox& om , 415 cڡ  m = ACEA ); 416 le  divide (cڡ GridDa (3)< Ty >& gd , 417 cڡ  m = ACEA ) 418 { GridDa (3)< Ty >:: divide ( gd , gd. _bbox , gd._bbox, m ); } 419 le  divide (cڡ GridDa (3)< Ty >& gd , const 420 BBox & whe , 421 cڡ  m = ACEA ) 422 { GridDa (3)< Ty >:: divide ( gd , whe , whe, m ); } 425 le  gݔ = (cڡ Ty & v ) 426 { GridDa (3)< Ty >:: equs ( v , _bbox ); } 427 le  gݔ = (cڡ GridDa (3)< Ty >& gd ) 428 { GridDa (3)< Ty >:: equs ( gd , gd. _bbox , gd._bbox); } 430 le  gݔ +(cڡ Ty & v ) 431 { GridDa (3)< Ty >:: us ( v , _bbox ); } 432 le  gݔ +(cڡ GridDa (3)< Ty >& gd ) 433 { GridDa (3)< Ty >:: us ( gd , gd. _bbox , gd._bbox); } 435 le  gݔ -(cڡ Ty & v ) 436 { GridDa (3)< Ty >:: mus ( v , _bbox ); } 437 le  gݔ -(cڡ GridDa (3)< Ty >& gd ) 438 { GridDa (3)< Ty >:: mus ( gd , gd. _bbox , gd._bbox); } 440 le  gݔ *(cڡ Ty & v ) 441 { GridDa (3)< Ty >:: muɝly ( v , _bbox ); } 442 le  gݔ *(cڡ GridDa (3)< Ty >& gd ) 443 { GridDa (3)< Ty >:: muɝly ( gd , gd. _bbox , gd._bbox); } 445 le  gݔ /(cڡ Ty & v ) 446 { GridDa (3)< Ty >:: divide ( v , _bbox ); } 447 le  gݔ /(cڡ GridDa (3)< Ty >& gd ) 448 { GridDa (3)< Ty >:: divide ( gd , gd. _bbox , gd._bbox); } 454 Ty maxv (cڡ BBox & whe , 455 cڡ  m = ACEA ); 456 le Ty maxv (cڡ  m = ACEA ) 457 {  ( GridDa (3)< Ty >:: maxv ( _bbox , m )); } 459 Ty mv (cڡ BBox & whe , 460 cڡ  m = ACEA ); 461 le Ty mv (cڡ  m = ACEA ) 462 {  ( GridDa (3)< Ty >:: mv ( _bbox , m )); } 464 Ty sum (cڡ BBox & whe , 465 cڡ  m = ACEA ); 466 le Ty sum (cڡ  m = ACEA ) 467 {  ( GridDa (3)< Ty >:: sum ( _bbox , m )); } 469 Ty odu (cڡ BBox & whe , 470 cڡ  m = ACEA ); 471 le Ty odu (cڡ  m = ACEA ) 472 {  ( GridDa (3)< Ty >:: odu ( _bbox , m )); } 476 give : 477  gd_CyRegi (cڡ GridDa (3)< Ty >& gd , 478 cڡ BBox & to , 479 cڡ BBox & om , 480 cڡ Cods & , 481 cڡ  m ); 483 #ide GRIDDATAONLY 484  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 485 cڡ BBox & to , 486 cڡ BBox & om , 487 cڡ Cods & , 488 cڡ  m ); 489  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 490 cڡ BBox & to , 491 cڡ BBox & om , 492 cڡ Cods & , 493 cڡ  m ); 496  gd_CyRegi (cڡ GridDa (3)< Ty >& gd , 497 cڡ BBox & to , 498 cڡ BBox & om , 499 cڡ Cods & , 500 cڡ BBox & mask , 501 cڡ  m ); 503 #ide GRIDDATAONLY 504  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , 505 cڡ BBox & to , 506 cڡ BBox & om , 507 cڡ Cods & , 508 cڡ BBox & mask , 509 cڡ  m ); 510  gdb_CyRegi (cڡ GridDaBuck < Ty >& gdbkt , cڡ  n , 511 cڡ BBox & to , 512 cڡ BBox & om , 513 cڡ Cods & , 514 cڡ BBox & mask , 515 cڡ  m ); 518  gd_ORegi ( equ )(cڡ gTy & gv , 519 cڡ gBBox & gto , 520 cڡ gBBox & gom , 521 cڡ gCods & g , 522 cڡ  gm ); 523  gd_ORegi ( equ )(cڡ GridDa (3)< gTy >& ggd , 524 cڡ gBBox & gto , 525 cڡ gBBox & gom , 526 cڡ gCods & g , 527 cڡ  gm ); 529  gd_ORegi ( us )(cڡ gTy & gv , 530 cڡ gBBox & gto , 531 cڡ gBBox & gom , 532 cڡ gCods & g , 533 cڡ  gm ); 534  gd_ORegi ( us )(cڡ GridDa (3)< gTy >& ggd , 535 cڡ gBBox & gto , 536 cڡ gBBox & gom , 537 cڡ gCods & g , 538 cڡ  gm ); 540  gd_ORegi ( mus )(cڡ gTy & gv , 541 cڡ gBBox & gto , 542 cڡ gBBox & gom , 543 cڡ gCods & g , 544 cڡ  gm ); 545  gd_ORegi ( mus )(cڡ GridDa (3)< gTy >& ggd , 546 cڡ gBBox & gto , 547 cڡ gBBox & gom , 548 cڡ gCods & g , 549 cڡ  gm ); 551  gd_ORegi ( mu )(cڡ gTy & gv , 552 cڡ gBBox & gto , 553 cڡ gBBox & gom , 554 cڡ gCods & g , 555 cڡ  gm ); 556  gd_ORegi ( mu )(cڡ GridDa (3)< gTy >& ggd , 557 cڡ gBBox & gto , 558 cڡ gBBox & gom , 559 cڡ gCods & g , 560 cڡ  gm ); 562  gd_ORegi ( div )(cڡ gTy & gv , 563 cڡ gBBox & gto , 564 cڡ gBBox & gom , 565 cڡ gCods & g , 566 cڡ  gm ); 567  gd_ORegi ( div )(cڡ GridDa (3)< gTy >& ggd , 568 cڡ gBBox & gto , 569 cڡ gBBox & gom , 570 cڡ gCods & g , 571 cڡ  gm ); 573 gpublic : 575  PackRegi ( Ty * ndbuf , cڡ BBox & om , cڡ  m = ACEA ) const; 576  UnPackRegi (cڡ Ty * cvbuf , cڡ BBox & to , cڡ  m = ACEA ); 579 #i defed ( Wt_c_fes ) 580  ~"GridDa3.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlock.cpp 12  ~"GridDaBlock.h " 14  $gdbSRks (cڡ  nk , cڡ  ign , * nks ) 16 i( ign = ACE_A ||lig= ACENu ) ; 17 `as ( nk < 3); 18 i( nk == 1) { 19  ign ) { 20  ACE_X : 21 nks [0] = ACE_X ; 23  ACE_Y : 24 nks [0] = ACE_Y ; 26  ACE_Z : 27 nks [0] = ACE_Z ; 30 `as (0); 33 i( nk == 2) { 34  ign ) { 35  ACE_XY : 36 nks [0] = ACE_X ; 37 nks [1] = ACE_Y ; 39  ACE_XZ : 40 nks [0] = ACE_X ; 41 nks [1] = ACE_Z ; 43  ACE_YZ : 44 nks [0] = ACE_Y ; 45 nks [1] = ACE_Z ; 48 `as (0); 51 } } 53  $gdbAlignBBox (cڡ  nk , BBox & bb , cڡ  ign ) 55 i( ign = ACE_A ||lig= ACENu ) ; 56 `as ( nk < 3); 57 BBox b ; 58 i( nk == 1) { 59 b . nk = 1; 60 ( b . `low ()). nk = 1; 61 ( b . `u ()). nk = 1; 62 ( b . `size ()). nk = 1; 63  ign ) { 64  ACE_X : 65 b . `low (0 bb .lower(0); 66 b . `u (0 bb .upper(0); 67 b . `size (0 bb .stepsize(0); 69  ACE_Y : 70 b . `low (0 bb .lower(1); 71 b . `u (0 bb .upper(1); 72 b . `size (0 bb .stepsize(1); 74  ACE_Z : 75 b . `low (0 bb .lower(2); 76 b . `u (0 bb .upper(2); 77 b . `size (0 bb .stepsize(2); 80 `as (0); 83 i( nk == 2) { 84 b . nk = 2; 85 ( b . `low ()). nk = 2; 86 ( b . `u ()). nk = 2; 87 ( b . `size ()). nk = 2; 88  ign ) { 89  ACE_XY : 90 b . `low (0 bb .lower(0); 91 b . `u (0 bb .upper(0); 92 b . `size (0 bb .stepsize(0); 93 b . `low (1 bb .lower(1); 94 b . `u (1 bb .upper(1); 95 b . `size (1 bb .stepsize(1); 97  ACE_XZ : 98 b . `low (0 bb .lower(0); 99 b . `u (0 bb .upper(0); 100 b . `size (0 bb .stepsize(0); 101 b . `low (1 bb .lower(2); 102 b . `u (1 bb .upper(2); 103 b . `size (1 bb .stepsize(2); 105  ACE_YZ : 106 b . `low (0 bb .lower(1); 107 b . `u (0 bb .upper(1); 108 b . `size (0 bb .stepsize(1); 109 b . `low (1 bb .lower(2); 110 b . `u (1 bb .upper(2); 111 b . `size (1 bb .stepsize(2); 114 `as (0); 117 bb = b ; 118 } } 120 goam & gݔ <<(oam& gos , cڡ gGDB_Iai & ggdbi ) 122 i(& ggdbi =( GDB_Iai * NULL  os ; 124 gos << "GDB_Interaction["; 126 i(! ggdbi . gmbbox . emy () gos << " ACE_Main:" << gdbi.mbbox; 127 i(! ggdbi . gshbbox . emy () gos << " ACE_Shadow:" << gdbi.shbbox; 129 gos << "]"; 130  gos ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlock.h 1 #ide _uded_GridDaBlock_h 2  #_uded_GridDaBlock_h ) 12  ~"GridDaBlockComm.h " 14  ~"GridDaBlock1.h " 15  ~"GridDaBlock2.h " 16  ~"GridDaBlock3.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlock1.c 1 #ide _uded_GridDaBlock1_c 2  #_uded_GridDaBlock1_c ) 13 gme < ass gTy > 14 GridDaBlock (1)< gTy >::GridDaBlock(1)(cڡ  gf , 15 gGridHrchy & ggh , 16 gGridTab & ggt , 17 cڡ gGhoIai & ggi , 18 cڡ  gmidx , 19 cڡ gGridBox & ggb , 20 cڡ  gnm , 21 cڡ  gtime , 22 cڡ  gv , 23 cڡ * gbwidth , 24 cڡ * gextghwidth , 25 cڡ * gޭ , 26 cڡ * g , 27 cڡ  gign , 28 cڡ  gmdex , 29 cڡ  gcag , 30 cڡ  gsag , 31 cڡ  gpag , 32 cڡ  gfag , 33 cڡ GridDaBlock (1)< gTy >* ggdbtm , 34 GridDaBlock (1)< gTy >* ggdbeu ) 35 : gfid ( gf ), owr ( comm_rvi :: oc_me ()), 36 timum ( time ), vnum ( v ), mydex ( midx ), 37 nems ( nm ), uag ( ACEF ), 38 shag ( ACEF ), shage (0), 39 mgag ( ACENu ), mglfe (0), mglcr (0), mgvs (0), mgage (0), 40 shmgag ( ACENu ), shmglfe (0), shmglcr (0), shmgvs (0), shmgage (0), 41 comm_ag ( cag ), maxdex ( mdex ), 42 gdb_wre_fo (0), gdb_ad_fo (0), gdb_da_rcv (0), 43 _ag ( ACEF ), _mage (0), 44 gdb_g_wre_fo (0), gdb_g_ad_fo (0), 45 gdb_t_wre_fo (0), gdb_t_ad_fo (0), 46 ux_ag ( ACEF ), 47 gdb_ux_wre_fo (0), gdb_ux_ad_fo (0), 48 gb ( gt ), $dagh ( gh ) 50 cڡ  mynk = 1; 51 cڡ  u = ( gdbtm =( `GridDaBlock (1)< Ty >*) 0) ? 52 ACEF : ACETrue ; 54 cڡ  shadow = dagh . `daghshadow (); 55 cڡ  fe = dagh . `fe (); 56 cڡ  daghnk = dagh . nk ; 58 cڡ  fev = dagh . `fev (); 59 cڡ  ev = dagh . `crv (); 61  i ; 62  i = 0 ; i < mynk ; i++ ) { 63 nks [ i ] = i; 65 _d [2* i ] = [2*i]; 66 _d [2* i +1] = [2*i+1]; 68 gho_g_ag [2* i ] = ACEF ; 69 gho_g_ag [2* i +1] = ACEF ; 71 bndryags [2* i ] = ACEF ; 72 bndryags [2* i +1] = ACEF ; 74 hybridbndryags [ i ] = ACEF ; 76 ux_mage [2* i ] = 0; 77 ux_mage [2* i +1] = 0; 82 GridBoxLi * ggbl = dagh . `ggbl (); 84 i( u = ACEF ) { 86 * dagh_d = 0; 87 i( ign ! ACE_A ) { 88 `gdbSRks ( mynk , ign , nks ); 89 dagh_d = w [2* daghnk ]; 90  i = 0 ; i < 2* daghnk ; i++ dagh_d [i] = 0; 91  i = 0 ; i < mynk ; i++) { 92 dagh_d [2* nks [ i ]] = [2*i]; 93 dagh_d [2* nks [ i ]+1] = [2*i+1]; 97 dagh_d = _d ; 102 mged_bbox = gb . `gbBBoxAbs ( vnum ); 103 GridBoxLi mcgbl ; 104 ggbl -> `r ( `growbydim ( mged_bbox , dagh_d ), vnum , mcgbl ); 108 shmged_bbox = `crn ( mged_bbox , shadow ); 109 GridBoxLi scgbl ; 110 i( sag = ACETrue ) { 111 ggbl -> `r ( `growbydim ( shmged_bbox , dagh_d ), vnum , scgbl ); 117 `gdbSUpBoundyFgs ( mcgbl , gi , ޭ , dagh_d ); 119 mged_bbox . `growubydim ( ޭ ); 120 shmged_bbox . `growubydim ( ޭ ); 127 BBox `dagh_mged_bbox ( mged_bbox ); 128 BBox `dagh_shmged_bbox ( shmged_bbox ); 131 i( ign ! ACE_A ) { 132 `gdbAlignBBox ( mynk , mged_bbox , ign ); 133 `gdbAlignBBox ( mynk , shmged_bbox , ign ); 136 `gdbSUpMa ( ޭ , bwidth , extghwidth , gdbeu ); 138 i( sag = ACETrue `gdbSUpShadow ( ޭ , bwidth , extghwidth , gdbeu ); 140 i( comm_ag = ACETrue ) { 141 cڡ  um = comm_rvi :: `oc_num (); 144 gdb_wre_fo = w GDB_Iai ** [ um ]; 145 gdb_ad_fo = w GDB_Iai ** [ um ]; 147  p =0;< um ;++) { 148 gdb_wre_fo [ p ] = 0; 149 gdb_ad_fo [ p ] = 0; 152 `gdbSUpGhoIaiInfo ( mcgbl , scgbl , 153 ign , gi , ޭ , 154 dagh_mged_bbox , 155 dagh_shmged_bbox , 156 dagh_d ); 159 i( pag ) { 160 _ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 161 i( _ag && vnum > ev ) { 162 `gdbSUpPtMa ( ޭ , extghwidth ); 164 `gdbSUpPtIaiInfo ( ign , ޭ , 165 dagh_mged_bbox , 166 dagh_shmged_bbox , 167 dagh_d ); 170 i( fag ) { 171 ux_ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 172 i( ux_ag && vnum > ev ) { 173 `gdbSUpFluxMa ( gi ); 175 `gdbSUpFluxIaiInfo ( ign , gi , ޭ , 176 dagh_mged_bbox , 177 dagh_shmged_bbox ); 181 i( ign ! ACE_A de [] dagh_d ; 186 mged_bbox = gdbtm ->merged_bbox; 187 shmged_bbox = gdbtm ->shmerged_bbox; 189  i = 0 ; i < mynk ; i++) { 190 bndryags [2* i ] = gdbtm ->bndryflags[2*i]; 191 bndryags [2* i +1] = gdbtm ->bndryflags[2*i+1]; 192 hybridbndryags [ i ] = gdbtm ->hybridbndryflags[i]; 195 `gdbSUpMa ( ޭ , bwidth , extghwidth , gdbeu ); 197 i( sag = ACETrue `gdbSUpShadow ( ޭ , bwidth , extghwidth , gdbeu ); 199 i( comm_ag = ACETrue ) { 200 cڡ  um = comm_rvi :: `oc_num (); 203 gdb_wre_fo = w GDB_Iai ** [ um ]; 204 gdb_ad_fo = w GDB_Iai ** [ um ]; 206  p =0;< um ;++) { 207 gdb_wre_fo [ p ] = 0; 208 gdb_ad_fo [ p ] = 0; 211 `gdbSUpGhoIaiInfo ( gdbtm ); 213 i( pag ) { 214 _ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 215 i( _ag && vnum > ev ) { 216 `gdbSUpPtMa ( ޭ , extghwidth ); 218 `gdbSUpPtIaiInfo ( gdbtm ); 221 i( fag ) { 222 ux_ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 223 i( ux_ag && vnum > ev ) { 224 `gdbSUpFluxMa ( gdbtm ); 226 `gdbSUpFluxIaiInfo ( gdbtm ); 230 } } 240 gme < ass gTy > 241 GridDaBlock (1)< gTy >::~GridDataBlock(1) () 243 i( comm_ag = ACETrue gdbRGhoIaiInfo (); 245 i( ggdb_da_rcv de gdb_data_rcv; 246 ggdb_da_rcv = 0; 248 i( gshag ! ACEF gdbRShadow (); 250 i( gmgag ! ACENu gdbRMuiGrid (); 251 i( gshmgag ! ACENu gdbRShadowMuiGrid (); 253 i( g_ag = ACETrue ) { 254 gdbRPtMa (); 256 gdbRPtIaiInfo (); 258 i( gux_ag = ACETrue ) { 259 gdbRFluxMa (); 261 gdbRFluxIaiInfo (); 277 gme < ass gTy > 278  GridDaBlock (1)< gTy >:: $gdbSUpBoundyFgs ( GridBoxLi & gbl , 279 cڡ GhoIai & gi , 280 cڡ * ޭ , 281 cڡ * d ) 283 cڡ  mynk = 1 ; 284 cڡ * s = gi . `s (); 285 cڡ  ev = dagh . `crv (); 286 cڡ  daghnk = dagh . nk ; 288 GridBoxLi igbl ; 290  ޭ0 [ ACEMaxRk ]; 291  i =0; i< ACEMaxRk ; i++ ޭ0 [i] = 0; 293 cڡ BBox `whebb ( `growubydim ( dagh . `whebbox (), ޭ0 )); 295  r = 0, dr = 0; 297 * myd = w [2* daghnk ]; 299  r = 0 ; < daghnk ;++ ) { 300 myd [2* r ] = `max ( d [2*r],1); 301 myd [2* r +1] = `max ( d [2*r+1],1); 304  r = 0, dr = nks [0] ; < mynk ; ++r, dr =anks[r] ) { 305 cڡ  bi = s [2* dr ]; 306 cڡ  fi = s [2* dr +1]; 308 i(( gi . `Ibbox ( mged_bbox , bi , myd )* whebb ). `emy ()) 309 bndryags [2* r ] = ACE_ExBoundy ; 310 i( vnum > ev ) { 311 gbl . `r ( gi . `Ibbox ( mged_bbox , bi , myd ), vnum , igbl , ޭ0 ); 312 i igbl . `imy () ) 313 bndryags [2* r ] = ACE_AdtiveBoundy ; 316 i(( gi . `Ibbox ( mged_bbox , fi , myd )* whebb ). `emy ()) 317 bndryags [2* r +1] = ACE_ExBoundy ; 318 i( vnum > ev ) { 319 gbl . `r ( gi . `Ibbox ( mged_bbox , fi , myd ), vnum , igbl , ޭ0 ); 320 i igbl . `imy () ) 321 bndryags [2* r +1] = ACE_AdtiveBoundy ; 323 #ide GDBNOHYBRIDBNDRY 324 i( ޭ [ r ] > 0) { 325 BBoxLi rhsbbl , lhsbbl ; 326 lhsbbl . `add ( gi . `Ibbox ( mged_bbox , fi , myd )); 327 igbl . `bboxli ( rhsbbl , vnum , ޭ0 ,0); 328 lhsbbl - rhsbbl ; 329 i(! lhsbbl . `imy () hybridbndryags [ r ] = ACETrue ; 336 i( myd de [] myrad; 337 } } 344 gme < ass gTy > 345  GridDaBlock (1)< gTy >:: $gdbAddGhoIaiInfo ( 346 cڡ  axis , 347 cڡ  d , 348 cڡ BBox & thb , 349 cڡ BBox & thewb , 350 cڡ BBox & hisbb , 351 cڡ  owr , 352 cڡ  idx ) 354 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 355 cڡ  dex = ( ACEMaxDs * maxdex * axis ) + ( maxdex * d ) + idx ; 356 cڡ  hisdex = ( ACEMaxDs * maxdex * axis ) + 357 maxdex * `ACEHisD ( d + idx ; 359 i(! thewb . `emy ()) { 360 i(! gdb_wre_fo [ owr ]) { 361 gdb_wre_fo [ owr ] = w GDB_Iai * [ r_t ]; 362   j = 0 ; j < r_t ; j++ ) gdb_wre_fo [ owr ][j] = 0; 364 i(! gdb_wre_fo [ owr ][ dex ]) 365 gdb_wre_fo [ owr ][ dex ] = w GDB_Iai ; 367 gdb_wre_fo [ owr ][ dex ]-> mbbox + thewb ; 368 #ifde DEBUG_PRINT 369 `as (! gdb_wre_fo [ owr ][ dex ]-> mbbox . `emy ()); 373 i(! thb . `emy ()) { 374 i(! gdb_ad_fo [ owr ]) { 375 gdb_ad_fo [ owr ] = w GDB_Iai * [ r_t ]; 376   j = 0 ; j < r_t ; j++ ) gdb_ad_fo [ owr ][j] = 0; 378 i(! gdb_ad_fo [ owr ][ hisdex ]) 379 gdb_ad_fo [ owr ][ hisdex ] = w GDB_Iai ; 381 gdb_ad_fo [ owr ][ hisdex ]-> mbbox + thb ; 382 #ifde DEBUG_PRINT 383 `as (! gdb_ad_fo [ owr ][ hisdex ]-> mbbox . `emy ()); 386 } } 388 gme < ass gTy > 389  GridDaBlock (1)< gTy >:: $gdbAddShadowGhoIaiInfo ( 390 cڡ  axis , 391 cڡ  d , 392 cڡ BBox & hb , 393 cڡ BBox & hewb , 394 cڡ BBox & shisbb , 395 cڡ  owr , 396 cڡ  idx ) 398 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 399 cڡ  dex = ( ACEMaxDs * maxdex * axis ) + ( maxdex * d ) + idx ; 400 cڡ  hisdex = ( ACEMaxDs * maxdex * axis ) + 401 maxdex * `ACEHisD ( d + idx ; 403 i(! hewb . `emy ()) { 404 i(! gdb_wre_fo [ owr ]) { 405 gdb_wre_fo [ owr ] = w GDB_Iai * [ r_t ]; 406   j = 0 ; j < r_t ; j++ ) gdb_wre_fo [ owr ][j] = 0; 408 i(! gdb_wre_fo [ owr ][ dex ]) 409 gdb_wre_fo [ owr ][ dex ] = w GDB_Iai ; 411 gdb_wre_fo [ owr ][ dex ]-> shbbox + hewb ; 412 #ifde DEBUG_PRINT 413 `as (! gdb_wre_fo [ owr ][ dex ]-> shbbox . `emy ()); 417 i(! hb . `emy ()) { 418 i(! gdb_ad_fo [ owr ]) { 419 gdb_ad_fo [ owr ] = w GDB_Iai * [ r_t ]; 420   j = 0 ; j < r_t ; j++ ) gdb_ad_fo [ owr ][j] = 0; 422 i(! gdb_ad_fo [ owr ][ hisdex ]) 423 gdb_ad_fo [ owr ][ hisdex ] = w GDB_Iai ; 425 gdb_ad_fo [ owr ][ hisdex ]-> shbbox + hb ; 426 #ifde DEBUG_PRINT 427 `as (! gdb_ad_fo [ owr ][ hisdex ]-> shbbox . `emy ()); 430 } } 436 gme < ass gTy > 437  GridDaBlock (1)< gTy >:: $gdbSUpGhoIaiInfo ( 438 GridBoxLi & mcgbl , 439 GridBoxLi & scgbl , 440 cڡ  ign , 441 cڡ GhoIai & gi , 442 cڡ * ޭ , 443 cڡ BBox & dmged_bbox , 444 cڡ BBox & dshmged_bbox , 445 cڡ * d_d ) 447 i( mcgbl . `imy (&& scgbl .isempty()) ; 449 cڡ  mynk = 1 ; 450 cڡ  ti = gi . `tٮ_is (); 451 cڡ  evnum = vnum - dagh . `daghdex ( ACE_Shadow ); 452 cڡ  shadow = dagh . `daghshadow (); 453 cڡ  sime = gi . `sime (); 455 cڡ  me = comm_rvi :: `oc_me (); 457  r = 0, dr = 0; 459  rd_ޭ [ ACEMaxRk ]; 460  r = 0; < mynk ;++) 461 rd_ޭ [ r ] = ( bndryags [2*r+1] = ACE_ExBoundy ? 0 : ޭ [r]; 462 ; r < ACEMaxRk ;++) 463 rd_ޭ [ r ] = ޭ [r]; 465 cڡ BBox `whebb ( `growubydim ( dagh . `whebbox (), ޭ )); 467  GridBox * gb = 0; 468  i = 0; 470  r = 0, dr = 0; < ACEMaxAxis ; ++r ) { 471 i r > mynk && ! ACE_A ) ; 472 dr = ( r < mynk ) ? nks [r] : ; 474 cڡ * bi = gi . `is ( dr , ACE_Backwd ); 475 cڡ * fi = gi . `is ( dr , ACE_Fwd ); 476 cڡ * bhi = gi . `is ( dr , ACE_Bh ); 478 BBox bbb , shbbb , fbb , shfbb ; 480  i = 0 ; i < ti ; i++ ) { 481 if bi [ i ] ! ACETrue && fi [i] != ACETrue ) ; 483 BBox rb = gi . `Ibbox ( dmged_bbox , i , d_d ); 484 BBox b = gi . `Ibbox ( dmged_bbox , i , d_d , rd_ޭ ); 486 BBox b = gi . `Ibbox ( dshmged_bbox , i , d_d ); 487 BBox sb = gi . `Ibbox ( dshmged_bbox , i , d_d , rd_ޭ ); 489 i( ign ! ACE_A ) { 490 `gdbAlignBBox ( mynk , rb , ign ); 491 `gdbAlignBBox ( mynk , b , ign ); 492 `gdbAlignBBox ( mynk , b , ign ); 493 `gdbAlignBBox ( mynk , sb , ign ); 496 i r ! ACE_A && bndryags [2*r] = ACEF && 497 bi [ i ] = ACETrue ) { 498 bbb + rb ; shbbb + b ; 500 i r ! ACE_A && bndryags [2*r+1] = ACEF && 501 fi [ i ] = ACETrue ) { 502 fbb + rb ; shfbb + b ; 505 i! sime || r > mynk ) { 507  gb = mcgbl . `f (); gb ; gb = mcgbl. `xt () ) { 508 cڡ  idx = gb -> `gbIndex (); 509 cڡ  owr = gb -> `gbOwr (); 511 i( idx = mydex && owr = me ) ; 513 BBox mbb = gb -> `gbBBoxAbs ( vnum , ޭ ); 522 BBox `wb ( dmged_bbox * gi . `Ibbox ( mbb ,gi. `comemt ( i ), d_d )); 524 i( ign ! ACE_A ) { 525 `gdbAlignBBox ( mynk , wb , ign ); 526 `gdbAlignBBox ( mynk , mbb , ign ); 529 cڡ BBox `thewb ( `growbydim ( mbb , _d * wb ); 530 cڡ BBox `thb ( mbb * rb ); 532 i! sime && bi [ i ] = ACETrue ) { 533 `gdbAddGhoIaiInfo ( r , ACE_Backwd , thb , thewb , mbb , owr , idx ); 535 i! sime && fi [ i ] = ACETrue ) { 536 `gdbAddGhoIaiInfo ( r , ACE_Fwd , thb , thewb , mbb , owr , idx ); 538 i r > mynk && bhi [ i ] = ACETrue ) { 539 `gdbAddGhoIaiInfo ( r , ACE_Bh , thb , thewb , mbb , owr , idx ); 543 i( shag = ACETrue ) { 544  gb = scgbl . `f (; gb ; gb = scgbl. `xt ()) { 545 cڡ  idx = gb -> `gbIndex (); 546 cڡ  owr = gb -> `gbOwr (); 548 i( idx = mydex && owr = me ) ; 550 BBox smbb = gb -> `gbBBoxAbs ( evnum , ޭ ); 559 BBox `swb ( dshmged_bbox * gi . `Ibbox ( smbb ,gi. `comemt ( i ), d_d )); 561 i( ign ! ACE_A ) { 562 `gdbAlignBBox ( mynk , swb , ign ); 563 `gdbAlignBBox ( mynk , smbb , ign ); 566 cڡ BBox `hewb ( `growbydim ( smbb , _d * swb ); 567 cڡ BBox `hb ( smbb * b ); 569 i! sime && bi [ i ] = ACETrue ) { 570 `gdbAddShadowGhoIaiInfo ( r , ACE_Backwd , hb , hewb , smbb , owr , idx ); 572 i! sime && fi [ i ] = ACETrue ) { 573 `gdbAddShadowGhoIaiInfo ( r , ACE_Fwd , hb , hewb , smbb , owr , idx ); 575 i r > mynk && bhi [ i ] = ACETrue ) { 576 `gdbAddShadowGhoIaiInfo ( r , ACE_Bh , hb , hewb , smbb , owr , idx ); 582 bbb * mage . bbox ; 583 fbb * mage . bbox ; 584 i( shag = ACETrue ) { 585 shbbb * shage -> bbox ; 586 shfbb * shage -> bbox ; 588 i( r < mynk ) { 589 i( bndryags [2* r ] = ACEF ) { 590 gho_g_ag [2* r ] = ACETrue ; 591 gho_g_fo [2* r ]. mbbox = bbb ; 592 i( shag = ACETrue gho_g_fo [2* r ]. shbbox = shbbb ; 594 i( bndryags [2* r +1] = ACEF ) { 595 gho_g_ag [2* r +1] = ACETrue ; 596 gho_g_fo [2* r +1]. mbbox = fbb ; 597 i( shag = ACETrue gho_g_fo [2* r +1]. shbbox = shfbb ; 601 } } 603 gme < ass gTy > 604  GridDaBlock (1)< gTy >:: gdbSUpGhoIaiInfo ( 605 cڡ GridDaBlock (1)< Ty >* gdbtm ) 608 cڡ  mynk = 1 ; 609 cڡ  gum = comm_rvi :: oc_num (); 610 cڡ  gr_t = ACEMaxAxis * ACEMaxDs * maxdex ; 612 GridBoxLi * gggbl = dagh . ggbl (); 614 gGDB_Iai ***& gmw = gdb_wre_fo ; 615 gGDB_Iai ***& gmr = gdb_ad_fo ; 617 GDB_Iai *** ghw = gdbtm -> gdb_wre_fo ; 618 GDB_Iai *** ghr = gdbtm -> gdb_ad_fo ; 620  gp = 0, gj = 0; 621  gp = 0 ; < gum ;++ ) i ghw [ p ] || ghr [p] ) { 622 i ghw [ p ] ) gmw [p] = w GDB_Iai * [ r_t ]; 623 i ghr [ p ] ) gmr [p] = w GDB_Iai * [ r_t ]; 625  gj = 0 ; j < gr_t ; j++ ) { 627 i gmw [ p ] ) mw[p][ j ] = 0; 628 i gmr [ p ] ) mr[p][ j ] = 0; 630 i ghw [ p ] && hw[p][ j ] ) { 631 gmw [ p ][ j ] = w GDB_Iai ; 632 gmw [ p ][ j ]-> gmbbox = hw [p][j]-> mbbox ; 633 i gshag = ACETrue ) mw [ p ][ j ]-> shbbox = hw [p][j]->shbbox; 636 i ghr [ p ] && hr[p][ j ] ) { 637 gmr [ p ][ j ] = w GDB_Iai ; 638 gmr [ p ][ j ]-> gmbbox = hr [p][j]-> mbbox ; 639 i gshag = ACETrue ) mr [ p ][ j ]-> shbbox = hr [p][j]->shbbox; 643   gr = 0 ; < gmynk ;++ ) { 644 ggho_g_ag [2* r ] = gdbtm -> gho_g_ag [2*r]; 645 ggho_g_fo [2* r ]. gmbbox = gdbtm -> gho_g_fo [2*r]. mbbox ; 646 i gshag = ACETrue ) 647 gho_g_fo [2* r ]. shbbox = gdbtm ->ghost_prolong_info[2*r].shbbox; 649 ggho_g_ag [2* r +1] = gdbtm -> gho_g_ag [2*r+1]; 650 ggho_g_fo [2* r +1]. gmbbox = gdbtm -> gho_g_fo [2*r+1]. mbbox ; 651 i gshag = ACETrue ) 652 gho_g_fo [2* r +1]. shbbox = gdbtm ->ghost_prolong_info[2*r+1].shbbox; 656 gme < ass gTy > 657  GridDaBlock (1)< gTy >:: $gdbRGhoIaiInfo () 659 i( comm_ag = ACETrue ) { 660 cڡ  um = comm_rvi :: `oc_num (); 661 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 663  p =0;p< um ;p++) { 664 i( gdb_wre_fo [ p ] || gdb_ad_fo [p]) { 665  j =0;j< r_t ;j++) { 666 i( gdb_wre_fo [ p ] && gdb_wre_fo[p][ j ]) 667 de gdb_wre_fo [ p ][ j ]; 668 i( gdb_ad_fo [ p ] && gdb_ad_fo[p][ j ]) 669 de gdb_ad_fo [ p ][ j ]; 671 i( gdb_wre_fo [ p ] de [] gdb_write_info[p]; 672 i( gdb_ad_fo [ p ] de [] gdb_read_info[p]; 675 i( gdb_wre_fo de [] gdb_write_info; 676 gdb_wre_fo = 0; 677 i( gdb_ad_fo de [] gdb_read_info; 678 gdb_ad_fo = 0; 680 } } 690 gme < ass gTy > 691  GridDaBlock (1)< gTy >:: gdbSUpMa (cڡ * ޭ , 692 cڡ * bwidth , 693 cڡ * extghwidth , 694 GridDaBlock (1)< Ty >* gdbeu ) 696 cڡ  gmynk = 1; 702 gBBox & gdb = mage . bbox ; db = mged_bbox ; 703 gBBox & gib = mage . ibbox ; ib = mged_bbox ; 704 BBox * gbndrybb = mage . bndrybbox ; 707 gdb . growbydim ( extghwidth ); 710 cڡ Cods ( db . low ()); 711 cڡ Cods cu ( db . u ()); 712 cڡ Cods ( db . size ()); 714  gimes2 = 0; 715  gi =0; i< gmynk ; i++) { 716 gimes2 = 2* i ; 718 i( gbndryags [ imes2 ] = ACEF ) { 719 i( extghwidth [ imes2 ] < _d [itimes2]) 720 db . low ( i - (i)*( _d [ imes2 ] - extghwidth [itimes2]); 722 i( gbwidth [ imes2 ] > 0) { 724 gbndrybb [ imes2 ] = db ; 725 gbndrybb [ imes2 ]. u ( i ( (i+ (i)*( bwidth [itimes2]-1)); 728 i( gbndryags [ imes2 +1] = ACEF ) { 729 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 730 db . u ( i + (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 731 gib . u ( i -( ޭ [ nks [i]]* (i)); 733 i( gbwidth [ imes2 +1] > 0) { 735 gbndrybb [ imes2 +1] = db ; 736 gbndrybb [ imes2 +1]. low ( i ( cu (i- (i)*( bwidth [itimes2+1]-1)); 740 i( ggdbeu && 741 ggdbeu -> gmage . gbbox = mage . bbox ) { 743 #ifde DEBUG_PRINT_GDB 744 comm_rvi :: log () << "gdbMReusing" 745 << gdbeu -> mage . bbox 746 << mage . bbox 747 << dl ). ush (); 748 as ( gdbeu -> mage . bbox == mstorage.bbox); 751 #ifde DEBUG_PRINT_GDB 752 as ( gdbeu -> mage . da . ok_to_dex ()); 755 gmage . lo ( nems ); 757 memy ( mage . da . dabufr (), 758 gdbeu -> mage . da . dabufr (), 759 ( Ty )* mage . da . tsize ()); 764 guag = ACETrue ; 766 #ifde DEBUG_PRINT_GDB 772 gmage . lo ( nems ); 774 #ifde DEBUG_PRINT_GDB 775 gcomm_rvi :: log (<< "gdbSUpMa" << "[" << gfid << "] " 776 << mage << " " 777 << dl ). ush (); 784 gme < ass gTy > 785  GridDaBlock (1)< gTy >:: gdbSUpShadow (cڡ * ޭ , 786 cڡ * bwidth , 787 cڡ * extghwidth , 788 GridDaBlock (1)< Ty >* gdbeu ) 790 i( gshag ! ACEF gdbRShadow (); 791 gshag = ACETrue ; 793 cڡ  gmynk = 1; 799 gshage = w GridDaBlockStage (1)< Ty >; 801 gBBox & gdb = shage -> bbox ; db = shmged_bbox ; 802 gBBox & gib = shage -> ibbox ; ib = shmged_bbox ; 803 BBox * gbndrybb = shage -> bndrybbox ; 806 gdb . growbydim ( extghwidth ); 809 cڡ Cods ( db . low ()); 810 cڡ Cods cu ( db . u ()); 811 cڡ Cods ( db . size ()); 813  gimes2 = 0; 814  gi =0; i< gmynk ; i++) { 815 gimes2 = 2* i ; 817 i( gbndryags [ imes2 ] = ACEF ) { 818 i( extghwidth [ imes2 ] < _d [itimes2]) 819 db . low ( i - (i)*( _d [ imes2 ] - extghwidth [itimes2]); 821 i( gbwidth [ imes2 ] > 0) { 823 gbndrybb [ imes2 ] = db ; 824 gbndrybb [ imes2 ]. u ( i ( (i+ (i)*( bwidth [itimes2]-1)); 827 i( gbndryags [ imes2 +1] = ACEF ) { 828 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 829 db . u ( i + (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 830 gib . u ( i -( ޭ [ nks [i]]* (i)); 832 i( gbwidth [ imes2 +1] > 0) { 834 gbndrybb [ imes2 +1] = db ; 835 gbndrybb [ imes2 +1]. low ( i ( cu (i- (i)*( bwidth [itimes2+1]-1)); 839 i( ggdbeu && gdbeu-> gshag = ACETrue && 840 gdbeu -> shage -> bbox == shstorage->bbox) { 842 #ifde DEBUG_PRINT_GDB 843 comm_rvi :: log () << "gdbSReusing" 844 << gdbeu -> shage -> bbox 845 << shage -> bbox 846 << dl ). ush (); 847 as ( gdbeu -> shage -> bbox == shstorage->bbox); 850 gshage -> lo ( nems ); 852 memy ( shage -> da . dabufr (), 853 gdbeu -> shage -> da . dabufr (), 854 ( Ty )* shage -> da . tsize ()); 859 guag = ACETrue ; 861 #ifde DEBUG_PRINT_GDB 867 gshage -> lo ( nems ); 869 #ifde DEBUG_PRINT_GDB_SH 870 gcomm_rvi :: log (<< "gdbSUpShadow" << "[" << gfid << "]" 871 << * shage << " " 872 << dl ). ush (); 876 gme < ass gTy > 877  GridDaBlock (1)< gTy >:: $gdbRShadow () 879 i( shag = ACEF ) ; 880 i( shage de shstorage; 881 shag = ACEF ; 882 } } 888 gme < ass gTy > 889  GridDaBlock (1)< gTy >:: $gdbSUpMuiGrid (cڡ  lc , 890 cڡ  lf , 891 cڡ * ޭ , 892 cڡ * bwidth , 893 cڡ * extghwidth ) 895 i( mgag ! ACENu `gdbRMuiGrid (); 897 mgag = ACE_A ; 898 mglfe = lf ; 899 mglcr = lc ; 900 mgvs = lf - lc +1; 901 i( mgvs == 1) ; 903 mgage = w `GridDaBlockStage (1)< Ty > *[ mgvs -1]; 905 #ifde DEBUG_PRINT_GDB_MG 906 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 907 << "[MGLev: " << lf << "]" 908 << mage << " " 909 << dl ). `ush (); 912 cڡ  mynk = 1; 913 cڡ  muigrid = dagh . `daghmuigrid (); 915  ldex = 0; 916  = 1; 918   l = lf -1 ; > lc ;-- ) { 919 ldex = l - lc ; 920 * muigrid ; 922 mgage [ ldex ] = w `GridDaBlockStage (1)< Ty >; 923 `GridDaBlockStage (1)< Ty >* mg = mgage [ ldex ]; 925 cڡ BBox mgbb = `crn ( mged_bbox , ); 927 BBox & db = mg -> bbox ; db = mgbb ; 928 BBox & ib = mg -> ibbox ; ib = mgbb ; 929 BBox * bndrybb = mg -> bndrybbox ; 931 db . `growbydim ( extghwidth ); 933 cڡ Cods ` ( mgbb . `low ()); 934 cڡ Cods `cu ( mgbb . `u ()); 935 cڡ Cods ` ( mgbb . `size ()); 937  imes2 = 0; 938   i = 0 ; i < mynk ; i++ ) { 939 imes2 = 2* i ; 941 i( bndryags [ imes2 ] = ACEF ) { 942 i( extghwidth [ imes2 ] < _d [itimes2]) 943 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 945 i( bwidth [ imes2 ] > 0) { 946 bndrybb [ imes2 ] = db ; 947 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 950 i( bndryags [ imes2 +1] = ACEF ) { 951 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 952 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 953 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 955 i( bwidth [ imes2 +1] > 0) { 956 bndrybb [ imes2 +1] = db ; 957 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 961 mg -> `lo ( nems ); 963 #ifde DEBUG_PRINT_GDB_MG 964 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 965 << "[MGLev: " << ldex << "]" 966 << * mg << " " 967 << dl ). `ush (); 972 cڡ  um = comm_rvi :: `oc_num (); 973 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 976 #ifde DEBUG_PRINT_GDB_MG 977 comm_rvi :: `log (<< "gdbSUpMuiGridGho" << "[" << gfid << "]" 978 ). `ush (); 980   p = 0 ; < um ;++ ) { 981 i! gdb_wre_fo [ p ] ) ; 982   i = 0 ; i < r_t ; i++ ) { 983 i! gdb_wre_fo [ p ][ i ] ) ; 984 #ifde DEBUG_PRINT_GDB_MG 985 comm_rvi :: `log (<< dl << "[" << p << "," << i << "]"). `ush (); 987 gdb_wre_fo [ p ][ i ]-> mmgbbox = w BBox [ mgvs -1]; 988 BBox * b = gdb_wre_fo [ p ][ i ]-> mmgbbox ; 989 = 1; 990   = lf -1 ;> lc ;l-- ) { 991 ldex = - lc ; * muigrid ; 992 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> mbbox , ); 993 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 994 BBox & bb = b [ ldex ]; 995 BBox mgbb = mgage [ ldex ]-> bbox ; 996 mgbb . `shrkbydim ( extghwidth ); 997   r = 0 ; < mynk ;++ ) { 998 i( ޭ [ nks [ r ]] > 0 && 999 bb . `low ( r )== mgbb .low&& bb. `u (r)==mgbb.lower(r)) 1000 bb . `shi ( r , ޭ [ nks [r]]); 1003 #ifde DEBUG_PRINT_GDB_MG 1004 comm_rvi :: `log (<< "[MGL:" << ldex << b [ldex] << "]"). `ush (); 1009 #ifde DEBUG_PRINT_GDB_MG 1010 comm_rvi :: `log (<< dl ). `ush (); 1014   r = 0 ; < 2* mynk ;++ ) { 1015 i gho_g_ag [ r ] = ACEF ) ; 1016 gho_g_fo [ r ]. mmgbbox = w BBox [ mgvs -1]; 1017 BBox * b = gho_g_fo [ r ]. mmgbbox ; 1018 = 1; 1019   = lf -1 ;> lc ;l-- ) { 1020 ldex = - lc ; * muigrid ; 1021 b [ ldex ] = `crn ( gho_g_fo [ r ]. mbbox , ); 1022 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1023 BBox & bb = b [ ldex ]; 1024 BBox mgbb = mgage [ ldex ]-> bbox ; 1025 mgbb . `shrkbydim ( extghwidth ); 1026   = 0 ;< mynk ;r++ ) { 1027 i( ޭ [ nks [ ]] > 0 && 1028 bb . `low ( )== mgbb .lowr&& bb. `u (rr)==mgbb.lower(rr)) 1029 bb . `shi ( , ޭ [ nks [rr]]); 1034 } } 1036 gme < ass gTy > 1037  GridDaBlock (1)< gTy >:: $gdbSUpMuiGrid (cڡ  axis , 1038 cڡ  lc , 1039 cڡ  lf , 1040 cڡ * ޭ , 1041 cڡ * bwidth , 1042 cڡ * extghwidth ) 1044 #ifde DEBUG_PRINT 1045 `as ( axis = ACE_X ||xi= ACE_Y ||xi= ACE_Z ); 1048 i( mgag ! ACENu `gdbRMuiGrid (); 1050 mgag = axis ; 1051 mglfe = lf ; 1052 mglcr = lc ; 1053 mgvs = lf - lc +1; 1054 i( mgvs == 1) ; 1056 mgage = w `GridDaBlockStage (1)< Ty > *[ mgvs -1]; 1058 #ifde DEBUG_PRINT_GDB_MG 1059 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1060 << "[MGLev: " << lf << "]" 1061 << mage << " " 1062 << dl ). `ush (); 1065 cڡ  mynk = 1; 1066 cڡ  muigrid = dagh . `daghmuigrid (); 1068  ldex = 0; 1069  = 1; 1071   l = lf -1 ; > lc ;-- ) { 1072 ldex = l - lc ; 1073 * muigrid ; 1075 mgage [ ldex ] = w `GridDaBlockStage (1)< Ty >; 1076 `GridDaBlockStage (1)< Ty >* mg = mgage [ ldex ]; 1078 cڡ BBox mgbb = `crn ( mged_bbox , axis , ); 1080 BBox & db = mg -> bbox ; db = mgbb ; 1081 BBox & ib = mg -> ibbox ; ib = mgbb ; 1082 BBox * bndrybb = mg -> bndrybbox ; 1084 db . `growbydim ( extghwidth ); 1086 cڡ Cods ` ( mgbb . `low ()); 1087 cڡ Cods `cu ( mgbb . `u ()); 1088 cڡ Cods ` ( mgbb . `size ()); 1090  imes2 = 0; 1091   i = 0 ; i < mynk ; i++ ) { 1092 imes2 = 2* i ; 1094 i( bndryags [ imes2 ] = ACEF ) { 1095 i( extghwidth [ imes2 ] < _d [itimes2]) 1096 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1098 i( bwidth [ imes2 ] > 0) { 1099 bndrybb [ imes2 ] = db ; 1100 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1103 i( bndryags [ imes2 +1] = ACEF ) { 1104 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1105 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1106 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1108 i( bwidth [ imes2 +1] > 0) { 1109 bndrybb [ imes2 +1] = db ; 1110 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1114 mg -> `lo ( nems ); 1116 #ifde DEBUG_PRINT_GDB_MG 1117 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1118 << "[MGLev: " << ldex << "]" 1119 << * mg << " " 1120 << dl ). `ush (); 1125 cڡ  um = comm_rvi :: `oc_num (); 1126 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1129   p = 0 ; < um ;++ ) { 1130 i! gdb_wre_fo [ p ] ) ; 1131   i = 0 ; i < r_t ; i++ ) { 1132 i! gdb_wre_fo [ p ][ i ] ) ; 1133 gdb_wre_fo [ p ][ i ]-> mmgbbox = w BBox [ mgvs -1]; 1134 BBox * b = gdb_wre_fo [ p ][ i ]-> mmgbbox ; 1135 = 1; 1136   = lf -1 ;> lc ;l-- ) { 1137 ldex = - lc ; * muigrid ; 1138 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> mbbox , axis , ); 1139 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1140 BBox & bb = b [ ldex ]; 1141 BBox mgbb = mgage [ ldex ]-> bbox ; 1142 mgbb . `shrkbydim ( extghwidth ); 1143   r = 0 ; < mynk ;++ ) { 1144 i( ޭ [ nks [ r ]] > 0 && 1145 bb . `low ( r )== mgbb .low&& bb. `u (r)==mgbb.lower(r)) 1146 bb . `shi ( r , ޭ [ nks [r]]); 1155   r = 0 ; < 2* mynk ;++ ) { 1156 i gho_g_ag [ r ] = ACEF ) ; 1157 gho_g_fo [ r ]. mmgbbox = w BBox [ mgvs -1]; 1158 BBox * b = gho_g_fo [ r ]. mmgbbox ; 1159 = 1; 1160   = lf -1 ;> lc ;l-- ) { 1161 ldex = - lc ; * muigrid ; 1162 b [ ldex ] = `crn ( gho_g_fo [ r ]. mbbox , axis , ); 1163 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1164 BBox & bb = b [ ldex ]; 1165 BBox mgbb = mgage [ ldex ]-> bbox ; 1166 mgbb . `shrkbydim ( extghwidth ); 1167   = 0 ;< mynk ;r++ ) { 1168 i( ޭ [ nks [ ]] > 0 && 1169 bb . `low ( )== mgbb .lowr&& bb. `u (rr)==mgbb.lower(rr)) 1170 bb . `shi ( , ޭ [ nks [rr]]); 1175 } } 1177 gme < ass gTy > 1178  GridDaBlock (1)< gTy >:: $gdbRMuiGrid () 1180 i( mgag = ACENu ) ; 1182 cڡ  mynk = 1; 1185  i ; 1186  i = 0 ; i < mgvs -1 ; i++ ) 1187 i( mgage [ i ] de mgstorage[i]; 1189 i( mgage de [] mgstorage; 1192 cڡ  um = comm_rvi :: `oc_num (); 1193 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1195 i( gdb_wre_fo   p = 0 ; < um ;++ ) { 1196 i! gdb_wre_fo [ p ] ) ; 1197  i = 0 ; i < r_t ; i++ ) { 1198 i( gdb_wre_fo [ p ][ i ] && gdb_wre_fo[p][i]-> mmgbbox ) 1199 de [] gdb_wre_fo [ p ][ i ]-> mmgbbox ; 1202   r = 0 ; < 2* mynk ;++ ) { 1203 i( gho_g_ag [ r ]== ACETrue && gho_g_fo [r]. mmgbbox ) 1204 de [] gho_g_fo [ r ]. mmgbbox ; 1207 mgag = ACENu ; 1208 } } 1214 gme < ass gTy > 1215  GridDaBlock (1)< gTy >:: $gdbSUpShadowMuiGrid (cڡ  lc , 1216 cڡ  lf , 1217 cڡ * ޭ , 1218 cڡ * bwidth , 1219 cڡ * extghwidth ) 1221 i( shmgag ! ACENu `gdbRShadowMuiGrid (); 1223 shmgag = ACE_A ; 1224 shmglfe = lf ; 1225 shmglcr = lc ; 1226 shmgvs = lf - lc +1; 1227 i( shmgvs == 1) ; 1229 shmgage = w `GridDaBlockStage (1)< Ty > *[ mgvs -1]; 1231 #ifde DEBUG_PRINT_GDB_MG 1232 comm_rvi :: `log (<< "gdbSUpShadowMuiGrid" << "[" << gfid << "]" 1233 << "[MGLev: " << lf << "]" 1234 << shage << " " 1235 << dl ). `ush (); 1239 cڡ  mynk = 1; 1240 cڡ  muigrid = dagh . `daghmuigrid (); 1242  ldex = 0; 1243  = 1; 1245   l = lf -1 ; > lc ;l-- ) { 1246 ldex = l - lc ; 1247 * muigrid ; 1249 shmgage [ ldex ] = w `GridDaBlockStage (1)< Ty >; 1250 `GridDaBlockStage (1)< Ty >* shmg = shmgage [ ldex ]; 1252 cڡ BBox shmgbb = `crn ( shmged_bbox , ); 1254 BBox & db = shmg -> bbox ; db = shmgbb ; 1255 BBox & ib = shmg -> ibbox ; ib = shmgbb ; 1256 BBox * bndrybb = shmg -> bndrybbox ; 1258 db . `growbydim ( extghwidth ); 1260 cڡ Cods ` ( shmgbb . `low ()); 1261 cڡ Cods `cu ( shmgbb . `u ()); 1262 cڡ Cods ` ( shmgbb . `size ()); 1264  imes2 = 0; 1265  i =0; i< mynk ; i++) { 1266 imes2 = 2* i ; 1268 i( bndryags [ imes2 ] = ACEF ) { 1269 i( extghwidth [ imes2 ] < _d [itimes2]) 1270 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1272 i( bwidth [ imes2 ] > 0) { 1273 bndrybb [ imes2 ] = db ; 1274 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1277 i( bndryags [ imes2 +1] = ACEF ) { 1278 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1279 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1280 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1282 i( bwidth [ imes2 +1] > 0) { 1283 bndrybb [ imes2 +1] = db ; 1284 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1288 shmg -> `lo ( nems ); 1290 #ifde DEBUG_PRINT_GDB_MG 1291 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1292 << "[MGLev: " << ldex << "]" 1293 << * shmg << " " 1294 << dl ). `ush (); 1299 cڡ  um = comm_rvi :: `oc_num (); 1300 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1303   p = 0 ; < um ;++ ) { 1304 i! gdb_wre_fo [ p ] ) ; 1305   i = 0 ; i < r_t ; i++ ) { 1306 i! gdb_wre_fo [ p ][ i ] ) ; 1307 gdb_wre_fo [ p ][ i ]-> shmgbbox = w BBox [ shmgvs -1]; 1308 BBox * b = gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1309 = 1; 1310   = lf -1 ;> lc ;l-- ) { 1311 ldex = - lc ; * muigrid ; 1312 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> shbbox , ); 1313 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1314 BBox & bb = b [ ldex ]; 1315 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1316 shmgbb . `shrkbydim ( extghwidth ); 1317   r = 0 ; < mynk ;++ ) { 1318 i( ޭ [ nks [ r ]] > 0 && 1319 bb . `low ( r )== shmgbb .low&& bb. `u (r)==shmgbb.lower(r)) 1320 bb . `shi ( r , ޭ [ nks [r]]); 1328   r = 0 ; < 2* mynk ;++ ) { 1329 i gho_g_ag [ r ] = ACEF ) ; 1330 gho_g_fo [ r ]. shmgbbox = w BBox [ shmgvs -1]; 1331 BBox * b = gho_g_fo [ r ]. shmgbbox ; 1332 = 1; 1333   = lf -1 ;> lc ;l-- ) { 1334 ldex = - lc ; * muigrid ; 1335 b [ ldex ] = `crn ( gho_g_fo [ r ]. shbbox , ); 1336 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1337 BBox & bb = b [ ldex ]; 1338 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1339 shmgbb . `shrkbydim ( extghwidth ); 1340   = 0 ;< mynk ;r++ ) { 1341 i( ޭ [ nks [ ]] > 0 && 1342 bb . `low ( )== shmgbb .lowr&& bb. `u (rr)==shmgbb.lower(rr)) 1343 bb . `shi ( , ޭ [ nks [rr]]); 1348 } } 1350 gme < ass gTy > 1351  GridDaBlock (1)< gTy >:: $gdbSUpShadowMuiGrid (cڡ  axis , 1352 cڡ  lc , 1353 cڡ  lf , 1354 cڡ * ޭ , 1355 cڡ * bwidth , 1356 cڡ * extghwidth ) 1358 #ifde DEBUG_PRINT 1359 `as ( axis = ACE_X ||xi= ACE_Y ||xi= ACE_Z ); 1362 i( shmgag ! ACENu `gdbRShadowMuiGrid (); 1364 shmgag = axis ; 1365 shmglfe = lf ; 1366 shmglcr = lc ; 1367 shmgvs = lf - lc +1; 1368 i( shmgvs == 1) ; 1370 shmgage = w `GridDaBlockStage (1)< Ty > *[ mgvs -1]; 1372 #ifde DEBUG_PRINT_GDB_MG 1373 comm_rvi :: `log (<< "gdbSUpShadowMuiGrid" << "[" << gfid << "]" 1374 << "[MGLev: " << lf << "]" 1375 << shage << " " 1376 << dl ). `ush (); 1379 cڡ  mynk = 1; 1380 cڡ  muigrid = dagh . `daghmuigrid (); 1382  ldex = 0; 1383  = 1; 1385   l = lf -1 ; > lc ;-- ) { 1386 ldex = l - lc ; 1387 * muigrid ; 1389 shmgage [ ldex ] = w `GridDaBlockStage (1)< Ty >; 1390 `GridDaBlockStage (1)< Ty >* shmg = shmgage [ ldex ]; 1392 cڡ BBox shmgbb = `crn ( shmged_bbox , axis , ); 1394 BBox & db = shmg -> bbox ; db = shmgbb ; 1395 BBox & ib = shmg -> ibbox ; ib = shmgbb ; 1396 BBox * bndrybb = shmg -> bndrybbox ; 1398 db . `growbydim ( extghwidth ); 1400 cڡ Cods ` ( shmgbb . `low ()); 1401 cڡ Cods `cu ( shmgbb . `u ()); 1402 cڡ Cods ` ( shmgbb . `size ()); 1404  imes2 = 0; 1405  i =0; i< mynk ; i++) { 1406 imes2 = 2* i ; 1408 i( bndryags [ imes2 ] = ACEF ) { 1409 i( extghwidth [ imes2 ] < _d [itimes2]) 1410 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1412 i( bwidth [ imes2 ] > 0) { 1413 bndrybb [ imes2 ] = db ; 1414 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1417 i( bndryags [ imes2 +1] = ACEF ) { 1418 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1419 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1420 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1422 i( bwidth [ imes2 +1] > 0) { 1423 bndrybb [ imes2 +1] = db ; 1424 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1428 shmg -> `lo ( nems ); 1430 #ifde DEBUG_PRINT_GDB_MG 1431 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1432 << "[MGLev: " << ldex << "]" 1433 << * shmg << " " 1434 << dl ). `ush (); 1439 cڡ  um = comm_rvi :: `oc_num (); 1440 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1443   p = 0 ; < um ;++ ) { 1444 i! gdb_wre_fo [ p ] ) ; 1445   i = 0 ; i < r_t ; i++ ) { 1446 i! gdb_wre_fo [ p ][ i ] ) ; 1447 gdb_wre_fo [ p ][ i ]-> shmgbbox = w BBox [ shmgvs -1]; 1448 BBox * b = gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1449 = 1; 1450   = lf -1 ;> lc ;l-- ) { 1451 ldex = - lc ; * muigrid ; 1452 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> shbbox , axis , ); 1453 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1454 BBox & bb = b [ ldex ]; 1455 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1456 shmgbb . `shrkbydim ( extghwidth ); 1457   r = 0 ; < mynk ;++ ) { 1458 i( ޭ [ nks [ r ]] > 0 && 1459 bb . `low ( r )== shmgbb .low&& bb. `u (r)==shmgbb.lower(r)) 1460 bb . `shi ( r , ޭ [ nks [r]]); 1468   r = 0 ; < 2* mynk ;++ ) { 1469 i gho_g_ag [ r ] = ACEF ) ; 1470 gho_g_fo [ r ]. shmgbbox = w BBox [ shmgvs -1]; 1471 BBox * b = gho_g_fo [ r ]. shmgbbox ; 1472 = 1; 1473   = lf -1 ;> lc ;l-- ) { 1474 ldex = - lc ; * muigrid ; 1475 b [ ldex ] = `crn ( gho_g_fo [ r ]. shbbox , axis , ); 1476 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1477 BBox & bb = b [ ldex ]; 1478 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1479 shmgbb . `shrkbydim ( extghwidth ); 1480   = 0 ;< mynk ;r++ ) { 1481 i( ޭ [ nks [ ]] > 0 && 1482 bb . `low ( )== shmgbb .lowr&& bb. `u (rr)==shmgbb.lower(rr)) 1483 bb . `shi ( , ޭ [ nks [rr]]); 1488 } } 1490 gme < ass gTy > 1491  GridDaBlock (1)< gTy >:: $gdbRShadowMuiGrid () 1493 i( shmgag = ACENu ) ; 1495 cڡ  mynk = 1; 1498  i ; 1499  i = 0 ; i < shmgvs -1 ; i++ ) 1500 i( shmgage [ i ] de shmgstorage[i]; 1502 i( shmgage de [] shmgstorage; 1505 cڡ  um = comm_rvi :: `oc_num (); 1506 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1508 i( gdb_wre_fo   p = 0 ; < um ;++ ) { 1509 i! gdb_wre_fo [ p ] ) ; 1510  i = 0 ; i < r_t ; i++ ) { 1511 i( gdb_wre_fo [ p ][ i ] && gdb_wre_fo[p][i]-> shmgbbox ) 1512 de [] gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1515   r = 0 ; < 2* mynk ;++ ) { 1516 i( gho_g_ag [ r ]== ACETrue && gho_g_fo [r]. shmgbbox ) 1517 de [] gho_g_fo [ r ]. shmgbbox ; 1520 shmgag = ACENu ; 1521 } } 1527 gme < ass gTy > 1528  GridDaBlock (1)< gTy >:: gdbWreGhos (cڡ  oc , 1529 cڡ  m , 1530 cڡ  axis , 1531 cڡ  d , 1532 cڡ  idt , 1533 cڡ  mgl , 1534 GridDaBuck < Ty >& gdb , 1535 cڡ  ) 1537 #ifde DEBUG_PRINT 1538 as ( d == ACE_Backwd || d== ACE_Fwd || axis == ACE_A ); 1539 as (( m ! ACEA && itm >0 && nems >= itm) || 1540 ( m = ACEA )); 1543 cڡ  gdex = ( ACEMaxDs * maxdex * axis ) + 1544 maxdex * d ); 1545 cڡ  gme = comm_rvi :: oc_me (); 1547 cڡ  gnms = ( m = ACEA ? nems : 1; 1549 #ifde DEBUG_PRINT_GDB_COMM 1550 gcomm_rvi :: log (<< "gdbWreGhos:" << "[P:" << oc << "]" 1551 << "[Me:" << me << "]" 1552 << "[NI:" << nms << "]" << "[I:" << m << "]" 1553 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1554 << "[A:" << axis << "]" << "[D:" << d << "]" 1555 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1556 << dl ). ush (); 1559 GDB_Iai * ggdbi = 0; 1560  gt = 0; 1561 i( ggdb_wre_fo [ oc ]) { 1562   gi = 0, gidx = ; i < gmaxdex ; i++ ) { 1563 i( ggdbi = gdb_wre_fo [ oc ][ dex + i ]) { 1565 #ifde DEBUG_PRINT_GDB_COMM 1566 comm_rvi :: log (<< "Wrg[" << idx << "]" 1567 << "{ " << * gdbi << " }" << dl ). ush (); 1570 BBox gbb = ibox (* gdbi , idt , mgl ); 1571 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1572 dex + i , m , me , idt , idx ); 1574 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 1576 #ifde DEBUG_PRINT_GDB_COMM 1577 i( gbb . emy ()) 1578 gcomm_rvi :: log () << "Null Write {" 1579 << * gdb . hd ( idx ) 1580 << "}" << dl ). ush (); 1583 gt ++; gidx ++; 1588  gt ; 1594 gme < ass gTy > 1595  GridDaBlock (1)< gTy >:: gdbWreDa (cڡ  m , 1596 cڡ  idt , 1597 cڡ  mgl , 1598 GridDaBuck < Ty >& gdb , 1599 cڡ  ) 1601 #ifde DEBUG_PRINT 1602 as (( m ! ACEA && itm >0 && nems >= itm) || 1603 ( m = ACEA )); 1606 cڡ  gme = comm_rvi :: oc_me (); 1609 cڡ BBox gbb = boundgbox ( idt , mgl ); 1611 cڡ  gnms = ( m = ACEA ? nems : 1; 1613 #ifde DEBUG_PRINT_GDB_COMM 1614 gcomm_rvi :: log (<< "gdbWreDa:" << "[Me:" << me << "]" 1615 << "[NI:" << nms << "]" << "[I:" << m << "]" 1616 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1617 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1618 << bb << dl ). ush (); 1621 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1622 mydex , m , me , idt , ); 1623 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( ), bb , m ); 1626 gme < ass gTy > 1627  GridDaBlock (1)< gTy >:: gdbWreDa (cڡ  m , 1628 cڡ  idt , 1629 cڡ  mgl , 1630 cڡ BBox & whe , 1631 GridDaBuck < Ty >& gdb , 1632 cڡ  ) 1634 #ifde DEBUG_PRINT 1635 as (( m ! ACEA && itm >0 && nems >= itm) || 1636 ( m = ACEA )); 1639 cڡ  gme = comm_rvi :: oc_me (); 1642 cڡ BBox gbb = boundgbox ( idt , mgl * gwhe ; 1644 cڡ  gnms = ( m = ACEA ? nems : 1; 1646 #ifde DEBUG_PRINT_GDB_COMM 1647 gcomm_rvi :: log (<< "gdbWreDa:" << "[Me:" << me << "]" 1648 << "[NI:" << nms << "]" << "[I:" << m << "]" 1649 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1650 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1651 << bb << dl ). ush (); 1654 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1655 mydex , m , me , idt , ); 1656 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( ), bb , m ); 1666 gme < ass gTy > 1667  GridDaBlock (1)< gTy >:: $gdbSUpPtGIaiInfo (cڡ  ign , 1668 cڡ * ޭ , 1669 cڡ BBox & dmged_bbox , 1670 cڡ BBox & dshmged_bbox , 1671 cڡ * d_d ) 1673 i( _ag = ACEF ) ; 1675 cڡ  mynk = 1; 1677 cڡ  um = comm_rvi :: `oc_num (); 1678 cڡ  me = comm_rvi :: `oc_me (); 1680 cڡ  fe = dagh . `fe (); 1681 cڡ  fev = dagh . `fev (); 1683 cڡ  daghnk = dagh . nk ; 1685 cڡ  fev = dagh . `fev (); 1686 cڡ  ev = dagh . `crv (); 1688 cڡ  ag = ( vnum > ev ? ACETrue : ACEF ; 1689 cڡ  pwag = ( vnum < fev ? ACETrue : ACEF ; 1691 cڡ  vnum = vnum - fev ; 1692 cڡ  pwvnum = vnum + fev ; 1694 cڡ  r_t = um * maxdex ; 1696 GridBoxLi * ggbl = dagh . `ggbl (); 1698  GridBox * gb = 0; 1699  i = 0; 1701  maxd = 0; 1702  i =0;i<2* daghnk ;i++) 1703 maxd = (maxd > _d [ i ]) ? maxrad : sten_rad[i]; 1705 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 1706 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 1709 i( ag ) { 1710 gdb_g_ad_fo = w GDB_Iai * [ r_t ]; 1711  i =0; i< r_t ; i++ gdb_g_ad_fo [i] = 0; 1713 GridBoxLi cgbl ; 1714 BBox `bbox ( `growbydim ( `crn ( mged_bbox , fe ), d_d )); 1715 ggbl -> `r ( bbox , vnum , cgbl ); 1717  gb = cgbl . `f (); gb; gb =rcgbl. `xt ()) { 1718 cڡ  idx = gb -> `gbIndex (); 1719 cڡ  owr = gb -> `gbOwr (); 1721 BBox `rbb ( bbox * gb -> `gbBBoxAbs ( vnum , ޭ )); 1722 i( rbb . `emy ()) ; 1724 i( ign ! ACE_A ) 1725 `gdbAlignBBox ( mynk , rbb , ign ); 1727 cڡ  dex = owr * maxdex + idx ; 1728 i(! gdb_g_ad_fo [ dex ]) 1729 gdb_g_ad_fo [ dex ] = w GDB_Iai ; 1730 gdb_g_ad_fo [ dex ]-> mbbox + rbb ; 1731 #ifde DEBUG_PRINT 1732 `as (! gdb_g_ad_fo [ dex ]-> mbbox . `emy ()); 1737 i( pwag ) { 1738 gdb_g_wre_fo = w GDB_Iai * [ r_t ]; 1739  i =0; i< r_t ; i++ gdb_g_wre_fo [i] = 0; 1741 GridBoxLi pwcgbl ; 1742 BBox `pwbbox ( `fe ( dmged_bbox , fe ,0)); 1743 ggbl -> `r ( pwbbox , pwvnum , pwcgbl , ޭ , fe * maxd ); 1745 cڡ BBox & ibbox = mage .ibbox; 1747  gb = pwcgbl . `f (); gb; gb =wcgbl. `xt ()) { 1748 cڡ  idx = gb -> `gbIndex (); 1749 cڡ  owr = gb -> `gbOwr (); 1751 BBox `wbb ( ibbox * `growbydim ( gb -> `gbBBoxAbs ( vnum , ޭ ), d_d )); 1753 i( wbb . `emy ()) ; 1755 i( ign ! ACE_A ) 1756 `gdbAlignBBox ( mynk , wbb , ign ); 1758 cڡ  dex = owr * maxdex + idx ; 1759 i(! gdb_g_wre_fo [ dex ]) 1760 gdb_g_wre_fo [ dex ] = w GDB_Iai ; 1761 #ifde DEBUG_PRINT 1762 `as ( gdb_g_wre_fo [ dex ]-> mbbox . `emy () || 1763 wbb . `mgab ( gdb_g_wre_fo [ dex ]-> mbbox , ޭ )); 1765 gdb_g_wre_fo [ dex ]-> mbbox + wbb ; 1766 #ifde DEBUG_PRINT 1767 `as (! gdb_g_wre_fo [ dex ]-> mbbox . `emy ()); 1775 } } 1777 gme < ass gTy > 1778  GridDaBlock (1)< gTy >:: gdbSUpPtGIaiInfo ( 1779 cڡ GridDaBlock (1)< Ty >* gdbtm ) 1781 i( _ag = ACEF ) ; 1783 cڡ  gmynk = 1 ; 1784 cڡ  gum = comm_rvi :: oc_num (); 1785 cڡ  gr_t = um * maxdex ; 1787 gGDB_Iai **& gmw = gdb_g_wre_fo ; 1788 gGDB_Iai **& gmr = gdb_g_ad_fo ; 1790 GDB_Iai ** ghw = gdbtm -> gdb_g_wre_fo ; 1791 GDB_Iai ** ghr = gdbtm -> gdb_g_ad_fo ; 1793 i(! ghw && ! ghr ) ; 1795 i( ghw gmw = w GDB_Iai * [ r_t ]; 1796 i( ghr gmr = w GDB_Iai * [ r_t ]; 1798  gp = 0; 1799  gp = 0; < gr_t ;++) { 1800 i( gmw mw[ p ] = 0; 1801 i( gmr mr[ p ] = 0; 1803 i( ghw && hw[ p ]) { 1804 gmw [ p ] = w GDB_Iai ; 1805 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 1809 i( ghr && hr[ p ]) { 1810 gmr [ p ] = w GDB_Iai ; 1811 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 1820 gme < ass gTy > 1821  GridDaBlock (1)< gTy >:: $gdbSUpPtSIaiInfo (cڡ  ign , 1822 cڡ * ޭ , 1823 cڡ BBox & dmged_bbox , 1824 cڡ BBox & dshmged_bbox , 1825 cڡ * d_d ) 1827 i( _ag = ACEF ) ; 1829 cڡ  mynk = 1; 1831 cڡ  um = comm_rvi :: `oc_num (); 1832 cڡ  me = comm_rvi :: `oc_me (); 1834 cڡ  fe = dagh . `fe (); 1835 cڡ  fev = dagh . `fev (); 1837 cڡ  daghnk = dagh . nk ; 1839 cڡ  fev = dagh . `fev (); 1840 cڡ  ev = dagh . `crv (); 1842 cڡ  pwag = ( vnum > ev ? ACETrue : ACEF ; 1843 cڡ  ag = ( vnum < fev ? ACETrue : ACEF ; 1845 cڡ  pwvnum = vnum - fev ; 1846 cڡ  vnum = vnum + fev ; 1848 cڡ  r_t = um * maxdex ; 1850 GridBoxLi * ggbl = dagh . `ggbl (); 1852  GridBox * gb = 0; 1853  i = 0; 1855  maxd = 0; 1856  i =0;i<2* daghnk ;i++) 1857 maxd = (maxd > _d [ i ]) ? maxrad : sten_rad[i]; 1859 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 1860 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 1863 i( pwag ) { 1864 gdb_t_wre_fo = w GDB_Iai * [ r_t ]; 1865  i =0; i< r_t ; i++ gdb_t_wre_fo [i] = 0; 1867 GridBoxLi pwcgbl ; 1868 BBox `pwbbox ( `crn ( dmged_bbox , fe )); 1869 ggbl -> `r ( pwbbox , pwvnum , pwcgbl , ޭ , fe * maxd ); 1871  gb = pwcgbl . `f (); gb; gb =wcgbl. `xt ()) { 1872 cڡ  idx = gb -> `gbIndex (); 1873 cڡ  owr = gb -> `gbOwr (); 1875 BBox `wbb ( pwbbox * gb -> `gbBBoxAbs ( pwvnum , ޭ )); 1876 i( wbb . `emy ()) ; 1878 i( ign ! ACE_A ) 1879 `gdbAlignBBox ( mynk , wbb , ign ); 1881 cڡ  dex = owr * maxdex + idx ; 1882 i(! gdb_t_wre_fo [ dex ]) 1883 gdb_t_wre_fo [ dex ] = w GDB_Iai ; 1884 gdb_t_wre_fo [ dex ]-> mbbox + wbb ; 1885 #ifde DEBUG_PRINT 1886 `as (! gdb_t_wre_fo [ dex ]-> mbbox . `emy ()); 1891 i( ag ) { 1892 gdb_t_ad_fo = w GDB_Iai * [ r_t ]; 1893  i =0; i< r_t ; i++ gdb_t_ad_fo [i] = 0; 1895 GridBoxLi cgbl ; 1896 BBox `bbox ( `growbydim ( `fe ( dmged_bbox , fe ,0), d_d )); 1897 ggbl -> `r ( bbox , vnum , cgbl ); 1899 cڡ BBox & ibbox = mage .ibbox; 1901  gb = cgbl . `f (); gb; gb =rcgbl. `xt ()) { 1902 cڡ  idx = gb -> `gbIndex (); 1903 cڡ  owr = gb -> `gbOwr (); 1905 BBox `rbb ( ibbox * `growbydim ( gb -> `gbBBoxAbs ( vnum , ޭ ), d_d )); 1907 i( rbb . `emy ()) ; 1909 i( ign ! ACE_A ) 1910 `gdbAlignBBox ( mynk , rbb , ign ); 1912 cڡ  dex = owr * maxdex + idx ; 1913 i(! gdb_t_ad_fo [ dex ]) 1914 gdb_t_ad_fo [ dex ] = w GDB_Iai ; 1915 #ifde DEBUG_PRINT 1916 `as ( gdb_t_ad_fo [ dex ]-> mbbox . `emy () || 1917 rbb . `mgab ( gdb_t_ad_fo [ dex ]-> mbbox , ޭ )); 1919 gdb_t_ad_fo [ dex ]-> mbbox + rbb ; 1920 #ifde DEBUG_PRINT 1921 `as (! gdb_t_ad_fo [ dex ]-> mbbox . `emy ()); 1929 } } 1931 gme < ass gTy > 1932  GridDaBlock (1)< gTy >:: gdbSUpPtSIaiInfo ( 1933 cڡ GridDaBlock (1)< Ty >* gdbtm ) 1935 i( _ag = ACEF ) ; 1937 cڡ  gmynk = 1 ; 1938 cڡ  gum = comm_rvi :: oc_num (); 1939 cڡ  gr_t = um * maxdex ; 1941 gGDB_Iai **& gmw = gdb_t_wre_fo ; 1942 gGDB_Iai **& gmr = gdb_t_ad_fo ; 1944 GDB_Iai ** ghw = gdbtm -> gdb_t_wre_fo ; 1945 GDB_Iai ** ghr = gdbtm -> gdb_t_ad_fo ; 1947 i(! ghw && ! ghr ) ; 1949 i( ghw gmw = w GDB_Iai * [ r_t ]; 1950 i( ghr gmr = w GDB_Iai * [ r_t ]; 1952  gp = 0; 1953  gp = 0; < gr_t ;++) { 1954 i( gmw mw[ p ] = 0; 1955 i( gmr mr[ p ] = 0; 1957 i( ghw && hw[ p ]) { 1958 gmw [ p ] = w GDB_Iai ; 1959 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 1963 i( ghr && hr[ p ]) { 1964 gmr [ p ] = w GDB_Iai ; 1965 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 1975 gme < ass gTy > 1976  GridDaBlock (1)< gTy >:: $gdbRPtIaiInfo () 1978 i( _ag = ACEF ) ; 1980 GDB_Iai **& mgw = gdb_g_wre_fo ; 1981 GDB_Iai **& mgr = gdb_g_ad_fo ; 1983 GDB_Iai **& msw = gdb_t_wre_fo ; 1984 GDB_Iai **& m = gdb_t_ad_fo ; 1986 i(! mgw && ! mgr && ! msw && ! m ) ; 1988 cڡ  r_t = comm_rvi :: `oc_num (* maxdex ; 1989  p = 0; 1990  p = 0; < r_t ;++) { 1991 i( mgw ) { 1992 de mgw [ p ]; 1993 mgw [ p ] = 0; 1995 i( mgr ) { 1996 de mgr [ p ]; 1997 mgr [ p ] = 0; 1999 i( msw ) { 2000 de msw [ p ]; 2001 msw [ p ] = 0; 2003 i( m ) { 2004 de m [ p ]; 2005 m [ p ] = 0; 2009 i( mgw de [] mgw; 2010 i( mgr de [] mgr; 2011 i( msw de [] msw; 2012 i( m de [] msr; 2013 mgw = 0; mgr = 0; 2014 msw = 0; m = 0; 2015 } } 2025 gme < ass gTy > 2026  GridDaBlock (1)< gTy >:: $gdbSUpPtMa (cڡ * ޭ , 2027 cڡ * extghwidth ) 2029 i( _ag = ACEF ) ; 2031 i( _mage de arent_mstorage; 2033 cڡ  fe = dagh . `fe (); 2037 cڡ  mynk = 1; 2039 BBox `db ( `crn ( mged_bbox , fe )); 2041 db . `growbydim ( extghwidth ); 2043 cڡ Cods ` ( db . `low ()); 2044 cڡ Cods `cu ( db . `u ()); 2045 cڡ Cods ` ( db . `size ()); 2047  imes2 = 0; 2048  i =0; i< mynk ; i++) { 2049 imes2 = 2* i ; 2051 i( bndryags [ imes2 ] = ACEF ) { 2052 i( extghwidth [ imes2 ] < _d [itimes2]) 2053 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 2056 i( bndryags [ imes2 +1] = ACEF ) { 2057 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 2058 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 2062 _mage = w `GridDa (1)< Ty >( db , nems ); 2064 #ifde DEBUG_PRINT_GDB 2065 comm_rvi :: `log (<< "gdbSUpPtMa" << "[" << gfid << "] " 2066 << _mage -> `bbox () << " " 2067 << _mage -> `exs () << " " 2068 << dl ). `ush (); 2070 } } 2072 gme < ass gTy > 2073  GridDaBlock (1)< gTy >:: $gdbRPtMa () 2075 i( _ag = ACEF ) ; 2076 i( _mage de arent_mstorage; 2077 } } 2104 gme < ass gTy > 2105  GridDaBlock (1)< gTy >:: gdbWrePtGh (cڡ  oc , 2106 cڡ  m , 2107 cڡ  idt , 2108 cڡ  mgl , 2109 GridDaBuck < Ty >& gdb , 2110 cڡ  ) 2112 i( g_ag = ACEF )  0; 2113 #ifde DEBUG_PRINT 2114 as (( m ! ACEA && itm >0 && nems >= itm) || 2115 ( m = ACEA )); 2116 as ( idt = ACE_PtMa && mgl = ACENu ); 2119 cڡ  gmidt = 2120 ( idt = ACE_PtMa ? ACE_Ma : ACE_Shadow ; 2122 cڡ  gme = comm_rvi :: oc_me (); 2123 cڡ  gbadex = oc * maxdex ; 2125 cڡ  gnms = ( m = ACEA ? nems : 1; 2127 #ifde DEBUG_PRINT_GDB_COMM 2128 gcomm_rvi :: log (<< "gdbWrePtGh:" << "[P:" << oc << "]" 2129 << "[Me:" << me << "]" 2130 << "[NI:" << nms << "]" << "[I:" << m << "]" 2131 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2132 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2133 << dl ). ush (); 2136 GDB_Iai * ggdbi = 0; 2137  gt = 0; 2138 i( ggdb_g_wre_fo ) { 2139  gidx = ; 2140  gi ; 2141  gi = 0; i < gmaxdex ; i++) { 2142 i( ggdbi = gdb_g_wre_fo [ badex + i ]) { 2144 #ifde DEBUG_PRINT_GDB_COMM 2145 comm_rvi :: log (<< "WrgPtGh[" << idx << "]" 2146 << "{ " << * gdbi << " }" << dl ). ush (); 2149 BBox gbb = gdbi -> mbbox ; 2150 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2151 i , m , me , idt , idx ); 2153 ( gridda ( midt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2155 gt ++; gidx ++; 2159  gt ; 2162 gme < ass gTy > 2163  GridDaBlock (1)< gTy >:: gdbWrePtS (cڡ  oc , 2164 cڡ  m , 2165 cڡ  idt , 2166 cڡ  mgl , 2167 GridDaBuck < Ty >& gdb , 2168 cڡ  ) 2170 i( g_ag = ACEF )  0; 2171 #ifde DEBUG_PRINT 2172 as (( m ! ACEA && itm >0 && nems >= itm) || 2173 ( m = ACEA )); 2174 as ( idt = ACE_Ma && mgl = ACENu ); 2177 cڡ  gpidt = 2178 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 2180 cڡ  gme = comm_rvi :: oc_me (); 2181 cڡ  gbadex = oc * maxdex ; 2183 cڡ  gnms = ( m = ACEA ? nems : 1; 2185 #ifde DEBUG_PRINT_GDB_COMM 2186 gcomm_rvi :: log (<< "gdbWrePtS:" << "[P:" << oc << "]" 2187 << "[Me:" << me << "]" 2188 << "[NI:" << nms << "]" << "[I:" << m << "]" 2189 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2190 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2191 << dl ). ush (); 2194 GDB_Iai * ggdbi = 0; 2195  gt = 0; 2196 i( ggdb_t_wre_fo ) { 2197  gidx = ; 2198  gi ; 2199  gi = 0; i < gmaxdex ; i++) { 2200 i( ggdbi = gdb_t_wre_fo [ badex + i ]) { 2202 #ifde DEBUG_PRINT_GDB_COMM 2203 comm_rvi :: log (<< "WrgPtS[" << idx << "]" 2204 << "{ " << * gdbi << " }" << dl ). ush (); 2207 BBox gbb = gdbi -> mbbox ; 2208 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2209 i , m , me , idt , idx ); 2211 ( da ( pidt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2213 gt ++; gidx ++; 2217  gt ; 2228 gme < ass gTy > 2229  GridDaBlock (1)< gTy >:: $gdbSUpFluxIaiInfo (cڡ  ign , 2230 cڡ GhoIai & gi , 2231 cڡ * ޭ , 2232 cڡ BBox & dmged_bbox , 2233 cڡ BBox & dshmged_bbox ) 2235 i( ux_ag = ACEF ) ; 2237 cڡ  mynk = 1 ; 2238 cڡ  mynkx2 = 2* mynk ; 2240 cڡ  um = comm_rvi :: `oc_num (); 2242 cڡ  fe = dagh . `fe (); 2243 cڡ  fev = dagh . `fev (); 2245 cڡ  daghnk = dagh . nk ; 2247 cڡ  fev = dagh . `fev (); 2248 cڡ  ev = dagh . `crv (); 2250 cڡ  ag = ( vnum < fev ? ACETrue : ACEF ; 2251 cڡ  fwag = ( vnum > ev ? ACETrue : ACEF ; 2253 cڡ  vnum = vnum + fev ; 2254 cڡ  fwvnum = vnum - fev ; 2256 cڡ  r_t = um * mynkx2 * maxdex ; 2258 GridBoxLi * ggbl = dagh . `ggbl (); 2260  GridBox * gb = 0; 2261  r = 0; 2263 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 2264 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 2266  f [2*1]; 2267  r =0;< mynk ;++) { 2268 f [2* r ] = 1; fsr[2*r+1] = 1; 2272 i( ag ) { 2273 gdb_ux_ad_fo = w GDB_Iai * [ r_t ]; 2274  r =0;< r_t ;++ gdb_ux_ad_fo [r] = 0; 2276 GridBoxLi cgbl ; 2277 BBox `bbox ( `fe ( dmbbox , fe ,1)); 2278 ggbl -> `r ( bbox , vnum , cgbl , ޭ ,1); 2280 BBox hisbb , hisbbp , hisbbn ; 2281 BBox bbp , bbn ; 2282  dex , dex ; 2283  idx , owr ; 2285  GridBox * gb = 0; 2286  gb = cgbl . `f ();gb;gb=cgbl. `xt ()) { 2287 idx = gb -> `gbIndex (); 2288 owr = gb -> `gbOwr (); 2290 hisbb = `crn ( gb -> `gbBBoxAbs ( vnum , ޭ ), fe ); 2292  r =0;< mynk ;++{ f [2*r] = 1; fsr[2*r+1] = 1;} 2294  r =0;< mynk ;++) { 2295 hisbbn = gi . `Ibbox ( hisbb , r , ACE_Backwd , f ); 2296 hisbbp = gi . `Ibbox ( hisbb , r , ACE_Fwd , f ); 2298 i( ign ! ACE_A ) { 2299 `gdbAlignBBox ( mynk , hisbbn , ign ); 2300 `gdbAlignBBox ( mynk , hisbbp , ign ); 2303 bbn = mged_bbox * hisbbn ; 2304 bbp = mged_bbox * hisbbp ; 2306 i(! bbn . `emy ()) { 2307 dex = ( owr * mynkx2 * maxdex + (( r *2)*maxdex+ idx ; 2308 i(! gdb_ux_ad_fo [ dex ]) 2309 gdb_ux_ad_fo [ dex ] = w GDB_Iai ; 2310 #ifde DEBUG_PRINT 2311 `as ( gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2313 gdb_ux_ad_fo [ dex ]-> mbbox + bbn ; 2314 #ifde DEBUG_PRINT 2315 `as (! gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2318 i(! bbp . `emy ()) { 2319 dex = ( owr * mynkx2 * maxdex + (( r *2+1)*maxdex+ idx ; 2320 i(! gdb_ux_ad_fo [ dex ]) 2321 gdb_ux_ad_fo [ dex ] = w GDB_Iai ; 2322 #ifde DEBUG_PRINT 2323 `as ( gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2325 gdb_ux_ad_fo [ dex ]-> mbbox + bbp ; 2326 #ifde DEBUG_PRINT 2327 `as (! gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2330 f [2* r ] = 0; fsr[2*r+1] = 0; 2335 i( fwag ) { 2336 gdb_ux_wre_fo = w GDB_Iai * [ r_t ]; 2337  r =0;< r_t ;++ gdb_ux_wre_fo [r] = 0; 2339 GridBoxLi fwcgbl ; 2340 BBox `fwbbox ( `crn ( `grow ( dmbbox ,1), fe )); 2341 ggbl -> `r ( fwbbox , fwvnum , fwcgbl , ޭ ); 2343 BBox hisbb , myfwbbp , myfwbbn ; 2344 BBox fwbbp , fwbbn ; 2345  wpdex , wndex ; 2346  idx , owr ; 2348 BBox `fmbbox ( `crn ( mged_bbox , fe )); 2350  GridBox * gb = 0; 2351  gb = fwcgbl . `f ();gb;gb=fwcgbl. `xt ()) { 2352 idx = gb -> `gbIndex (); 2353 owr = gb -> `gbOwr (); 2355 hisbb = gb -> `gbBBoxAbs ( fwvnum , ޭ ); 2356 i( ign ! ACE_A `gdbAlignBBox ( mynk , hisbb ,lign); 2358  r =0;< mynk ;++{ f [2*r] = 1; fsr[2*r+1] = 1;} 2360  r =0;< mynk ;++) { 2362 myfwbbn = gi . `Ibbox ( fmbbox , r , ACE_Backwd , f ); 2363 myfwbbp = gi . `Ibbox ( fmbbox , r , ACE_Fwd , f ); 2365 fwbbn = myfwbbn * hisbb ; 2366 fwbbp = myfwbbp * hisbb ; 2368 i(! fwbbn . `emy ()) { 2369 wndex = ( owr * mynkx2 * maxdex + (( r *2)*maxdex+ idx ; 2370 i(! gdb_ux_wre_fo [ wndex ]) 2371 gdb_ux_wre_fo [ wndex ] = w GDB_Iai ; 2372 #ifde DEBUG_PRINT 2373 `as ( gdb_ux_wre_fo [ wndex ]-> mbbox . `emy ()); 2375 gdb_ux_wre_fo [ wndex ]-> mbbox + fwbbn ; 2376 #ifde DEBUG_PRINT 2377 `as (! gdb_ux_wre_fo [ wndex ]-> mbbox . `emy ()); 2380 i(! fwbbp . `emy ()) { 2381 wpdex = ( owr * mynkx2 * maxdex + (( r *2+1)*maxdex+ idx ; 2382 i(! gdb_ux_wre_fo [ wpdex ]) 2383 gdb_ux_wre_fo [ wpdex ] = w GDB_Iai ; 2384 #ifde DEBUG_PRINT 2385 `as ( gdb_ux_wre_fo [ wpdex ]-> mbbox . `emy ()); 2387 gdb_ux_wre_fo [ wpdex ]-> mbbox + fwbbp ; 2388 #ifde DEBUG_PRINT 2389 `as (! gdb_ux_wre_fo [ wpdex ]-> mbbox . `emy ()); 2392 f [2* r ] = 0; fsr[2*r+1] = 0; 2396 } } 2398 gme < ass gTy > 2399  GridDaBlock (1)< gTy >:: gdbSUpFluxIaiInfo ( 2400 cڡ GridDaBlock (1)< Ty >* gdbtm ) 2403 i( ux_ag = ACEF ) ; 2405 cڡ  gmynk = 1 ; 2406 cڡ  gum = comm_rvi :: oc_num (); 2407 cڡ  gr_t = um * (2* mynk * maxdex ; 2409 gGDB_Iai **& gmw = gdb_ux_wre_fo ; 2410 gGDB_Iai **& gmr = gdb_ux_ad_fo ; 2412 GDB_Iai ** ghw = gdbtm -> gdb_ux_wre_fo ; 2413 GDB_Iai ** ghr = gdbtm -> gdb_ux_ad_fo ; 2415 i(! ghw && ! ghr ) ; 2417 i( ghw gmw = w GDB_Iai * [ r_t ]; 2418 i( ghr gmr = w GDB_Iai * [ r_t ]; 2420  gp = 0; 2421  gp = 0; < gr_t ;++) { 2422 i( gmw mw[ p ] = 0; 2423 i( gmr mr[ p ] = 0; 2425 i( ghw && hw[ p ]) { 2426 gmw [ p ] = w GDB_Iai ; 2427 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 2431 i( ghr && hr[ p ]) { 2432 gmr [ p ] = w GDB_Iai ; 2433 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 2439 gme < ass gTy > 2440  GridDaBlock (1)< gTy >:: $gdbRFluxIaiInfo () 2442 i( ux_ag = ACEF ) ; 2444 cڡ  mynk = 1 ; 2446 GDB_Iai **& mw = gdb_ux_wre_fo ; 2447 GDB_Iai **& mr = gdb_ux_ad_fo ; 2449 i(! mw && ! mr ) ; 2451 cڡ  r_t = comm_rvi :: `oc_num (* 2* mynk * maxdex ; 2452  p = 0; 2453  p = 0; < r_t ;++) { 2454 i( mw && mw[ p ]) { 2455 de mw [ p ]; 2456 mw [ p ] = 0; 2458 i( mr && mr[ p ]) { 2459 de mr [ p ]; 2460 mr [ p ] = 0; 2464 i( mw de [] mw; 2465 i( mr de [] mr; 2466 mw = 0; mr = 0; 2467 } } 2477 gme < ass gTy > 2478  GridDaBlock (1)< gTy >:: $gdbSUpFluxMa (cڡ GhoIai & gi ) 2480 i( ux_ag = ACEF ) ; 2482 cڡ  mynk = 1; 2483 cڡ  fe = dagh . `fe (); 2485 cڡ BBox `fmbbox ( `crn ( mged_bbox , fe )); 2487  r = 0; 2489  f [2*1]; 2490  r =0;< mynk ;++) { 2491 f [2* r ] = 1; fsr[2*r+1] = 1; 2492 i( ux_mage [2* r ] de flux_mstorage[2*r]; 2493 i( ux_mage [2* r +1] de flux_mstorage[2*r+1]; 2496 BBox fbb ; 2497  r =0;< mynk ;++) { 2498 fbb = gi . `Ibbox ( fmbbox , r , ACE_Backwd , f ); 2499 ux_mage [2* r ] = w `GridDa (1)< Ty >( fbb , nems ); 2501 fbb = gi . `Ibbox ( fmbbox , r , ACE_Fwd , f ); 2502 ux_mage [2* r +1] = w `GridDa (1)< Ty >( fbb , nems ); 2504 f [2* r ] = 0; fsr[2*r+1] = 0; 2506 #ifde DEBUG_PRINT_GDB 2507 comm_rvi :: `log () << "gdbSetUpFluxMain" 2508 << "[" << gfid << "] " 2509 << "[" << 2* r << "] " 2510 << ux_mage [2* r ]-> `bbox () << " " 2511 << ux_mage [2* r ]-> `exs () << " " 2512 << fmbbox << " " 2513 << dl ). `ush (); 2514 comm_rvi :: `log () << "gdbSetUpFluxMain" 2515 << "[" << gfid << "] " 2516 << "[" << 2* r +1 << "] " 2517 << ux_mage [2* r +1]-> `bbox () << " " 2518 << ux_mage [2* r +1]-> `exs () << " " 2519 << fmbbox << " " 2520 << dl ). `ush (); 2523 } } 2525 gme < ass gTy > 2526  GridDaBlock (1)< gTy >:: gdbSUpFluxMa (cڡ GridDaBlock(1)< Ty >* gdbtm ) 2528 i( ux_ag = ACEF ) ; 2530 cڡ  gmynk = 1; 2531  gr = 0; 2533  gr =0;< gmynk ;++) { 2535 i( gux_mage [2* r ] de flux_mstorage[2*r]; 2536 i( gux_mage [2* r +1] de flux_mstorage[2*r+1]; 2538 i( ggdbtm -> gux_mage [2* r ]) 2539 gux_mage [2* r ] = w GridDa (1)< Ty >( gdbtm -> ux_mage [2*r]-> bbox (), 2540 ggdbtm -> gux_mage [2* r ]-> nems ()); 2541 i( ggdbtm -> gux_mage [2* r +1]) 2542 gux_mage [2* r +1] = w GridDa (1)< Ty >( gdbtm -> ux_mage [2*r+1]-> bbox (), 2543 ggdbtm -> gux_mage [2* r +1]-> nems ()); 2545 #ifde DEBUG_PRINT_GDB 2546 gcomm_rvi :: log () << "gdbSetUpFluxMain" 2547 << "[" << gfid << "] " 2548 << "[" << 2* r << "] " 2549 << ux_mage [2* r ]-> bbox () << " " 2550 << ux_mage [2* r ]-> exs () << " " 2551 << dl ). ush (); 2552 gcomm_rvi :: log () << "gdbSetUpFluxMain" 2553 << "[" << gfid << "] " 2554 << "[" << 2* r +1 << "] " 2555 << ux_mage [2* r +1]-> bbox () << " " 2556 << ux_mage [2* r +1]-> exs () << " " 2557 << dl ). ush (); 2562 gme < ass gTy > 2563  GridDaBlock (1)< gTy >:: $gdbRFluxMa () 2565 i( ux_ag = ACEF ) ; 2567 cڡ  mynk = 1; 2568  r = 0; 2570  r =0;< mynk ;++) { 2571 i( ux_mage [2* r ] de flux_mstorage[2*r]; 2572 i( ux_mage [2* r +1] de flux_mstorage[2*r+1]; 2574 } } 2585 gme < ass gTy > 2586  GridDaBlock (1)< gTy >:: gdbWreFluxes (cڡ  oc , 2587 cڡ  m , 2588 cڡ  idt , 2589 cڡ  mgl , 2590 GridDaBuck < Ty >& gdb , 2591 cڡ  ) 2593 i( gux_ag = ACEF )  0; 2594 #ifde DEBUG_PRINT 2595 as (( m ! ACEA && itm >0 && nems >= itm) || 2596 ( m = ACEA )); 2597 as ( idt = ACE_FluxMa && mgl = ACENu ); 2600 cڡ  gme = comm_rvi :: oc_me (); 2601 cڡ  gbadex = oc * maxdex *(2*1); 2602 cڡ  gmynk = 1; 2603 cڡ  gnms = ( m = ACEA ? nems : 1; 2605 #ifde DEBUG_PRINT_GDB_COMM 2606 gcomm_rvi :: log (<< "gdbWreFluxes:" << "[P:" << oc << "]" 2607 << "[Me:" << me << "]" 2608 << "[NI:" << nms << "]" << "[I:" << m << "]" 2609 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2610 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2611 << dl ). ush (); 2614 GDB_Iai * ggdbi = 0; 2615  gt = 0; 2616 i( ggdb_ux_wre_fo ) { 2617  gidx = ; 2618  gr , gm , gi ; 2619  gr = 0; < gmynk ;++) { 2620  gm = 0; m < gmaxdex ; m++) { 2621 gi = (2* r )* maxdex + m ; 2622 i( ggdbi = gdb_ux_wre_fo [ badex + i ]) { 2624 #ifde DEBUG_PRINT_GDB_COMM 2625 comm_rvi :: log (<< "WrgFlux[" << idx << "]" 2626 << "{ " << * gdbi << " }" << dl ). ush (); 2629 BBox gbb = gdbi -> mbbox ; 2630 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2631 i , m , me , idt , idx ); 2633 ( uxda ( idt -(2* r ), mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2635 gt ++; gidx ++; 2638 gi = (2* r +1)* maxdex + m ; 2639 i( ggdbi = gdb_ux_wre_fo [ badex + i ]) { 2641 #ifde DEBUG_PRINT_GDB_COMM 2642 comm_rvi :: log (<< "WrgFlux[" << idx << "]" 2643 << "{ " << * gdbi << " }" << dl ). ush (); 2646 BBox gbb = gdbi -> mbbox ; 2647 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2648 i , m , me , idt , idx ); 2650 ( uxda ( idt -(2* r +1), mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2652 gt ++; gidx ++; 2657  gt ; 2663 gme < ass gTy > 2664 goam & gݔ << (oam& gos , cڡ GridDaBlock (1)< gTy >& ggdb ) 2666 i(& ggdb =( GridDaBlock (1)< Ty > * NULL  os ; 2668 cڡ  gmynk = 1; 2670 gos << "GridDataBlock(1): "; 2671 gos << "[GFid:" << ggdb . ggfid << "]" ; 2672 gos << "[Time:" << ggdb . gtimum << "]"; 2673 gos << "[Lev:" << ggdb . gvnum << "]"; 2674 gos << "[MyIndex:" << ggdb . gmydex << "]"; 2675 gos << "[NIms:" << ggdb . gnems << "]"; 2676 gos << gdl ; 2677 gos << "[Ma:" << ggdb . gmged_bbox << "]"; 2678 gos << "[Shadow:" << ggdb . gshmged_bbox << "]"; 2679 gos << gdl ; 2681 gos << "[Boundary Flags: "; 2682  gb ; 2683  gb = 0 ; b < gmynk ; b++) 2684 gos << ggdb . gbndryags [2* b ] << " " 2685 << ggdb . gbndryags [2* b +1] << " "; 2686 gos << "]" << gdl ; 2688 gos << "[HybridBoundary Flags: "; 2689  gb = 0 ; b < gmynk ; b++) 2690 gos << ggdb . ghybridbndryags [ b ] << " "; 2691 gos << "]" << gdl ; 2693 gos << "[Ghost Prolong Flags: "; 2694  gb = 0 ; b < gmynk ; b++) 2695 gos << ggdb . ggho_g_ag [2* b ] << " " 2696 << ggdb . ggho_g_ag [2* b +1] << " "; 2697 gos << "]" << gdl ; 2699 gos << "[Gho Prg Iais:" << gdl ; 2700  gb = 0 ; b < gmynk ; b++) { 2701 i( ggdb . ggho_g_ag [2* b ] = ACETrue ) 2702 os << " [" << 2* b << ":" << gdb . gho_g_fo [2*b] << "]" 2703 << dl ; 2704 i( ggdb . ggho_g_ag [2* b +1] = ACETrue ) 2705 os << " [" << 2* b +1 << ":" << gdb . gho_g_fo [2*b+1] << "]" 2706 << dl ; 2708 gos << "]" << gdl ; 2710 gos << "Ma Stage:" << gdl ; 2711 gos << " " << ggdb . gmage ; 2713 i( ggdb . gshag = ACETrue ) { 2714 os << "Shadow Stage:" << dl ; 2715 gos << " " << * ggdb . gshage ; 2717 cڡ  g = comm_rvi :: oc_num (); 2718  gr_t = ACEMaxAxis * ACEMaxDs * gdb . maxdex ; 2720 i( ggdb . ggdb_wre_fo ) { 2721 gos << "WrIais: " << gdl ; 2722  gn =0;< g ;++) { 2723 i( ggdb . ggdb_wre_fo [ n ]) 2724  gi =0;i< gr_t ;i++) 2725 i( ggdb . ggdb_wre_fo [ n ][ i ]) 2726 gos << " gdb_wre_fo[" << gn << "][" 2727 << gi << "," 2728 << gi % ggdb . gmaxdex << "," 2729 << gi / ggdb . gmaxdex << "]" 2730 << * ggdb . ggdb_wre_fo [ n ][ i ] 2731 << gdl ; 2734 i( ggdb . ggdb_ad_fo ) { 2735 gos << "Rd Iais: " << gdl ; 2736  gn =0;< g ;++) { 2737 i( ggdb . ggdb_ad_fo [ n ]) 2738  gi =0;i< gr_t ;i++) 2739 i( ggdb . ggdb_ad_fo [ n ][ i ]) 2740 gos << " gdb_ad_fo[" << gn << "][" 2741 << gi << "," 2742 << gi % ggdb . gmaxdex << "," 2743 << gi / ggdb . gmaxdex << "]" 2744 << * ggdb . ggdb_ad_fo [ n ][ i ] 2745 << gdl ; 2749 i( ggdb . g_ag = ACETrue ) { 2750 os << "Parent Storage: " 2751 << gdb . _mage -> bbox () << " " 2752 << gdb . _mage -> exs () << " " 2753 << dl ; 2755 gr_t = * gdb . maxdex ; 2757 i( ggdb . ggdb_g_ad_fo ) { 2758 gos << "PGh Rd Iais: " << gdl ; 2759  gi =0;i< gr_t ;i++) 2760 i( ggdb . ggdb_g_ad_fo [ i ]) 2761 gos << " gdb_gparent_read_info[" 2762 << gi / ggdb . gmaxdex << "][" 2763 << gi % ggdb . gmaxdex << "] " 2764 << * ggdb . ggdb_g_ad_fo [ i ] 2765 << gdl ; 2767 i( ggdb . ggdb_g_wre_fo ) { 2768 gos << "PGh WrIais: " << gdl ; 2769  gi =0;i< gr_t ;i++) 2770 i( ggdb . ggdb_g_wre_fo [ i ]) 2771 gos << " gdb_gparent_write_info[" 2772 << gi / ggdb . gmaxdex << "][" 2773 << gi % ggdb . gmaxdex << "] " 2774 << * ggdb . ggdb_g_wre_fo [ i ] 2775 << gdl ; 2777 i( ggdb . ggdb_t_ad_fo ) { 2778 gos << "PS Rd Iais: " << gdl ; 2779  gi =0;i< gr_t ;i++) 2780 i( ggdb . ggdb_t_ad_fo [ i ]) 2781 gos << " gdb_sparent_read_info[" 2782 << gi / ggdb . gmaxdex << "][" 2783 << gi % ggdb . gmaxdex << "] " 2784 << * ggdb . ggdb_t_ad_fo [ i ] 2785 << gdl ; 2787 i( ggdb . ggdb_t_wre_fo ) { 2788 gos << "PS WrIais: " << gdl ; 2789  gi =0;i< gr_t ;i++) 2790 i( ggdb . ggdb_t_wre_fo [ i ]) 2791 gos << " gdb_sparent_write_info[" 2792 << gi / ggdb . gmaxdex << "][" 2793 << gi % ggdb . gmaxdex << "] " 2794 << * ggdb . ggdb_t_wre_fo [ i ] 2795 << gdl ; 2799 i( ggdb . gux_ag = ACETrue ) { 2800 os << "Flux Stage: " << dl ; 2801  gb =0;b< gmynk ;b++) { 2802 gos << "\t[" << 2* gb << "] " 2803 << ggdb . gux_mage [2* b ]-> bbox () << " " 2804 << ggdb . gux_mage [2* b ]-> exs () << " " 2805 << gdl 2806 << "\t[" << 2* gb +1 << "] " 2807 << ggdb . gux_mage [2* b +1]-> bbox () << " " 2808 << ggdb . gux_mage [2* b +1]-> exs () << " " 2809 << gdl ; 2811 gr_t = * mynk * 2 * gdb . maxdex ; 2813 i( ggdb . ggdb_ux_ad_fo ) { 2814 gos << "Flux Rd Iais: " << gdl ; 2815  gi =0;i< gr_t ;i++) 2816 i( ggdb . ggdb_ux_ad_fo [ i ]) 2817 gos << " gdb_ux_ad_fo[" << gi << "][" 2818 << gi /( ggdb . maxdex * gmynk *2) << "][" 2819 << ( gi %( ggdb . maxdex * gmynk *2))%(myrank) << "][" 2820 << ( gi %( ggdb . maxdex * gmynk *2))/(2*myrank) << "] " 2821 << * ggdb . ggdb_ux_ad_fo [ i ] 2822 << gdl ; 2824 i( ggdb . ggdb_ux_wre_fo ) { 2825 gos << "Flux WrIais: " << gdl ; 2826  gi =0;i< gr_t ;i++) 2827 i( ggdb . ggdb_ux_wre_fo [ i ]) 2828 gos << " gdb_ux_wre_fo[" << gi << "][" 2829 << gi /( ggdb . maxdex * gmynk *2) << "][" 2830 << ( gi %( ggdb . maxdex * gmynk *2))%(myrank) << "][" 2831 << ( gi %( ggdb . maxdex * gmynk *2))/(2*myrank) << "] " 2832 << * ggdb . ggdb_ux_wre_fo [ i ] 2833 << gdl ; 2836  gos ; 2839 gme < ass gTy > 2840 goam & gݔ <<(oam& gos , cڡ GridDaBlockStage (1)< gTy >& ggdbs ) 2842 i(& ggdbs =( GridDaBlockStage (1)< Ty > * NULL  os ; 2844 cڡ  gmynk = 1; 2846 gos << "GDBStorage: "; 2847 gos << ggdbs . gbbox << gdbs. gibbox ; 2848 gos << "[ "; 2849  gb = 0 ; b < gmynk ; b++) { 2850 i(! ggdbs . gbndrybbox [2* b ]. emy () gos << gdbs.bndrybbox[2*b]; 2851 i(! ggdbs . gbndrybbox [2* b +1]. emy () gos << gdbs.bndrybbox[2*b+1]; 2853 gos << " ]" << gdl ; 2854  gos ; 2860 gme < ass gTy > 2861 gofam & gݔ << (ofam& gofs , cڡ GridDaBlock (1)< gTy >& ggdb ) 2863 i(& ggdb =( GridDaBlock (1)< Ty > * NULL  ofs ; 2865 cڡ  gmynk = 1; 2867 gofs . wre ((*)& gdb . timum ,()); 2868 gofs . wre ((*)& gdb . vnum ,()); 2869 gofs . wre ((*)& gdb . shag ,()); 2870 gofs . wre ((*)& gdb . nems ,()); 2872 gofs . wre ((*)& gdb . _ag ,()); 2873 gofs . wre ((*)& gdb . ux_ag ,()); 2875 gofs << ggdb . gridda ( ACE_Ma , ACENu ); 2876 i( ggdb . gshag = ACETrue ) 2877 ofs << gdb . gridda ( ACE_Shadow , ACENu ); 2879 i( ggdb . g_ag = ACETrue ) { 2880 ofs << gdb . da ( ACE_Ma , ACENu ); 2885 i( ggdb . gux_ag = ACETrue ) { 2886  r =0; gr < gmynk ;++) { 2887 gofs << ggdb . uxda ( ACE_FluxMa -(2* r ), ACENu ); 2891 gofs << ggdb . uxda ( ACE_FluxMa -(2* r +1), ACENu ); 2897  gofs ; 2900 gme < ass gTy > 2901 gifam & gݔ >> (ifam& gifs , GridDaBlock (1)< gTy >& ggdb ) 2903 i(& ggdb =( GridDaBlock (1)< Ty > * NULL  ifs ; 2905 cڡ  gmynk = 1; 2907  gtmimum , gtmevnum , gtmpshag , gtmems ; 2908  gtmag , gtmpfag ; 2910 gifs . ad ((*)& tmimum ,()); 2911 gifs . ad ((*)& tmevnum ,()); 2912 gifs . ad ((*)& tmpshag ,()); 2913 gifs . ad ((*)& tmems ,()); 2915 gifs . ad ((*)& tmag ,()); 2916 gifs . ad ((*)& tmpfag ,()); 2918 #ifde DEBUG_PRINT 2919 as ( tmimum = gdb . timum && 2920 tmevnum = gdb . vnum && 2921 tmems = gdb . nems ); 2923 gifs >> ggdb . gridda ( ACE_Ma , ACENu ); 2924 i( ggdb . gshag = ACETrue && tmpshag == ACETrue) 2925 ifs >> gdb . gridda ( ACE_Shadow , ACENu ); 2927 i( ggdb . g_ag = ACETrue && tmag == ACETrue) { 2928 ifs >> gdb . da ( ACE_Ma , ACENu ); 2933 i( ggdb . gux_ag = ACETrue && tmpfag == ACETrue) { 2934  r =0; gr < gmynk ;++) { 2935 gifs >> ggdb . uxda ( ACE_FluxMa -(2* r ), ACENu ); 2939 gifs >> ggdb . uxda ( ACE_FluxMa -(2* r +1), ACENu ); 2945  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlock1.h 1 #ide _uded_GridDaBlock1_h 2  #_uded_GridDaBlock1_h ) 16  ~"GridDaBlockComm.h " 18  ~"GridDa1.h " 19  ~"GDBStage1.h " 21 #ide GridDaBlock 22  #GridDaBlock ( dim `me2 ( GridDaBlock ,dim) ) 25 gme < ass gTy > cs GridFuni (1); 27 #i defed ( __GNUG__ || defed( __GNUC__ ) 28 gme < ass gTy > cs GridDaBlock (1); 30 gme < ass gTy > 31 goam & gݔ <<(oam&, cڡ GridDaBlock (1)< gTy >&); 32 gme < ass gTy > 33 gofam & gݔ <<(ofam&, cڡ GridDaBlock (1)< gTy >&); 34 gme < ass gTy > 35 gifam & gݔ >>(ifam&, GridDaBlock (1)< gTy >&); 38 gme < ass gTy > 39 ass GridDaBlock (1) 41 #i defed ( __GNUG__ || defed( __GNUC__ ) 42 nd goam & gݔ << <>(oam&, cڡ GridDaBlock (1)< gTy >&); 43 nd gofam & gݔ << <>(ofam&, cڡ GridDaBlock (1)< gTy >&); 44 nd gifam & gݔ >> <>(ifam&, GridDaBlock (1)< gTy >&); 46 nd goam & gݔ << (oam&, cڡ GridDaBlock (1)< gTy >&); 47 nd gofam & gݔ << (ofam&, cڡ GridDaBlock (1)< gTy >&); 48 nd gifam & gݔ >> (ifam&, GridDaBlock (1)< gTy >&); 51 nd ass GridFuni (1)< gTy >; 53 cڡ  ggfid ; 58  gowr ; 59  gtimum ; 60  gvnum ; 61  gmydex ; 62  g_d [2*1]; 68  guag ; 69  gnks [1]; 70  gnems ; 71 BBox gmged_bbox ; 72 BBox gshmged_bbox ; 74  gbndryags [2*1]; 75  ghybridbndryags [1]; 81 GridDaBlockStage (1)< gTy > gmage ; 87  gshag ; 88 GridDaBlockStage (1)< gTy >* gshage ; 94  gmgag ; 95  gmglfe ; 96  gmglcr ; 97  gmgvs ; 98 GridDaBlockStage (1)< gTy >** gmgage ; 104  gshmgag ; 105  gshmglfe ; 106  gshmglcr ; 107  gshmgvs ; 108 GridDaBlockStage (1)< gTy >** gshmgage ; 114  gcomm_ag ; 115  ggho_g_ag [2*1]; 116  gmaxdex ; 117 GDB_Iai ggho_g_fo [2*1]; 118 GDB_Iai *** ggdb_wre_fo ; 119 GDB_Iai *** ggdb_ad_fo ; 120 GridTabGhoRcv * ggdb_da_rcv ; 126  g_ag ; 127 GridDa (1)< gTy >* g_mage ; 129 GDB_Iai ** ggdb_g_wre_fo ; 130 GDB_Iai ** ggdb_g_ad_fo ; 131 GDB_Iai ** ggdb_t_wre_fo ; 132 GDB_Iai ** ggdb_t_ad_fo ; 138  gux_ag ; 139 GridDa (1)< gTy >* gux_mage [2*1]; 141 GDB_Iai ** ggdb_ux_wre_fo ; 142 GDB_Iai ** ggdb_ux_ad_fo ; 148 gGridTab & ggb ; 154 gGridHrchy & gdagh ; 157 give : 161 GridDaBlock (1)(cڡ GridDaBlock(1)< Ty >& h ); 162 GridDaBlock (1)< gTy > cڡ& gݔ =(cڡ GridDaBlock(1)< Ty >& h ); 164 give : 168 GridDaBlock (1)(cڡ  gf , 169 gGridHrchy & ggh , 170 gGridTab & ggt , 171 cڡ gGhoIai & ggi , 172 cڡ  gmidx , 173 cڡ gGridBox & ggb , 174 cڡ  gnm , 175 cڡ  gtime , 176 cڡ  gv , 177 cڡ * gbwidth , 178 cڡ * gextghwidth , 179 cڡ * gޭ , 180 cڡ * g , 181 cڡ  gign , 182 cڡ  gmdex , 183 cڡ  gcag , 184 cڡ  gsag , 185 cڡ  gpag , 186 cڡ  gfag , 187 cڡ GridDaBlock (1)< gTy >* ggdbtm , 188 GridDaBlock (1)< gTy >* ggdbeu =0); 193 ~ GridDaBlock (1)(); 203  gdbSUpBoundyFgs ( GridBoxLi & gbl , 204 cڡ GhoIai & gi , 205 cڡ * ޭ , 206 cڡ * d ); 208  gdbSUpGhoIaiInfo ( GridBoxLi & mcgbl , 209 GridBoxLi & scgbl , 210 cڡ  ign , 211 cڡ GhoIai & gi , 212 cڡ * ޭ , 213 cڡ BBox & dagh_mged_bbox , 214 cڡ BBox & dagh_shmged_bbox , 215 cڡ * dagh_d ); 217  gdbSUpGhoIaiInfo ( 218 cڡ GridDaBlock (1)< Ty >* gdbtm ); 220  gdbRGhoIaiInfo (); 222  gdbAddGhoIaiInfo (cڡ  axis , cڡ  d , 223 cڡ BBox & rb , cڡ BBox& wb , 224 cڡ BBox & hisbb , 225 cڡ  owr , cڡ  idx ); 226  gdbAddShadowGhoIaiInfo (cڡ  axis , cڡ  d , 227 cڡ BBox & b , cڡ BBox& swb , 228 cڡ BBox & shisbb , 229 cڡ  owr , cڡ  idx ); 234  gdbSUpMa (cڡ * ޭ , 235 cڡ * bwidth , cڡ * extghwidth , 236 GridDaBlock (1)< Ty >* gdbeu =0); 241  gdbSUpShadow (cڡ * ޭ , 242 cڡ * bwidth , cڡ * extghwidth , 243 GridDaBlock (1)< Ty >* gdbeu =0); 244  gdbRShadow (); 249  gdbSUpPtMa (cڡ * ޭ , 250 cڡ * extghwidth ); 251  gdbRPtMa (); 255 le  gdbSUpPtIaiInfo (cڡ  ign , 256 cڡ * ޭ , 257 cڡ BBox & dagh_mged_bbox , 258 cڡ BBox & dagh_shmged_bbox , 259 cڡ * dagh_d ) 261 gdbSUpPtGIaiInfo ( ign , 262 ޭ , 263 dagh_mged_bbox , 264 dagh_shmged_bbox , 265 dagh_d ); 266 gdbSUpPtSIaiInfo ( ign , 267 ޭ , 268 dagh_mged_bbox , 269 dagh_shmged_bbox , 270 dagh_d ); 272 le  gdbSUpPtIaiInfo (cڡ GridDaBlock (1)< Ty >* gdbtm ) 274 gdbSUpPtGIaiInfo ( gdbtm ); 275 gdbSUpPtSIaiInfo ( gdbtm ); 279  gdbSUpPtGIaiInfo (cڡ  ign , 280 cڡ * ޭ , 281 cڡ BBox & dagh_mged_bbox , 282 cڡ BBox & dagh_shmged_bbox , 283 cڡ * dagh_d ); 284  gdbSUpPtGIaiInfo (cڡ GridDaBlock (1)< Ty >* gdbtm ); 287  gdbSUpPtSIaiInfo (cڡ  ign , 288 cڡ * ޭ , 289 cڡ BBox & dagh_mged_bbox , 290 cڡ BBox & dagh_shmged_bbox , 291 cڡ * dagh_d ); 292  gdbSUpPtSIaiInfo (cڡ GridDaBlock (1)< Ty >* gdbtm ); 294  gdbRPtIaiInfo (); 298  gdbSUpFluxMa (cڡ GhoIai & gi ); 299  gdbSUpFluxMa (cڡ GridDaBlock (1)< Ty >* gdbtm ); 300  gdbRFluxMa (); 304  gdbSUpFluxIaiInfo (cڡ  ign , 305 cڡ GhoIai & gi , 306 cڡ * ޭ , 307 cڡ BBox & dmged_bbox , 308 cڡ BBox & dshmged_bbox ); 309  gdbSUpFluxIaiInfo (cڡ GridDaBlock (1)< Ty >* gdbtm ); 310  gdbRFluxIaiInfo (); 314  gdbSUpMuiGrid (cڡ  lc , cڡ  lf , 315 cڡ * ޭ , 316 cڡ * bwidth , cڡ * extghwidth ); 317  gdbSUpMuiGrid (cڡ  axis , 318 cڡ  lc , cڡ  lf , 319 cڡ * ޭ , 320 cڡ * bwidth , cڡ * extghwidth ); 321  gdbRMuiGrid (); 326  gdbSUpShadowMuiGrid (cڡ  lc , cڡ  lf , 327 cڡ * ޭ , 328 cڡ * bwidth , cڡ * extghwidth ); 329  gdbSUpShadowMuiGrid (cڡ  axis , 330 cڡ  lc , cڡ  lf , 331 cڡ * ޭ , 332 cڡ * bwidth , cڡ * extghwidth ); 333  gdbRShadowMuiGrid (); 338 gpublic : 339 le  dexme (cڡ  i ) const 340 { ( mydex = i ); } 342 le  has_ud () const 343 {  ( guag = ACETrue ); } 345 le  has_ighb (cڡ  d ) const 346 {  ( gbndryags [ d ] = ACEF ); } 348 le  has_boundy (cڡ  d ) const 349 {  ( gbndryags [ d ] ! ACEF ); } 351 le  has_adtiveboundy (cڡ  d ) const 352 {  ( gbndryags [ d ] = ACE_AdtiveBoundy ); } 353 le  has_exboundy (cڡ  d ) const 354 {  ( gbndryags [ d ] = ACE_ExBoundy ); } 356 le  g_gho (cڡ  d ) const 357 {  ( ggho_g_ag [ d ] = ACETrue ); } 363 give : 364  gdbWrePtGh (cڡ  oc , 365 cڡ  m , 366 cڡ  idt , 367 cڡ  mgl , 368 GridDaBuck < Ty >& gdb , 369 cڡ  ); 370  gdbWrePtS (cڡ  oc , 371 cڡ  m , 372 cڡ  idt , 373 cڡ  mgl , 374 GridDaBuck < Ty >& gdb , 375 cڡ  ); 377 gpublic : 378 le GDB_Iai ** gdbPtGhRdInfo () 379 { ( ( gdb_g_ad_fo ) ? gdb_gparent_read_info : 0 );} 380 le GDB_Iai ** gdbPtGhWreInfo () 381 { ( ( ggdb_g_wre_fo ) ? gdb_gparent_write_info : 0 );} 383 le GDB_Iai ** gdbPtSRdInfo () 384 { ( ( ggdb_t_ad_fo ) ? gdb_sparent_read_info : 0 );} 385 le GDB_Iai ** gdbPtSWreInfo () 386 { ( ( ggdb_t_wre_fo ) ? gdb_sparent_write_info : 0 );} 392 give : 393  gdbWreFluxes (cڡ  oc , 394 cڡ  m , 395 cڡ  idt , 396 cڡ  mgl , 397 GridDaBuck < Ty >& gdb , 398 cڡ  ); 400 gpublic : 401 le GDB_Iai ** gdbFluxRdInfo () 402 { ( ( gdb_ux_ad_fo ) ? gdb_flux_read_info : 0 );} 403 le GDB_Iai ** gdbFluxWreInfo () 404 { ( ( ggdb_ux_wre_fo ) ? gdb_flux_write_info : 0 );} 410 give : 411  gdbWreGhos (cڡ  oc , 412 cڡ  m , 413 cڡ  axis , 414 cڡ  d , 415 cڡ  idt , 416 cڡ  mgl , 417 GridDaBuck < Ty >& gdb , 418 cڡ  ); 420 gpublic : 421 le GDB_Iai ** gdbRdInfo (cڡ  oc ) 422 { ( ( gdb_ad_fo [ oc ]) ? gdb_read_info[proc] : 0 );} 423 le GDB_Iai ** gdbWreInfo (cڡ  oc ) 424 { ( ( ggdb_wre_fo [ oc ]) ? gdb_write_info[proc] : 0 );} 430 give : 431  gdbWreDa (cڡ  m , 432 cڡ  idt , 433 cڡ  mgl , 434 GridDaBuck < Ty >& gdb , 435 cڡ  ); 436  gdbWreDa (cڡ  m , 437 cڡ  idt , 438 cڡ  mgl , 439 cڡ BBox & whe , 440 GridDaBuck < Ty >& gdb , 441 cڡ  ); 447 gpublic : 448 cڡ BBox & mgedbox (cڡ  idt = ACE_Ma ) const 450 ( idt == ACE_Ma ? mged_bbox : 451 ( idt == ACE_Shadow ? shmged_bbox : BBox :: _emy_bbox ); 454 cڡ gBBox & boundgbox (cڡ  idt = ACE_Ma , 455 cڡ  mgl = ACENu ) const 457 ( idt == ACE_Ma && ( mgl == ACENu ||mgl== mglfe )? mage . bbox : 458 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu ||mgl== shmglfe )) ? 459 shage -> bbox : 460 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 461 mgage [ mgl - mglcr ]-> bbox : 462 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 463 shmgage [ mgl - shmglcr ]-> bbox : 464 BBox :: _emy_bbox ); 467 cڡ gBBox & ribox (cڡ  idt = ACE_Ma , 468 cڡ  mgl = ACENu ) const 470 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . ibbox : 471 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 472 shage -> ibbox : 473 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 474 mgage [ mgl - mglcr ]-> ibbox : 475 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 476 shmgage [ mgl - shmglcr ]-> ibbox : 477 BBox :: _emy_bbox ); 480 BBox iobox (cڡ  idt = ACE_Ma , 481 cڡ  mgl = ACENu ) const 483 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 484 growubydim ( mage . ibbox , hybridbndryags ) : 485 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 486 growubydim ( shage -> ibbox , hybridbndryags ) : 487 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 488 growubydim ( mgage [ mgl - mglcr ]-> ibbox , hybridbndryags ) : 489 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 490 growubydim ( shmgage [ mgl - shmglcr ]-> ibbox , hybridbndryags ) : 491 BBox :: _emy_bbox ); 494 cڡ gBBox & bndrybox (cڡ  d , 495 cڡ  idt = ACE_Ma , 496 cڡ  mgl = ACENu ) const 498 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 499 mage . bndrybbox [ d ] : 500 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 501 shage -> bndrybbox [ d ] : 502 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 503 mgage [ mgl - mglcr ]-> bndrybbox [ d ] : 504 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 505 shmgage [ mgl - shmglcr ]-> bndrybbox [ d ] : 506 BBox :: _emy_bbox ); 509 cڡ gBBox & ibox (cڡ GDB_Iai & gdbi , 510 cڡ  idt = ACE_Ma , 511 cڡ  mgl = ACENu ) const 513 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? gdbi . mbbox : 514 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 515 gdbi . shbbox : 516 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 517 gdbi . mmgbbox [ mgl - mglcr ] : 518 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 519 gdbi . shmgbbox [ mgl - shmglcr ] : 520 BBox :: _emy_bbox ); 523 cڡ gBBox & g_ghobox (cڡ  d , 524 cڡ  idt = ACE_Ma , 525 cڡ  mgl = ACENu ) const 527 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 528 gho_g_fo [ d ]. mbbox : 529 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 530 gho_g_fo [ d ]. shbbox : 531 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 532 gho_g_fo [ d ]. mmgbbox [ mgl - mglcr ] : 533 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 534 gho_g_fo [ d ]. shmgbbox [ mgl - shmglcr ] : 535 BBox :: _emy_bbox ); 538 cڡ gBBox & box (cڡ  idt , 539 cڡ  mgl = ACENu ) const 541 as ( idt = ACE_PtMa && mgl = ACENu ); 543 ( g_ag = ACETrue && idt == ACE_PtMa ) ? 544 _mage -> bbox () : 547 BBox :: _emy_bbox ); 550 cڡ gBBox & uxbox (cڡ  idt , 551 cڡ  mgl = ACENu ) const 553 as ( mgl = ACENu ); 555 ( gux_ag = ACETrue && idt < ACE_Flux && id> ACE_FluxEnd ) ? 556 ux_mage [ ACE_Flux - idt ]-> bbox () : 557 BBox :: _emy_bbox ); 564 gpublic : 565 GridDa (1)< Ty >& gridda (cڡ  idt = ACE_Ma , 566 cڡ  mgl = ACENu ) 568 i( idt = ACE_PtMa || id= ACE_PtShadow ) 569  ( da ( idt , mgl )); 570 i( gidt < ACE_Flux && idt > ACE_FluxEnd ) 571  ( uxda ( idt , mgl )); 574 ( gidt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . da : 575 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 576 shage -> da : 577 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 578 mgage [ mgl - mglcr ]-> da : 579 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 580 shmgage [ mgl - shmglcr ]-> da : 581 mage . da ); 583 cڡ GridDa (1)< gTy >& gridda (cڡ  idt = ACE_Ma , 584 cڡ  mgl = ACENu ) const 586 i( idt = ACE_PtMa || id= ACE_PtShadow ) 587  ( da ( idt , mgl )); 588 i( gidt < ACE_Flux && idt > ACE_FluxEnd ) 589  ( uxda ( idt , mgl )); 592 ( gidt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . da : 593 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 594 shage -> da : 595 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 596 mgage [ mgl - mglcr ]-> da : 597 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 598 shmgage [ mgl - shmglcr ]-> da : 599 mage . da ); 605 gpublic : 606 GridDa (1)< Ty >& da (cڡ  idt , 607 cڡ  mgl = ACENu ) 609 #ifde DEBUG_PRINT 610 as ( _ag = ACETrue ); 611 as (( idt = ACE_PtMa || id= ACE_Ma ) && 612 mgl = ACENu ); 614  (* g_mage ); 617 cڡ GridDa (1)< gTy >& da (cڡ  idt , 618 cڡ  mgl = ACENu ) const 620 #ifde DEBUG_PRINT 621 as ( _ag = ACETrue ); 622 as (( idt = ACE_PtMa || id= ACE_Ma ) && 623 mgl = ACENu ); 625  (* g_mage ); 631 gpublic : 632 GridDa (1)< Ty >& uxda (cڡ  idt , 633 cڡ  mgl = ACENu ) 635 #ifde DEBUG_PRINT 636 as ( ux_ag = ACETrue && 637 idt < ACE_Flux && id> ACE_FluxEnd 638 && mgl = ACENu ); 640  (* gux_mage [ ACE_Flux - idt ]); 643 cڡ GridDa (1)< gTy >& uxda (cڡ  idt , 644 cڡ  mgl = ACENu ) const 646 #ifde DEBUG_PRINT 647 as ( ux_ag = ACETrue && 648 idt < ACE_Flux && id> ACE_FluxEnd 649 && mgl = ACENu ); 651  (* gux_mage [ ACE_Flux - idt ]); 656 #i defed ( Wt_c_fes ) 657  ~"GridDaBlock1.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlock2.c 1 #ide _uded_GridDaBlock2_c 2  #_uded_GridDaBlock2_c ) 13 gme < ass gTy > 14 GridDaBlock (2)< gTy >::GridDaBlock(2)(cڡ  gf , 15 gGridHrchy & ggh , 16 gGridTab & ggt , 17 cڡ gGhoIai & ggi , 18 cڡ  gmidx , 19 cڡ gGridBox & ggb , 20 cڡ  gnm , 21 cڡ  gtime , 22 cڡ  gv , 23 cڡ * gbwidth , 24 cڡ * gextghwidth , 25 cڡ * gޭ , 26 cڡ * g , 27 cڡ  gign , 28 cڡ  gmdex , 29 cڡ  gcag , 30 cڡ  gsag , 31 cڡ  gpag , 32 cڡ  gfag , 33 cڡ GridDaBlock (2)< gTy >* ggdbtm , 34 GridDaBlock (2)< gTy >* ggdbeu ) 35 : gfid ( gf ), owr ( comm_rvi :: oc_me ()), 36 timum ( time ), vnum ( v ), mydex ( midx ), 37 nems ( nm ), uag ( ACEF ), 38 shag ( ACEF ), shage (0), 39 mgag ( ACENu ), mglfe (0), mglcr (0), mgvs (0), mgage (0), 40 shmgag ( ACENu ), shmglfe (0), shmglcr (0), shmgvs (0), shmgage (0), 41 comm_ag ( cag ), maxdex ( mdex ), 42 gdb_wre_fo (0), gdb_ad_fo (0), gdb_da_rcv (0), 43 _ag ( ACEF ), _mage (0), 44 gdb_g_wre_fo (0), gdb_g_ad_fo (0), 45 gdb_t_wre_fo (0), gdb_t_ad_fo (0), 46 ux_ag ( ACEF ), 47 gdb_ux_wre_fo (0), gdb_ux_ad_fo (0), 48 gb ( gt ), $dagh ( gh ) 50 cڡ  mynk = 2; 51 cڡ  u = ( gdbtm =( `GridDaBlock (2)< Ty >*) 0) ? 52 ACEF : ACETrue ; 54 cڡ  shadow = dagh . `daghshadow (); 55 cڡ  fe = dagh . `fe (); 56 cڡ  daghnk = dagh . nk ; 58 cڡ  fev = dagh . `fev (); 59 cڡ  ev = dagh . `crv (); 61  i ; 62  i = 0 ; i < mynk ; i++ ) { 63 nks [ i ] = i; 65 _d [2* i ] = [2*i]; 66 _d [2* i +1] = [2*i+1]; 68 gho_g_ag [2* i ] = ACEF ; 69 gho_g_ag [2* i +1] = ACEF ; 71 bndryags [2* i ] = ACEF ; 72 bndryags [2* i +1] = ACEF ; 74 hybridbndryags [ i ] = ACEF ; 76 ux_mage [2* i ] = 0; 77 ux_mage [2* i +1] = 0; 82 GridBoxLi * ggbl = dagh . `ggbl (); 84 i( u = ACEF ) { 86 * dagh_d = 0; 87 i( ign ! ACE_A ) { 88 `gdbSRks ( mynk , ign , nks ); 89 dagh_d = w [2* daghnk ]; 90  i = 0 ; i < 2* daghnk ; i++ dagh_d [i] = 0; 91  i = 0 ; i < mynk ; i++) { 92 dagh_d [2* nks [ i ]] = [2*i]; 93 dagh_d [2* nks [ i ]+1] = [2*i+1]; 97 dagh_d = _d ; 102 mged_bbox = gb . `gbBBoxAbs ( vnum ); 103 GridBoxLi mcgbl ; 104 ggbl -> `r ( `growbydim ( mged_bbox , dagh_d ), vnum , mcgbl ); 108 shmged_bbox = `crn ( mged_bbox , shadow ); 109 GridBoxLi scgbl ; 110 i( sag = ACETrue ) { 111 ggbl -> `r ( `growbydim ( shmged_bbox , dagh_d ), vnum , scgbl ); 117 `gdbSUpBoundyFgs ( mcgbl , gi , ޭ , dagh_d ); 119 mged_bbox . `growubydim ( ޭ ); 120 shmged_bbox . `growubydim ( ޭ ); 127 BBox `dagh_mged_bbox ( mged_bbox ); 128 BBox `dagh_shmged_bbox ( shmged_bbox ); 131 i( ign ! ACE_A ) { 132 `gdbAlignBBox ( mynk , mged_bbox , ign ); 133 `gdbAlignBBox ( mynk , shmged_bbox , ign ); 136 `gdbSUpMa ( ޭ , bwidth , extghwidth , gdbeu ); 138 i( sag = ACETrue `gdbSUpShadow ( ޭ , bwidth , extghwidth , gdbeu ); 140 i( comm_ag = ACETrue ) { 141 cڡ  um = comm_rvi :: `oc_num (); 144 gdb_wre_fo = w GDB_Iai ** [ um ]; 145 gdb_ad_fo = w GDB_Iai ** [ um ]; 147  p =0;< um ;++) { 148 gdb_wre_fo [ p ] = 0; 149 gdb_ad_fo [ p ] = 0; 152 `gdbSUpGhoIaiInfo ( mcgbl , scgbl , 153 ign , gi , ޭ , 154 dagh_mged_bbox , 155 dagh_shmged_bbox , 156 dagh_d ); 159 i( pag ) { 160 _ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 161 i( _ag && vnum > ev ) { 162 `gdbSUpPtMa ( ޭ , extghwidth ); 164 `gdbSUpPtIaiInfo ( ign , ޭ , 165 dagh_mged_bbox , 166 dagh_shmged_bbox , 167 dagh_d ); 170 i( fag ) { 171 ux_ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 172 i( ux_ag && vnum > ev ) { 173 `gdbSUpFluxMa ( gi ); 175 `gdbSUpFluxIaiInfo ( ign , gi , ޭ , 176 dagh_mged_bbox , 177 dagh_shmged_bbox ); 181 i( ign ! ACE_A de [] dagh_d ; 186 mged_bbox = gdbtm ->merged_bbox; 187 shmged_bbox = gdbtm ->shmerged_bbox; 189  i = 0 ; i < mynk ; i++) { 190 bndryags [2* i ] = gdbtm ->bndryflags[2*i]; 191 bndryags [2* i +1] = gdbtm ->bndryflags[2*i+1]; 192 hybridbndryags [ i ] = gdbtm ->hybridbndryflags[i]; 195 `gdbSUpMa ( ޭ , bwidth , extghwidth , gdbeu ); 197 i( sag = ACETrue `gdbSUpShadow ( ޭ , bwidth , extghwidth , gdbeu ); 199 i( comm_ag = ACETrue ) { 200 cڡ  um = comm_rvi :: `oc_num (); 203 gdb_wre_fo = w GDB_Iai ** [ um ]; 204 gdb_ad_fo = w GDB_Iai ** [ um ]; 206  p =0;< um ;++) { 207 gdb_wre_fo [ p ] = 0; 208 gdb_ad_fo [ p ] = 0; 211 `gdbSUpGhoIaiInfo ( gdbtm ); 213 i( pag ) { 214 _ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 215 i( _ag && vnum > ev ) { 216 `gdbSUpPtMa ( ޭ , extghwidth ); 218 `gdbSUpPtIaiInfo ( gdbtm ); 221 i( fag ) { 222 ux_ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 223 i( ux_ag && vnum > ev ) { 224 `gdbSUpFluxMa ( gdbtm ); 226 `gdbSUpFluxIaiInfo ( gdbtm ); 230 } } 240 gme < ass gTy > 241 GridDaBlock (2)< gTy >::~GridDataBlock(2) () 243 i( comm_ag = ACETrue gdbRGhoIaiInfo (); 245 i( ggdb_da_rcv de gdb_data_rcv; 246 ggdb_da_rcv = 0; 248 i( gshag ! ACEF gdbRShadow (); 250 i( gmgag ! ACENu gdbRMuiGrid (); 251 i( gshmgag ! ACENu gdbRShadowMuiGrid (); 253 i( g_ag = ACETrue ) { 254 gdbRPtMa (); 256 gdbRPtIaiInfo (); 258 i( gux_ag = ACETrue ) { 259 gdbRFluxMa (); 261 gdbRFluxIaiInfo (); 277 gme < ass gTy > 278  GridDaBlock (2)< gTy >:: $gdbSUpBoundyFgs ( GridBoxLi & gbl , 279 cڡ GhoIai & gi , 280 cڡ * ޭ , 281 cڡ * d ) 283 cڡ  mynk = 2 ; 284 cڡ * s = gi . `s (); 285 cڡ  ev = dagh . `crv (); 286 cڡ  daghnk = dagh . nk ; 288 GridBoxLi igbl ; 290  ޭ0 [ ACEMaxRk ]; 291  i =0; i< ACEMaxRk ; i++ ޭ0 [i] = 0; 293 cڡ BBox `whebb ( `growubydim ( dagh . `whebbox (), ޭ0 )); 295  r = 0, dr = 0; 297 * myd = w [2* daghnk ]; 299  r = 0 ; < daghnk ;++ ) { 300 myd [2* r ] = `max ( d [2*r],1); 301 myd [2* r +1] = `max ( d [2*r+1],1); 304  r = 0, dr = nks [0] ; < mynk ; ++r, dr =anks[r] ) { 305 cڡ  bi = s [2* dr ]; 306 cڡ  fi = s [2* dr +1]; 308 i(( gi . `Ibbox ( mged_bbox , bi , myd )* whebb ). `emy ()) 309 bndryags [2* r ] = ACE_ExBoundy ; 310 i( vnum > ev ) { 311 gbl . `r ( gi . `Ibbox ( mged_bbox , bi , myd ), vnum , igbl , ޭ0 ); 312 i igbl . `imy () ) 313 bndryags [2* r ] = ACE_AdtiveBoundy ; 316 i(( gi . `Ibbox ( mged_bbox , fi , myd )* whebb ). `emy ()) 317 bndryags [2* r +1] = ACE_ExBoundy ; 318 i( vnum > ev ) { 319 gbl . `r ( gi . `Ibbox ( mged_bbox , fi , myd ), vnum , igbl , ޭ0 ); 320 i igbl . `imy () ) 321 bndryags [2* r +1] = ACE_AdtiveBoundy ; 323 #ide GDBNOHYBRIDBNDRY 324 i( ޭ [ r ] > 0) { 325 BBoxLi rhsbbl , lhsbbl ; 326 lhsbbl . `add ( gi . `Ibbox ( mged_bbox , fi , myd )); 327 igbl . `bboxli ( rhsbbl , vnum , ޭ0 ,0); 328 lhsbbl - rhsbbl ; 329 i(! lhsbbl . `imy () hybridbndryags [ r ] = ACETrue ; 336 i( myd de [] myrad; 337 } } 344 gme < ass gTy > 345  GridDaBlock (2)< gTy >:: $gdbAddGhoIaiInfo ( 346 cڡ  axis , 347 cڡ  d , 348 cڡ BBox & thb , 349 cڡ BBox & thewb , 350 cڡ BBox & hisbb , 351 cڡ  owr , 352 cڡ  idx ) 354 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 355 cڡ  dex = ( ACEMaxDs * maxdex * axis ) + ( maxdex * d ) + idx ; 356 cڡ  hisdex = ( ACEMaxDs * maxdex * axis ) + 357 maxdex * `ACEHisD ( d + idx ; 359 i(! thewb . `emy ()) { 360 i(! gdb_wre_fo [ owr ]) { 361 gdb_wre_fo [ owr ] = w GDB_Iai * [ r_t ]; 362   j = 0 ; j < r_t ; j++ ) gdb_wre_fo [ owr ][j] = 0; 364 i(! gdb_wre_fo [ owr ][ dex ]) 365 gdb_wre_fo [ owr ][ dex ] = w GDB_Iai ; 367 gdb_wre_fo [ owr ][ dex ]-> mbbox + thewb ; 368 #ifde DEBUG_PRINT 369 `as (! gdb_wre_fo [ owr ][ dex ]-> mbbox . `emy ()); 373 i(! thb . `emy ()) { 374 i(! gdb_ad_fo [ owr ]) { 375 gdb_ad_fo [ owr ] = w GDB_Iai * [ r_t ]; 376   j = 0 ; j < r_t ; j++ ) gdb_ad_fo [ owr ][j] = 0; 378 i(! gdb_ad_fo [ owr ][ hisdex ]) 379 gdb_ad_fo [ owr ][ hisdex ] = w GDB_Iai ; 381 gdb_ad_fo [ owr ][ hisdex ]-> mbbox + thb ; 382 #ifde DEBUG_PRINT 383 `as (! gdb_ad_fo [ owr ][ hisdex ]-> mbbox . `emy ()); 386 } } 388 gme < ass gTy > 389  GridDaBlock (2)< gTy >:: $gdbAddShadowGhoIaiInfo ( 390 cڡ  axis , 391 cڡ  d , 392 cڡ BBox & hb , 393 cڡ BBox & hewb , 394 cڡ BBox & shisbb , 395 cڡ  owr , 396 cڡ  idx ) 398 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 399 cڡ  dex = ( ACEMaxDs * maxdex * axis ) + ( maxdex * d ) + idx ; 400 cڡ  hisdex = ( ACEMaxDs * maxdex * axis ) + 401 maxdex * `ACEHisD ( d + idx ; 403 i(! hewb . `emy ()) { 404 i(! gdb_wre_fo [ owr ]) { 405 gdb_wre_fo [ owr ] = w GDB_Iai * [ r_t ]; 406   j = 0 ; j < r_t ; j++ ) gdb_wre_fo [ owr ][j] = 0; 408 i(! gdb_wre_fo [ owr ][ dex ]) 409 gdb_wre_fo [ owr ][ dex ] = w GDB_Iai ; 411 gdb_wre_fo [ owr ][ dex ]-> shbbox + hewb ; 412 #ifde DEBUG_PRINT 413 `as (! gdb_wre_fo [ owr ][ dex ]-> shbbox . `emy ()); 417 i(! hb . `emy ()) { 418 i(! gdb_ad_fo [ owr ]) { 419 gdb_ad_fo [ owr ] = w GDB_Iai * [ r_t ]; 420   j = 0 ; j < r_t ; j++ ) gdb_ad_fo [ owr ][j] = 0; 422 i(! gdb_ad_fo [ owr ][ hisdex ]) 423 gdb_ad_fo [ owr ][ hisdex ] = w GDB_Iai ; 425 gdb_ad_fo [ owr ][ hisdex ]-> shbbox + hb ; 426 #ifde DEBUG_PRINT 427 `as (! gdb_ad_fo [ owr ][ hisdex ]-> shbbox . `emy ()); 430 } } 436 gme < ass gTy > 437  GridDaBlock (2)< gTy >:: $gdbSUpGhoIaiInfo ( 438 GridBoxLi & mcgbl , 439 GridBoxLi & scgbl , 440 cڡ  ign , 441 cڡ GhoIai & gi , 442 cڡ * ޭ , 443 cڡ BBox & dmged_bbox , 444 cڡ BBox & dshmged_bbox , 445 cڡ * d_d ) 447 i( mcgbl . `imy (&& scgbl .isempty()) ; 449 cڡ  mynk = 2 ; 450 cڡ  ti = gi . `tٮ_is (); 451 cڡ  evnum = vnum - dagh . `daghdex ( ACE_Shadow ); 452 cڡ  shadow = dagh . `daghshadow (); 453 cڡ  sime = gi . `sime (); 455 cڡ  me = comm_rvi :: `oc_me (); 457  r = 0, dr = 0; 459  rd_ޭ [ ACEMaxRk ]; 460  r = 0; < mynk ;++) 461 rd_ޭ [ r ] = ( bndryags [2*r+1] = ACE_ExBoundy ? 0 : ޭ [r]; 462 ; r < ACEMaxRk ;++) 463 rd_ޭ [ r ] = ޭ [r]; 465 cڡ BBox `whebb ( `growubydim ( dagh . `whebbox (), ޭ )); 467  GridBox * gb = 0; 468  i = 0; 470  r = 0, dr = 0; < ACEMaxAxis ; ++r ) { 471 i r > mynk && ! ACE_A ) ; 472 dr = ( r < mynk ) ? nks [r] : ; 474 cڡ * bi = gi . `is ( dr , ACE_Backwd ); 475 cڡ * fi = gi . `is ( dr , ACE_Fwd ); 476 cڡ * bhi = gi . `is ( dr , ACE_Bh ); 478 BBox bbb , shbbb , fbb , shfbb ; 480  i = 0 ; i < ti ; i++ ) { 481 if bi [ i ] ! ACETrue && fi [i] != ACETrue ) ; 483 BBox rb = gi . `Ibbox ( dmged_bbox , i , d_d ); 484 BBox b = gi . `Ibbox ( dmged_bbox , i , d_d , rd_ޭ ); 486 BBox b = gi . `Ibbox ( dshmged_bbox , i , d_d ); 487 BBox sb = gi . `Ibbox ( dshmged_bbox , i , d_d , rd_ޭ ); 489 i( ign ! ACE_A ) { 490 `gdbAlignBBox ( mynk , rb , ign ); 491 `gdbAlignBBox ( mynk , b , ign ); 492 `gdbAlignBBox ( mynk , b , ign ); 493 `gdbAlignBBox ( mynk , sb , ign ); 496 i r ! ACE_A && bndryags [2*r] = ACEF && 497 bi [ i ] = ACETrue ) { 498 bbb + rb ; shbbb + b ; 500 i r ! ACE_A && bndryags [2*r+1] = ACEF && 501 fi [ i ] = ACETrue ) { 502 fbb + rb ; shfbb + b ; 505 i! sime || r > mynk ) { 507  gb = mcgbl . `f (); gb ; gb = mcgbl. `xt () ) { 508 cڡ  idx = gb -> `gbIndex (); 509 cڡ  owr = gb -> `gbOwr (); 511 i( idx = mydex && owr = me ) ; 513 BBox mbb = gb -> `gbBBoxAbs ( vnum , ޭ ); 522 BBox `wb ( dmged_bbox * gi . `Ibbox ( mbb ,gi. `comemt ( i ), d_d )); 524 i( ign ! ACE_A ) { 525 `gdbAlignBBox ( mynk , wb , ign ); 526 `gdbAlignBBox ( mynk , mbb , ign ); 529 cڡ BBox `thewb ( `growbydim ( mbb , _d * wb ); 530 cڡ BBox `thb ( mbb * rb ); 532 i! sime && bi [ i ] = ACETrue ) { 533 `gdbAddGhoIaiInfo ( r , ACE_Backwd , thb , thewb , mbb , owr , idx ); 535 i! sime && fi [ i ] = ACETrue ) { 536 `gdbAddGhoIaiInfo ( r , ACE_Fwd , thb , thewb , mbb , owr , idx ); 538 i r > mynk && bhi [ i ] = ACETrue ) { 539 `gdbAddGhoIaiInfo ( r , ACE_Bh , thb , thewb , mbb , owr , idx ); 543 i( shag = ACETrue ) { 544  gb = scgbl . `f (; gb ; gb = scgbl. `xt ()) { 545 cڡ  idx = gb -> `gbIndex (); 546 cڡ  owr = gb -> `gbOwr (); 548 i( idx = mydex && owr = me ) ; 550 BBox smbb = gb -> `gbBBoxAbs ( evnum , ޭ ); 559 BBox `swb ( dshmged_bbox * gi . `Ibbox ( smbb ,gi. `comemt ( i ), d_d )); 561 i( ign ! ACE_A ) { 562 `gdbAlignBBox ( mynk , swb , ign ); 563 `gdbAlignBBox ( mynk , smbb , ign ); 566 cڡ BBox `hewb ( `growbydim ( smbb , _d * swb ); 567 cڡ BBox `hb ( smbb * b ); 569 i! sime && bi [ i ] = ACETrue ) { 570 `gdbAddShadowGhoIaiInfo ( r , ACE_Backwd , hb , hewb , smbb , owr , idx ); 572 i! sime && fi [ i ] = ACETrue ) { 573 `gdbAddShadowGhoIaiInfo ( r , ACE_Fwd , hb , hewb , smbb , owr , idx ); 575 i r > mynk && bhi [ i ] = ACETrue ) { 576 `gdbAddShadowGhoIaiInfo ( r , ACE_Bh , hb , hewb , smbb , owr , idx ); 582 bbb * mage . bbox ; 583 fbb * mage . bbox ; 584 i( shag = ACETrue ) { 585 shbbb * shage -> bbox ; 586 shfbb * shage -> bbox ; 588 i( r < mynk ) { 589 i( bndryags [2* r ] = ACEF ) { 590 gho_g_ag [2* r ] = ACETrue ; 591 gho_g_fo [2* r ]. mbbox = bbb ; 592 i( shag = ACETrue gho_g_fo [2* r ]. shbbox = shbbb ; 594 i( bndryags [2* r +1] = ACEF ) { 595 gho_g_ag [2* r +1] = ACETrue ; 596 gho_g_fo [2* r +1]. mbbox = fbb ; 597 i( shag = ACETrue gho_g_fo [2* r +1]. shbbox = shfbb ; 601 } } 603 gme < ass gTy > 604  GridDaBlock (2)< gTy >:: gdbSUpGhoIaiInfo ( 605 cڡ GridDaBlock (2)< Ty >* gdbtm ) 608 cڡ  mynk = 2 ; 609 cڡ  gum = comm_rvi :: oc_num (); 610 cڡ  gr_t = ACEMaxAxis * ACEMaxDs * maxdex ; 612 GridBoxLi * gggbl = dagh . ggbl (); 614 gGDB_Iai ***& gmw = gdb_wre_fo ; 615 gGDB_Iai ***& gmr = gdb_ad_fo ; 617 GDB_Iai *** ghw = gdbtm -> gdb_wre_fo ; 618 GDB_Iai *** ghr = gdbtm -> gdb_ad_fo ; 620  gp = 0, gj = 0; 621  gp = 0 ; < gum ;++ ) i ghw [ p ] || ghr [p] ) { 622 i ghw [ p ] ) gmw [p] = w GDB_Iai * [ r_t ]; 623 i ghr [ p ] ) gmr [p] = w GDB_Iai * [ r_t ]; 625  gj = 0 ; j < gr_t ; j++ ) { 627 i gmw [ p ] ) mw[p][ j ] = 0; 628 i gmr [ p ] ) mr[p][ j ] = 0; 630 i ghw [ p ] && hw[p][ j ] ) { 631 gmw [ p ][ j ] = w GDB_Iai ; 632 gmw [ p ][ j ]-> gmbbox = hw [p][j]-> mbbox ; 633 i gshag = ACETrue ) mw [ p ][ j ]-> shbbox = hw [p][j]->shbbox; 636 i ghr [ p ] && hr[p][ j ] ) { 637 gmr [ p ][ j ] = w GDB_Iai ; 638 gmr [ p ][ j ]-> gmbbox = hr [p][j]-> mbbox ; 639 i gshag = ACETrue ) mr [ p ][ j ]-> shbbox = hr [p][j]->shbbox; 643   gr = 0 ; < gmynk ;++ ) { 644 ggho_g_ag [2* r ] = gdbtm -> gho_g_ag [2*r]; 645 ggho_g_fo [2* r ]. gmbbox = gdbtm -> gho_g_fo [2*r]. mbbox ; 646 i gshag = ACETrue ) 647 gho_g_fo [2* r ]. shbbox = gdbtm ->ghost_prolong_info[2*r].shbbox; 649 ggho_g_ag [2* r +1] = gdbtm -> gho_g_ag [2*r+1]; 650 ggho_g_fo [2* r +1]. gmbbox = gdbtm -> gho_g_fo [2*r+1]. mbbox ; 651 i gshag = ACETrue ) 652 gho_g_fo [2* r +1]. shbbox = gdbtm ->ghost_prolong_info[2*r+1].shbbox; 656 gme < ass gTy > 657  GridDaBlock (2)< gTy >:: $gdbRGhoIaiInfo () 659 i( comm_ag = ACETrue ) { 660 cڡ  um = comm_rvi :: `oc_num (); 661 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 663  p =0;p< um ;p++) { 664 i( gdb_wre_fo [ p ] || gdb_ad_fo [p]) { 665  j =0;j< r_t ;j++) { 666 i( gdb_wre_fo [ p ] && gdb_wre_fo[p][ j ]) 667 de gdb_wre_fo [ p ][ j ]; 668 i( gdb_ad_fo [ p ] && gdb_ad_fo[p][ j ]) 669 de gdb_ad_fo [ p ][ j ]; 671 i( gdb_wre_fo [ p ] de [] gdb_write_info[p]; 672 i( gdb_ad_fo [ p ] de [] gdb_read_info[p]; 675 i( gdb_wre_fo de [] gdb_write_info; 676 gdb_wre_fo = 0; 677 i( gdb_ad_fo de [] gdb_read_info; 678 gdb_ad_fo = 0; 680 } } 690 gme < ass gTy > 691  GridDaBlock (2)< gTy >:: gdbSUpMa (cڡ * ޭ , 692 cڡ * bwidth , 693 cڡ * extghwidth , 694 GridDaBlock (2)< Ty >* gdbeu ) 696 cڡ  gmynk = 2; 702 gBBox & gdb = mage . bbox ; db = mged_bbox ; 703 gBBox & gib = mage . ibbox ; ib = mged_bbox ; 704 BBox * gbndrybb = mage . bndrybbox ; 707 gdb . growbydim ( extghwidth ); 710 cڡ Cods ( db . low ()); 711 cڡ Cods cu ( db . u ()); 712 cڡ Cods ( db . size ()); 714  gimes2 = 0; 715  gi =0; i< gmynk ; i++) { 716 gimes2 = 2* i ; 718 i( gbndryags [ imes2 ] = ACEF ) { 719 i( extghwidth [ imes2 ] < _d [itimes2]) 720 db . low ( i - (i)*( _d [ imes2 ] - extghwidth [itimes2]); 722 i( gbwidth [ imes2 ] > 0) { 724 gbndrybb [ imes2 ] = db ; 725 gbndrybb [ imes2 ]. u ( i ( (i+ (i)*( bwidth [itimes2]-1)); 728 i( gbndryags [ imes2 +1] = ACEF ) { 729 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 730 db . u ( i + (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 731 gib . u ( i -( ޭ [ nks [i]]* (i)); 733 i( gbwidth [ imes2 +1] > 0) { 735 gbndrybb [ imes2 +1] = db ; 736 gbndrybb [ imes2 +1]. low ( i ( cu (i- (i)*( bwidth [itimes2+1]-1)); 740 i( ggdbeu && 741 ggdbeu -> gmage . gbbox = mage . bbox ) { 743 #ifde DEBUG_PRINT_GDB 744 comm_rvi :: log () << "gdbMReusing" 745 << gdbeu -> mage . bbox 746 << mage . bbox 747 << dl ). ush (); 748 as ( gdbeu -> mage . bbox == mstorage.bbox); 751 #ifde DEBUG_PRINT_GDB 752 as ( gdbeu -> mage . da . ok_to_dex ()); 755 gmage . lo ( nems ); 757 memy ( mage . da . dabufr (), 758 gdbeu -> mage . da . dabufr (), 759 ( Ty )* mage . da . tsize ()); 764 guag = ACETrue ; 766 #ifde DEBUG_PRINT_GDB 772 gmage . lo ( nems ); 774 #ifde DEBUG_PRINT_GDB 775 gcomm_rvi :: log (<< "gdbSUpMa" << "[" << gfid << "] " 776 << mage << " " 777 << dl ). ush (); 784 gme < ass gTy > 785  GridDaBlock (2)< gTy >:: gdbSUpShadow (cڡ * ޭ , 786 cڡ * bwidth , 787 cڡ * extghwidth , 788 GridDaBlock (2)< Ty >* gdbeu ) 790 i( gshag ! ACEF gdbRShadow (); 791 gshag = ACETrue ; 793 cڡ  gmynk = 2; 799 gshage = w GridDaBlockStage (2)< Ty >; 801 gBBox & gdb = shage -> bbox ; db = shmged_bbox ; 802 gBBox & gib = shage -> ibbox ; ib = shmged_bbox ; 803 BBox * gbndrybb = shage -> bndrybbox ; 806 gdb . growbydim ( extghwidth ); 809 cڡ Cods ( db . low ()); 810 cڡ Cods cu ( db . u ()); 811 cڡ Cods ( db . size ()); 813  gimes2 = 0; 814  gi =0; i< gmynk ; i++) { 815 gimes2 = 2* i ; 817 i( gbndryags [ imes2 ] = ACEF ) { 818 i( extghwidth [ imes2 ] < _d [itimes2]) 819 db . low ( i - (i)*( _d [ imes2 ] - extghwidth [itimes2]); 821 i( gbwidth [ imes2 ] > 0) { 823 gbndrybb [ imes2 ] = db ; 824 gbndrybb [ imes2 ]. u ( i ( (i+ (i)*( bwidth [itimes2]-1)); 827 i( gbndryags [ imes2 +1] = ACEF ) { 828 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 829 db . u ( i + (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 830 gib . u ( i -( ޭ [ nks [i]]* (i)); 832 i( gbwidth [ imes2 +1] > 0) { 834 gbndrybb [ imes2 +1] = db ; 835 gbndrybb [ imes2 +1]. low ( i ( cu (i- (i)*( bwidth [itimes2+1]-1)); 839 i( ggdbeu && gdbeu-> gshag = ACETrue && 840 gdbeu -> shage -> bbox == shstorage->bbox) { 842 #ifde DEBUG_PRINT_GDB 843 comm_rvi :: log () << "gdbSReusing" 844 << gdbeu -> shage -> bbox 845 << shage -> bbox 846 << dl ). ush (); 847 as ( gdbeu -> shage -> bbox == shstorage->bbox); 850 gshage -> lo ( nems ); 852 memy ( shage -> da . dabufr (), 853 gdbeu -> shage -> da . dabufr (), 854 ( Ty )* shage -> da . tsize ()); 859 guag = ACETrue ; 861 #ifde DEBUG_PRINT_GDB 867 gshage -> lo ( nems ); 869 #ifde DEBUG_PRINT_GDB_SH 870 gcomm_rvi :: log (<< "gdbSUpShadow" << "[" << gfid << "]" 871 << * shage << " " 872 << dl ). ush (); 876 gme < ass gTy > 877  GridDaBlock (2)< gTy >:: $gdbRShadow () 879 i( shag = ACEF ) ; 880 i( shage de shstorage; 881 shag = ACEF ; 882 } } 888 gme < ass gTy > 889  GridDaBlock (2)< gTy >:: $gdbSUpMuiGrid (cڡ  lc , 890 cڡ  lf , 891 cڡ * ޭ , 892 cڡ * bwidth , 893 cڡ * extghwidth ) 895 i( mgag ! ACENu `gdbRMuiGrid (); 897 mgag = ACE_A ; 898 mglfe = lf ; 899 mglcr = lc ; 900 mgvs = lf - lc +1; 901 i( mgvs == 1) ; 903 mgage = w `GridDaBlockStage (2)< Ty > *[ mgvs -1]; 905 #ifde DEBUG_PRINT_GDB_MG 906 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 907 << "[MGLev: " << lf << "]" 908 << mage << " " 909 << dl ). `ush (); 912 cڡ  mynk = 2; 913 cڡ  muigrid = dagh . `daghmuigrid (); 915  ldex = 0; 916  = 1; 918   l = lf -1 ; > lc ;-- ) { 919 ldex = l - lc ; 920 * muigrid ; 922 mgage [ ldex ] = w `GridDaBlockStage (2)< Ty >; 923 `GridDaBlockStage (2)< Ty >* mg = mgage [ ldex ]; 925 cڡ BBox mgbb = `crn ( mged_bbox , ); 927 BBox & db = mg -> bbox ; db = mgbb ; 928 BBox & ib = mg -> ibbox ; ib = mgbb ; 929 BBox * bndrybb = mg -> bndrybbox ; 931 db . `growbydim ( extghwidth ); 933 cڡ Cods ` ( mgbb . `low ()); 934 cڡ Cods `cu ( mgbb . `u ()); 935 cڡ Cods ` ( mgbb . `size ()); 937  imes2 = 0; 938   i = 0 ; i < mynk ; i++ ) { 939 imes2 = 2* i ; 941 i( bndryags [ imes2 ] = ACEF ) { 942 i( extghwidth [ imes2 ] < _d [itimes2]) 943 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 945 i( bwidth [ imes2 ] > 0) { 946 bndrybb [ imes2 ] = db ; 947 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 950 i( bndryags [ imes2 +1] = ACEF ) { 951 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 952 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 953 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 955 i( bwidth [ imes2 +1] > 0) { 956 bndrybb [ imes2 +1] = db ; 957 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 961 mg -> `lo ( nems ); 963 #ifde DEBUG_PRINT_GDB_MG 964 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 965 << "[MGLev: " << ldex << "]" 966 << * mg << " " 967 << dl ). `ush (); 972 cڡ  um = comm_rvi :: `oc_num (); 973 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 976 #ifde DEBUG_PRINT_GDB_MG 977 comm_rvi :: `log (<< "gdbSUpMuiGridGho" << "[" << gfid << "]" 978 ). `ush (); 980   p = 0 ; < um ;++ ) { 981 i! gdb_wre_fo [ p ] ) ; 982   i = 0 ; i < r_t ; i++ ) { 983 i! gdb_wre_fo [ p ][ i ] ) ; 984 #ifde DEBUG_PRINT_GDB_MG 985 comm_rvi :: `log (<< dl << "[" << p << "," << i << "]"). `ush (); 987 gdb_wre_fo [ p ][ i ]-> mmgbbox = w BBox [ mgvs -1]; 988 BBox * b = gdb_wre_fo [ p ][ i ]-> mmgbbox ; 989 = 1; 990   = lf -1 ;> lc ;l-- ) { 991 ldex = - lc ; * muigrid ; 992 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> mbbox , ); 993 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 994 BBox & bb = b [ ldex ]; 995 BBox mgbb = mgage [ ldex ]-> bbox ; 996 mgbb . `shrkbydim ( extghwidth ); 997   r = 0 ; < mynk ;++ ) { 998 i( ޭ [ nks [ r ]] > 0 && 999 bb . `low ( r )== mgbb .low&& bb. `u (r)==mgbb.lower(r)) 1000 bb . `shi ( r , ޭ [ nks [r]]); 1003 #ifde DEBUG_PRINT_GDB_MG 1004 comm_rvi :: `log (<< "[MGL:" << ldex << b [ldex] << "]"). `ush (); 1009 #ifde DEBUG_PRINT_GDB_MG 1010 comm_rvi :: `log (<< dl ). `ush (); 1014   r = 0 ; < 2* mynk ;++ ) { 1015 i gho_g_ag [ r ] = ACEF ) ; 1016 gho_g_fo [ r ]. mmgbbox = w BBox [ mgvs -1]; 1017 BBox * b = gho_g_fo [ r ]. mmgbbox ; 1018 = 1; 1019   = lf -1 ;> lc ;l-- ) { 1020 ldex = - lc ; * muigrid ; 1021 b [ ldex ] = `crn ( gho_g_fo [ r ]. mbbox , ); 1022 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1023 BBox & bb = b [ ldex ]; 1024 BBox mgbb = mgage [ ldex ]-> bbox ; 1025 mgbb . `shrkbydim ( extghwidth ); 1026   = 0 ;< mynk ;r++ ) { 1027 i( ޭ [ nks [ ]] > 0 && 1028 bb . `low ( )== mgbb .lowr&& bb. `u (rr)==mgbb.lower(rr)) 1029 bb . `shi ( , ޭ [ nks [rr]]); 1034 } } 1036 gme < ass gTy > 1037  GridDaBlock (2)< gTy >:: $gdbSUpMuiGrid (cڡ  axis , 1038 cڡ  lc , 1039 cڡ  lf , 1040 cڡ * ޭ , 1041 cڡ * bwidth , 1042 cڡ * extghwidth ) 1044 #ifde DEBUG_PRINT 1045 `as ( axis = ACE_X ||xi= ACE_Y ||xi= ACE_Z ); 1048 i( mgag ! ACENu `gdbRMuiGrid (); 1050 mgag = axis ; 1051 mglfe = lf ; 1052 mglcr = lc ; 1053 mgvs = lf - lc +1; 1054 i( mgvs == 1) ; 1056 mgage = w `GridDaBlockStage (2)< Ty > *[ mgvs -1]; 1058 #ifde DEBUG_PRINT_GDB_MG 1059 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1060 << "[MGLev: " << lf << "]" 1061 << mage << " " 1062 << dl ). `ush (); 1065 cڡ  mynk = 2; 1066 cڡ  muigrid = dagh . `daghmuigrid (); 1068  ldex = 0; 1069  = 1; 1071   l = lf -1 ; > lc ;-- ) { 1072 ldex = l - lc ; 1073 * muigrid ; 1075 mgage [ ldex ] = w `GridDaBlockStage (2)< Ty >; 1076 `GridDaBlockStage (2)< Ty >* mg = mgage [ ldex ]; 1078 cڡ BBox mgbb = `crn ( mged_bbox , axis , ); 1080 BBox & db = mg -> bbox ; db = mgbb ; 1081 BBox & ib = mg -> ibbox ; ib = mgbb ; 1082 BBox * bndrybb = mg -> bndrybbox ; 1084 db . `growbydim ( extghwidth ); 1086 cڡ Cods ` ( mgbb . `low ()); 1087 cڡ Cods `cu ( mgbb . `u ()); 1088 cڡ Cods ` ( mgbb . `size ()); 1090  imes2 = 0; 1091   i = 0 ; i < mynk ; i++ ) { 1092 imes2 = 2* i ; 1094 i( bndryags [ imes2 ] = ACEF ) { 1095 i( extghwidth [ imes2 ] < _d [itimes2]) 1096 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1098 i( bwidth [ imes2 ] > 0) { 1099 bndrybb [ imes2 ] = db ; 1100 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1103 i( bndryags [ imes2 +1] = ACEF ) { 1104 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1105 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1106 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1108 i( bwidth [ imes2 +1] > 0) { 1109 bndrybb [ imes2 +1] = db ; 1110 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1114 mg -> `lo ( nems ); 1116 #ifde DEBUG_PRINT_GDB_MG 1117 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1118 << "[MGLev: " << ldex << "]" 1119 << * mg << " " 1120 << dl ). `ush (); 1125 cڡ  um = comm_rvi :: `oc_num (); 1126 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1129   p = 0 ; < um ;++ ) { 1130 i! gdb_wre_fo [ p ] ) ; 1131   i = 0 ; i < r_t ; i++ ) { 1132 i! gdb_wre_fo [ p ][ i ] ) ; 1133 gdb_wre_fo [ p ][ i ]-> mmgbbox = w BBox [ mgvs -1]; 1134 BBox * b = gdb_wre_fo [ p ][ i ]-> mmgbbox ; 1135 = 1; 1136   = lf -1 ;> lc ;l-- ) { 1137 ldex = - lc ; * muigrid ; 1138 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> mbbox , axis , ); 1139 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1140 BBox & bb = b [ ldex ]; 1141 BBox mgbb = mgage [ ldex ]-> bbox ; 1142 mgbb . `shrkbydim ( extghwidth ); 1143   r = 0 ; < mynk ;++ ) { 1144 i( ޭ [ nks [ r ]] > 0 && 1145 bb . `low ( r )== mgbb .low&& bb. `u (r)==mgbb.lower(r)) 1146 bb . `shi ( r , ޭ [ nks [r]]); 1155   r = 0 ; < 2* mynk ;++ ) { 1156 i gho_g_ag [ r ] = ACEF ) ; 1157 gho_g_fo [ r ]. mmgbbox = w BBox [ mgvs -1]; 1158 BBox * b = gho_g_fo [ r ]. mmgbbox ; 1159 = 1; 1160   = lf -1 ;> lc ;l-- ) { 1161 ldex = - lc ; * muigrid ; 1162 b [ ldex ] = `crn ( gho_g_fo [ r ]. mbbox , axis , ); 1163 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1164 BBox & bb = b [ ldex ]; 1165 BBox mgbb = mgage [ ldex ]-> bbox ; 1166 mgbb . `shrkbydim ( extghwidth ); 1167   = 0 ;< mynk ;r++ ) { 1168 i( ޭ [ nks [ ]] > 0 && 1169 bb . `low ( )== mgbb .lowr&& bb. `u (rr)==mgbb.lower(rr)) 1170 bb . `shi ( , ޭ [ nks [rr]]); 1175 } } 1177 gme < ass gTy > 1178  GridDaBlock (2)< gTy >:: $gdbRMuiGrid () 1180 i( mgag = ACENu ) ; 1182 cڡ  mynk = 2; 1185  i ; 1186  i = 0 ; i < mgvs -1 ; i++ ) 1187 i( mgage [ i ] de mgstorage[i]; 1189 i( mgage de [] mgstorage; 1192 cڡ  um = comm_rvi :: `oc_num (); 1193 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1195 i( gdb_wre_fo   p = 0 ; < um ;++ ) { 1196 i! gdb_wre_fo [ p ] ) ; 1197  i = 0 ; i < r_t ; i++ ) { 1198 i( gdb_wre_fo [ p ][ i ] && gdb_wre_fo[p][i]-> mmgbbox ) 1199 de [] gdb_wre_fo [ p ][ i ]-> mmgbbox ; 1202   r = 0 ; < 2* mynk ;++ ) { 1203 i( gho_g_ag [ r ]== ACETrue && gho_g_fo [r]. mmgbbox ) 1204 de [] gho_g_fo [ r ]. mmgbbox ; 1207 mgag = ACENu ; 1208 } } 1214 gme < ass gTy > 1215  GridDaBlock (2)< gTy >:: $gdbSUpShadowMuiGrid (cڡ  lc , 1216 cڡ  lf , 1217 cڡ * ޭ , 1218 cڡ * bwidth , 1219 cڡ * extghwidth ) 1221 i( shmgag ! ACENu `gdbRShadowMuiGrid (); 1223 shmgag = ACE_A ; 1224 shmglfe = lf ; 1225 shmglcr = lc ; 1226 shmgvs = lf - lc +1; 1227 i( shmgvs == 1) ; 1229 shmgage = w `GridDaBlockStage (2)< Ty > *[ mgvs -1]; 1231 #ifde DEBUG_PRINT_GDB_MG 1232 comm_rvi :: `log (<< "gdbSUpShadowMuiGrid" << "[" << gfid << "]" 1233 << "[MGLev: " << lf << "]" 1234 << shage << " " 1235 << dl ). `ush (); 1239 cڡ  mynk = 2; 1240 cڡ  muigrid = dagh . `daghmuigrid (); 1242  ldex = 0; 1243  = 1; 1245   l = lf -1 ; > lc ;l-- ) { 1246 ldex = l - lc ; 1247 * muigrid ; 1249 shmgage [ ldex ] = w `GridDaBlockStage (2)< Ty >; 1250 `GridDaBlockStage (2)< Ty >* shmg = shmgage [ ldex ]; 1252 cڡ BBox shmgbb = `crn ( shmged_bbox , ); 1254 BBox & db = shmg -> bbox ; db = shmgbb ; 1255 BBox & ib = shmg -> ibbox ; ib = shmgbb ; 1256 BBox * bndrybb = shmg -> bndrybbox ; 1258 db . `growbydim ( extghwidth ); 1260 cڡ Cods ` ( shmgbb . `low ()); 1261 cڡ Cods `cu ( shmgbb . `u ()); 1262 cڡ Cods ` ( shmgbb . `size ()); 1264  imes2 = 0; 1265  i =0; i< mynk ; i++) { 1266 imes2 = 2* i ; 1268 i( bndryags [ imes2 ] = ACEF ) { 1269 i( extghwidth [ imes2 ] < _d [itimes2]) 1270 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1272 i( bwidth [ imes2 ] > 0) { 1273 bndrybb [ imes2 ] = db ; 1274 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1277 i( bndryags [ imes2 +1] = ACEF ) { 1278 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1279 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1280 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1282 i( bwidth [ imes2 +1] > 0) { 1283 bndrybb [ imes2 +1] = db ; 1284 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1288 shmg -> `lo ( nems ); 1290 #ifde DEBUG_PRINT_GDB_MG 1291 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1292 << "[MGLev: " << ldex << "]" 1293 << * shmg << " " 1294 << dl ). `ush (); 1299 cڡ  um = comm_rvi :: `oc_num (); 1300 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1303   p = 0 ; < um ;++ ) { 1304 i! gdb_wre_fo [ p ] ) ; 1305   i = 0 ; i < r_t ; i++ ) { 1306 i! gdb_wre_fo [ p ][ i ] ) ; 1307 gdb_wre_fo [ p ][ i ]-> shmgbbox = w BBox [ shmgvs -1]; 1308 BBox * b = gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1309 = 1; 1310   = lf -1 ;> lc ;l-- ) { 1311 ldex = - lc ; * muigrid ; 1312 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> shbbox , ); 1313 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1314 BBox & bb = b [ ldex ]; 1315 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1316 shmgbb . `shrkbydim ( extghwidth ); 1317   r = 0 ; < mynk ;++ ) { 1318 i( ޭ [ nks [ r ]] > 0 && 1319 bb . `low ( r )== shmgbb .low&& bb. `u (r)==shmgbb.lower(r)) 1320 bb . `shi ( r , ޭ [ nks [r]]); 1328   r = 0 ; < 2* mynk ;++ ) { 1329 i gho_g_ag [ r ] = ACEF ) ; 1330 gho_g_fo [ r ]. shmgbbox = w BBox [ shmgvs -1]; 1331 BBox * b = gho_g_fo [ r ]. shmgbbox ; 1332 = 1; 1333   = lf -1 ;> lc ;l-- ) { 1334 ldex = - lc ; * muigrid ; 1335 b [ ldex ] = `crn ( gho_g_fo [ r ]. shbbox , ); 1336 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1337 BBox & bb = b [ ldex ]; 1338 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1339 shmgbb . `shrkbydim ( extghwidth ); 1340   = 0 ;< mynk ;r++ ) { 1341 i( ޭ [ nks [ ]] > 0 && 1342 bb . `low ( )== shmgbb .lowr&& bb. `u (rr)==shmgbb.lower(rr)) 1343 bb . `shi ( , ޭ [ nks [rr]]); 1348 } } 1350 gme < ass gTy > 1351  GridDaBlock (2)< gTy >:: $gdbSUpShadowMuiGrid (cڡ  axis , 1352 cڡ  lc , 1353 cڡ  lf , 1354 cڡ * ޭ , 1355 cڡ * bwidth , 1356 cڡ * extghwidth ) 1358 #ifde DEBUG_PRINT 1359 `as ( axis = ACE_X ||xi= ACE_Y ||xi= ACE_Z ); 1362 i( shmgag ! ACENu `gdbRShadowMuiGrid (); 1364 shmgag = axis ; 1365 shmglfe = lf ; 1366 shmglcr = lc ; 1367 shmgvs = lf - lc +1; 1368 i( shmgvs == 1) ; 1370 shmgage = w `GridDaBlockStage (2)< Ty > *[ mgvs -1]; 1372 #ifde DEBUG_PRINT_GDB_MG 1373 comm_rvi :: `log (<< "gdbSUpShadowMuiGrid" << "[" << gfid << "]" 1374 << "[MGLev: " << lf << "]" 1375 << shage << " " 1376 << dl ). `ush (); 1379 cڡ  mynk = 2; 1380 cڡ  muigrid = dagh . `daghmuigrid (); 1382  ldex = 0; 1383  = 1; 1385   l = lf -1 ; > lc ;-- ) { 1386 ldex = l - lc ; 1387 * muigrid ; 1389 shmgage [ ldex ] = w `GridDaBlockStage (2)< Ty >; 1390 `GridDaBlockStage (2)< Ty >* shmg = shmgage [ ldex ]; 1392 cڡ BBox shmgbb = `crn ( shmged_bbox , axis , ); 1394 BBox & db = shmg -> bbox ; db = shmgbb ; 1395 BBox & ib = shmg -> ibbox ; ib = shmgbb ; 1396 BBox * bndrybb = shmg -> bndrybbox ; 1398 db . `growbydim ( extghwidth ); 1400 cڡ Cods ` ( shmgbb . `low ()); 1401 cڡ Cods `cu ( shmgbb . `u ()); 1402 cڡ Cods ` ( shmgbb . `size ()); 1404  imes2 = 0; 1405  i =0; i< mynk ; i++) { 1406 imes2 = 2* i ; 1408 i( bndryags [ imes2 ] = ACEF ) { 1409 i( extghwidth [ imes2 ] < _d [itimes2]) 1410 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1412 i( bwidth [ imes2 ] > 0) { 1413 bndrybb [ imes2 ] = db ; 1414 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1417 i( bndryags [ imes2 +1] = ACEF ) { 1418 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1419 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1420 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1422 i( bwidth [ imes2 +1] > 0) { 1423 bndrybb [ imes2 +1] = db ; 1424 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1428 shmg -> `lo ( nems ); 1430 #ifde DEBUG_PRINT_GDB_MG 1431 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1432 << "[MGLev: " << ldex << "]" 1433 << * shmg << " " 1434 << dl ). `ush (); 1439 cڡ  um = comm_rvi :: `oc_num (); 1440 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1443   p = 0 ; < um ;++ ) { 1444 i! gdb_wre_fo [ p ] ) ; 1445   i = 0 ; i < r_t ; i++ ) { 1446 i! gdb_wre_fo [ p ][ i ] ) ; 1447 gdb_wre_fo [ p ][ i ]-> shmgbbox = w BBox [ shmgvs -1]; 1448 BBox * b = gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1449 = 1; 1450   = lf -1 ;> lc ;l-- ) { 1451 ldex = - lc ; * muigrid ; 1452 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> shbbox , axis , ); 1453 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1454 BBox & bb = b [ ldex ]; 1455 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1456 shmgbb . `shrkbydim ( extghwidth ); 1457   r = 0 ; < mynk ;++ ) { 1458 i( ޭ [ nks [ r ]] > 0 && 1459 bb . `low ( r )== shmgbb .low&& bb. `u (r)==shmgbb.lower(r)) 1460 bb . `shi ( r , ޭ [ nks [r]]); 1468   r = 0 ; < 2* mynk ;++ ) { 1469 i gho_g_ag [ r ] = ACEF ) ; 1470 gho_g_fo [ r ]. shmgbbox = w BBox [ shmgvs -1]; 1471 BBox * b = gho_g_fo [ r ]. shmgbbox ; 1472 = 1; 1473   = lf -1 ;> lc ;l-- ) { 1474 ldex = - lc ; * muigrid ; 1475 b [ ldex ] = `crn ( gho_g_fo [ r ]. shbbox , axis , ); 1476 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1477 BBox & bb = b [ ldex ]; 1478 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1479 shmgbb . `shrkbydim ( extghwidth ); 1480   = 0 ;< mynk ;r++ ) { 1481 i( ޭ [ nks [ ]] > 0 && 1482 bb . `low ( )== shmgbb .lowr&& bb. `u (rr)==shmgbb.lower(rr)) 1483 bb . `shi ( , ޭ [ nks [rr]]); 1488 } } 1490 gme < ass gTy > 1491  GridDaBlock (2)< gTy >:: $gdbRShadowMuiGrid () 1493 i( shmgag = ACENu ) ; 1495 cڡ  mynk = 2; 1498  i ; 1499  i = 0 ; i < shmgvs -1 ; i++ ) 1500 i( shmgage [ i ] de shmgstorage[i]; 1502 i( shmgage de [] shmgstorage; 1505 cڡ  um = comm_rvi :: `oc_num (); 1506 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1508 i( gdb_wre_fo   p = 0 ; < um ;++ ) { 1509 i! gdb_wre_fo [ p ] ) ; 1510  i = 0 ; i < r_t ; i++ ) { 1511 i( gdb_wre_fo [ p ][ i ] && gdb_wre_fo[p][i]-> shmgbbox ) 1512 de [] gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1515   r = 0 ; < 2* mynk ;++ ) { 1516 i( gho_g_ag [ r ]== ACETrue && gho_g_fo [r]. shmgbbox ) 1517 de [] gho_g_fo [ r ]. shmgbbox ; 1520 shmgag = ACENu ; 1521 } } 1527 gme < ass gTy > 1528  GridDaBlock (2)< gTy >:: gdbWreGhos (cڡ  oc , 1529 cڡ  m , 1530 cڡ  axis , 1531 cڡ  d , 1532 cڡ  idt , 1533 cڡ  mgl , 1534 GridDaBuck < Ty >& gdb , 1535 cڡ  ) 1537 #ifde DEBUG_PRINT 1538 as ( d == ACE_Backwd || d== ACE_Fwd || axis == ACE_A ); 1539 as (( m ! ACEA && itm >0 && nems >= itm) || 1540 ( m = ACEA )); 1543 cڡ  gdex = ( ACEMaxDs * maxdex * axis ) + 1544 maxdex * d ); 1545 cڡ  gme = comm_rvi :: oc_me (); 1547 cڡ  gnms = ( m = ACEA ? nems : 1; 1549 #ifde DEBUG_PRINT_GDB_COMM 1550 gcomm_rvi :: log (<< "gdbWreGhos:" << "[P:" << oc << "]" 1551 << "[Me:" << me << "]" 1552 << "[NI:" << nms << "]" << "[I:" << m << "]" 1553 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1554 << "[A:" << axis << "]" << "[D:" << d << "]" 1555 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1556 << dl ). ush (); 1559 GDB_Iai * ggdbi = 0; 1560  gt = 0; 1561 i( ggdb_wre_fo [ oc ]) { 1562   gi = 0, gidx = ; i < gmaxdex ; i++ ) { 1563 i( ggdbi = gdb_wre_fo [ oc ][ dex + i ]) { 1565 #ifde DEBUG_PRINT_GDB_COMM 1566 comm_rvi :: log (<< "Wrg[" << idx << "]" 1567 << "{ " << * gdbi << " }" << dl ). ush (); 1570 BBox gbb = ibox (* gdbi , idt , mgl ); 1571 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1572 dex + i , m , me , idt , idx ); 1574 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 1576 #ifde DEBUG_PRINT_GDB_COMM 1577 i( gbb . emy ()) 1578 gcomm_rvi :: log () << "Null Write {" 1579 << * gdb . hd ( idx ) 1580 << "}" << dl ). ush (); 1583 gt ++; gidx ++; 1588  gt ; 1594 gme < ass gTy > 1595  GridDaBlock (2)< gTy >:: gdbWreDa (cڡ  m , 1596 cڡ  idt , 1597 cڡ  mgl , 1598 GridDaBuck < Ty >& gdb , 1599 cڡ  ) 1601 #ifde DEBUG_PRINT 1602 as (( m ! ACEA && itm >0 && nems >= itm) || 1603 ( m = ACEA )); 1606 cڡ  gme = comm_rvi :: oc_me (); 1609 cڡ BBox gbb = boundgbox ( idt , mgl ); 1611 cڡ  gnms = ( m = ACEA ? nems : 1; 1613 #ifde DEBUG_PRINT_GDB_COMM 1614 gcomm_rvi :: log (<< "gdbWreDa:" << "[Me:" << me << "]" 1615 << "[NI:" << nms << "]" << "[I:" << m << "]" 1616 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1617 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1618 << bb << dl ). ush (); 1621 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1622 mydex , m , me , idt , ); 1623 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( ), bb , m ); 1626 gme < ass gTy > 1627  GridDaBlock (2)< gTy >:: gdbWreDa (cڡ  m , 1628 cڡ  idt , 1629 cڡ  mgl , 1630 cڡ BBox & whe , 1631 GridDaBuck < Ty >& gdb , 1632 cڡ  ) 1634 #ifde DEBUG_PRINT 1635 as (( m ! ACEA && itm >0 && nems >= itm) || 1636 ( m = ACEA )); 1639 cڡ  gme = comm_rvi :: oc_me (); 1642 cڡ BBox gbb = boundgbox ( idt , mgl * gwhe ; 1644 cڡ  gnms = ( m = ACEA ? nems : 1; 1646 #ifde DEBUG_PRINT_GDB_COMM 1647 gcomm_rvi :: log (<< "gdbWreDa:" << "[Me:" << me << "]" 1648 << "[NI:" << nms << "]" << "[I:" << m << "]" 1649 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1650 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1651 << bb << dl ). ush (); 1654 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1655 mydex , m , me , idt , ); 1656 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( ), bb , m ); 1666 gme < ass gTy > 1667  GridDaBlock (2)< gTy >:: $gdbSUpPtGIaiInfo (cڡ  ign , 1668 cڡ * ޭ , 1669 cڡ BBox & dmged_bbox , 1670 cڡ BBox & dshmged_bbox , 1671 cڡ * d_d ) 1673 i( _ag = ACEF ) ; 1675 cڡ  mynk = 2; 1677 cڡ  um = comm_rvi :: `oc_num (); 1678 cڡ  me = comm_rvi :: `oc_me (); 1680 cڡ  fe = dagh . `fe (); 1681 cڡ  fev = dagh . `fev (); 1683 cڡ  daghnk = dagh . nk ; 1685 cڡ  fev = dagh . `fev (); 1686 cڡ  ev = dagh . `crv (); 1688 cڡ  ag = ( vnum > ev ? ACETrue : ACEF ; 1689 cڡ  pwag = ( vnum < fev ? ACETrue : ACEF ; 1691 cڡ  vnum = vnum - fev ; 1692 cڡ  pwvnum = vnum + fev ; 1694 cڡ  r_t = um * maxdex ; 1696 GridBoxLi * ggbl = dagh . `ggbl (); 1698  GridBox * gb = 0; 1699  i = 0; 1701  maxd = 0; 1702  i =0;i<2* daghnk ;i++) 1703 maxd = (maxd > _d [ i ]) ? maxrad : sten_rad[i]; 1705 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 1706 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 1709 i( ag ) { 1710 gdb_g_ad_fo = w GDB_Iai * [ r_t ]; 1711  i =0; i< r_t ; i++ gdb_g_ad_fo [i] = 0; 1713 GridBoxLi cgbl ; 1714 BBox `bbox ( `growbydim ( `crn ( mged_bbox , fe ), d_d )); 1715 ggbl -> `r ( bbox , vnum , cgbl ); 1717  gb = cgbl . `f (); gb; gb =rcgbl. `xt ()) { 1718 cڡ  idx = gb -> `gbIndex (); 1719 cڡ  owr = gb -> `gbOwr (); 1721 BBox `rbb ( bbox * gb -> `gbBBoxAbs ( vnum , ޭ )); 1722 i( rbb . `emy ()) ; 1724 i( ign ! ACE_A ) 1725 `gdbAlignBBox ( mynk , rbb , ign ); 1727 cڡ  dex = owr * maxdex + idx ; 1728 i(! gdb_g_ad_fo [ dex ]) 1729 gdb_g_ad_fo [ dex ] = w GDB_Iai ; 1730 gdb_g_ad_fo [ dex ]-> mbbox + rbb ; 1731 #ifde DEBUG_PRINT 1732 `as (! gdb_g_ad_fo [ dex ]-> mbbox . `emy ()); 1737 i( pwag ) { 1738 gdb_g_wre_fo = w GDB_Iai * [ r_t ]; 1739  i =0; i< r_t ; i++ gdb_g_wre_fo [i] = 0; 1741 GridBoxLi pwcgbl ; 1742 BBox `pwbbox ( `fe ( dmged_bbox , fe ,0)); 1743 ggbl -> `r ( pwbbox , pwvnum , pwcgbl , ޭ , fe * maxd ); 1745 cڡ BBox & ibbox = mage .ibbox; 1747  gb = pwcgbl . `f (); gb; gb =wcgbl. `xt ()) { 1748 cڡ  idx = gb -> `gbIndex (); 1749 cڡ  owr = gb -> `gbOwr (); 1751 BBox `wbb ( ibbox * `growbydim ( gb -> `gbBBoxAbs ( vnum , ޭ ), d_d )); 1753 i( wbb . `emy ()) ; 1755 i( ign ! ACE_A ) 1756 `gdbAlignBBox ( mynk , wbb , ign ); 1758 cڡ  dex = owr * maxdex + idx ; 1759 i(! gdb_g_wre_fo [ dex ]) 1760 gdb_g_wre_fo [ dex ] = w GDB_Iai ; 1761 #ifde DEBUG_PRINT 1762 `as ( gdb_g_wre_fo [ dex ]-> mbbox . `emy () || 1763 wbb . `mgab ( gdb_g_wre_fo [ dex ]-> mbbox , ޭ )); 1765 gdb_g_wre_fo [ dex ]-> mbbox + wbb ; 1766 #ifde DEBUG_PRINT 1767 `as (! gdb_g_wre_fo [ dex ]-> mbbox . `emy ()); 1775 } } 1777 gme < ass gTy > 1778  GridDaBlock (2)< gTy >:: gdbSUpPtGIaiInfo ( 1779 cڡ GridDaBlock (2)< Ty >* gdbtm ) 1781 i( _ag = ACEF ) ; 1783 cڡ  gmynk = 2 ; 1784 cڡ  gum = comm_rvi :: oc_num (); 1785 cڡ  gr_t = um * maxdex ; 1787 gGDB_Iai **& gmw = gdb_g_wre_fo ; 1788 gGDB_Iai **& gmr = gdb_g_ad_fo ; 1790 GDB_Iai ** ghw = gdbtm -> gdb_g_wre_fo ; 1791 GDB_Iai ** ghr = gdbtm -> gdb_g_ad_fo ; 1793 i(! ghw && ! ghr ) ; 1795 i( ghw gmw = w GDB_Iai * [ r_t ]; 1796 i( ghr gmr = w GDB_Iai * [ r_t ]; 1798  gp = 0; 1799  gp = 0; < gr_t ;++) { 1800 i( gmw mw[ p ] = 0; 1801 i( gmr mr[ p ] = 0; 1803 i( ghw && hw[ p ]) { 1804 gmw [ p ] = w GDB_Iai ; 1805 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 1809 i( ghr && hr[ p ]) { 1810 gmr [ p ] = w GDB_Iai ; 1811 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 1820 gme < ass gTy > 1821  GridDaBlock (2)< gTy >:: $gdbSUpPtSIaiInfo (cڡ  ign , 1822 cڡ * ޭ , 1823 cڡ BBox & dmged_bbox , 1824 cڡ BBox & dshmged_bbox , 1825 cڡ * d_d ) 1827 i( _ag = ACEF ) ; 1829 cڡ  mynk = 2; 1831 cڡ  um = comm_rvi :: `oc_num (); 1832 cڡ  me = comm_rvi :: `oc_me (); 1834 cڡ  fe = dagh . `fe (); 1835 cڡ  fev = dagh . `fev (); 1837 cڡ  daghnk = dagh . nk ; 1839 cڡ  fev = dagh . `fev (); 1840 cڡ  ev = dagh . `crv (); 1842 cڡ  pwag = ( vnum > ev ? ACETrue : ACEF ; 1843 cڡ  ag = ( vnum < fev ? ACETrue : ACEF ; 1845 cڡ  pwvnum = vnum - fev ; 1846 cڡ  vnum = vnum + fev ; 1848 cڡ  r_t = um * maxdex ; 1850 GridBoxLi * ggbl = dagh . `ggbl (); 1852  GridBox * gb = 0; 1853  i = 0; 1855  maxd = 0; 1856  i =0;i<2* daghnk ;i++) 1857 maxd = (maxd > _d [ i ]) ? maxrad : sten_rad[i]; 1859 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 1860 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 1863 i( pwag ) { 1864 gdb_t_wre_fo = w GDB_Iai * [ r_t ]; 1865  i =0; i< r_t ; i++ gdb_t_wre_fo [i] = 0; 1867 GridBoxLi pwcgbl ; 1868 BBox `pwbbox ( `crn ( dmged_bbox , fe )); 1869 ggbl -> `r ( pwbbox , pwvnum , pwcgbl , ޭ , fe * maxd ); 1871  gb = pwcgbl . `f (); gb; gb =wcgbl. `xt ()) { 1872 cڡ  idx = gb -> `gbIndex (); 1873 cڡ  owr = gb -> `gbOwr (); 1875 BBox `wbb ( pwbbox * gb -> `gbBBoxAbs ( pwvnum , ޭ )); 1876 i( wbb . `emy ()) ; 1878 i( ign ! ACE_A ) 1879 `gdbAlignBBox ( mynk , wbb , ign ); 1881 cڡ  dex = owr * maxdex + idx ; 1882 i(! gdb_t_wre_fo [ dex ]) 1883 gdb_t_wre_fo [ dex ] = w GDB_Iai ; 1884 gdb_t_wre_fo [ dex ]-> mbbox + wbb ; 1885 #ifde DEBUG_PRINT 1886 `as (! gdb_t_wre_fo [ dex ]-> mbbox . `emy ()); 1891 i( ag ) { 1892 gdb_t_ad_fo = w GDB_Iai * [ r_t ]; 1893  i =0; i< r_t ; i++ gdb_t_ad_fo [i] = 0; 1895 GridBoxLi cgbl ; 1896 BBox `bbox ( `growbydim ( `fe ( dmged_bbox , fe ,0), d_d )); 1897 ggbl -> `r ( bbox , vnum , cgbl ); 1899 cڡ BBox & ibbox = mage .ibbox; 1901  gb = cgbl . `f (); gb; gb =rcgbl. `xt ()) { 1902 cڡ  idx = gb -> `gbIndex (); 1903 cڡ  owr = gb -> `gbOwr (); 1905 BBox `rbb ( ibbox * `growbydim ( gb -> `gbBBoxAbs ( vnum , ޭ ), d_d )); 1907 i( rbb . `emy ()) ; 1909 i( ign ! ACE_A ) 1910 `gdbAlignBBox ( mynk , rbb , ign ); 1912 cڡ  dex = owr * maxdex + idx ; 1913 i(! gdb_t_ad_fo [ dex ]) 1914 gdb_t_ad_fo [ dex ] = w GDB_Iai ; 1915 #ifde DEBUG_PRINT 1916 `as ( gdb_t_ad_fo [ dex ]-> mbbox . `emy () || 1917 rbb . `mgab ( gdb_t_ad_fo [ dex ]-> mbbox , ޭ )); 1919 gdb_t_ad_fo [ dex ]-> mbbox + rbb ; 1920 #ifde DEBUG_PRINT 1921 `as (! gdb_t_ad_fo [ dex ]-> mbbox . `emy ()); 1929 } } 1931 gme < ass gTy > 1932  GridDaBlock (2)< gTy >:: gdbSUpPtSIaiInfo ( 1933 cڡ GridDaBlock (2)< Ty >* gdbtm ) 1935 i( _ag = ACEF ) ; 1937 cڡ  gmynk = 2 ; 1938 cڡ  gum = comm_rvi :: oc_num (); 1939 cڡ  gr_t = um * maxdex ; 1941 gGDB_Iai **& gmw = gdb_t_wre_fo ; 1942 gGDB_Iai **& gmr = gdb_t_ad_fo ; 1944 GDB_Iai ** ghw = gdbtm -> gdb_t_wre_fo ; 1945 GDB_Iai ** ghr = gdbtm -> gdb_t_ad_fo ; 1947 i(! ghw && ! ghr ) ; 1949 i( ghw gmw = w GDB_Iai * [ r_t ]; 1950 i( ghr gmr = w GDB_Iai * [ r_t ]; 1952  gp = 0; 1953  gp = 0; < gr_t ;++) { 1954 i( gmw mw[ p ] = 0; 1955 i( gmr mr[ p ] = 0; 1957 i( ghw && hw[ p ]) { 1958 gmw [ p ] = w GDB_Iai ; 1959 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 1963 i( ghr && hr[ p ]) { 1964 gmr [ p ] = w GDB_Iai ; 1965 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 1975 gme < ass gTy > 1976  GridDaBlock (2)< gTy >:: $gdbRPtIaiInfo () 1978 i( _ag = ACEF ) ; 1980 GDB_Iai **& mgw = gdb_g_wre_fo ; 1981 GDB_Iai **& mgr = gdb_g_ad_fo ; 1983 GDB_Iai **& msw = gdb_t_wre_fo ; 1984 GDB_Iai **& m = gdb_t_ad_fo ; 1986 i(! mgw && ! mgr && ! msw && ! m ) ; 1988 cڡ  r_t = comm_rvi :: `oc_num (* maxdex ; 1989  p = 0; 1990  p = 0; < r_t ;++) { 1991 i( mgw ) { 1992 de mgw [ p ]; 1993 mgw [ p ] = 0; 1995 i( mgr ) { 1996 de mgr [ p ]; 1997 mgr [ p ] = 0; 1999 i( msw ) { 2000 de msw [ p ]; 2001 msw [ p ] = 0; 2003 i( m ) { 2004 de m [ p ]; 2005 m [ p ] = 0; 2009 i( mgw de [] mgw; 2010 i( mgr de [] mgr; 2011 i( msw de [] msw; 2012 i( m de [] msr; 2013 mgw = 0; mgr = 0; 2014 msw = 0; m = 0; 2015 } } 2025 gme < ass gTy > 2026  GridDaBlock (2)< gTy >:: $gdbSUpPtMa (cڡ * ޭ , 2027 cڡ * extghwidth ) 2029 i( _ag = ACEF ) ; 2031 i( _mage de arent_mstorage; 2033 cڡ  fe = dagh . `fe (); 2037 cڡ  mynk = 2; 2039 BBox `db ( `crn ( mged_bbox , fe )); 2041 db . `growbydim ( extghwidth ); 2043 cڡ Cods ` ( db . `low ()); 2044 cڡ Cods `cu ( db . `u ()); 2045 cڡ Cods ` ( db . `size ()); 2047  imes2 = 0; 2048  i =0; i< mynk ; i++) { 2049 imes2 = 2* i ; 2051 i( bndryags [ imes2 ] = ACEF ) { 2052 i( extghwidth [ imes2 ] < _d [itimes2]) 2053 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 2056 i( bndryags [ imes2 +1] = ACEF ) { 2057 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 2058 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 2062 _mage = w `GridDa (2)< Ty >( db , nems ); 2064 #ifde DEBUG_PRINT_GDB 2065 comm_rvi :: `log (<< "gdbSUpPtMa" << "[" << gfid << "] " 2066 << _mage -> `bbox () << " " 2067 << _mage -> `exs () << " " 2068 << dl ). `ush (); 2070 } } 2072 gme < ass gTy > 2073  GridDaBlock (2)< gTy >:: $gdbRPtMa () 2075 i( _ag = ACEF ) ; 2076 i( _mage de arent_mstorage; 2077 } } 2104 gme < ass gTy > 2105  GridDaBlock (2)< gTy >:: gdbWrePtGh (cڡ  oc , 2106 cڡ  m , 2107 cڡ  idt , 2108 cڡ  mgl , 2109 GridDaBuck < Ty >& gdb , 2110 cڡ  ) 2112 i( g_ag = ACEF )  0; 2113 #ifde DEBUG_PRINT 2114 as (( m ! ACEA && itm >0 && nems >= itm) || 2115 ( m = ACEA )); 2116 as ( idt = ACE_PtMa && mgl = ACENu ); 2119 cڡ  gmidt = 2120 ( idt = ACE_PtMa ? ACE_Ma : ACE_Shadow ; 2122 cڡ  gme = comm_rvi :: oc_me (); 2123 cڡ  gbadex = oc * maxdex ; 2125 cڡ  gnms = ( m = ACEA ? nems : 1; 2127 #ifde DEBUG_PRINT_GDB_COMM 2128 gcomm_rvi :: log (<< "gdbWrePtGh:" << "[P:" << oc << "]" 2129 << "[Me:" << me << "]" 2130 << "[NI:" << nms << "]" << "[I:" << m << "]" 2131 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2132 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2133 << dl ). ush (); 2136 GDB_Iai * ggdbi = 0; 2137  gt = 0; 2138 i( ggdb_g_wre_fo ) { 2139  gidx = ; 2140  gi ; 2141  gi = 0; i < gmaxdex ; i++) { 2142 i( ggdbi = gdb_g_wre_fo [ badex + i ]) { 2144 #ifde DEBUG_PRINT_GDB_COMM 2145 comm_rvi :: log (<< "WrgPtGh[" << idx << "]" 2146 << "{ " << * gdbi << " }" << dl ). ush (); 2149 BBox gbb = gdbi -> mbbox ; 2150 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2151 i , m , me , idt , idx ); 2153 ( gridda ( midt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2155 gt ++; gidx ++; 2159  gt ; 2162 gme < ass gTy > 2163  GridDaBlock (2)< gTy >:: gdbWrePtS (cڡ  oc , 2164 cڡ  m , 2165 cڡ  idt , 2166 cڡ  mgl , 2167 GridDaBuck < Ty >& gdb , 2168 cڡ  ) 2170 i( g_ag = ACEF )  0; 2171 #ifde DEBUG_PRINT 2172 as (( m ! ACEA && itm >0 && nems >= itm) || 2173 ( m = ACEA )); 2174 as ( idt = ACE_Ma && mgl = ACENu ); 2177 cڡ  gpidt = 2178 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 2180 cڡ  gme = comm_rvi :: oc_me (); 2181 cڡ  gbadex = oc * maxdex ; 2183 cڡ  gnms = ( m = ACEA ? nems : 1; 2185 #ifde DEBUG_PRINT_GDB_COMM 2186 gcomm_rvi :: log (<< "gdbWrePtS:" << "[P:" << oc << "]" 2187 << "[Me:" << me << "]" 2188 << "[NI:" << nms << "]" << "[I:" << m << "]" 2189 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2190 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2191 << dl ). ush (); 2194 GDB_Iai * ggdbi = 0; 2195  gt = 0; 2196 i( ggdb_t_wre_fo ) { 2197  gidx = ; 2198  gi ; 2199  gi = 0; i < gmaxdex ; i++) { 2200 i( ggdbi = gdb_t_wre_fo [ badex + i ]) { 2202 #ifde DEBUG_PRINT_GDB_COMM 2203 comm_rvi :: log (<< "WrgPtS[" << idx << "]" 2204 << "{ " << * gdbi << " }" << dl ). ush (); 2207 BBox gbb = gdbi -> mbbox ; 2208 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2209 i , m , me , idt , idx ); 2211 ( da ( pidt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2213 gt ++; gidx ++; 2217  gt ; 2228 gme < ass gTy > 2229  GridDaBlock (2)< gTy >:: $gdbSUpFluxIaiInfo (cڡ  ign , 2230 cڡ GhoIai & gi , 2231 cڡ * ޭ , 2232 cڡ BBox & dmged_bbox , 2233 cڡ BBox & dshmged_bbox ) 2235 i( ux_ag = ACEF ) ; 2237 cڡ  mynk = 2 ; 2238 cڡ  mynkx2 = 2* mynk ; 2240 cڡ  um = comm_rvi :: `oc_num (); 2242 cڡ  fe = dagh . `fe (); 2243 cڡ  fev = dagh . `fev (); 2245 cڡ  daghnk = dagh . nk ; 2247 cڡ  fev = dagh . `fev (); 2248 cڡ  ev = dagh . `crv (); 2250 cڡ  ag = ( vnum < fev ? ACETrue : ACEF ; 2251 cڡ  fwag = ( vnum > ev ? ACETrue : ACEF ; 2253 cڡ  vnum = vnum + fev ; 2254 cڡ  fwvnum = vnum - fev ; 2256 cڡ  r_t = um * mynkx2 * maxdex ; 2258 GridBoxLi * ggbl = dagh . `ggbl (); 2260  GridBox * gb = 0; 2261  r = 0; 2263 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 2264 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 2266  f [2*2]; 2267  r =0;< mynk ;++) { 2268 f [2* r ] = 1; fsr[2*r+1] = 1; 2272 i( ag ) { 2273 gdb_ux_ad_fo = w GDB_Iai * [ r_t ]; 2274  r =0;< r_t ;++ gdb_ux_ad_fo [r] = 0; 2276 GridBoxLi cgbl ; 2277 BBox `bbox ( `fe ( dmbbox , fe ,1)); 2278 ggbl -> `r ( bbox , vnum , cgbl , ޭ ,1); 2280 BBox hisbb , hisbbp , hisbbn ; 2281 BBox bbp , bbn ; 2282  dex , dex ; 2283  idx , owr ; 2285  GridBox * gb = 0; 2286  gb = cgbl . `f ();gb;gb=cgbl. `xt ()) { 2287 idx = gb -> `gbIndex (); 2288 owr = gb -> `gbOwr (); 2290 hisbb = `crn ( gb -> `gbBBoxAbs ( vnum , ޭ ), fe ); 2292  r =0;< mynk ;++{ f [2*r] = 1; fsr[2*r+1] = 1;} 2294  r =0;< mynk ;++) { 2295 hisbbn = gi . `Ibbox ( hisbb , r , ACE_Backwd , f ); 2296 hisbbp = gi . `Ibbox ( hisbb , r , ACE_Fwd , f ); 2298 i( ign ! ACE_A ) { 2299 `gdbAlignBBox ( mynk , hisbbn , ign ); 2300 `gdbAlignBBox ( mynk , hisbbp , ign ); 2303 bbn = mged_bbox * hisbbn ; 2304 bbp = mged_bbox * hisbbp ; 2306 i(! bbn . `emy ()) { 2307 dex = ( owr * mynkx2 * maxdex + (( r *2)*maxdex+ idx ; 2308 i(! gdb_ux_ad_fo [ dex ]) 2309 gdb_ux_ad_fo [ dex ] = w GDB_Iai ; 2310 #ifde DEBUG_PRINT 2311 `as ( gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2313 gdb_ux_ad_fo [ dex ]-> mbbox + bbn ; 2314 #ifde DEBUG_PRINT 2315 `as (! gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2318 i(! bbp . `emy ()) { 2319 dex = ( owr * mynkx2 * maxdex + (( r *2+1)*maxdex+ idx ; 2320 i(! gdb_ux_ad_fo [ dex ]) 2321 gdb_ux_ad_fo [ dex ] = w GDB_Iai ; 2322 #ifde DEBUG_PRINT 2323 `as ( gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2325 gdb_ux_ad_fo [ dex ]-> mbbox + bbp ; 2326 #ifde DEBUG_PRINT 2327 `as (! gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2330 f [2* r ] = 0; fsr[2*r+1] = 0; 2335 i( fwag ) { 2336 gdb_ux_wre_fo = w GDB_Iai * [ r_t ]; 2337  r =0;< r_t ;++ gdb_ux_wre_fo [r] = 0; 2339 GridBoxLi fwcgbl ; 2340 BBox `fwbbox ( `crn ( `grow ( dmbbox ,1), fe )); 2341 ggbl -> `r ( fwbbox , fwvnum , fwcgbl , ޭ ); 2343 BBox hisbb , myfwbbp , myfwbbn ; 2344 BBox fwbbp , fwbbn ; 2345  wpdex , wndex ; 2346  idx , owr ; 2348 BBox `fmbbox ( `crn ( mged_bbox , fe )); 2350  GridBox * gb = 0; 2351  gb = fwcgbl . `f ();gb;gb=fwcgbl. `xt ()) { 2352 idx = gb -> `gbIndex (); 2353 owr = gb -> `gbOwr (); 2355 hisbb = gb -> `gbBBoxAbs ( fwvnum , ޭ ); 2356 i( ign ! ACE_A `gdbAlignBBox ( mynk , hisbb ,lign); 2358  r =0;< mynk ;++{ f [2*r] = 1; fsr[2*r+1] = 1;} 2360  r =0;< mynk ;++) { 2362 myfwbbn = gi . `Ibbox ( fmbbox , r , ACE_Backwd , f ); 2363 myfwbbp = gi . `Ibbox ( fmbbox , r , ACE_Fwd , f ); 2365 fwbbn = myfwbbn * hisbb ; 2366 fwbbp = myfwbbp * hisbb ; 2368 i(! fwbbn . `emy ()) { 2369 wndex = ( owr * mynkx2 * maxdex + (( r *2)*maxdex+ idx ; 2370 i(! gdb_ux_wre_fo [ wndex ]) 2371 gdb_ux_wre_fo [ wndex ] = w GDB_Iai ; 2372 #ifde DEBUG_PRINT 2373 `as ( gdb_ux_wre_fo [ wndex ]-> mbbox . `emy ()); 2375 gdb_ux_wre_fo [ wndex ]-> mbbox + fwbbn ; 2376 #ifde DEBUG_PRINT 2377 `as (! gdb_ux_wre_fo [ wndex ]-> mbbox . `emy ()); 2380 i(! fwbbp . `emy ()) { 2381 wpdex = ( owr * mynkx2 * maxdex + (( r *2+1)*maxdex+ idx ; 2382 i(! gdb_ux_wre_fo [ wpdex ]) 2383 gdb_ux_wre_fo [ wpdex ] = w GDB_Iai ; 2384 #ifde DEBUG_PRINT 2385 `as ( gdb_ux_wre_fo [ wpdex ]-> mbbox . `emy ()); 2387 gdb_ux_wre_fo [ wpdex ]-> mbbox + fwbbp ; 2388 #ifde DEBUG_PRINT 2389 `as (! gdb_ux_wre_fo [ wpdex ]-> mbbox . `emy ()); 2392 f [2* r ] = 0; fsr[2*r+1] = 0; 2396 } } 2398 gme < ass gTy > 2399  GridDaBlock (2)< gTy >:: gdbSUpFluxIaiInfo ( 2400 cڡ GridDaBlock (2)< Ty >* gdbtm ) 2403 i( ux_ag = ACEF ) ; 2405 cڡ  gmynk = 2 ; 2406 cڡ  gum = comm_rvi :: oc_num (); 2407 cڡ  gr_t = um * (2* mynk * maxdex ; 2409 gGDB_Iai **& gmw = gdb_ux_wre_fo ; 2410 gGDB_Iai **& gmr = gdb_ux_ad_fo ; 2412 GDB_Iai ** ghw = gdbtm -> gdb_ux_wre_fo ; 2413 GDB_Iai ** ghr = gdbtm -> gdb_ux_ad_fo ; 2415 i(! ghw && ! ghr ) ; 2417 i( ghw gmw = w GDB_Iai * [ r_t ]; 2418 i( ghr gmr = w GDB_Iai * [ r_t ]; 2420  gp = 0; 2421  gp = 0; < gr_t ;++) { 2422 i( gmw mw[ p ] = 0; 2423 i( gmr mr[ p ] = 0; 2425 i( ghw && hw[ p ]) { 2426 gmw [ p ] = w GDB_Iai ; 2427 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 2431 i( ghr && hr[ p ]) { 2432 gmr [ p ] = w GDB_Iai ; 2433 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 2439 gme < ass gTy > 2440  GridDaBlock (2)< gTy >:: $gdbRFluxIaiInfo () 2442 i( ux_ag = ACEF ) ; 2444 cڡ  mynk = 2 ; 2446 GDB_Iai **& mw = gdb_ux_wre_fo ; 2447 GDB_Iai **& mr = gdb_ux_ad_fo ; 2449 i(! mw && ! mr ) ; 2451 cڡ  r_t = comm_rvi :: `oc_num (* 2* mynk * maxdex ; 2452  p = 0; 2453  p = 0; < r_t ;++) { 2454 i( mw && mw[ p ]) { 2455 de mw [ p ]; 2456 mw [ p ] = 0; 2458 i( mr && mr[ p ]) { 2459 de mr [ p ]; 2460 mr [ p ] = 0; 2464 i( mw de [] mw; 2465 i( mr de [] mr; 2466 mw = 0; mr = 0; 2467 } } 2477 gme < ass gTy > 2478  GridDaBlock (2)< gTy >:: $gdbSUpFluxMa (cڡ GhoIai & gi ) 2480 i( ux_ag = ACEF ) ; 2482 cڡ  mynk = 2; 2483 cڡ  fe = dagh . `fe (); 2485 cڡ BBox `fmbbox ( `crn ( mged_bbox , fe )); 2487  r = 0; 2489  f [2*2]; 2490  r =0;< mynk ;++) { 2491 f [2* r ] = 1; fsr[2*r+1] = 1; 2492 i( ux_mage [2* r ] de flux_mstorage[2*r]; 2493 i( ux_mage [2* r +1] de flux_mstorage[2*r+1]; 2496 BBox fbb ; 2497  r =0;< mynk ;++) { 2498 fbb = gi . `Ibbox ( fmbbox , r , ACE_Backwd , f ); 2499 ux_mage [2* r ] = w `GridDa (2)< Ty >( fbb , nems ); 2501 fbb = gi . `Ibbox ( fmbbox , r , ACE_Fwd , f ); 2502 ux_mage [2* r +1] = w `GridDa (2)< Ty >( fbb , nems ); 2504 f [2* r ] = 0; fsr[2*r+1] = 0; 2506 #ifde DEBUG_PRINT_GDB 2507 comm_rvi :: `log () << "gdbSetUpFluxMain" 2508 << "[" << gfid << "] " 2509 << "[" << 2* r << "] " 2510 << ux_mage [2* r ]-> `bbox () << " " 2511 << ux_mage [2* r ]-> `exs () << " " 2512 << fmbbox << " " 2513 << dl ). `ush (); 2514 comm_rvi :: `log () << "gdbSetUpFluxMain" 2515 << "[" << gfid << "] " 2516 << "[" << 2* r +1 << "] " 2517 << ux_mage [2* r +1]-> `bbox () << " " 2518 << ux_mage [2* r +1]-> `exs () << " " 2519 << fmbbox << " " 2520 << dl ). `ush (); 2523 } } 2525 gme < ass gTy > 2526  GridDaBlock (2)< gTy >:: gdbSUpFluxMa (cڡ GridDaBlock(2)< Ty >* gdbtm ) 2528 i( ux_ag = ACEF ) ; 2530 cڡ  gmynk = 2; 2531  gr = 0; 2533  gr =0;< gmynk ;++) { 2535 i( gux_mage [2* r ] de flux_mstorage[2*r]; 2536 i( gux_mage [2* r +1] de flux_mstorage[2*r+1]; 2538 i( ggdbtm -> gux_mage [2* r ]) 2539 gux_mage [2* r ] = w GridDa (2)< Ty >( gdbtm -> ux_mage [2*r]-> bbox (), 2540 ggdbtm -> gux_mage [2* r ]-> nems ()); 2541 i( ggdbtm -> gux_mage [2* r +1]) 2542 gux_mage [2* r +1] = w GridDa (2)< Ty >( gdbtm -> ux_mage [2*r+1]-> bbox (), 2543 ggdbtm -> gux_mage [2* r +1]-> nems ()); 2545 #ifde DEBUG_PRINT_GDB 2546 gcomm_rvi :: log () << "gdbSetUpFluxMain" 2547 << "[" << gfid << "] " 2548 << "[" << 2* r << "] " 2549 << ux_mage [2* r ]-> bbox () << " " 2550 << ux_mage [2* r ]-> exs () << " " 2551 << dl ). ush (); 2552 gcomm_rvi :: log () << "gdbSetUpFluxMain" 2553 << "[" << gfid << "] " 2554 << "[" << 2* r +1 << "] " 2555 << ux_mage [2* r +1]-> bbox () << " " 2556 << ux_mage [2* r +1]-> exs () << " " 2557 << dl ). ush (); 2562 gme < ass gTy > 2563  GridDaBlock (2)< gTy >:: $gdbRFluxMa () 2565 i( ux_ag = ACEF ) ; 2567 cڡ  mynk = 2; 2568  r = 0; 2570  r =0;< mynk ;++) { 2571 i( ux_mage [2* r ] de flux_mstorage[2*r]; 2572 i( ux_mage [2* r +1] de flux_mstorage[2*r+1]; 2574 } } 2585 gme < ass gTy > 2586  GridDaBlock (2)< gTy >:: gdbWreFluxes (cڡ  oc , 2587 cڡ  m , 2588 cڡ  idt , 2589 cڡ  mgl , 2590 GridDaBuck < Ty >& gdb , 2591 cڡ  ) 2593 i( gux_ag = ACEF )  0; 2594 #ifde DEBUG_PRINT 2595 as (( m ! ACEA && itm >0 && nems >= itm) || 2596 ( m = ACEA )); 2597 as ( idt = ACE_FluxMa && mgl = ACENu ); 2600 cڡ  gme = comm_rvi :: oc_me (); 2601 cڡ  gbadex = oc * maxdex *(2*2); 2602 cڡ  gmynk = 2; 2603 cڡ  gnms = ( m = ACEA ? nems : 1; 2605 #ifde DEBUG_PRINT_GDB_COMM 2606 gcomm_rvi :: log (<< "gdbWreFluxes:" << "[P:" << oc << "]" 2607 << "[Me:" << me << "]" 2608 << "[NI:" << nms << "]" << "[I:" << m << "]" 2609 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2610 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2611 << dl ). ush (); 2614 GDB_Iai * ggdbi = 0; 2615  gt = 0; 2616 i( ggdb_ux_wre_fo ) { 2617  gidx = ; 2618  gr , gm , gi ; 2619  gr = 0; < gmynk ;++) { 2620  gm = 0; m < gmaxdex ; m++) { 2621 gi = (2* r )* maxdex + m ; 2622 i( ggdbi = gdb_ux_wre_fo [ badex + i ]) { 2624 #ifde DEBUG_PRINT_GDB_COMM 2625 comm_rvi :: log (<< "WrgFlux[" << idx << "]" 2626 << "{ " << * gdbi << " }" << dl ). ush (); 2629 BBox gbb = gdbi -> mbbox ; 2630 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2631 i , m , me , idt , idx ); 2633 ( uxda ( idt -(2* r ), mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2635 gt ++; gidx ++; 2638 gi = (2* r +1)* maxdex + m ; 2639 i( ggdbi = gdb_ux_wre_fo [ badex + i ]) { 2641 #ifde DEBUG_PRINT_GDB_COMM 2642 comm_rvi :: log (<< "WrgFlux[" << idx << "]" 2643 << "{ " << * gdbi << " }" << dl ). ush (); 2646 BBox gbb = gdbi -> mbbox ; 2647 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2648 i , m , me , idt , idx ); 2650 ( uxda ( idt -(2* r +1), mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2652 gt ++; gidx ++; 2657  gt ; 2663 gme < ass gTy > 2664 goam & gݔ << (oam& gos , cڡ GridDaBlock (2)< gTy >& ggdb ) 2666 i(& ggdb =( GridDaBlock (2)< Ty > * NULL  os ; 2668 cڡ  gmynk = 2; 2670 gos << "GridDataBlock(2): "; 2671 gos << "[GFid:" << ggdb . ggfid << "]" ; 2672 gos << "[Time:" << ggdb . gtimum << "]"; 2673 gos << "[Lev:" << ggdb . gvnum << "]"; 2674 gos << "[MyIndex:" << ggdb . gmydex << "]"; 2675 gos << "[NIms:" << ggdb . gnems << "]"; 2676 gos << gdl ; 2677 gos << "[Ma:" << ggdb . gmged_bbox << "]"; 2678 gos << "[Shadow:" << ggdb . gshmged_bbox << "]"; 2679 gos << gdl ; 2681 gos << "[Boundary Flags: "; 2682  gb ; 2683  gb = 0 ; b < gmynk ; b++) 2684 gos << ggdb . gbndryags [2* b ] << " " 2685 << ggdb . gbndryags [2* b +1] << " "; 2686 gos << "]" << gdl ; 2688 gos << "[HybridBoundary Flags: "; 2689  gb = 0 ; b < gmynk ; b++) 2690 gos << ggdb . ghybridbndryags [ b ] << " "; 2691 gos << "]" << gdl ; 2693 gos << "[Ghost Prolong Flags: "; 2694  gb = 0 ; b < gmynk ; b++) 2695 gos << ggdb . ggho_g_ag [2* b ] << " " 2696 << ggdb . ggho_g_ag [2* b +1] << " "; 2697 gos << "]" << gdl ; 2699 gos << "[Gho Prg Iais:" << gdl ; 2700  gb = 0 ; b < gmynk ; b++) { 2701 i( ggdb . ggho_g_ag [2* b ] = ACETrue ) 2702 os << " [" << 2* b << ":" << gdb . gho_g_fo [2*b] << "]" 2703 << dl ; 2704 i( ggdb . ggho_g_ag [2* b +1] = ACETrue ) 2705 os << " [" << 2* b +1 << ":" << gdb . gho_g_fo [2*b+1] << "]" 2706 << dl ; 2708 gos << "]" << gdl ; 2710 gos << "Ma Stage:" << gdl ; 2711 gos << " " << ggdb . gmage ; 2713 i( ggdb . gshag = ACETrue ) { 2714 os << "Shadow Stage:" << dl ; 2715 gos << " " << * ggdb . gshage ; 2717 cڡ  g = comm_rvi :: oc_num (); 2718  gr_t = ACEMaxAxis * ACEMaxDs * gdb . maxdex ; 2720 i( ggdb . ggdb_wre_fo ) { 2721 gos << "WrIais: " << gdl ; 2722  gn =0;< g ;++) { 2723 i( ggdb . ggdb_wre_fo [ n ]) 2724  gi =0;i< gr_t ;i++) 2725 i( ggdb . ggdb_wre_fo [ n ][ i ]) 2726 gos << " gdb_wre_fo[" << gn << "][" 2727 << gi << "," 2728 << gi % ggdb . gmaxdex << "," 2729 << gi / ggdb . gmaxdex << "]" 2730 << * ggdb . ggdb_wre_fo [ n ][ i ] 2731 << gdl ; 2734 i( ggdb . ggdb_ad_fo ) { 2735 gos << "Rd Iais: " << gdl ; 2736  gn =0;< g ;++) { 2737 i( ggdb . ggdb_ad_fo [ n ]) 2738  gi =0;i< gr_t ;i++) 2739 i( ggdb . ggdb_ad_fo [ n ][ i ]) 2740 gos << " gdb_ad_fo[" << gn << "][" 2741 << gi << "," 2742 << gi % ggdb . gmaxdex << "," 2743 << gi / ggdb . gmaxdex << "]" 2744 << * ggdb . ggdb_ad_fo [ n ][ i ] 2745 << gdl ; 2749 i( ggdb . g_ag = ACETrue ) { 2750 os << "Parent Storage: " 2751 << gdb . _mage -> bbox () << " " 2752 << gdb . _mage -> exs () << " " 2753 << dl ; 2755 gr_t = * gdb . maxdex ; 2757 i( ggdb . ggdb_g_ad_fo ) { 2758 gos << "PGh Rd Iais: " << gdl ; 2759  gi =0;i< gr_t ;i++) 2760 i( ggdb . ggdb_g_ad_fo [ i ]) 2761 gos << " gdb_gparent_read_info[" 2762 << gi / ggdb . gmaxdex << "][" 2763 << gi % ggdb . gmaxdex << "] " 2764 << * ggdb . ggdb_g_ad_fo [ i ] 2765 << gdl ; 2767 i( ggdb . ggdb_g_wre_fo ) { 2768 gos << "PGh WrIais: " << gdl ; 2769  gi =0;i< gr_t ;i++) 2770 i( ggdb . ggdb_g_wre_fo [ i ]) 2771 gos << " gdb_gparent_write_info[" 2772 << gi / ggdb . gmaxdex << "][" 2773 << gi % ggdb . gmaxdex << "] " 2774 << * ggdb . ggdb_g_wre_fo [ i ] 2775 << gdl ; 2777 i( ggdb . ggdb_t_ad_fo ) { 2778 gos << "PS Rd Iais: " << gdl ; 2779  gi =0;i< gr_t ;i++) 2780 i( ggdb . ggdb_t_ad_fo [ i ]) 2781 gos << " gdb_sparent_read_info[" 2782 << gi / ggdb . gmaxdex << "][" 2783 << gi % ggdb . gmaxdex << "] " 2784 << * ggdb . ggdb_t_ad_fo [ i ] 2785 << gdl ; 2787 i( ggdb . ggdb_t_wre_fo ) { 2788 gos << "PS WrIais: " << gdl ; 2789  gi =0;i< gr_t ;i++) 2790 i( ggdb . ggdb_t_wre_fo [ i ]) 2791 gos << " gdb_sparent_write_info[" 2792 << gi / ggdb . gmaxdex << "][" 2793 << gi % ggdb . gmaxdex << "] " 2794 << * ggdb . ggdb_t_wre_fo [ i ] 2795 << gdl ; 2799 i( ggdb . gux_ag = ACETrue ) { 2800 os << "Flux Stage: " << dl ; 2801  gb =0;b< gmynk ;b++) { 2802 gos << "\t[" << 2* gb << "] " 2803 << ggdb . gux_mage [2* b ]-> bbox () << " " 2804 << ggdb . gux_mage [2* b ]-> exs () << " " 2805 << gdl 2806 << "\t[" << 2* gb +1 << "] " 2807 << ggdb . gux_mage [2* b +1]-> bbox () << " " 2808 << ggdb . gux_mage [2* b +1]-> exs () << " " 2809 << gdl ; 2811 gr_t = * mynk * 2 * gdb . maxdex ; 2813 i( ggdb . ggdb_ux_ad_fo ) { 2814 gos << "Flux Rd Iais: " << gdl ; 2815  gi =0;i< gr_t ;i++) 2816 i( ggdb . ggdb_ux_ad_fo [ i ]) 2817 gos << " gdb_ux_ad_fo[" << gi << "][" 2818 << gi /( ggdb . maxdex * gmynk *2) << "][" 2819 << ( gi %( ggdb . maxdex * gmynk *2))%(myrank) << "][" 2820 << ( gi %( ggdb . maxdex * gmynk *2))/(2*myrank) << "] " 2821 << * ggdb . ggdb_ux_ad_fo [ i ] 2822 << gdl ; 2824 i( ggdb . ggdb_ux_wre_fo ) { 2825 gos << "Flux WrIais: " << gdl ; 2826  gi =0;i< gr_t ;i++) 2827 i( ggdb . ggdb_ux_wre_fo [ i ]) 2828 gos << " gdb_ux_wre_fo[" << gi << "][" 2829 << gi /( ggdb . maxdex * gmynk *2) << "][" 2830 << ( gi %( ggdb . maxdex * gmynk *2))%(myrank) << "][" 2831 << ( gi %( ggdb . maxdex * gmynk *2))/(2*myrank) << "] " 2832 << * ggdb . ggdb_ux_wre_fo [ i ] 2833 << gdl ; 2836  gos ; 2839 gme < ass gTy > 2840 goam & gݔ <<(oam& gos , cڡ GridDaBlockStage (2)< gTy >& ggdbs ) 2842 i(& ggdbs =( GridDaBlockStage (2)< Ty > * NULL  os ; 2844 cڡ  gmynk = 2; 2846 gos << "GDBStorage: "; 2847 gos << ggdbs . gbbox << gdbs. gibbox ; 2848 gos << "[ "; 2849  gb = 0 ; b < gmynk ; b++) { 2850 i(! ggdbs . gbndrybbox [2* b ]. emy () gos << gdbs.bndrybbox[2*b]; 2851 i(! ggdbs . gbndrybbox [2* b +1]. emy () gos << gdbs.bndrybbox[2*b+1]; 2853 gos << " ]" << gdl ; 2854  gos ; 2860 gme < ass gTy > 2861 gofam & gݔ << (ofam& gofs , cڡ GridDaBlock (2)< gTy >& ggdb ) 2863 i(& ggdb =( GridDaBlock (2)< Ty > * NULL  ofs ; 2865 cڡ  gmynk = 2; 2867 gofs . wre ((*)& gdb . timum ,()); 2868 gofs . wre ((*)& gdb . vnum ,()); 2869 gofs . wre ((*)& gdb . shag ,()); 2870 gofs . wre ((*)& gdb . nems ,()); 2872 gofs . wre ((*)& gdb . _ag ,()); 2873 gofs . wre ((*)& gdb . ux_ag ,()); 2875 gofs << ggdb . gridda ( ACE_Ma , ACENu ); 2876 i( ggdb . gshag = ACETrue ) 2877 ofs << gdb . gridda ( ACE_Shadow , ACENu ); 2879 i( ggdb . g_ag = ACETrue ) { 2880 ofs << gdb . da ( ACE_Ma , ACENu ); 2885 i( ggdb . gux_ag = ACETrue ) { 2886  r =0; gr < gmynk ;++) { 2887 gofs << ggdb . uxda ( ACE_FluxMa -(2* r ), ACENu ); 2891 gofs << ggdb . uxda ( ACE_FluxMa -(2* r +1), ACENu ); 2897  gofs ; 2900 gme < ass gTy > 2901 gifam & gݔ >> (ifam& gifs , GridDaBlock (2)< gTy >& ggdb ) 2903 i(& ggdb =( GridDaBlock (2)< Ty > * NULL  ifs ; 2905 cڡ  gmynk = 2; 2907  gtmimum , gtmevnum , gtmpshag , gtmems ; 2908  gtmag , gtmpfag ; 2910 gifs . ad ((*)& tmimum ,()); 2911 gifs . ad ((*)& tmevnum ,()); 2912 gifs . ad ((*)& tmpshag ,()); 2913 gifs . ad ((*)& tmems ,()); 2915 gifs . ad ((*)& tmag ,()); 2916 gifs . ad ((*)& tmpfag ,()); 2918 #ifde DEBUG_PRINT 2919 as ( tmimum = gdb . timum && 2920 tmevnum = gdb . vnum && 2921 tmems = gdb . nems ); 2923 gifs >> ggdb . gridda ( ACE_Ma , ACENu ); 2924 i( ggdb . gshag = ACETrue && tmpshag == ACETrue) 2925 ifs >> gdb . gridda ( ACE_Shadow , ACENu ); 2927 i( ggdb . g_ag = ACETrue && tmag == ACETrue) { 2928 ifs >> gdb . da ( ACE_Ma , ACENu ); 2933 i( ggdb . gux_ag = ACETrue && tmpfag == ACETrue) { 2934  r =0; gr < gmynk ;++) { 2935 gifs >> ggdb . uxda ( ACE_FluxMa -(2* r ), ACENu ); 2939 gifs >> ggdb . uxda ( ACE_FluxMa -(2* r +1), ACENu ); 2945  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlock2.h 1 #ide _uded_GridDaBlock2_h 2  #_uded_GridDaBlock2_h ) 16  ~"GridDaBlockComm.h " 18  ~"GridDa2.h " 19  ~"GDBStage2.h " 21 #ide GridDaBlock 22  #GridDaBlock ( dim `me2 ( GridDaBlock ,dim) ) 25 gme < ass gTy > cs GridFuni (2); 27 #i defed ( __GNUG__ || defed( __GNUC__ ) 28 gme < ass gTy > cs GridDaBlock (2); 30 gme < ass gTy > 31 goam & gݔ <<(oam&, cڡ GridDaBlock (2)< gTy >&); 32 gme < ass gTy > 33 gofam & gݔ <<(ofam&, cڡ GridDaBlock (2)< gTy >&); 34 gme < ass gTy > 35 gifam & gݔ >>(ifam&, GridDaBlock (2)< gTy >&); 38 gme < ass gTy > 39 ass GridDaBlock (2) 41 #i defed ( __GNUG__ || defed( __GNUC__ ) 42 nd goam & gݔ << <>(oam&, cڡ GridDaBlock (2)< gTy >&); 43 nd gofam & gݔ << <>(ofam&, cڡ GridDaBlock (2)< gTy >&); 44 nd gifam & gݔ >> <>(ifam&, GridDaBlock (2)< gTy >&); 46 nd goam & gݔ << (oam&, cڡ GridDaBlock (2)< gTy >&); 47 nd gofam & gݔ << (ofam&, cڡ GridDaBlock (2)< gTy >&); 48 nd gifam & gݔ >> (ifam&, GridDaBlock (2)< gTy >&); 51 nd ass GridFuni (2)< gTy >; 53 cڡ  ggfid ; 58  gowr ; 59  gtimum ; 60  gvnum ; 61  gmydex ; 62  g_d [2*2]; 68  guag ; 69  gnks [2]; 70  gnems ; 71 BBox gmged_bbox ; 72 BBox gshmged_bbox ; 74  gbndryags [2*2]; 75  ghybridbndryags [2]; 81 GridDaBlockStage (2)< gTy > gmage ; 87  gshag ; 88 GridDaBlockStage (2)< gTy >* gshage ; 94  gmgag ; 95  gmglfe ; 96  gmglcr ; 97  gmgvs ; 98 GridDaBlockStage (2)< gTy >** gmgage ; 104  gshmgag ; 105  gshmglfe ; 106  gshmglcr ; 107  gshmgvs ; 108 GridDaBlockStage (2)< gTy >** gshmgage ; 114  gcomm_ag ; 115  ggho_g_ag [2*2]; 116  gmaxdex ; 117 GDB_Iai ggho_g_fo [2*2]; 118 GDB_Iai *** ggdb_wre_fo ; 119 GDB_Iai *** ggdb_ad_fo ; 120 GridTabGhoRcv * ggdb_da_rcv ; 126  g_ag ; 127 GridDa (2)< gTy >* g_mage ; 129 GDB_Iai ** ggdb_g_wre_fo ; 130 GDB_Iai ** ggdb_g_ad_fo ; 131 GDB_Iai ** ggdb_t_wre_fo ; 132 GDB_Iai ** ggdb_t_ad_fo ; 138  gux_ag ; 139 GridDa (2)< gTy >* gux_mage [2*2]; 141 GDB_Iai ** ggdb_ux_wre_fo ; 142 GDB_Iai ** ggdb_ux_ad_fo ; 148 gGridTab & ggb ; 154 gGridHrchy & gdagh ; 157 give : 161 GridDaBlock (2)(cڡ GridDaBlock(2)< Ty >& h ); 162 GridDaBlock (2)< gTy > cڡ& gݔ =(cڡ GridDaBlock(2)< Ty >& h ); 164 give : 168 GridDaBlock (2)(cڡ  gf , 169 gGridHrchy & ggh , 170 gGridTab & ggt , 171 cڡ gGhoIai & ggi , 172 cڡ  gmidx , 173 cڡ gGridBox & ggb , 174 cڡ  gnm , 175 cڡ  gtime , 176 cڡ  gv , 177 cڡ * gbwidth , 178 cڡ * gextghwidth , 179 cڡ * gޭ , 180 cڡ * g , 181 cڡ  gign , 182 cڡ  gmdex , 183 cڡ  gcag , 184 cڡ  gsag , 185 cڡ  gpag , 186 cڡ  gfag , 187 cڡ GridDaBlock (2)< gTy >* ggdbtm , 188 GridDaBlock (2)< gTy >* ggdbeu =0); 193 ~ GridDaBlock (2)(); 203  gdbSUpBoundyFgs ( GridBoxLi & gbl , 204 cڡ GhoIai & gi , 205 cڡ * ޭ , 206 cڡ * d ); 208  gdbSUpGhoIaiInfo ( GridBoxLi & mcgbl , 209 GridBoxLi & scgbl , 210 cڡ  ign , 211 cڡ GhoIai & gi , 212 cڡ * ޭ , 213 cڡ BBox & dagh_mged_bbox , 214 cڡ BBox & dagh_shmged_bbox , 215 cڡ * dagh_d ); 217  gdbSUpGhoIaiInfo ( 218 cڡ GridDaBlock (2)< Ty >* gdbtm ); 220  gdbRGhoIaiInfo (); 222  gdbAddGhoIaiInfo (cڡ  axis , cڡ  d , 223 cڡ BBox & rb , cڡ BBox& wb , 224 cڡ BBox & hisbb , 225 cڡ  owr , cڡ  idx ); 226  gdbAddShadowGhoIaiInfo (cڡ  axis , cڡ  d , 227 cڡ BBox & b , cڡ BBox& swb , 228 cڡ BBox & shisbb , 229 cڡ  owr , cڡ  idx ); 234  gdbSUpMa (cڡ * ޭ , 235 cڡ * bwidth , cڡ * extghwidth , 236 GridDaBlock (2)< Ty >* gdbeu =0); 241  gdbSUpShadow (cڡ * ޭ , 242 cڡ * bwidth , cڡ * extghwidth , 243 GridDaBlock (2)< Ty >* gdbeu =0); 244  gdbRShadow (); 249  gdbSUpPtMa (cڡ * ޭ , 250 cڡ * extghwidth ); 251  gdbRPtMa (); 255 le  gdbSUpPtIaiInfo (cڡ  ign , 256 cڡ * ޭ , 257 cڡ BBox & dagh_mged_bbox , 258 cڡ BBox & dagh_shmged_bbox , 259 cڡ * dagh_d ) 261 gdbSUpPtGIaiInfo ( ign , 262 ޭ , 263 dagh_mged_bbox , 264 dagh_shmged_bbox , 265 dagh_d ); 266 gdbSUpPtSIaiInfo ( ign , 267 ޭ , 268 dagh_mged_bbox , 269 dagh_shmged_bbox , 270 dagh_d ); 272 le  gdbSUpPtIaiInfo (cڡ GridDaBlock (2)< Ty >* gdbtm ) 274 gdbSUpPtGIaiInfo ( gdbtm ); 275 gdbSUpPtSIaiInfo ( gdbtm ); 279  gdbSUpPtGIaiInfo (cڡ  ign , 280 cڡ * ޭ , 281 cڡ BBox & dagh_mged_bbox , 282 cڡ BBox & dagh_shmged_bbox , 283 cڡ * dagh_d ); 284  gdbSUpPtGIaiInfo (cڡ GridDaBlock (2)< Ty >* gdbtm ); 287  gdbSUpPtSIaiInfo (cڡ  ign , 288 cڡ * ޭ , 289 cڡ BBox & dagh_mged_bbox , 290 cڡ BBox & dagh_shmged_bbox , 291 cڡ * dagh_d ); 292  gdbSUpPtSIaiInfo (cڡ GridDaBlock (2)< Ty >* gdbtm ); 294  gdbRPtIaiInfo (); 298  gdbSUpFluxMa (cڡ GhoIai & gi ); 299  gdbSUpFluxMa (cڡ GridDaBlock (2)< Ty >* gdbtm ); 300  gdbRFluxMa (); 304  gdbSUpFluxIaiInfo (cڡ  ign , 305 cڡ GhoIai & gi , 306 cڡ * ޭ , 307 cڡ BBox & dmged_bbox , 308 cڡ BBox & dshmged_bbox ); 309  gdbSUpFluxIaiInfo (cڡ GridDaBlock (2)< Ty >* gdbtm ); 310  gdbRFluxIaiInfo (); 314  gdbSUpMuiGrid (cڡ  lc , cڡ  lf , 315 cڡ * ޭ , 316 cڡ * bwidth , cڡ * extghwidth ); 317  gdbSUpMuiGrid (cڡ  axis , 318 cڡ  lc , cڡ  lf , 319 cڡ * ޭ , 320 cڡ * bwidth , cڡ * extghwidth ); 321  gdbRMuiGrid (); 326  gdbSUpShadowMuiGrid (cڡ  lc , cڡ  lf , 327 cڡ * ޭ , 328 cڡ * bwidth , cڡ * extghwidth ); 329  gdbSUpShadowMuiGrid (cڡ  axis , 330 cڡ  lc , cڡ  lf , 331 cڡ * ޭ , 332 cڡ * bwidth , cڡ * extghwidth ); 333  gdbRShadowMuiGrid (); 338 gpublic : 339 le  dexme (cڡ  i ) const 340 { ( mydex = i ); } 342 le  has_ud () const 343 {  ( guag = ACETrue ); } 345 le  has_ighb (cڡ  d ) const 346 {  ( gbndryags [ d ] = ACEF ); } 348 le  has_boundy (cڡ  d ) const 349 {  ( gbndryags [ d ] ! ACEF ); } 351 le  has_adtiveboundy (cڡ  d ) const 352 {  ( gbndryags [ d ] = ACE_AdtiveBoundy ); } 353 le  has_exboundy (cڡ  d ) const 354 {  ( gbndryags [ d ] = ACE_ExBoundy ); } 356 le  g_gho (cڡ  d ) const 357 {  ( ggho_g_ag [ d ] = ACETrue ); } 363 give : 364  gdbWrePtGh (cڡ  oc , 365 cڡ  m , 366 cڡ  idt , 367 cڡ  mgl , 368 GridDaBuck < Ty >& gdb , 369 cڡ  ); 370  gdbWrePtS (cڡ  oc , 371 cڡ  m , 372 cڡ  idt , 373 cڡ  mgl , 374 GridDaBuck < Ty >& gdb , 375 cڡ  ); 377 gpublic : 378 le GDB_Iai ** gdbPtGhRdInfo () 379 { ( ( gdb_g_ad_fo ) ? gdb_gparent_read_info : 0 );} 380 le GDB_Iai ** gdbPtGhWreInfo () 381 { ( ( ggdb_g_wre_fo ) ? gdb_gparent_write_info : 0 );} 383 le GDB_Iai ** gdbPtSRdInfo () 384 { ( ( ggdb_t_ad_fo ) ? gdb_sparent_read_info : 0 );} 385 le GDB_Iai ** gdbPtSWreInfo () 386 { ( ( ggdb_t_wre_fo ) ? gdb_sparent_write_info : 0 );} 392 give : 393  gdbWreFluxes (cڡ  oc , 394 cڡ  m , 395 cڡ  idt , 396 cڡ  mgl , 397 GridDaBuck < Ty >& gdb , 398 cڡ  ); 400 gpublic : 401 le GDB_Iai ** gdbFluxRdInfo () 402 { ( ( gdb_ux_ad_fo ) ? gdb_flux_read_info : 0 );} 403 le GDB_Iai ** gdbFluxWreInfo () 404 { ( ( ggdb_ux_wre_fo ) ? gdb_flux_write_info : 0 );} 410 give : 411  gdbWreGhos (cڡ  oc , 412 cڡ  m , 413 cڡ  axis , 414 cڡ  d , 415 cڡ  idt , 416 cڡ  mgl , 417 GridDaBuck < Ty >& gdb , 418 cڡ  ); 420 gpublic : 421 le GDB_Iai ** gdbRdInfo (cڡ  oc ) 422 { ( ( gdb_ad_fo [ oc ]) ? gdb_read_info[proc] : 0 );} 423 le GDB_Iai ** gdbWreInfo (cڡ  oc ) 424 { ( ( ggdb_wre_fo [ oc ]) ? gdb_write_info[proc] : 0 );} 430 give : 431  gdbWreDa (cڡ  m , 432 cڡ  idt , 433 cڡ  mgl , 434 GridDaBuck < Ty >& gdb , 435 cڡ  ); 436  gdbWreDa (cڡ  m , 437 cڡ  idt , 438 cڡ  mgl , 439 cڡ BBox & whe , 440 GridDaBuck < Ty >& gdb , 441 cڡ  ); 447 gpublic : 448 cڡ BBox & mgedbox (cڡ  idt = ACE_Ma ) const 450 ( idt == ACE_Ma ? mged_bbox : 451 ( idt == ACE_Shadow ? shmged_bbox : BBox :: _emy_bbox ); 454 cڡ gBBox & boundgbox (cڡ  idt = ACE_Ma , 455 cڡ  mgl = ACENu ) const 457 ( idt == ACE_Ma && ( mgl == ACENu ||mgl== mglfe )? mage . bbox : 458 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu ||mgl== shmglfe )) ? 459 shage -> bbox : 460 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 461 mgage [ mgl - mglcr ]-> bbox : 462 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 463 shmgage [ mgl - shmglcr ]-> bbox : 464 BBox :: _emy_bbox ); 467 cڡ gBBox & ribox (cڡ  idt = ACE_Ma , 468 cڡ  mgl = ACENu ) const 470 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . ibbox : 471 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 472 shage -> ibbox : 473 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 474 mgage [ mgl - mglcr ]-> ibbox : 475 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 476 shmgage [ mgl - shmglcr ]-> ibbox : 477 BBox :: _emy_bbox ); 480 BBox iobox (cڡ  idt = ACE_Ma , 481 cڡ  mgl = ACENu ) const 483 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 484 growubydim ( mage . ibbox , hybridbndryags ) : 485 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 486 growubydim ( shage -> ibbox , hybridbndryags ) : 487 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 488 growubydim ( mgage [ mgl - mglcr ]-> ibbox , hybridbndryags ) : 489 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 490 growubydim ( shmgage [ mgl - shmglcr ]-> ibbox , hybridbndryags ) : 491 BBox :: _emy_bbox ); 494 cڡ gBBox & bndrybox (cڡ  d , 495 cڡ  idt = ACE_Ma , 496 cڡ  mgl = ACENu ) const 498 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 499 mage . bndrybbox [ d ] : 500 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 501 shage -> bndrybbox [ d ] : 502 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 503 mgage [ mgl - mglcr ]-> bndrybbox [ d ] : 504 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 505 shmgage [ mgl - shmglcr ]-> bndrybbox [ d ] : 506 BBox :: _emy_bbox ); 509 cڡ gBBox & ibox (cڡ GDB_Iai & gdbi , 510 cڡ  idt = ACE_Ma , 511 cڡ  mgl = ACENu ) const 513 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? gdbi . mbbox : 514 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 515 gdbi . shbbox : 516 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 517 gdbi . mmgbbox [ mgl - mglcr ] : 518 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 519 gdbi . shmgbbox [ mgl - shmglcr ] : 520 BBox :: _emy_bbox ); 523 cڡ gBBox & g_ghobox (cڡ  d , 524 cڡ  idt = ACE_Ma , 525 cڡ  mgl = ACENu ) const 527 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 528 gho_g_fo [ d ]. mbbox : 529 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 530 gho_g_fo [ d ]. shbbox : 531 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 532 gho_g_fo [ d ]. mmgbbox [ mgl - mglcr ] : 533 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 534 gho_g_fo [ d ]. shmgbbox [ mgl - shmglcr ] : 535 BBox :: _emy_bbox ); 538 cڡ gBBox & box (cڡ  idt , 539 cڡ  mgl = ACENu ) const 541 as ( idt = ACE_PtMa && mgl = ACENu ); 543 ( g_ag = ACETrue && idt == ACE_PtMa ) ? 544 _mage -> bbox () : 547 BBox :: _emy_bbox ); 550 cڡ gBBox & uxbox (cڡ  idt , 551 cڡ  mgl = ACENu ) const 553 as ( mgl = ACENu ); 555 ( gux_ag = ACETrue && idt < ACE_Flux && id> ACE_FluxEnd ) ? 556 ux_mage [ ACE_Flux - idt ]-> bbox () : 557 BBox :: _emy_bbox ); 564 gpublic : 565 GridDa (2)< Ty >& gridda (cڡ  idt = ACE_Ma , 566 cڡ  mgl = ACENu ) 568 i( idt = ACE_PtMa || id= ACE_PtShadow ) 569  ( da ( idt , mgl )); 570 i( gidt < ACE_Flux && idt > ACE_FluxEnd ) 571  ( uxda ( idt , mgl )); 574 ( gidt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . da : 575 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 576 shage -> da : 577 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 578 mgage [ mgl - mglcr ]-> da : 579 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 580 shmgage [ mgl - shmglcr ]-> da : 581 mage . da ); 583 cڡ GridDa (2)< gTy >& gridda (cڡ  idt = ACE_Ma , 584 cڡ  mgl = ACENu ) const 586 i( idt = ACE_PtMa || id= ACE_PtShadow ) 587  ( da ( idt , mgl )); 588 i( gidt < ACE_Flux && idt > ACE_FluxEnd ) 589  ( uxda ( idt , mgl )); 592 ( gidt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . da : 593 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 594 shage -> da : 595 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 596 mgage [ mgl - mglcr ]-> da : 597 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 598 shmgage [ mgl - shmglcr ]-> da : 599 mage . da ); 605 gpublic : 606 GridDa (2)< Ty >& da (cڡ  idt , 607 cڡ  mgl = ACENu ) 609 #ifde DEBUG_PRINT 610 as ( _ag = ACETrue ); 611 as (( idt = ACE_PtMa || id= ACE_Ma ) && 612 mgl = ACENu ); 614  (* g_mage ); 617 cڡ GridDa (2)< gTy >& da (cڡ  idt , 618 cڡ  mgl = ACENu ) const 620 #ifde DEBUG_PRINT 621 as ( _ag = ACETrue ); 622 as (( idt = ACE_PtMa || id= ACE_Ma ) && 623 mgl = ACENu ); 625  (* g_mage ); 631 gpublic : 632 GridDa (2)< Ty >& uxda (cڡ  idt , 633 cڡ  mgl = ACENu ) 635 #ifde DEBUG_PRINT 636 as ( ux_ag = ACETrue && 637 idt < ACE_Flux && id> ACE_FluxEnd 638 && mgl = ACENu ); 640  (* gux_mage [ ACE_Flux - idt ]); 643 cڡ GridDa (2)< gTy >& uxda (cڡ  idt , 644 cڡ  mgl = ACENu ) const 646 #ifde DEBUG_PRINT 647 as ( ux_ag = ACETrue && 648 idt < ACE_Flux && id> ACE_FluxEnd 649 && mgl = ACENu ); 651  (* gux_mage [ ACE_Flux - idt ]); 656 #i defed ( Wt_c_fes ) 657  ~"GridDaBlock2.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlock3.c 1 #ide _uded_GridDaBlock3_c 2  #_uded_GridDaBlock3_c ) 13 gme < ass gTy > 14 GridDaBlock (3)< gTy >::GridDaBlock(3)(cڡ  gf , 15 gGridHrchy & ggh , 16 gGridTab & ggt , 17 cڡ gGhoIai & ggi , 18 cڡ  gmidx , 19 cڡ gGridBox & ggb , 20 cڡ  gnm , 21 cڡ  gtime , 22 cڡ  gv , 23 cڡ * gbwidth , 24 cڡ * gextghwidth , 25 cڡ * gޭ , 26 cڡ * g , 27 cڡ  gign , 28 cڡ  gmdex , 29 cڡ  gcag , 30 cڡ  gsag , 31 cڡ  gpag , 32 cڡ  gfag , 33 cڡ GridDaBlock (3)< gTy >* ggdbtm , 34 GridDaBlock (3)< gTy >* ggdbeu ) 35 : gfid ( gf ), owr ( comm_rvi :: oc_me ()), 36 timum ( time ), vnum ( v ), mydex ( midx ), 37 nems ( nm ), uag ( ACEF ), 38 shag ( ACEF ), shage (0), 39 mgag ( ACENu ), mglfe (0), mglcr (0), mgvs (0), mgage (0), 40 shmgag ( ACENu ), shmglfe (0), shmglcr (0), shmgvs (0), shmgage (0), 41 comm_ag ( cag ), maxdex ( mdex ), 42 gdb_wre_fo (0), gdb_ad_fo (0), gdb_da_rcv (0), 43 _ag ( ACEF ), _mage (0), 44 gdb_g_wre_fo (0), gdb_g_ad_fo (0), 45 gdb_t_wre_fo (0), gdb_t_ad_fo (0), 46 ux_ag ( ACEF ), 47 gdb_ux_wre_fo (0), gdb_ux_ad_fo (0), 48 gb ( gt ), $dagh ( gh ) 50 cڡ  mynk = 3; 51 cڡ  u = ( gdbtm =( `GridDaBlock (3)< Ty >*) 0) ? 52 ACEF : ACETrue ; 54 cڡ  shadow = dagh . `daghshadow (); 55 cڡ  fe = dagh . `fe (); 56 cڡ  daghnk = dagh . nk ; 58 cڡ  fev = dagh . `fev (); 59 cڡ  ev = dagh . `crv (); 61  i ; 62  i = 0 ; i < mynk ; i++ ) { 63 nks [ i ] = i; 65 _d [2* i ] = [2*i]; 66 _d [2* i +1] = [2*i+1]; 68 gho_g_ag [2* i ] = ACEF ; 69 gho_g_ag [2* i +1] = ACEF ; 71 bndryags [2* i ] = ACEF ; 72 bndryags [2* i +1] = ACEF ; 74 hybridbndryags [ i ] = ACEF ; 76 ux_mage [2* i ] = 0; 77 ux_mage [2* i +1] = 0; 82 GridBoxLi * ggbl = dagh . `ggbl (); 84 i( u = ACEF ) { 86 * dagh_d = 0; 87 i( ign ! ACE_A ) { 88 `gdbSRks ( mynk , ign , nks ); 89 dagh_d = w [2* daghnk ]; 90  i = 0 ; i < 2* daghnk ; i++ dagh_d [i] = 0; 91  i = 0 ; i < mynk ; i++) { 92 dagh_d [2* nks [ i ]] = [2*i]; 93 dagh_d [2* nks [ i ]+1] = [2*i+1]; 97 dagh_d = _d ; 102 mged_bbox = gb . `gbBBoxAbs ( vnum ); 103 GridBoxLi mcgbl ; 104 ggbl -> `r ( `growbydim ( mged_bbox , dagh_d ), vnum , mcgbl ); 108 shmged_bbox = `crn ( mged_bbox , shadow ); 109 GridBoxLi scgbl ; 110 i( sag = ACETrue ) { 111 ggbl -> `r ( `growbydim ( shmged_bbox , dagh_d ), vnum , scgbl ); 117 `gdbSUpBoundyFgs ( mcgbl , gi , ޭ , dagh_d ); 119 mged_bbox . `growubydim ( ޭ ); 120 shmged_bbox . `growubydim ( ޭ ); 127 BBox `dagh_mged_bbox ( mged_bbox ); 128 BBox `dagh_shmged_bbox ( shmged_bbox ); 131 i( ign ! ACE_A ) { 132 `gdbAlignBBox ( mynk , mged_bbox , ign ); 133 `gdbAlignBBox ( mynk , shmged_bbox , ign ); 136 `gdbSUpMa ( ޭ , bwidth , extghwidth , gdbeu ); 138 i( sag = ACETrue `gdbSUpShadow ( ޭ , bwidth , extghwidth , gdbeu ); 140 i( comm_ag = ACETrue ) { 141 cڡ  um = comm_rvi :: `oc_num (); 144 gdb_wre_fo = w GDB_Iai ** [ um ]; 145 gdb_ad_fo = w GDB_Iai ** [ um ]; 147  p =0;< um ;++) { 148 gdb_wre_fo [ p ] = 0; 149 gdb_ad_fo [ p ] = 0; 152 `gdbSUpGhoIaiInfo ( mcgbl , scgbl , 153 ign , gi , ޭ , 154 dagh_mged_bbox , 155 dagh_shmged_bbox , 156 dagh_d ); 159 i( pag ) { 160 _ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 161 i( _ag && vnum > ev ) { 162 `gdbSUpPtMa ( ޭ , extghwidth ); 164 `gdbSUpPtIaiInfo ( ign , ޭ , 165 dagh_mged_bbox , 166 dagh_shmged_bbox , 167 dagh_d ); 170 i( fag ) { 171 ux_ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 172 i( ux_ag && vnum > ev ) { 173 `gdbSUpFluxMa ( gi ); 175 `gdbSUpFluxIaiInfo ( ign , gi , ޭ , 176 dagh_mged_bbox , 177 dagh_shmged_bbox ); 181 i( ign ! ACE_A de [] dagh_d ; 186 mged_bbox = gdbtm ->merged_bbox; 187 shmged_bbox = gdbtm ->shmerged_bbox; 189  i = 0 ; i < mynk ; i++) { 190 bndryags [2* i ] = gdbtm ->bndryflags[2*i]; 191 bndryags [2* i +1] = gdbtm ->bndryflags[2*i+1]; 192 hybridbndryags [ i ] = gdbtm ->hybridbndryflags[i]; 195 `gdbSUpMa ( ޭ , bwidth , extghwidth , gdbeu ); 197 i( sag = ACETrue `gdbSUpShadow ( ޭ , bwidth , extghwidth , gdbeu ); 199 i( comm_ag = ACETrue ) { 200 cڡ  um = comm_rvi :: `oc_num (); 203 gdb_wre_fo = w GDB_Iai ** [ um ]; 204 gdb_ad_fo = w GDB_Iai ** [ um ]; 206  p =0;< um ;++) { 207 gdb_wre_fo [ p ] = 0; 208 gdb_ad_fo [ p ] = 0; 211 `gdbSUpGhoIaiInfo ( gdbtm ); 213 i( pag ) { 214 _ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 215 i( _ag && vnum > ev ) { 216 `gdbSUpPtMa ( ޭ , extghwidth ); 218 `gdbSUpPtIaiInfo ( gdbtm ); 221 i( fag ) { 222 ux_ag = ( vnum > ev ||evnum < fev ? ACETrue : ACEF ; 223 i( ux_ag && vnum > ev ) { 224 `gdbSUpFluxMa ( gdbtm ); 226 `gdbSUpFluxIaiInfo ( gdbtm ); 230 } } 240 gme < ass gTy > 241 GridDaBlock (3)< gTy >::~GridDataBlock(3) () 243 i( comm_ag = ACETrue gdbRGhoIaiInfo (); 245 i( ggdb_da_rcv de gdb_data_rcv; 246 ggdb_da_rcv = 0; 248 i( gshag ! ACEF gdbRShadow (); 250 i( gmgag ! ACENu gdbRMuiGrid (); 251 i( gshmgag ! ACENu gdbRShadowMuiGrid (); 253 i( g_ag = ACETrue ) { 254 gdbRPtMa (); 256 gdbRPtIaiInfo (); 258 i( gux_ag = ACETrue ) { 259 gdbRFluxMa (); 261 gdbRFluxIaiInfo (); 277 gme < ass gTy > 278  GridDaBlock (3)< gTy >:: $gdbSUpBoundyFgs ( GridBoxLi & gbl , 279 cڡ GhoIai & gi , 280 cڡ * ޭ , 281 cڡ * d ) 283 cڡ  mynk = 3 ; 284 cڡ * s = gi . `s (); 285 cڡ  ev = dagh . `crv (); 286 cڡ  daghnk = dagh . nk ; 288 GridBoxLi igbl ; 290  ޭ0 [ ACEMaxRk ]; 291  i =0; i< ACEMaxRk ; i++ ޭ0 [i] = 0; 293 cڡ BBox `whebb ( `growubydim ( dagh . `whebbox (), ޭ0 )); 295  r = 0, dr = 0; 297 * myd = w [2* daghnk ]; 299  r = 0 ; < daghnk ;++ ) { 300 myd [2* r ] = `max ( d [2*r],1); 301 myd [2* r +1] = `max ( d [2*r+1],1); 304  r = 0, dr = nks [0] ; < mynk ; ++r, dr =anks[r] ) { 305 cڡ  bi = s [2* dr ]; 306 cڡ  fi = s [2* dr +1]; 308 i(( gi . `Ibbox ( mged_bbox , bi , myd )* whebb ). `emy ()) 309 bndryags [2* r ] = ACE_ExBoundy ; 310 i( vnum > ev ) { 311 gbl . `r ( gi . `Ibbox ( mged_bbox , bi , myd ), vnum , igbl , ޭ0 ); 312 i igbl . `imy () ) 313 bndryags [2* r ] = ACE_AdtiveBoundy ; 316 i(( gi . `Ibbox ( mged_bbox , fi , myd )* whebb ). `emy ()) 317 bndryags [2* r +1] = ACE_ExBoundy ; 318 i( vnum > ev ) { 319 gbl . `r ( gi . `Ibbox ( mged_bbox , fi , myd ), vnum , igbl , ޭ0 ); 320 i igbl . `imy () ) 321 bndryags [2* r +1] = ACE_AdtiveBoundy ; 323 #ide GDBNOHYBRIDBNDRY 324 i( ޭ [ r ] > 0) { 325 BBoxLi rhsbbl , lhsbbl ; 326 lhsbbl . `add ( gi . `Ibbox ( mged_bbox , fi , myd )); 327 igbl . `bboxli ( rhsbbl , vnum , ޭ0 ,0); 328 lhsbbl - rhsbbl ; 329 i(! lhsbbl . `imy () hybridbndryags [ r ] = ACETrue ; 336 i( myd de [] myrad; 337 } } 344 gme < ass gTy > 345  GridDaBlock (3)< gTy >:: $gdbAddGhoIaiInfo ( 346 cڡ  axis , 347 cڡ  d , 348 cڡ BBox & thb , 349 cڡ BBox & thewb , 350 cڡ BBox & hisbb , 351 cڡ  owr , 352 cڡ  idx ) 354 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 355 cڡ  dex = ( ACEMaxDs * maxdex * axis ) + ( maxdex * d ) + idx ; 356 cڡ  hisdex = ( ACEMaxDs * maxdex * axis ) + 357 maxdex * `ACEHisD ( d + idx ; 359 i(! thewb . `emy ()) { 360 i(! gdb_wre_fo [ owr ]) { 361 gdb_wre_fo [ owr ] = w GDB_Iai * [ r_t ]; 362   j = 0 ; j < r_t ; j++ ) gdb_wre_fo [ owr ][j] = 0; 364 i(! gdb_wre_fo [ owr ][ dex ]) 365 gdb_wre_fo [ owr ][ dex ] = w GDB_Iai ; 367 gdb_wre_fo [ owr ][ dex ]-> mbbox + thewb ; 368 #ifde DEBUG_PRINT 369 `as (! gdb_wre_fo [ owr ][ dex ]-> mbbox . `emy ()); 373 i(! thb . `emy ()) { 374 i(! gdb_ad_fo [ owr ]) { 375 gdb_ad_fo [ owr ] = w GDB_Iai * [ r_t ]; 376   j = 0 ; j < r_t ; j++ ) gdb_ad_fo [ owr ][j] = 0; 378 i(! gdb_ad_fo [ owr ][ hisdex ]) 379 gdb_ad_fo [ owr ][ hisdex ] = w GDB_Iai ; 381 gdb_ad_fo [ owr ][ hisdex ]-> mbbox + thb ; 382 #ifde DEBUG_PRINT 383 `as (! gdb_ad_fo [ owr ][ hisdex ]-> mbbox . `emy ()); 386 } } 388 gme < ass gTy > 389  GridDaBlock (3)< gTy >:: $gdbAddShadowGhoIaiInfo ( 390 cڡ  axis , 391 cڡ  d , 392 cڡ BBox & hb , 393 cڡ BBox & hewb , 394 cڡ BBox & shisbb , 395 cڡ  owr , 396 cڡ  idx ) 398 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 399 cڡ  dex = ( ACEMaxDs * maxdex * axis ) + ( maxdex * d ) + idx ; 400 cڡ  hisdex = ( ACEMaxDs * maxdex * axis ) + 401 maxdex * `ACEHisD ( d + idx ; 403 i(! hewb . `emy ()) { 404 i(! gdb_wre_fo [ owr ]) { 405 gdb_wre_fo [ owr ] = w GDB_Iai * [ r_t ]; 406   j = 0 ; j < r_t ; j++ ) gdb_wre_fo [ owr ][j] = 0; 408 i(! gdb_wre_fo [ owr ][ dex ]) 409 gdb_wre_fo [ owr ][ dex ] = w GDB_Iai ; 411 gdb_wre_fo [ owr ][ dex ]-> shbbox + hewb ; 412 #ifde DEBUG_PRINT 413 `as (! gdb_wre_fo [ owr ][ dex ]-> shbbox . `emy ()); 417 i(! hb . `emy ()) { 418 i(! gdb_ad_fo [ owr ]) { 419 gdb_ad_fo [ owr ] = w GDB_Iai * [ r_t ]; 420   j = 0 ; j < r_t ; j++ ) gdb_ad_fo [ owr ][j] = 0; 422 i(! gdb_ad_fo [ owr ][ hisdex ]) 423 gdb_ad_fo [ owr ][ hisdex ] = w GDB_Iai ; 425 gdb_ad_fo [ owr ][ hisdex ]-> shbbox + hb ; 426 #ifde DEBUG_PRINT 427 `as (! gdb_ad_fo [ owr ][ hisdex ]-> shbbox . `emy ()); 430 } } 436 gme < ass gTy > 437  GridDaBlock (3)< gTy >:: $gdbSUpGhoIaiInfo ( 438 GridBoxLi & mcgbl , 439 GridBoxLi & scgbl , 440 cڡ  ign , 441 cڡ GhoIai & gi , 442 cڡ * ޭ , 443 cڡ BBox & dmged_bbox , 444 cڡ BBox & dshmged_bbox , 445 cڡ * d_d ) 447 i( mcgbl . `imy (&& scgbl .isempty()) ; 449 cڡ  mynk = 3 ; 450 cڡ  ti = gi . `tٮ_is (); 451 cڡ  evnum = vnum - dagh . `daghdex ( ACE_Shadow ); 452 cڡ  shadow = dagh . `daghshadow (); 453 cڡ  sime = gi . `sime (); 455 cڡ  me = comm_rvi :: `oc_me (); 457  r = 0, dr = 0; 459  rd_ޭ [ ACEMaxRk ]; 460  r = 0; < mynk ;++) 461 rd_ޭ [ r ] = ( bndryags [2*r+1] = ACE_ExBoundy ? 0 : ޭ [r]; 462 ; r < ACEMaxRk ;++) 463 rd_ޭ [ r ] = ޭ [r]; 465 cڡ BBox `whebb ( `growubydim ( dagh . `whebbox (), ޭ )); 467  GridBox * gb = 0; 468  i = 0; 470  r = 0, dr = 0; < ACEMaxAxis ; ++r ) { 471 i r > mynk && ! ACE_A ) ; 472 dr = ( r < mynk ) ? nks [r] : ; 474 cڡ * bi = gi . `is ( dr , ACE_Backwd ); 475 cڡ * fi = gi . `is ( dr , ACE_Fwd ); 476 cڡ * bhi = gi . `is ( dr , ACE_Bh ); 478 BBox bbb , shbbb , fbb , shfbb ; 480  i = 0 ; i < ti ; i++ ) { 481 if bi [ i ] ! ACETrue && fi [i] != ACETrue ) ; 483 BBox rb = gi . `Ibbox ( dmged_bbox , i , d_d ); 484 BBox b = gi . `Ibbox ( dmged_bbox , i , d_d , rd_ޭ ); 486 BBox b = gi . `Ibbox ( dshmged_bbox , i , d_d ); 487 BBox sb = gi . `Ibbox ( dshmged_bbox , i , d_d , rd_ޭ ); 489 i( ign ! ACE_A ) { 490 `gdbAlignBBox ( mynk , rb , ign ); 491 `gdbAlignBBox ( mynk , b , ign ); 492 `gdbAlignBBox ( mynk , b , ign ); 493 `gdbAlignBBox ( mynk , sb , ign ); 496 i r ! ACE_A && bndryags [2*r] = ACEF && 497 bi [ i ] = ACETrue ) { 498 bbb + rb ; shbbb + b ; 500 i r ! ACE_A && bndryags [2*r+1] = ACEF && 501 fi [ i ] = ACETrue ) { 502 fbb + rb ; shfbb + b ; 505 i! sime || r > mynk ) { 507  gb = mcgbl . `f (); gb ; gb = mcgbl. `xt () ) { 508 cڡ  idx = gb -> `gbIndex (); 509 cڡ  owr = gb -> `gbOwr (); 511 i( idx = mydex && owr = me ) ; 513 BBox mbb = gb -> `gbBBoxAbs ( vnum , ޭ ); 522 BBox `wb ( dmged_bbox * gi . `Ibbox ( mbb ,gi. `comemt ( i ), d_d )); 524 i( ign ! ACE_A ) { 525 `gdbAlignBBox ( mynk , wb , ign ); 526 `gdbAlignBBox ( mynk , mbb , ign ); 529 cڡ BBox `thewb ( `growbydim ( mbb , _d * wb ); 530 cڡ BBox `thb ( mbb * rb ); 532 i! sime && bi [ i ] = ACETrue ) { 533 `gdbAddGhoIaiInfo ( r , ACE_Backwd , thb , thewb , mbb , owr , idx ); 535 i! sime && fi [ i ] = ACETrue ) { 536 `gdbAddGhoIaiInfo ( r , ACE_Fwd , thb , thewb , mbb , owr , idx ); 538 i r > mynk && bhi [ i ] = ACETrue ) { 539 `gdbAddGhoIaiInfo ( r , ACE_Bh , thb , thewb , mbb , owr , idx ); 543 i( shag = ACETrue ) { 544  gb = scgbl . `f (; gb ; gb = scgbl. `xt ()) { 545 cڡ  idx = gb -> `gbIndex (); 546 cڡ  owr = gb -> `gbOwr (); 548 i( idx = mydex && owr = me ) ; 550 BBox smbb = gb -> `gbBBoxAbs ( evnum , ޭ ); 559 BBox `swb ( dshmged_bbox * gi . `Ibbox ( smbb ,gi. `comemt ( i ), d_d )); 561 i( ign ! ACE_A ) { 562 `gdbAlignBBox ( mynk , swb , ign ); 563 `gdbAlignBBox ( mynk , smbb , ign ); 566 cڡ BBox `hewb ( `growbydim ( smbb , _d * swb ); 567 cڡ BBox `hb ( smbb * b ); 569 i! sime && bi [ i ] = ACETrue ) { 570 `gdbAddShadowGhoIaiInfo ( r , ACE_Backwd , hb , hewb , smbb , owr , idx ); 572 i! sime && fi [ i ] = ACETrue ) { 573 `gdbAddShadowGhoIaiInfo ( r , ACE_Fwd , hb , hewb , smbb , owr , idx ); 575 i r > mynk && bhi [ i ] = ACETrue ) { 576 `gdbAddShadowGhoIaiInfo ( r , ACE_Bh , hb , hewb , smbb , owr , idx ); 582 bbb * mage . bbox ; 583 fbb * mage . bbox ; 584 i( shag = ACETrue ) { 585 shbbb * shage -> bbox ; 586 shfbb * shage -> bbox ; 588 i( r < mynk ) { 589 i( bndryags [2* r ] = ACEF ) { 590 gho_g_ag [2* r ] = ACETrue ; 591 gho_g_fo [2* r ]. mbbox = bbb ; 592 i( shag = ACETrue gho_g_fo [2* r ]. shbbox = shbbb ; 594 i( bndryags [2* r +1] = ACEF ) { 595 gho_g_ag [2* r +1] = ACETrue ; 596 gho_g_fo [2* r +1]. mbbox = fbb ; 597 i( shag = ACETrue gho_g_fo [2* r +1]. shbbox = shfbb ; 601 } } 603 gme < ass gTy > 604  GridDaBlock (3)< gTy >:: gdbSUpGhoIaiInfo ( 605 cڡ GridDaBlock (3)< Ty >* gdbtm ) 608 cڡ  mynk = 3 ; 609 cڡ  gum = comm_rvi :: oc_num (); 610 cڡ  gr_t = ACEMaxAxis * ACEMaxDs * maxdex ; 612 GridBoxLi * gggbl = dagh . ggbl (); 614 gGDB_Iai ***& gmw = gdb_wre_fo ; 615 gGDB_Iai ***& gmr = gdb_ad_fo ; 617 GDB_Iai *** ghw = gdbtm -> gdb_wre_fo ; 618 GDB_Iai *** ghr = gdbtm -> gdb_ad_fo ; 620  gp = 0, gj = 0; 621  gp = 0 ; < gum ;++ ) i ghw [ p ] || ghr [p] ) { 622 i ghw [ p ] ) gmw [p] = w GDB_Iai * [ r_t ]; 623 i ghr [ p ] ) gmr [p] = w GDB_Iai * [ r_t ]; 625  gj = 0 ; j < gr_t ; j++ ) { 627 i gmw [ p ] ) mw[p][ j ] = 0; 628 i gmr [ p ] ) mr[p][ j ] = 0; 630 i ghw [ p ] && hw[p][ j ] ) { 631 gmw [ p ][ j ] = w GDB_Iai ; 632 gmw [ p ][ j ]-> gmbbox = hw [p][j]-> mbbox ; 633 i gshag = ACETrue ) mw [ p ][ j ]-> shbbox = hw [p][j]->shbbox; 636 i ghr [ p ] && hr[p][ j ] ) { 637 gmr [ p ][ j ] = w GDB_Iai ; 638 gmr [ p ][ j ]-> gmbbox = hr [p][j]-> mbbox ; 639 i gshag = ACETrue ) mr [ p ][ j ]-> shbbox = hr [p][j]->shbbox; 643   gr = 0 ; < gmynk ;++ ) { 644 ggho_g_ag [2* r ] = gdbtm -> gho_g_ag [2*r]; 645 ggho_g_fo [2* r ]. gmbbox = gdbtm -> gho_g_fo [2*r]. mbbox ; 646 i gshag = ACETrue ) 647 gho_g_fo [2* r ]. shbbox = gdbtm ->ghost_prolong_info[2*r].shbbox; 649 ggho_g_ag [2* r +1] = gdbtm -> gho_g_ag [2*r+1]; 650 ggho_g_fo [2* r +1]. gmbbox = gdbtm -> gho_g_fo [2*r+1]. mbbox ; 651 i gshag = ACETrue ) 652 gho_g_fo [2* r +1]. shbbox = gdbtm ->ghost_prolong_info[2*r+1].shbbox; 656 gme < ass gTy > 657  GridDaBlock (3)< gTy >:: $gdbRGhoIaiInfo () 659 i( comm_ag = ACETrue ) { 660 cڡ  um = comm_rvi :: `oc_num (); 661 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 663  p =0;p< um ;p++) { 664 i( gdb_wre_fo [ p ] || gdb_ad_fo [p]) { 665  j =0;j< r_t ;j++) { 666 i( gdb_wre_fo [ p ] && gdb_wre_fo[p][ j ]) 667 de gdb_wre_fo [ p ][ j ]; 668 i( gdb_ad_fo [ p ] && gdb_ad_fo[p][ j ]) 669 de gdb_ad_fo [ p ][ j ]; 671 i( gdb_wre_fo [ p ] de [] gdb_write_info[p]; 672 i( gdb_ad_fo [ p ] de [] gdb_read_info[p]; 675 i( gdb_wre_fo de [] gdb_write_info; 676 gdb_wre_fo = 0; 677 i( gdb_ad_fo de [] gdb_read_info; 678 gdb_ad_fo = 0; 680 } } 690 gme < ass gTy > 691  GridDaBlock (3)< gTy >:: gdbSUpMa (cڡ * ޭ , 692 cڡ * bwidth , 693 cڡ * extghwidth , 694 GridDaBlock (3)< Ty >* gdbeu ) 696 cڡ  gmynk = 3; 702 gBBox & gdb = mage . bbox ; db = mged_bbox ; 703 gBBox & gib = mage . ibbox ; ib = mged_bbox ; 704 BBox * gbndrybb = mage . bndrybbox ; 707 gdb . growbydim ( extghwidth ); 710 cڡ Cods ( db . low ()); 711 cڡ Cods cu ( db . u ()); 712 cڡ Cods ( db . size ()); 714  gimes2 = 0; 715  gi =0; i< gmynk ; i++) { 716 gimes2 = 2* i ; 718 i( gbndryags [ imes2 ] = ACEF ) { 719 i( extghwidth [ imes2 ] < _d [itimes2]) 720 db . low ( i - (i)*( _d [ imes2 ] - extghwidth [itimes2]); 722 i( gbwidth [ imes2 ] > 0) { 724 gbndrybb [ imes2 ] = db ; 725 gbndrybb [ imes2 ]. u ( i ( (i+ (i)*( bwidth [itimes2]-1)); 728 i( gbndryags [ imes2 +1] = ACEF ) { 729 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 730 db . u ( i + (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 731 gib . u ( i -( ޭ [ nks [i]]* (i)); 733 i( gbwidth [ imes2 +1] > 0) { 735 gbndrybb [ imes2 +1] = db ; 736 gbndrybb [ imes2 +1]. low ( i ( cu (i- (i)*( bwidth [itimes2+1]-1)); 740 i( ggdbeu && 741 ggdbeu -> gmage . gbbox = mage . bbox ) { 743 #ifde DEBUG_PRINT_GDB 744 comm_rvi :: log () << "gdbMReusing" 745 << gdbeu -> mage . bbox 746 << mage . bbox 747 << dl ). ush (); 748 as ( gdbeu -> mage . bbox == mstorage.bbox); 751 #ifde DEBUG_PRINT_GDB 752 as ( gdbeu -> mage . da . ok_to_dex ()); 755 gmage . lo ( nems ); 757 memy ( mage . da . dabufr (), 758 gdbeu -> mage . da . dabufr (), 759 ( Ty )* mage . da . tsize ()); 764 guag = ACETrue ; 766 #ifde DEBUG_PRINT_GDB 772 gmage . lo ( nems ); 774 #ifde DEBUG_PRINT_GDB 775 gcomm_rvi :: log (<< "gdbSUpMa" << "[" << gfid << "] " 776 << mage << " " 777 << dl ). ush (); 784 gme < ass gTy > 785  GridDaBlock (3)< gTy >:: gdbSUpShadow (cڡ * ޭ , 786 cڡ * bwidth , 787 cڡ * extghwidth , 788 GridDaBlock (3)< Ty >* gdbeu ) 790 i( gshag ! ACEF gdbRShadow (); 791 gshag = ACETrue ; 793 cڡ  gmynk = 3; 799 gshage = w GridDaBlockStage (3)< Ty >; 801 gBBox & gdb = shage -> bbox ; db = shmged_bbox ; 802 gBBox & gib = shage -> ibbox ; ib = shmged_bbox ; 803 BBox * gbndrybb = shage -> bndrybbox ; 806 gdb . growbydim ( extghwidth ); 809 cڡ Cods ( db . low ()); 810 cڡ Cods cu ( db . u ()); 811 cڡ Cods ( db . size ()); 813  gimes2 = 0; 814  gi =0; i< gmynk ; i++) { 815 gimes2 = 2* i ; 817 i( gbndryags [ imes2 ] = ACEF ) { 818 i( extghwidth [ imes2 ] < _d [itimes2]) 819 db . low ( i - (i)*( _d [ imes2 ] - extghwidth [itimes2]); 821 i( gbwidth [ imes2 ] > 0) { 823 gbndrybb [ imes2 ] = db ; 824 gbndrybb [ imes2 ]. u ( i ( (i+ (i)*( bwidth [itimes2]-1)); 827 i( gbndryags [ imes2 +1] = ACEF ) { 828 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 829 db . u ( i + (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 830 gib . u ( i -( ޭ [ nks [i]]* (i)); 832 i( gbwidth [ imes2 +1] > 0) { 834 gbndrybb [ imes2 +1] = db ; 835 gbndrybb [ imes2 +1]. low ( i ( cu (i- (i)*( bwidth [itimes2+1]-1)); 839 i( ggdbeu && gdbeu-> gshag = ACETrue && 840 gdbeu -> shage -> bbox == shstorage->bbox) { 842 #ifde DEBUG_PRINT_GDB 843 comm_rvi :: log () << "gdbSReusing" 844 << gdbeu -> shage -> bbox 845 << shage -> bbox 846 << dl ). ush (); 847 as ( gdbeu -> shage -> bbox == shstorage->bbox); 850 gshage -> lo ( nems ); 852 memy ( shage -> da . dabufr (), 853 gdbeu -> shage -> da . dabufr (), 854 ( Ty )* shage -> da . tsize ()); 859 guag = ACETrue ; 861 #ifde DEBUG_PRINT_GDB 867 gshage -> lo ( nems ); 869 #ifde DEBUG_PRINT_GDB_SH 870 gcomm_rvi :: log (<< "gdbSUpShadow" << "[" << gfid << "]" 871 << * shage << " " 872 << dl ). ush (); 876 gme < ass gTy > 877  GridDaBlock (3)< gTy >:: $gdbRShadow () 879 i( shag = ACEF ) ; 880 i( shage de shstorage; 881 shag = ACEF ; 882 } } 888 gme < ass gTy > 889  GridDaBlock (3)< gTy >:: $gdbSUpMuiGrid (cڡ  lc , 890 cڡ  lf , 891 cڡ * ޭ , 892 cڡ * bwidth , 893 cڡ * extghwidth ) 895 i( mgag ! ACENu `gdbRMuiGrid (); 897 mgag = ACE_A ; 898 mglfe = lf ; 899 mglcr = lc ; 900 mgvs = lf - lc +1; 901 i( mgvs == 1) ; 903 mgage = w `GridDaBlockStage (3)< Ty > *[ mgvs -1]; 905 #ifde DEBUG_PRINT_GDB_MG 906 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 907 << "[MGLev: " << lf << "]" 908 << mage << " " 909 << dl ). `ush (); 912 cڡ  mynk = 3; 913 cڡ  muigrid = dagh . `daghmuigrid (); 915  ldex = 0; 916  = 1; 918   l = lf -1 ; > lc ;-- ) { 919 ldex = l - lc ; 920 * muigrid ; 922 mgage [ ldex ] = w `GridDaBlockStage (3)< Ty >; 923 `GridDaBlockStage (3)< Ty >* mg = mgage [ ldex ]; 925 cڡ BBox mgbb = `crn ( mged_bbox , ); 927 BBox & db = mg -> bbox ; db = mgbb ; 928 BBox & ib = mg -> ibbox ; ib = mgbb ; 929 BBox * bndrybb = mg -> bndrybbox ; 931 db . `growbydim ( extghwidth ); 933 cڡ Cods ` ( mgbb . `low ()); 934 cڡ Cods `cu ( mgbb . `u ()); 935 cڡ Cods ` ( mgbb . `size ()); 937  imes2 = 0; 938   i = 0 ; i < mynk ; i++ ) { 939 imes2 = 2* i ; 941 i( bndryags [ imes2 ] = ACEF ) { 942 i( extghwidth [ imes2 ] < _d [itimes2]) 943 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 945 i( bwidth [ imes2 ] > 0) { 946 bndrybb [ imes2 ] = db ; 947 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 950 i( bndryags [ imes2 +1] = ACEF ) { 951 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 952 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 953 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 955 i( bwidth [ imes2 +1] > 0) { 956 bndrybb [ imes2 +1] = db ; 957 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 961 mg -> `lo ( nems ); 963 #ifde DEBUG_PRINT_GDB_MG 964 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 965 << "[MGLev: " << ldex << "]" 966 << * mg << " " 967 << dl ). `ush (); 972 cڡ  um = comm_rvi :: `oc_num (); 973 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 976 #ifde DEBUG_PRINT_GDB_MG 977 comm_rvi :: `log (<< "gdbSUpMuiGridGho" << "[" << gfid << "]" 978 ). `ush (); 980   p = 0 ; < um ;++ ) { 981 i! gdb_wre_fo [ p ] ) ; 982   i = 0 ; i < r_t ; i++ ) { 983 i! gdb_wre_fo [ p ][ i ] ) ; 984 #ifde DEBUG_PRINT_GDB_MG 985 comm_rvi :: `log (<< dl << "[" << p << "," << i << "]"). `ush (); 987 gdb_wre_fo [ p ][ i ]-> mmgbbox = w BBox [ mgvs -1]; 988 BBox * b = gdb_wre_fo [ p ][ i ]-> mmgbbox ; 989 = 1; 990   = lf -1 ;> lc ;l-- ) { 991 ldex = - lc ; * muigrid ; 992 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> mbbox , ); 993 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 994 BBox & bb = b [ ldex ]; 995 BBox mgbb = mgage [ ldex ]-> bbox ; 996 mgbb . `shrkbydim ( extghwidth ); 997   r = 0 ; < mynk ;++ ) { 998 i( ޭ [ nks [ r ]] > 0 && 999 bb . `low ( r )== mgbb .low&& bb. `u (r)==mgbb.lower(r)) 1000 bb . `shi ( r , ޭ [ nks [r]]); 1003 #ifde DEBUG_PRINT_GDB_MG 1004 comm_rvi :: `log (<< "[MGL:" << ldex << b [ldex] << "]"). `ush (); 1009 #ifde DEBUG_PRINT_GDB_MG 1010 comm_rvi :: `log (<< dl ). `ush (); 1014   r = 0 ; < 2* mynk ;++ ) { 1015 i gho_g_ag [ r ] = ACEF ) ; 1016 gho_g_fo [ r ]. mmgbbox = w BBox [ mgvs -1]; 1017 BBox * b = gho_g_fo [ r ]. mmgbbox ; 1018 = 1; 1019   = lf -1 ;> lc ;l-- ) { 1020 ldex = - lc ; * muigrid ; 1021 b [ ldex ] = `crn ( gho_g_fo [ r ]. mbbox , ); 1022 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1023 BBox & bb = b [ ldex ]; 1024 BBox mgbb = mgage [ ldex ]-> bbox ; 1025 mgbb . `shrkbydim ( extghwidth ); 1026   = 0 ;< mynk ;r++ ) { 1027 i( ޭ [ nks [ ]] > 0 && 1028 bb . `low ( )== mgbb .lowr&& bb. `u (rr)==mgbb.lower(rr)) 1029 bb . `shi ( , ޭ [ nks [rr]]); 1034 } } 1036 gme < ass gTy > 1037  GridDaBlock (3)< gTy >:: $gdbSUpMuiGrid (cڡ  axis , 1038 cڡ  lc , 1039 cڡ  lf , 1040 cڡ * ޭ , 1041 cڡ * bwidth , 1042 cڡ * extghwidth ) 1044 #ifde DEBUG_PRINT 1045 `as ( axis = ACE_X ||xi= ACE_Y ||xi= ACE_Z ); 1048 i( mgag ! ACENu `gdbRMuiGrid (); 1050 mgag = axis ; 1051 mglfe = lf ; 1052 mglcr = lc ; 1053 mgvs = lf - lc +1; 1054 i( mgvs == 1) ; 1056 mgage = w `GridDaBlockStage (3)< Ty > *[ mgvs -1]; 1058 #ifde DEBUG_PRINT_GDB_MG 1059 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1060 << "[MGLev: " << lf << "]" 1061 << mage << " " 1062 << dl ). `ush (); 1065 cڡ  mynk = 3; 1066 cڡ  muigrid = dagh . `daghmuigrid (); 1068  ldex = 0; 1069  = 1; 1071   l = lf -1 ; > lc ;-- ) { 1072 ldex = l - lc ; 1073 * muigrid ; 1075 mgage [ ldex ] = w `GridDaBlockStage (3)< Ty >; 1076 `GridDaBlockStage (3)< Ty >* mg = mgage [ ldex ]; 1078 cڡ BBox mgbb = `crn ( mged_bbox , axis , ); 1080 BBox & db = mg -> bbox ; db = mgbb ; 1081 BBox & ib = mg -> ibbox ; ib = mgbb ; 1082 BBox * bndrybb = mg -> bndrybbox ; 1084 db . `growbydim ( extghwidth ); 1086 cڡ Cods ` ( mgbb . `low ()); 1087 cڡ Cods `cu ( mgbb . `u ()); 1088 cڡ Cods ` ( mgbb . `size ()); 1090  imes2 = 0; 1091   i = 0 ; i < mynk ; i++ ) { 1092 imes2 = 2* i ; 1094 i( bndryags [ imes2 ] = ACEF ) { 1095 i( extghwidth [ imes2 ] < _d [itimes2]) 1096 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1098 i( bwidth [ imes2 ] > 0) { 1099 bndrybb [ imes2 ] = db ; 1100 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1103 i( bndryags [ imes2 +1] = ACEF ) { 1104 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1105 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1106 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1108 i( bwidth [ imes2 +1] > 0) { 1109 bndrybb [ imes2 +1] = db ; 1110 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1114 mg -> `lo ( nems ); 1116 #ifde DEBUG_PRINT_GDB_MG 1117 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1118 << "[MGLev: " << ldex << "]" 1119 << * mg << " " 1120 << dl ). `ush (); 1125 cڡ  um = comm_rvi :: `oc_num (); 1126 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1129   p = 0 ; < um ;++ ) { 1130 i! gdb_wre_fo [ p ] ) ; 1131   i = 0 ; i < r_t ; i++ ) { 1132 i! gdb_wre_fo [ p ][ i ] ) ; 1133 gdb_wre_fo [ p ][ i ]-> mmgbbox = w BBox [ mgvs -1]; 1134 BBox * b = gdb_wre_fo [ p ][ i ]-> mmgbbox ; 1135 = 1; 1136   = lf -1 ;> lc ;l-- ) { 1137 ldex = - lc ; * muigrid ; 1138 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> mbbox , axis , ); 1139 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1140 BBox & bb = b [ ldex ]; 1141 BBox mgbb = mgage [ ldex ]-> bbox ; 1142 mgbb . `shrkbydim ( extghwidth ); 1143   r = 0 ; < mynk ;++ ) { 1144 i( ޭ [ nks [ r ]] > 0 && 1145 bb . `low ( r )== mgbb .low&& bb. `u (r)==mgbb.lower(r)) 1146 bb . `shi ( r , ޭ [ nks [r]]); 1155   r = 0 ; < 2* mynk ;++ ) { 1156 i gho_g_ag [ r ] = ACEF ) ; 1157 gho_g_fo [ r ]. mmgbbox = w BBox [ mgvs -1]; 1158 BBox * b = gho_g_fo [ r ]. mmgbbox ; 1159 = 1; 1160   = lf -1 ;> lc ;l-- ) { 1161 ldex = - lc ; * muigrid ; 1162 b [ ldex ] = `crn ( gho_g_fo [ r ]. mbbox , axis , ); 1163 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1164 BBox & bb = b [ ldex ]; 1165 BBox mgbb = mgage [ ldex ]-> bbox ; 1166 mgbb . `shrkbydim ( extghwidth ); 1167   = 0 ;< mynk ;r++ ) { 1168 i( ޭ [ nks [ ]] > 0 && 1169 bb . `low ( )== mgbb .lowr&& bb. `u (rr)==mgbb.lower(rr)) 1170 bb . `shi ( , ޭ [ nks [rr]]); 1175 } } 1177 gme < ass gTy > 1178  GridDaBlock (3)< gTy >:: $gdbRMuiGrid () 1180 i( mgag = ACENu ) ; 1182 cڡ  mynk = 3; 1185  i ; 1186  i = 0 ; i < mgvs -1 ; i++ ) 1187 i( mgage [ i ] de mgstorage[i]; 1189 i( mgage de [] mgstorage; 1192 cڡ  um = comm_rvi :: `oc_num (); 1193 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1195 i( gdb_wre_fo   p = 0 ; < um ;++ ) { 1196 i! gdb_wre_fo [ p ] ) ; 1197  i = 0 ; i < r_t ; i++ ) { 1198 i( gdb_wre_fo [ p ][ i ] && gdb_wre_fo[p][i]-> mmgbbox ) 1199 de [] gdb_wre_fo [ p ][ i ]-> mmgbbox ; 1202   r = 0 ; < 2* mynk ;++ ) { 1203 i( gho_g_ag [ r ]== ACETrue && gho_g_fo [r]. mmgbbox ) 1204 de [] gho_g_fo [ r ]. mmgbbox ; 1207 mgag = ACENu ; 1208 } } 1214 gme < ass gTy > 1215  GridDaBlock (3)< gTy >:: $gdbSUpShadowMuiGrid (cڡ  lc , 1216 cڡ  lf , 1217 cڡ * ޭ , 1218 cڡ * bwidth , 1219 cڡ * extghwidth ) 1221 i( shmgag ! ACENu `gdbRShadowMuiGrid (); 1223 shmgag = ACE_A ; 1224 shmglfe = lf ; 1225 shmglcr = lc ; 1226 shmgvs = lf - lc +1; 1227 i( shmgvs == 1) ; 1229 shmgage = w `GridDaBlockStage (3)< Ty > *[ mgvs -1]; 1231 #ifde DEBUG_PRINT_GDB_MG 1232 comm_rvi :: `log (<< "gdbSUpShadowMuiGrid" << "[" << gfid << "]" 1233 << "[MGLev: " << lf << "]" 1234 << shage << " " 1235 << dl ). `ush (); 1239 cڡ  mynk = 3; 1240 cڡ  muigrid = dagh . `daghmuigrid (); 1242  ldex = 0; 1243  = 1; 1245   l = lf -1 ; > lc ;l-- ) { 1246 ldex = l - lc ; 1247 * muigrid ; 1249 shmgage [ ldex ] = w `GridDaBlockStage (3)< Ty >; 1250 `GridDaBlockStage (3)< Ty >* shmg = shmgage [ ldex ]; 1252 cڡ BBox shmgbb = `crn ( shmged_bbox , ); 1254 BBox & db = shmg -> bbox ; db = shmgbb ; 1255 BBox & ib = shmg -> ibbox ; ib = shmgbb ; 1256 BBox * bndrybb = shmg -> bndrybbox ; 1258 db . `growbydim ( extghwidth ); 1260 cڡ Cods ` ( shmgbb . `low ()); 1261 cڡ Cods `cu ( shmgbb . `u ()); 1262 cڡ Cods ` ( shmgbb . `size ()); 1264  imes2 = 0; 1265  i =0; i< mynk ; i++) { 1266 imes2 = 2* i ; 1268 i( bndryags [ imes2 ] = ACEF ) { 1269 i( extghwidth [ imes2 ] < _d [itimes2]) 1270 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1272 i( bwidth [ imes2 ] > 0) { 1273 bndrybb [ imes2 ] = db ; 1274 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1277 i( bndryags [ imes2 +1] = ACEF ) { 1278 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1279 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1280 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1282 i( bwidth [ imes2 +1] > 0) { 1283 bndrybb [ imes2 +1] = db ; 1284 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1288 shmg -> `lo ( nems ); 1290 #ifde DEBUG_PRINT_GDB_MG 1291 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1292 << "[MGLev: " << ldex << "]" 1293 << * shmg << " " 1294 << dl ). `ush (); 1299 cڡ  um = comm_rvi :: `oc_num (); 1300 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1303   p = 0 ; < um ;++ ) { 1304 i! gdb_wre_fo [ p ] ) ; 1305   i = 0 ; i < r_t ; i++ ) { 1306 i! gdb_wre_fo [ p ][ i ] ) ; 1307 gdb_wre_fo [ p ][ i ]-> shmgbbox = w BBox [ shmgvs -1]; 1308 BBox * b = gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1309 = 1; 1310   = lf -1 ;> lc ;l-- ) { 1311 ldex = - lc ; * muigrid ; 1312 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> shbbox , ); 1313 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1314 BBox & bb = b [ ldex ]; 1315 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1316 shmgbb . `shrkbydim ( extghwidth ); 1317   r = 0 ; < mynk ;++ ) { 1318 i( ޭ [ nks [ r ]] > 0 && 1319 bb . `low ( r )== shmgbb .low&& bb. `u (r)==shmgbb.lower(r)) 1320 bb . `shi ( r , ޭ [ nks [r]]); 1328   r = 0 ; < 2* mynk ;++ ) { 1329 i gho_g_ag [ r ] = ACEF ) ; 1330 gho_g_fo [ r ]. shmgbbox = w BBox [ shmgvs -1]; 1331 BBox * b = gho_g_fo [ r ]. shmgbbox ; 1332 = 1; 1333   = lf -1 ;> lc ;l-- ) { 1334 ldex = - lc ; * muigrid ; 1335 b [ ldex ] = `crn ( gho_g_fo [ r ]. shbbox , ); 1336 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1337 BBox & bb = b [ ldex ]; 1338 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1339 shmgbb . `shrkbydim ( extghwidth ); 1340   = 0 ;< mynk ;r++ ) { 1341 i( ޭ [ nks [ ]] > 0 && 1342 bb . `low ( )== shmgbb .lowr&& bb. `u (rr)==shmgbb.lower(rr)) 1343 bb . `shi ( , ޭ [ nks [rr]]); 1348 } } 1350 gme < ass gTy > 1351  GridDaBlock (3)< gTy >:: $gdbSUpShadowMuiGrid (cڡ  axis , 1352 cڡ  lc , 1353 cڡ  lf , 1354 cڡ * ޭ , 1355 cڡ * bwidth , 1356 cڡ * extghwidth ) 1358 #ifde DEBUG_PRINT 1359 `as ( axis = ACE_X ||xi= ACE_Y ||xi= ACE_Z ); 1362 i( shmgag ! ACENu `gdbRShadowMuiGrid (); 1364 shmgag = axis ; 1365 shmglfe = lf ; 1366 shmglcr = lc ; 1367 shmgvs = lf - lc +1; 1368 i( shmgvs == 1) ; 1370 shmgage = w `GridDaBlockStage (3)< Ty > *[ mgvs -1]; 1372 #ifde DEBUG_PRINT_GDB_MG 1373 comm_rvi :: `log (<< "gdbSUpShadowMuiGrid" << "[" << gfid << "]" 1374 << "[MGLev: " << lf << "]" 1375 << shage << " " 1376 << dl ). `ush (); 1379 cڡ  mynk = 3; 1380 cڡ  muigrid = dagh . `daghmuigrid (); 1382  ldex = 0; 1383  = 1; 1385   l = lf -1 ; > lc ;-- ) { 1386 ldex = l - lc ; 1387 * muigrid ; 1389 shmgage [ ldex ] = w `GridDaBlockStage (3)< Ty >; 1390 `GridDaBlockStage (3)< Ty >* shmg = shmgage [ ldex ]; 1392 cڡ BBox shmgbb = `crn ( shmged_bbox , axis , ); 1394 BBox & db = shmg -> bbox ; db = shmgbb ; 1395 BBox & ib = shmg -> ibbox ; ib = shmgbb ; 1396 BBox * bndrybb = shmg -> bndrybbox ; 1398 db . `growbydim ( extghwidth ); 1400 cڡ Cods ` ( shmgbb . `low ()); 1401 cڡ Cods `cu ( shmgbb . `u ()); 1402 cڡ Cods ` ( shmgbb . `size ()); 1404  imes2 = 0; 1405  i =0; i< mynk ; i++) { 1406 imes2 = 2* i ; 1408 i( bndryags [ imes2 ] = ACEF ) { 1409 i( extghwidth [ imes2 ] < _d [itimes2]) 1410 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 1412 i( bwidth [ imes2 ] > 0) { 1413 bndrybb [ imes2 ] = db ; 1414 bndrybb [ imes2 ]. `u ( i ( ` (i+ ` (i)*( bwidth [itimes2]-1)); 1417 i( bndryags [ imes2 +1] = ACEF ) { 1418 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 1419 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 1420 ib . `u ( i -( ޭ [ nks [i]]* ` (i)); 1422 i( bwidth [ imes2 +1] > 0) { 1423 bndrybb [ imes2 +1] = db ; 1424 bndrybb [ imes2 +1]. `low ( i ( `cu (i- ` (i)*( bwidth [itimes2+1]-1)); 1428 shmg -> `lo ( nems ); 1430 #ifde DEBUG_PRINT_GDB_MG 1431 comm_rvi :: `log (<< "gdbSUpMuiGrid" << "[" << gfid << "]" 1432 << "[MGLev: " << ldex << "]" 1433 << * shmg << " " 1434 << dl ). `ush (); 1439 cڡ  um = comm_rvi :: `oc_num (); 1440 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1443   p = 0 ; < um ;++ ) { 1444 i! gdb_wre_fo [ p ] ) ; 1445   i = 0 ; i < r_t ; i++ ) { 1446 i! gdb_wre_fo [ p ][ i ] ) ; 1447 gdb_wre_fo [ p ][ i ]-> shmgbbox = w BBox [ shmgvs -1]; 1448 BBox * b = gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1449 = 1; 1450   = lf -1 ;> lc ;l-- ) { 1451 ldex = - lc ; * muigrid ; 1452 b [ ldex ] = `crn ( gdb_wre_fo [ p ][ i ]-> shbbox , axis , ); 1453 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1454 BBox & bb = b [ ldex ]; 1455 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1456 shmgbb . `shrkbydim ( extghwidth ); 1457   r = 0 ; < mynk ;++ ) { 1458 i( ޭ [ nks [ r ]] > 0 && 1459 bb . `low ( r )== shmgbb .low&& bb. `u (r)==shmgbb.lower(r)) 1460 bb . `shi ( r , ޭ [ nks [r]]); 1468   r = 0 ; < 2* mynk ;++ ) { 1469 i gho_g_ag [ r ] = ACEF ) ; 1470 gho_g_fo [ r ]. shmgbbox = w BBox [ shmgvs -1]; 1471 BBox * b = gho_g_fo [ r ]. shmgbbox ; 1472 = 1; 1473   = lf -1 ;> lc ;l-- ) { 1474 ldex = - lc ; * muigrid ; 1475 b [ ldex ] = `crn ( gho_g_fo [ r ]. shbbox , axis , ); 1476 i( ޭ [0] > 0 || olap[1] > 0 || olap[2] > 0) { 1477 BBox & bb = b [ ldex ]; 1478 BBox shmgbb = shmgage [ ldex ]-> bbox ; 1479 shmgbb . `shrkbydim ( extghwidth ); 1480   = 0 ;< mynk ;r++ ) { 1481 i( ޭ [ nks [ ]] > 0 && 1482 bb . `low ( )== shmgbb .lowr&& bb. `u (rr)==shmgbb.lower(rr)) 1483 bb . `shi ( , ޭ [ nks [rr]]); 1488 } } 1490 gme < ass gTy > 1491  GridDaBlock (3)< gTy >:: $gdbRShadowMuiGrid () 1493 i( shmgag = ACENu ) ; 1495 cڡ  mynk = 3; 1498  i ; 1499  i = 0 ; i < shmgvs -1 ; i++ ) 1500 i( shmgage [ i ] de shmgstorage[i]; 1502 i( shmgage de [] shmgstorage; 1505 cڡ  um = comm_rvi :: `oc_num (); 1506 cڡ  r_t = ACEMaxAxis * ACEMaxDs * maxdex ; 1508 i( gdb_wre_fo   p = 0 ; < um ;++ ) { 1509 i! gdb_wre_fo [ p ] ) ; 1510  i = 0 ; i < r_t ; i++ ) { 1511 i( gdb_wre_fo [ p ][ i ] && gdb_wre_fo[p][i]-> shmgbbox ) 1512 de [] gdb_wre_fo [ p ][ i ]-> shmgbbox ; 1515   r = 0 ; < 2* mynk ;++ ) { 1516 i( gho_g_ag [ r ]== ACETrue && gho_g_fo [r]. shmgbbox ) 1517 de [] gho_g_fo [ r ]. shmgbbox ; 1520 shmgag = ACENu ; 1521 } } 1527 gme < ass gTy > 1528  GridDaBlock (3)< gTy >:: gdbWreGhos (cڡ  oc , 1529 cڡ  m , 1530 cڡ  axis , 1531 cڡ  d , 1532 cڡ  idt , 1533 cڡ  mgl , 1534 GridDaBuck < Ty >& gdb , 1535 cڡ  ) 1537 #ifde DEBUG_PRINT 1538 as ( d == ACE_Backwd || d== ACE_Fwd || axis == ACE_A ); 1539 as (( m ! ACEA && itm >0 && nems >= itm) || 1540 ( m = ACEA )); 1543 cڡ  gdex = ( ACEMaxDs * maxdex * axis ) + 1544 maxdex * d ); 1545 cڡ  gme = comm_rvi :: oc_me (); 1547 cڡ  gnms = ( m = ACEA ? nems : 1; 1549 #ifde DEBUG_PRINT_GDB_COMM 1550 gcomm_rvi :: log (<< "gdbWreGhos:" << "[P:" << oc << "]" 1551 << "[Me:" << me << "]" 1552 << "[NI:" << nms << "]" << "[I:" << m << "]" 1553 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1554 << "[A:" << axis << "]" << "[D:" << d << "]" 1555 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1556 << dl ). ush (); 1559 GDB_Iai * ggdbi = 0; 1560  gt = 0; 1561 i( ggdb_wre_fo [ oc ]) { 1562   gi = 0, gidx = ; i < gmaxdex ; i++ ) { 1563 i( ggdbi = gdb_wre_fo [ oc ][ dex + i ]) { 1565 #ifde DEBUG_PRINT_GDB_COMM 1566 comm_rvi :: log (<< "Wrg[" << idx << "]" 1567 << "{ " << * gdbi << " }" << dl ). ush (); 1570 BBox gbb = ibox (* gdbi , idt , mgl ); 1571 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1572 dex + i , m , me , idt , idx ); 1574 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 1576 #ifde DEBUG_PRINT_GDB_COMM 1577 i( gbb . emy ()) 1578 gcomm_rvi :: log () << "Null Write {" 1579 << * gdb . hd ( idx ) 1580 << "}" << dl ). ush (); 1583 gt ++; gidx ++; 1588  gt ; 1594 gme < ass gTy > 1595  GridDaBlock (3)< gTy >:: gdbWreDa (cڡ  m , 1596 cڡ  idt , 1597 cڡ  mgl , 1598 GridDaBuck < Ty >& gdb , 1599 cڡ  ) 1601 #ifde DEBUG_PRINT 1602 as (( m ! ACEA && itm >0 && nems >= itm) || 1603 ( m = ACEA )); 1606 cڡ  gme = comm_rvi :: oc_me (); 1609 cڡ BBox gbb = boundgbox ( idt , mgl ); 1611 cڡ  gnms = ( m = ACEA ? nems : 1; 1613 #ifde DEBUG_PRINT_GDB_COMM 1614 gcomm_rvi :: log (<< "gdbWreDa:" << "[Me:" << me << "]" 1615 << "[NI:" << nms << "]" << "[I:" << m << "]" 1616 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1617 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1618 << bb << dl ). ush (); 1621 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1622 mydex , m , me , idt , ); 1623 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( ), bb , m ); 1626 gme < ass gTy > 1627  GridDaBlock (3)< gTy >:: gdbWreDa (cڡ  m , 1628 cڡ  idt , 1629 cڡ  mgl , 1630 cڡ BBox & whe , 1631 GridDaBuck < Ty >& gdb , 1632 cڡ  ) 1634 #ifde DEBUG_PRINT 1635 as (( m ! ACEA && itm >0 && nems >= itm) || 1636 ( m = ACEA )); 1639 cڡ  gme = comm_rvi :: oc_me (); 1642 cڡ BBox gbb = boundgbox ( idt , mgl * gwhe ; 1644 cڡ  gnms = ( m = ACEA ? nems : 1; 1646 #ifde DEBUG_PRINT_GDB_COMM 1647 gcomm_rvi :: log (<< "gdbWreDa:" << "[Me:" << me << "]" 1648 << "[NI:" << nms << "]" << "[I:" << m << "]" 1649 << "[T:" << timum << "]" << "[L:" << vnum << "]" 1650 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 1651 << bb << dl ). ush (); 1654 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 1655 mydex , m , me , idt , ); 1656 ( gridda ( idt , mgl )). PackRegi ( gdb . da ( ), bb , m ); 1666 gme < ass gTy > 1667  GridDaBlock (3)< gTy >:: $gdbSUpPtGIaiInfo (cڡ  ign , 1668 cڡ * ޭ , 1669 cڡ BBox & dmged_bbox , 1670 cڡ BBox & dshmged_bbox , 1671 cڡ * d_d ) 1673 i( _ag = ACEF ) ; 1675 cڡ  mynk = 3; 1677 cڡ  um = comm_rvi :: `oc_num (); 1678 cڡ  me = comm_rvi :: `oc_me (); 1680 cڡ  fe = dagh . `fe (); 1681 cڡ  fev = dagh . `fev (); 1683 cڡ  daghnk = dagh . nk ; 1685 cڡ  fev = dagh . `fev (); 1686 cڡ  ev = dagh . `crv (); 1688 cڡ  ag = ( vnum > ev ? ACETrue : ACEF ; 1689 cڡ  pwag = ( vnum < fev ? ACETrue : ACEF ; 1691 cڡ  vnum = vnum - fev ; 1692 cڡ  pwvnum = vnum + fev ; 1694 cڡ  r_t = um * maxdex ; 1696 GridBoxLi * ggbl = dagh . `ggbl (); 1698  GridBox * gb = 0; 1699  i = 0; 1701  maxd = 0; 1702  i =0;i<2* daghnk ;i++) 1703 maxd = (maxd > _d [ i ]) ? maxrad : sten_rad[i]; 1705 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 1706 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 1709 i( ag ) { 1710 gdb_g_ad_fo = w GDB_Iai * [ r_t ]; 1711  i =0; i< r_t ; i++ gdb_g_ad_fo [i] = 0; 1713 GridBoxLi cgbl ; 1714 BBox `bbox ( `growbydim ( `crn ( mged_bbox , fe ), d_d )); 1715 ggbl -> `r ( bbox , vnum , cgbl ); 1717  gb = cgbl . `f (); gb; gb =rcgbl. `xt ()) { 1718 cڡ  idx = gb -> `gbIndex (); 1719 cڡ  owr = gb -> `gbOwr (); 1721 BBox `rbb ( bbox * gb -> `gbBBoxAbs ( vnum , ޭ )); 1722 i( rbb . `emy ()) ; 1724 i( ign ! ACE_A ) 1725 `gdbAlignBBox ( mynk , rbb , ign ); 1727 cڡ  dex = owr * maxdex + idx ; 1728 i(! gdb_g_ad_fo [ dex ]) 1729 gdb_g_ad_fo [ dex ] = w GDB_Iai ; 1730 gdb_g_ad_fo [ dex ]-> mbbox + rbb ; 1731 #ifde DEBUG_PRINT 1732 `as (! gdb_g_ad_fo [ dex ]-> mbbox . `emy ()); 1737 i( pwag ) { 1738 gdb_g_wre_fo = w GDB_Iai * [ r_t ]; 1739  i =0; i< r_t ; i++ gdb_g_wre_fo [i] = 0; 1741 GridBoxLi pwcgbl ; 1742 BBox `pwbbox ( `fe ( dmged_bbox , fe ,0)); 1743 ggbl -> `r ( pwbbox , pwvnum , pwcgbl , ޭ , fe * maxd ); 1745 cڡ BBox & ibbox = mage .ibbox; 1747  gb = pwcgbl . `f (); gb; gb =wcgbl. `xt ()) { 1748 cڡ  idx = gb -> `gbIndex (); 1749 cڡ  owr = gb -> `gbOwr (); 1751 BBox `wbb ( ibbox * `growbydim ( gb -> `gbBBoxAbs ( vnum , ޭ ), d_d )); 1753 i( wbb . `emy ()) ; 1755 i( ign ! ACE_A ) 1756 `gdbAlignBBox ( mynk , wbb , ign ); 1758 cڡ  dex = owr * maxdex + idx ; 1759 i(! gdb_g_wre_fo [ dex ]) 1760 gdb_g_wre_fo [ dex ] = w GDB_Iai ; 1761 #ifde DEBUG_PRINT 1762 `as ( gdb_g_wre_fo [ dex ]-> mbbox . `emy () || 1763 wbb . `mgab ( gdb_g_wre_fo [ dex ]-> mbbox , ޭ )); 1765 gdb_g_wre_fo [ dex ]-> mbbox + wbb ; 1766 #ifde DEBUG_PRINT 1767 `as (! gdb_g_wre_fo [ dex ]-> mbbox . `emy ()); 1775 } } 1777 gme < ass gTy > 1778  GridDaBlock (3)< gTy >:: gdbSUpPtGIaiInfo ( 1779 cڡ GridDaBlock (3)< Ty >* gdbtm ) 1781 i( _ag = ACEF ) ; 1783 cڡ  gmynk = 3 ; 1784 cڡ  gum = comm_rvi :: oc_num (); 1785 cڡ  gr_t = um * maxdex ; 1787 gGDB_Iai **& gmw = gdb_g_wre_fo ; 1788 gGDB_Iai **& gmr = gdb_g_ad_fo ; 1790 GDB_Iai ** ghw = gdbtm -> gdb_g_wre_fo ; 1791 GDB_Iai ** ghr = gdbtm -> gdb_g_ad_fo ; 1793 i(! ghw && ! ghr ) ; 1795 i( ghw gmw = w GDB_Iai * [ r_t ]; 1796 i( ghr gmr = w GDB_Iai * [ r_t ]; 1798  gp = 0; 1799  gp = 0; < gr_t ;++) { 1800 i( gmw mw[ p ] = 0; 1801 i( gmr mr[ p ] = 0; 1803 i( ghw && hw[ p ]) { 1804 gmw [ p ] = w GDB_Iai ; 1805 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 1809 i( ghr && hr[ p ]) { 1810 gmr [ p ] = w GDB_Iai ; 1811 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 1820 gme < ass gTy > 1821  GridDaBlock (3)< gTy >:: $gdbSUpPtSIaiInfo (cڡ  ign , 1822 cڡ * ޭ , 1823 cڡ BBox & dmged_bbox , 1824 cڡ BBox & dshmged_bbox , 1825 cڡ * d_d ) 1827 i( _ag = ACEF ) ; 1829 cڡ  mynk = 3; 1831 cڡ  um = comm_rvi :: `oc_num (); 1832 cڡ  me = comm_rvi :: `oc_me (); 1834 cڡ  fe = dagh . `fe (); 1835 cڡ  fev = dagh . `fev (); 1837 cڡ  daghnk = dagh . nk ; 1839 cڡ  fev = dagh . `fev (); 1840 cڡ  ev = dagh . `crv (); 1842 cڡ  pwag = ( vnum > ev ? ACETrue : ACEF ; 1843 cڡ  ag = ( vnum < fev ? ACETrue : ACEF ; 1845 cڡ  pwvnum = vnum - fev ; 1846 cڡ  vnum = vnum + fev ; 1848 cڡ  r_t = um * maxdex ; 1850 GridBoxLi * ggbl = dagh . `ggbl (); 1852  GridBox * gb = 0; 1853  i = 0; 1855  maxd = 0; 1856  i =0;i<2* daghnk ;i++) 1857 maxd = (maxd > _d [ i ]) ? maxrad : sten_rad[i]; 1859 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 1860 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 1863 i( pwag ) { 1864 gdb_t_wre_fo = w GDB_Iai * [ r_t ]; 1865  i =0; i< r_t ; i++ gdb_t_wre_fo [i] = 0; 1867 GridBoxLi pwcgbl ; 1868 BBox `pwbbox ( `crn ( dmged_bbox , fe )); 1869 ggbl -> `r ( pwbbox , pwvnum , pwcgbl , ޭ , fe * maxd ); 1871  gb = pwcgbl . `f (); gb; gb =wcgbl. `xt ()) { 1872 cڡ  idx = gb -> `gbIndex (); 1873 cڡ  owr = gb -> `gbOwr (); 1875 BBox `wbb ( pwbbox * gb -> `gbBBoxAbs ( pwvnum , ޭ )); 1876 i( wbb . `emy ()) ; 1878 i( ign ! ACE_A ) 1879 `gdbAlignBBox ( mynk , wbb , ign ); 1881 cڡ  dex = owr * maxdex + idx ; 1882 i(! gdb_t_wre_fo [ dex ]) 1883 gdb_t_wre_fo [ dex ] = w GDB_Iai ; 1884 gdb_t_wre_fo [ dex ]-> mbbox + wbb ; 1885 #ifde DEBUG_PRINT 1886 `as (! gdb_t_wre_fo [ dex ]-> mbbox . `emy ()); 1891 i( ag ) { 1892 gdb_t_ad_fo = w GDB_Iai * [ r_t ]; 1893  i =0; i< r_t ; i++ gdb_t_ad_fo [i] = 0; 1895 GridBoxLi cgbl ; 1896 BBox `bbox ( `growbydim ( `fe ( dmged_bbox , fe ,0), d_d )); 1897 ggbl -> `r ( bbox , vnum , cgbl ); 1899 cڡ BBox & ibbox = mage .ibbox; 1901  gb = cgbl . `f (); gb; gb =rcgbl. `xt ()) { 1902 cڡ  idx = gb -> `gbIndex (); 1903 cڡ  owr = gb -> `gbOwr (); 1905 BBox `rbb ( ibbox * `growbydim ( gb -> `gbBBoxAbs ( vnum , ޭ ), d_d )); 1907 i( rbb . `emy ()) ; 1909 i( ign ! ACE_A ) 1910 `gdbAlignBBox ( mynk , rbb , ign ); 1912 cڡ  dex = owr * maxdex + idx ; 1913 i(! gdb_t_ad_fo [ dex ]) 1914 gdb_t_ad_fo [ dex ] = w GDB_Iai ; 1915 #ifde DEBUG_PRINT 1916 `as ( gdb_t_ad_fo [ dex ]-> mbbox . `emy () || 1917 rbb . `mgab ( gdb_t_ad_fo [ dex ]-> mbbox , ޭ )); 1919 gdb_t_ad_fo [ dex ]-> mbbox + rbb ; 1920 #ifde DEBUG_PRINT 1921 `as (! gdb_t_ad_fo [ dex ]-> mbbox . `emy ()); 1929 } } 1931 gme < ass gTy > 1932  GridDaBlock (3)< gTy >:: gdbSUpPtSIaiInfo ( 1933 cڡ GridDaBlock (3)< Ty >* gdbtm ) 1935 i( _ag = ACEF ) ; 1937 cڡ  gmynk = 3 ; 1938 cڡ  gum = comm_rvi :: oc_num (); 1939 cڡ  gr_t = um * maxdex ; 1941 gGDB_Iai **& gmw = gdb_t_wre_fo ; 1942 gGDB_Iai **& gmr = gdb_t_ad_fo ; 1944 GDB_Iai ** ghw = gdbtm -> gdb_t_wre_fo ; 1945 GDB_Iai ** ghr = gdbtm -> gdb_t_ad_fo ; 1947 i(! ghw && ! ghr ) ; 1949 i( ghw gmw = w GDB_Iai * [ r_t ]; 1950 i( ghr gmr = w GDB_Iai * [ r_t ]; 1952  gp = 0; 1953  gp = 0; < gr_t ;++) { 1954 i( gmw mw[ p ] = 0; 1955 i( gmr mr[ p ] = 0; 1957 i( ghw && hw[ p ]) { 1958 gmw [ p ] = w GDB_Iai ; 1959 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 1963 i( ghr && hr[ p ]) { 1964 gmr [ p ] = w GDB_Iai ; 1965 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 1975 gme < ass gTy > 1976  GridDaBlock (3)< gTy >:: $gdbRPtIaiInfo () 1978 i( _ag = ACEF ) ; 1980 GDB_Iai **& mgw = gdb_g_wre_fo ; 1981 GDB_Iai **& mgr = gdb_g_ad_fo ; 1983 GDB_Iai **& msw = gdb_t_wre_fo ; 1984 GDB_Iai **& m = gdb_t_ad_fo ; 1986 i(! mgw && ! mgr && ! msw && ! m ) ; 1988 cڡ  r_t = comm_rvi :: `oc_num (* maxdex ; 1989  p = 0; 1990  p = 0; < r_t ;++) { 1991 i( mgw ) { 1992 de mgw [ p ]; 1993 mgw [ p ] = 0; 1995 i( mgr ) { 1996 de mgr [ p ]; 1997 mgr [ p ] = 0; 1999 i( msw ) { 2000 de msw [ p ]; 2001 msw [ p ] = 0; 2003 i( m ) { 2004 de m [ p ]; 2005 m [ p ] = 0; 2009 i( mgw de [] mgw; 2010 i( mgr de [] mgr; 2011 i( msw de [] msw; 2012 i( m de [] msr; 2013 mgw = 0; mgr = 0; 2014 msw = 0; m = 0; 2015 } } 2025 gme < ass gTy > 2026  GridDaBlock (3)< gTy >:: $gdbSUpPtMa (cڡ * ޭ , 2027 cڡ * extghwidth ) 2029 i( _ag = ACEF ) ; 2031 i( _mage de arent_mstorage; 2033 cڡ  fe = dagh . `fe (); 2037 cڡ  mynk = 3; 2039 BBox `db ( `crn ( mged_bbox , fe )); 2041 db . `growbydim ( extghwidth ); 2043 cڡ Cods ` ( db . `low ()); 2044 cڡ Cods `cu ( db . `u ()); 2045 cڡ Cods ` ( db . `size ()); 2047  imes2 = 0; 2048  i =0; i< mynk ; i++) { 2049 imes2 = 2* i ; 2051 i( bndryags [ imes2 ] = ACEF ) { 2052 i( extghwidth [ imes2 ] < _d [itimes2]) 2053 db . `low ( i - ` (i)*( _d [ imes2 ] - extghwidth [itimes2]); 2056 i( bndryags [ imes2 +1] = ACEF ) { 2057 i( extghwidth [ imes2 +1] < _d [itimes2+1]) 2058 db . `u ( i + ` (i)*( _d [ imes2 +1] - extghwidth [itimes2+1]); 2062 _mage = w `GridDa (3)< Ty >( db , nems ); 2064 #ifde DEBUG_PRINT_GDB 2065 comm_rvi :: `log (<< "gdbSUpPtMa" << "[" << gfid << "] " 2066 << _mage -> `bbox () << " " 2067 << _mage -> `exs () << " " 2068 << dl ). `ush (); 2070 } } 2072 gme < ass gTy > 2073  GridDaBlock (3)< gTy >:: $gdbRPtMa () 2075 i( _ag = ACEF ) ; 2076 i( _mage de arent_mstorage; 2077 } } 2104 gme < ass gTy > 2105  GridDaBlock (3)< gTy >:: gdbWrePtGh (cڡ  oc , 2106 cڡ  m , 2107 cڡ  idt , 2108 cڡ  mgl , 2109 GridDaBuck < Ty >& gdb , 2110 cڡ  ) 2112 i( g_ag = ACEF )  0; 2113 #ifde DEBUG_PRINT 2114 as (( m ! ACEA && itm >0 && nems >= itm) || 2115 ( m = ACEA )); 2116 as ( idt = ACE_PtMa && mgl = ACENu ); 2119 cڡ  gmidt = 2120 ( idt = ACE_PtMa ? ACE_Ma : ACE_Shadow ; 2122 cڡ  gme = comm_rvi :: oc_me (); 2123 cڡ  gbadex = oc * maxdex ; 2125 cڡ  gnms = ( m = ACEA ? nems : 1; 2127 #ifde DEBUG_PRINT_GDB_COMM 2128 gcomm_rvi :: log (<< "gdbWrePtGh:" << "[P:" << oc << "]" 2129 << "[Me:" << me << "]" 2130 << "[NI:" << nms << "]" << "[I:" << m << "]" 2131 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2132 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2133 << dl ). ush (); 2136 GDB_Iai * ggdbi = 0; 2137  gt = 0; 2138 i( ggdb_g_wre_fo ) { 2139  gidx = ; 2140  gi ; 2141  gi = 0; i < gmaxdex ; i++) { 2142 i( ggdbi = gdb_g_wre_fo [ badex + i ]) { 2144 #ifde DEBUG_PRINT_GDB_COMM 2145 comm_rvi :: log (<< "WrgPtGh[" << idx << "]" 2146 << "{ " << * gdbi << " }" << dl ). ush (); 2149 BBox gbb = gdbi -> mbbox ; 2150 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2151 i , m , me , idt , idx ); 2153 ( gridda ( midt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2155 gt ++; gidx ++; 2159  gt ; 2162 gme < ass gTy > 2163  GridDaBlock (3)< gTy >:: gdbWrePtS (cڡ  oc , 2164 cڡ  m , 2165 cڡ  idt , 2166 cڡ  mgl , 2167 GridDaBuck < Ty >& gdb , 2168 cڡ  ) 2170 i( g_ag = ACEF )  0; 2171 #ifde DEBUG_PRINT 2172 as (( m ! ACEA && itm >0 && nems >= itm) || 2173 ( m = ACEA )); 2174 as ( idt = ACE_Ma && mgl = ACENu ); 2177 cڡ  gpidt = 2178 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 2180 cڡ  gme = comm_rvi :: oc_me (); 2181 cڡ  gbadex = oc * maxdex ; 2183 cڡ  gnms = ( m = ACEA ? nems : 1; 2185 #ifde DEBUG_PRINT_GDB_COMM 2186 gcomm_rvi :: log (<< "gdbWrePtS:" << "[P:" << oc << "]" 2187 << "[Me:" << me << "]" 2188 << "[NI:" << nms << "]" << "[I:" << m << "]" 2189 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2190 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2191 << dl ). ush (); 2194 GDB_Iai * ggdbi = 0; 2195  gt = 0; 2196 i( ggdb_t_wre_fo ) { 2197  gidx = ; 2198  gi ; 2199  gi = 0; i < gmaxdex ; i++) { 2200 i( ggdbi = gdb_t_wre_fo [ badex + i ]) { 2202 #ifde DEBUG_PRINT_GDB_COMM 2203 comm_rvi :: log (<< "WrgPtS[" << idx << "]" 2204 << "{ " << * gdbi << " }" << dl ). ush (); 2207 BBox gbb = gdbi -> mbbox ; 2208 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2209 i , m , me , idt , idx ); 2211 ( da ( pidt , mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2213 gt ++; gidx ++; 2217  gt ; 2228 gme < ass gTy > 2229  GridDaBlock (3)< gTy >:: $gdbSUpFluxIaiInfo (cڡ  ign , 2230 cڡ GhoIai & gi , 2231 cڡ * ޭ , 2232 cڡ BBox & dmged_bbox , 2233 cڡ BBox & dshmged_bbox ) 2235 i( ux_ag = ACEF ) ; 2237 cڡ  mynk = 3 ; 2238 cڡ  mynkx2 = 2* mynk ; 2240 cڡ  um = comm_rvi :: `oc_num (); 2242 cڡ  fe = dagh . `fe (); 2243 cڡ  fev = dagh . `fev (); 2245 cڡ  daghnk = dagh . nk ; 2247 cڡ  fev = dagh . `fev (); 2248 cڡ  ev = dagh . `crv (); 2250 cڡ  ag = ( vnum < fev ? ACETrue : ACEF ; 2251 cڡ  fwag = ( vnum > ev ? ACETrue : ACEF ; 2253 cڡ  vnum = vnum + fev ; 2254 cڡ  fwvnum = vnum - fev ; 2256 cڡ  r_t = um * mynkx2 * maxdex ; 2258 GridBoxLi * ggbl = dagh . `ggbl (); 2260  GridBox * gb = 0; 2261  r = 0; 2263 cڡ BBox `dmbbox ( `shrkubydim ( dmged_bbox , ޭ )); 2264 cڡ BBox `mbbox ( `shrkubydim ( mged_bbox , ޭ )); 2266  f [2*3]; 2267  r =0;< mynk ;++) { 2268 f [2* r ] = 1; fsr[2*r+1] = 1; 2272 i( ag ) { 2273 gdb_ux_ad_fo = w GDB_Iai * [ r_t ]; 2274  r =0;< r_t ;++ gdb_ux_ad_fo [r] = 0; 2276 GridBoxLi cgbl ; 2277 BBox `bbox ( `fe ( dmbbox , fe ,1)); 2278 ggbl -> `r ( bbox , vnum , cgbl , ޭ ,1); 2280 BBox hisbb , hisbbp , hisbbn ; 2281 BBox bbp , bbn ; 2282  dex , dex ; 2283  idx , owr ; 2285  GridBox * gb = 0; 2286  gb = cgbl . `f ();gb;gb=cgbl. `xt ()) { 2287 idx = gb -> `gbIndex (); 2288 owr = gb -> `gbOwr (); 2290 hisbb = `crn ( gb -> `gbBBoxAbs ( vnum , ޭ ), fe ); 2292  r =0;< mynk ;++{ f [2*r] = 1; fsr[2*r+1] = 1;} 2294  r =0;< mynk ;++) { 2295 hisbbn = gi . `Ibbox ( hisbb , r , ACE_Backwd , f ); 2296 hisbbp = gi . `Ibbox ( hisbb , r , ACE_Fwd , f ); 2298 i( ign ! ACE_A ) { 2299 `gdbAlignBBox ( mynk , hisbbn , ign ); 2300 `gdbAlignBBox ( mynk , hisbbp , ign ); 2303 bbn = mged_bbox * hisbbn ; 2304 bbp = mged_bbox * hisbbp ; 2306 i(! bbn . `emy ()) { 2307 dex = ( owr * mynkx2 * maxdex + (( r *2)*maxdex+ idx ; 2308 i(! gdb_ux_ad_fo [ dex ]) 2309 gdb_ux_ad_fo [ dex ] = w GDB_Iai ; 2310 #ifde DEBUG_PRINT 2311 `as ( gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2313 gdb_ux_ad_fo [ dex ]-> mbbox + bbn ; 2314 #ifde DEBUG_PRINT 2315 `as (! gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2318 i(! bbp . `emy ()) { 2319 dex = ( owr * mynkx2 * maxdex + (( r *2+1)*maxdex+ idx ; 2320 i(! gdb_ux_ad_fo [ dex ]) 2321 gdb_ux_ad_fo [ dex ] = w GDB_Iai ; 2322 #ifde DEBUG_PRINT 2323 `as ( gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2325 gdb_ux_ad_fo [ dex ]-> mbbox + bbp ; 2326 #ifde DEBUG_PRINT 2327 `as (! gdb_ux_ad_fo [ dex ]-> mbbox . `emy ()); 2330 f [2* r ] = 0; fsr[2*r+1] = 0; 2335 i( fwag ) { 2336 gdb_ux_wre_fo = w GDB_Iai * [ r_t ]; 2337  r =0;< r_t ;++ gdb_ux_wre_fo [r] = 0; 2339 GridBoxLi fwcgbl ; 2340 BBox `fwbbox ( `crn ( `grow ( dmbbox ,1), fe )); 2341 ggbl -> `r ( fwbbox , fwvnum , fwcgbl , ޭ ); 2343 BBox hisbb , myfwbbp , myfwbbn ; 2344 BBox fwbbp , fwbbn ; 2345  wpdex , wndex ; 2346  idx , owr ; 2348 BBox `fmbbox ( `crn ( mged_bbox , fe )); 2350  GridBox * gb = 0; 2351  gb = fwcgbl . `f ();gb;gb=fwcgbl. `xt ()) { 2352 idx = gb -> `gbIndex (); 2353 owr = gb -> `gbOwr (); 2355 hisbb = gb -> `gbBBoxAbs ( fwvnum , ޭ ); 2356 i( ign ! ACE_A `gdbAlignBBox ( mynk , hisbb ,lign); 2358  r =0;< mynk ;++{ f [2*r] = 1; fsr[2*r+1] = 1;} 2360  r =0;< mynk ;++) { 2362 myfwbbn = gi . `Ibbox ( fmbbox , r , ACE_Backwd , f ); 2363 myfwbbp = gi . `Ibbox ( fmbbox , r , ACE_Fwd , f ); 2365 fwbbn = myfwbbn * hisbb ; 2366 fwbbp = myfwbbp * hisbb ; 2368 i(! fwbbn . `emy ()) { 2369 wndex = ( owr * mynkx2 * maxdex + (( r *2)*maxdex+ idx ; 2370 i(! gdb_ux_wre_fo [ wndex ]) 2371 gdb_ux_wre_fo [ wndex ] = w GDB_Iai ; 2372 #ifde DEBUG_PRINT 2373 `as ( gdb_ux_wre_fo [ wndex ]-> mbbox . `emy ()); 2375 gdb_ux_wre_fo [ wndex ]-> mbbox + fwbbn ; 2376 #ifde DEBUG_PRINT 2377 `as (! gdb_ux_wre_fo [ wndex ]-> mbbox . `emy ()); 2380 i(! fwbbp . `emy ()) { 2381 wpdex = ( owr * mynkx2 * maxdex + (( r *2+1)*maxdex+ idx ; 2382 i(! gdb_ux_wre_fo [ wpdex ]) 2383 gdb_ux_wre_fo [ wpdex ] = w GDB_Iai ; 2384 #ifde DEBUG_PRINT 2385 `as ( gdb_ux_wre_fo [ wpdex ]-> mbbox . `emy ()); 2387 gdb_ux_wre_fo [ wpdex ]-> mbbox + fwbbp ; 2388 #ifde DEBUG_PRINT 2389 `as (! gdb_ux_wre_fo [ wpdex ]-> mbbox . `emy ()); 2392 f [2* r ] = 0; fsr[2*r+1] = 0; 2396 } } 2398 gme < ass gTy > 2399  GridDaBlock (3)< gTy >:: gdbSUpFluxIaiInfo ( 2400 cڡ GridDaBlock (3)< Ty >* gdbtm ) 2403 i( ux_ag = ACEF ) ; 2405 cڡ  gmynk = 3 ; 2406 cڡ  gum = comm_rvi :: oc_num (); 2407 cڡ  gr_t = um * (2* mynk * maxdex ; 2409 gGDB_Iai **& gmw = gdb_ux_wre_fo ; 2410 gGDB_Iai **& gmr = gdb_ux_ad_fo ; 2412 GDB_Iai ** ghw = gdbtm -> gdb_ux_wre_fo ; 2413 GDB_Iai ** ghr = gdbtm -> gdb_ux_ad_fo ; 2415 i(! ghw && ! ghr ) ; 2417 i( ghw gmw = w GDB_Iai * [ r_t ]; 2418 i( ghr gmr = w GDB_Iai * [ r_t ]; 2420  gp = 0; 2421  gp = 0; < gr_t ;++) { 2422 i( gmw mw[ p ] = 0; 2423 i( gmr mr[ p ] = 0; 2425 i( ghw && hw[ p ]) { 2426 gmw [ p ] = w GDB_Iai ; 2427 gmw [ p ]-> gmbbox = hw [p]-> mbbox ; 2431 i( ghr && hr[ p ]) { 2432 gmr [ p ] = w GDB_Iai ; 2433 gmr [ p ]-> gmbbox = hr [p]-> mbbox ; 2439 gme < ass gTy > 2440  GridDaBlock (3)< gTy >:: $gdbRFluxIaiInfo () 2442 i( ux_ag = ACEF ) ; 2444 cڡ  mynk = 3 ; 2446 GDB_Iai **& mw = gdb_ux_wre_fo ; 2447 GDB_Iai **& mr = gdb_ux_ad_fo ; 2449 i(! mw && ! mr ) ; 2451 cڡ  r_t = comm_rvi :: `oc_num (* 2* mynk * maxdex ; 2452  p = 0; 2453  p = 0; < r_t ;++) { 2454 i( mw && mw[ p ]) { 2455 de mw [ p ]; 2456 mw [ p ] = 0; 2458 i( mr && mr[ p ]) { 2459 de mr [ p ]; 2460 mr [ p ] = 0; 2464 i( mw de [] mw; 2465 i( mr de [] mr; 2466 mw = 0; mr = 0; 2467 } } 2477 gme < ass gTy > 2478  GridDaBlock (3)< gTy >:: $gdbSUpFluxMa (cڡ GhoIai & gi ) 2480 i( ux_ag = ACEF ) ; 2482 cڡ  mynk = 3; 2483 cڡ  fe = dagh . `fe (); 2485 cڡ BBox `fmbbox ( `crn ( mged_bbox , fe )); 2487  r = 0; 2489  f [2*3]; 2490  r =0;< mynk ;++) { 2491 f [2* r ] = 1; fsr[2*r+1] = 1; 2492 i( ux_mage [2* r ] de flux_mstorage[2*r]; 2493 i( ux_mage [2* r +1] de flux_mstorage[2*r+1]; 2496 BBox fbb ; 2497  r =0;< mynk ;++) { 2498 fbb = gi . `Ibbox ( fmbbox , r , ACE_Backwd , f ); 2499 ux_mage [2* r ] = w `GridDa (3)< Ty >( fbb , nems ); 2501 fbb = gi . `Ibbox ( fmbbox , r , ACE_Fwd , f ); 2502 ux_mage [2* r +1] = w `GridDa (3)< Ty >( fbb , nems ); 2504 f [2* r ] = 0; fsr[2*r+1] = 0; 2506 #ifde DEBUG_PRINT_GDB 2507 comm_rvi :: `log () << "gdbSetUpFluxMain" 2508 << "[" << gfid << "] " 2509 << "[" << 2* r << "] " 2510 << ux_mage [2* r ]-> `bbox () << " " 2511 << ux_mage [2* r ]-> `exs () << " " 2512 << fmbbox << " " 2513 << dl ). `ush (); 2514 comm_rvi :: `log () << "gdbSetUpFluxMain" 2515 << "[" << gfid << "] " 2516 << "[" << 2* r +1 << "] " 2517 << ux_mage [2* r +1]-> `bbox () << " " 2518 << ux_mage [2* r +1]-> `exs () << " " 2519 << fmbbox << " " 2520 << dl ). `ush (); 2523 } } 2525 gme < ass gTy > 2526  GridDaBlock (3)< gTy >:: gdbSUpFluxMa (cڡ GridDaBlock(3)< Ty >* gdbtm ) 2528 i( ux_ag = ACEF ) ; 2530 cڡ  gmynk = 3; 2531  gr = 0; 2533  gr =0;< gmynk ;++) { 2535 i( gux_mage [2* r ] de flux_mstorage[2*r]; 2536 i( gux_mage [2* r +1] de flux_mstorage[2*r+1]; 2538 i( ggdbtm -> gux_mage [2* r ]) 2539 gux_mage [2* r ] = w GridDa (3)< Ty >( gdbtm -> ux_mage [2*r]-> bbox (), 2540 ggdbtm -> gux_mage [2* r ]-> nems ()); 2541 i( ggdbtm -> gux_mage [2* r +1]) 2542 gux_mage [2* r +1] = w GridDa (3)< Ty >( gdbtm -> ux_mage [2*r+1]-> bbox (), 2543 ggdbtm -> gux_mage [2* r +1]-> nems ()); 2545 #ifde DEBUG_PRINT_GDB 2546 gcomm_rvi :: log () << "gdbSetUpFluxMain" 2547 << "[" << gfid << "] " 2548 << "[" << 2* r << "] " 2549 << ux_mage [2* r ]-> bbox () << " " 2550 << ux_mage [2* r ]-> exs () << " " 2551 << dl ). ush (); 2552 gcomm_rvi :: log () << "gdbSetUpFluxMain" 2553 << "[" << gfid << "] " 2554 << "[" << 2* r +1 << "] " 2555 << ux_mage [2* r +1]-> bbox () << " " 2556 << ux_mage [2* r +1]-> exs () << " " 2557 << dl ). ush (); 2562 gme < ass gTy > 2563  GridDaBlock (3)< gTy >:: $gdbRFluxMa () 2565 i( ux_ag = ACEF ) ; 2567 cڡ  mynk = 3; 2568  r = 0; 2570  r =0;< mynk ;++) { 2571 i( ux_mage [2* r ] de flux_mstorage[2*r]; 2572 i( ux_mage [2* r +1] de flux_mstorage[2*r+1]; 2574 } } 2585 gme < ass gTy > 2586  GridDaBlock (3)< gTy >:: gdbWreFluxes (cڡ  oc , 2587 cڡ  m , 2588 cڡ  idt , 2589 cڡ  mgl , 2590 GridDaBuck < Ty >& gdb , 2591 cڡ  ) 2593 i( gux_ag = ACEF )  0; 2594 #ifde DEBUG_PRINT 2595 as (( m ! ACEA && itm >0 && nems >= itm) || 2596 ( m = ACEA )); 2597 as ( idt = ACE_FluxMa && mgl = ACENu ); 2600 cڡ  gme = comm_rvi :: oc_me (); 2601 cڡ  gbadex = oc * maxdex *(2*3); 2602 cڡ  gmynk = 3; 2603 cڡ  gnms = ( m = ACEA ? nems : 1; 2605 #ifde DEBUG_PRINT_GDB_COMM 2606 gcomm_rvi :: log (<< "gdbWreFluxes:" << "[P:" << oc << "]" 2607 << "[Me:" << me << "]" 2608 << "[NI:" << nms << "]" << "[I:" << m << "]" 2609 << "[T:" << timum << "]" << "[L:" << vnum << "]" 2610 << "[Id:" << idt << "]" << "[Mgl:" << mgl << "]" 2611 << dl ). ush (); 2614 GDB_Iai * ggdbi = 0; 2615  gt = 0; 2616 i( ggdb_ux_wre_fo ) { 2617  gidx = ; 2618  gr , gm , gi ; 2619  gr = 0; < gmynk ;++) { 2620  gm = 0; m < gmaxdex ; m++) { 2621 gi = (2* r )* maxdex + m ; 2622 i( ggdbi = gdb_ux_wre_fo [ badex + i ]) { 2624 #ifde DEBUG_PRINT_GDB_COMM 2625 comm_rvi :: log (<< "WrgFlux[" << idx << "]" 2626 << "{ " << * gdbi << " }" << dl ). ush (); 2629 BBox gbb = gdbi -> mbbox ; 2630 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2631 i , m , me , idt , idx ); 2633 ( uxda ( idt -(2* r ), mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2635 gt ++; gidx ++; 2638 gi = (2* r +1)* maxdex + m ; 2639 i( ggdbi = gdb_ux_wre_fo [ badex + i ]) { 2641 #ifde DEBUG_PRINT_GDB_COMM 2642 comm_rvi :: log (<< "WrgFlux[" << idx << "]" 2643 << "{ " << * gdbi << " }" << dl ). ush (); 2646 BBox gbb = gdbi -> mbbox ; 2647 ggdb . add ( bb , nms , gfid , timum , dagh . vdex ( vnum ), 2648 i , m , me , idt , idx ); 2650 ( uxda ( idt -(2* r +1), mgl )). PackRegi ( gdb . da ( idx ), bb , m ); 2652 gt ++; gidx ++; 2657  gt ; 2663 gme < ass gTy > 2664 goam & gݔ << (oam& gos , cڡ GridDaBlock (3)< gTy >& ggdb ) 2666 i(& ggdb =( GridDaBlock (3)< Ty > * NULL  os ; 2668 cڡ  gmynk = 3; 2670 gos << "GridDataBlock(3): "; 2671 gos << "[GFid:" << ggdb . ggfid << "]" ; 2672 gos << "[Time:" << ggdb . gtimum << "]"; 2673 gos << "[Lev:" << ggdb . gvnum << "]"; 2674 gos << "[MyIndex:" << ggdb . gmydex << "]"; 2675 gos << "[NIms:" << ggdb . gnems << "]"; 2676 gos << gdl ; 2677 gos << "[Ma:" << ggdb . gmged_bbox << "]"; 2678 gos << "[Shadow:" << ggdb . gshmged_bbox << "]"; 2679 gos << gdl ; 2681 gos << "[Boundary Flags: "; 2682  gb ; 2683  gb = 0 ; b < gmynk ; b++) 2684 gos << ggdb . gbndryags [2* b ] << " " 2685 << ggdb . gbndryags [2* b +1] << " "; 2686 gos << "]" << gdl ; 2688 gos << "[HybridBoundary Flags: "; 2689  gb = 0 ; b < gmynk ; b++) 2690 gos << ggdb . ghybridbndryags [ b ] << " "; 2691 gos << "]" << gdl ; 2693 gos << "[Ghost Prolong Flags: "; 2694  gb = 0 ; b < gmynk ; b++) 2695 gos << ggdb . ggho_g_ag [2* b ] << " " 2696 << ggdb . ggho_g_ag [2* b +1] << " "; 2697 gos << "]" << gdl ; 2699 gos << "[Gho Prg Iais:" << gdl ; 2700  gb = 0 ; b < gmynk ; b++) { 2701 i( ggdb . ggho_g_ag [2* b ] = ACETrue ) 2702 os << " [" << 2* b << ":" << gdb . gho_g_fo [2*b] << "]" 2703 << dl ; 2704 i( ggdb . ggho_g_ag [2* b +1] = ACETrue ) 2705 os << " [" << 2* b +1 << ":" << gdb . gho_g_fo [2*b+1] << "]" 2706 << dl ; 2708 gos << "]" << gdl ; 2710 gos << "Ma Stage:" << gdl ; 2711 gos << " " << ggdb . gmage ; 2713 i( ggdb . gshag = ACETrue ) { 2714 os << "Shadow Stage:" << dl ; 2715 gos << " " << * ggdb . gshage ; 2717 cڡ  g = comm_rvi :: oc_num (); 2718  gr_t = ACEMaxAxis * ACEMaxDs * gdb . maxdex ; 2720 i( ggdb . ggdb_wre_fo ) { 2721 gos << "WrIais: " << gdl ; 2722  gn =0;< g ;++) { 2723 i( ggdb . ggdb_wre_fo [ n ]) 2724  gi =0;i< gr_t ;i++) 2725 i( ggdb . ggdb_wre_fo [ n ][ i ]) 2726 gos << " gdb_wre_fo[" << gn << "][" 2727 << gi << "," 2728 << gi % ggdb . gmaxdex << "," 2729 << gi / ggdb . gmaxdex << "]" 2730 << * ggdb . ggdb_wre_fo [ n ][ i ] 2731 << gdl ; 2734 i( ggdb . ggdb_ad_fo ) { 2735 gos << "Rd Iais: " << gdl ; 2736  gn =0;< g ;++) { 2737 i( ggdb . ggdb_ad_fo [ n ]) 2738  gi =0;i< gr_t ;i++) 2739 i( ggdb . ggdb_ad_fo [ n ][ i ]) 2740 gos << " gdb_ad_fo[" << gn << "][" 2741 << gi << "," 2742 << gi % ggdb . gmaxdex << "," 2743 << gi / ggdb . gmaxdex << "]" 2744 << * ggdb . ggdb_ad_fo [ n ][ i ] 2745 << gdl ; 2749 i( ggdb . g_ag = ACETrue ) { 2750 os << "Parent Storage: " 2751 << gdb . _mage -> bbox () << " " 2752 << gdb . _mage -> exs () << " " 2753 << dl ; 2755 gr_t = * gdb . maxdex ; 2757 i( ggdb . ggdb_g_ad_fo ) { 2758 gos << "PGh Rd Iais: " << gdl ; 2759  gi =0;i< gr_t ;i++) 2760 i( ggdb . ggdb_g_ad_fo [ i ]) 2761 gos << " gdb_gparent_read_info[" 2762 << gi / ggdb . gmaxdex << "][" 2763 << gi % ggdb . gmaxdex << "] " 2764 << * ggdb . ggdb_g_ad_fo [ i ] 2765 << gdl ; 2767 i( ggdb . ggdb_g_wre_fo ) { 2768 gos << "PGh WrIais: " << gdl ; 2769  gi =0;i< gr_t ;i++) 2770 i( ggdb . ggdb_g_wre_fo [ i ]) 2771 gos << " gdb_gparent_write_info[" 2772 << gi / ggdb . gmaxdex << "][" 2773 << gi % ggdb . gmaxdex << "] " 2774 << * ggdb . ggdb_g_wre_fo [ i ] 2775 << gdl ; 2777 i( ggdb . ggdb_t_ad_fo ) { 2778 gos << "PS Rd Iais: " << gdl ; 2779  gi =0;i< gr_t ;i++) 2780 i( ggdb . ggdb_t_ad_fo [ i ]) 2781 gos << " gdb_sparent_read_info[" 2782 << gi / ggdb . gmaxdex << "][" 2783 << gi % ggdb . gmaxdex << "] " 2784 << * ggdb . ggdb_t_ad_fo [ i ] 2785 << gdl ; 2787 i( ggdb . ggdb_t_wre_fo ) { 2788 gos << "PS WrIais: " << gdl ; 2789  gi =0;i< gr_t ;i++) 2790 i( ggdb . ggdb_t_wre_fo [ i ]) 2791 gos << " gdb_sparent_write_info[" 2792 << gi / ggdb . gmaxdex << "][" 2793 << gi % ggdb . gmaxdex << "] " 2794 << * ggdb . ggdb_t_wre_fo [ i ] 2795 << gdl ; 2799 i( ggdb . gux_ag = ACETrue ) { 2800 os << "Flux Stage: " << dl ; 2801  gb =0;b< gmynk ;b++) { 2802 gos << "\t[" << 2* gb << "] " 2803 << ggdb . gux_mage [2* b ]-> bbox () << " " 2804 << ggdb . gux_mage [2* b ]-> exs () << " " 2805 << gdl 2806 << "\t[" << 2* gb +1 << "] " 2807 << ggdb . gux_mage [2* b +1]-> bbox () << " " 2808 << ggdb . gux_mage [2* b +1]-> exs () << " " 2809 << gdl ; 2811 gr_t = * mynk * 2 * gdb . maxdex ; 2813 i( ggdb . ggdb_ux_ad_fo ) { 2814 gos << "Flux Rd Iais: " << gdl ; 2815  gi =0;i< gr_t ;i++) 2816 i( ggdb . ggdb_ux_ad_fo [ i ]) 2817 gos << " gdb_ux_ad_fo[" << gi << "][" 2818 << gi /( ggdb . maxdex * gmynk *2) << "][" 2819 << ( gi %( ggdb . maxdex * gmynk *2))%(myrank) << "][" 2820 << ( gi %( ggdb . maxdex * gmynk *2))/(2*myrank) << "] " 2821 << * ggdb . ggdb_ux_ad_fo [ i ] 2822 << gdl ; 2824 i( ggdb . ggdb_ux_wre_fo ) { 2825 gos << "Flux WrIais: " << gdl ; 2826  gi =0;i< gr_t ;i++) 2827 i( ggdb . ggdb_ux_wre_fo [ i ]) 2828 gos << " gdb_ux_wre_fo[" << gi << "][" 2829 << gi /( ggdb . maxdex * gmynk *2) << "][" 2830 << ( gi %( ggdb . maxdex * gmynk *2))%(myrank) << "][" 2831 << ( gi %( ggdb . maxdex * gmynk *2))/(2*myrank) << "] " 2832 << * ggdb . ggdb_ux_wre_fo [ i ] 2833 << gdl ; 2836  gos ; 2839 gme < ass gTy > 2840 goam & gݔ <<(oam& gos , cڡ GridDaBlockStage (3)< gTy >& ggdbs ) 2842 i(& ggdbs =( GridDaBlockStage (3)< Ty > * NULL  os ; 2844 cڡ  gmynk = 3; 2846 gos << "GDBStorage: "; 2847 gos << ggdbs . gbbox << gdbs. gibbox ; 2848 gos << "[ "; 2849  gb = 0 ; b < gmynk ; b++) { 2850 i(! ggdbs . gbndrybbox [2* b ]. emy () gos << gdbs.bndrybbox[2*b]; 2851 i(! ggdbs . gbndrybbox [2* b +1]. emy () gos << gdbs.bndrybbox[2*b+1]; 2853 gos << " ]" << gdl ; 2854  gos ; 2860 gme < ass gTy > 2861 gofam & gݔ << (ofam& gofs , cڡ GridDaBlock (3)< gTy >& ggdb ) 2863 i(& ggdb =( GridDaBlock (3)< Ty > * NULL  ofs ; 2865 cڡ  gmynk = 3; 2867 gofs . wre ((*)& gdb . timum ,()); 2868 gofs . wre ((*)& gdb . vnum ,()); 2869 gofs . wre ((*)& gdb . shag ,()); 2870 gofs . wre ((*)& gdb . nems ,()); 2872 gofs . wre ((*)& gdb . _ag ,()); 2873 gofs . wre ((*)& gdb . ux_ag ,()); 2875 gofs << ggdb . gridda ( ACE_Ma , ACENu ); 2876 i( ggdb . gshag = ACETrue ) 2877 ofs << gdb . gridda ( ACE_Shadow , ACENu ); 2879 i( ggdb . g_ag = ACETrue ) { 2880 ofs << gdb . da ( ACE_Ma , ACENu ); 2885 i( ggdb . gux_ag = ACETrue ) { 2886  r =0; gr < gmynk ;++) { 2887 gofs << ggdb . uxda ( ACE_FluxMa -(2* r ), ACENu ); 2891 gofs << ggdb . uxda ( ACE_FluxMa -(2* r +1), ACENu ); 2897  gofs ; 2900 gme < ass gTy > 2901 gifam & gݔ >> (ifam& gifs , GridDaBlock (3)< gTy >& ggdb ) 2903 i(& ggdb =( GridDaBlock (3)< Ty > * NULL  ifs ; 2905 cڡ  gmynk = 3; 2907  gtmimum , gtmevnum , gtmpshag , gtmems ; 2908  gtmag , gtmpfag ; 2910 gifs . ad ((*)& tmimum ,()); 2911 gifs . ad ((*)& tmevnum ,()); 2912 gifs . ad ((*)& tmpshag ,()); 2913 gifs . ad ((*)& tmems ,()); 2915 gifs . ad ((*)& tmag ,()); 2916 gifs . ad ((*)& tmpfag ,()); 2918 #ifde DEBUG_PRINT 2919 as ( tmimum = gdb . timum && 2920 tmevnum = gdb . vnum && 2921 tmems = gdb . nems ); 2923 gifs >> ggdb . gridda ( ACE_Ma , ACENu ); 2924 i( ggdb . gshag = ACETrue && tmpshag == ACETrue) 2925 ifs >> gdb . gridda ( ACE_Shadow , ACENu ); 2927 i( ggdb . g_ag = ACETrue && tmag == ACETrue) { 2928 ifs >> gdb . da ( ACE_Ma , ACENu ); 2933 i( ggdb . gux_ag = ACETrue && tmpfag == ACETrue) { 2934  r =0; gr < gmynk ;++) { 2935 gifs >> ggdb . uxda ( ACE_FluxMa -(2* r ), ACENu ); 2939 gifs >> ggdb . uxda ( ACE_FluxMa -(2* r +1), ACENu ); 2945  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlock3.h 1 #ide _uded_GridDaBlock3_h 2  #_uded_GridDaBlock3_h ) 16  ~"GridDaBlockComm.h " 18  ~"GridDa3.h " 19  ~"GDBStage3.h " 21 #ide GridDaBlock 22  #GridDaBlock ( dim `me2 ( GridDaBlock ,dim) ) 25 gme < ass gTy > cs GridFuni (3); 27 #i defed ( __GNUG__ || defed( __GNUC__ ) 28 gme < ass gTy > cs GridDaBlock (3); 30 gme < ass gTy > 31 goam & gݔ <<(oam&, cڡ GridDaBlock (3)< gTy >&); 32 gme < ass gTy > 33 gofam & gݔ <<(ofam&, cڡ GridDaBlock (3)< gTy >&); 34 gme < ass gTy > 35 gifam & gݔ >>(ifam&, GridDaBlock (3)< gTy >&); 38 gme < ass gTy > 39 ass GridDaBlock (3) 41 #i defed ( __GNUG__ || defed( __GNUC__ ) 42 nd goam & gݔ << <>(oam&, cڡ GridDaBlock (3)< gTy >&); 43 nd gofam & gݔ << <>(ofam&, cڡ GridDaBlock (3)< gTy >&); 44 nd gifam & gݔ >> <>(ifam&, GridDaBlock (3)< gTy >&); 46 nd goam & gݔ << (oam&, cڡ GridDaBlock (3)< gTy >&); 47 nd gofam & gݔ << (ofam&, cڡ GridDaBlock (3)< gTy >&); 48 nd gifam & gݔ >> (ifam&, GridDaBlock (3)< gTy >&); 51 nd ass GridFuni (3)< gTy >; 53 cڡ  ggfid ; 58  gowr ; 59  gtimum ; 60  gvnum ; 61  gmydex ; 62  g_d [2*3]; 68  guag ; 69  gnks [3]; 70  gnems ; 71 BBox gmged_bbox ; 72 BBox gshmged_bbox ; 74  gbndryags [2*3]; 75  ghybridbndryags [3]; 81 GridDaBlockStage (3)< gTy > gmage ; 87  gshag ; 88 GridDaBlockStage (3)< gTy >* gshage ; 94  gmgag ; 95  gmglfe ; 96  gmglcr ; 97  gmgvs ; 98 GridDaBlockStage (3)< gTy >** gmgage ; 104  gshmgag ; 105  gshmglfe ; 106  gshmglcr ; 107  gshmgvs ; 108 GridDaBlockStage (3)< gTy >** gshmgage ; 114  gcomm_ag ; 115  ggho_g_ag [2*3]; 116  gmaxdex ; 117 GDB_Iai ggho_g_fo [2*3]; 118 GDB_Iai *** ggdb_wre_fo ; 119 GDB_Iai *** ggdb_ad_fo ; 120 GridTabGhoRcv * ggdb_da_rcv ; 126  g_ag ; 127 GridDa (3)< gTy >* g_mage ; 129 GDB_Iai ** ggdb_g_wre_fo ; 130 GDB_Iai ** ggdb_g_ad_fo ; 131 GDB_Iai ** ggdb_t_wre_fo ; 132 GDB_Iai ** ggdb_t_ad_fo ; 138  gux_ag ; 139 GridDa (3)< gTy >* gux_mage [2*3]; 141 GDB_Iai ** ggdb_ux_wre_fo ; 142 GDB_Iai ** ggdb_ux_ad_fo ; 148 gGridTab & ggb ; 154 gGridHrchy & gdagh ; 157 give : 161 GridDaBlock (3)(cڡ GridDaBlock(3)< Ty >& h ); 162 GridDaBlock (3)< gTy > cڡ& gݔ =(cڡ GridDaBlock(3)< Ty >& h ); 164 give : 168 GridDaBlock (3)(cڡ  gf , 169 gGridHrchy & ggh , 170 gGridTab & ggt , 171 cڡ gGhoIai & ggi , 172 cڡ  gmidx , 173 cڡ gGridBox & ggb , 174 cڡ  gnm , 175 cڡ  gtime , 176 cڡ  gv , 177 cڡ * gbwidth , 178 cڡ * gextghwidth , 179 cڡ * gޭ , 180 cڡ * g , 181 cڡ  gign , 182 cڡ  gmdex , 183 cڡ  gcag , 184 cڡ  gsag , 185 cڡ  gpag , 186 cڡ  gfag , 187 cڡ GridDaBlock (3)< gTy >* ggdbtm , 188 GridDaBlock (3)< gTy >* ggdbeu =0); 193 ~ GridDaBlock (3)(); 203  gdbSUpBoundyFgs ( GridBoxLi & gbl , 204 cڡ GhoIai & gi , 205 cڡ * ޭ , 206 cڡ * d ); 208  gdbSUpGhoIaiInfo ( GridBoxLi & mcgbl , 209 GridBoxLi & scgbl , 210 cڡ  ign , 211 cڡ GhoIai & gi , 212 cڡ * ޭ , 213 cڡ BBox & dagh_mged_bbox , 214 cڡ BBox & dagh_shmged_bbox , 215 cڡ * dagh_d ); 217  gdbSUpGhoIaiInfo ( 218 cڡ GridDaBlock (3)< Ty >* gdbtm ); 220  gdbRGhoIaiInfo (); 222  gdbAddGhoIaiInfo (cڡ  axis , cڡ  d , 223 cڡ BBox & rb , cڡ BBox& wb , 224 cڡ BBox & hisbb , 225 cڡ  owr , cڡ  idx ); 226  gdbAddShadowGhoIaiInfo (cڡ  axis , cڡ  d , 227 cڡ BBox & b , cڡ BBox& swb , 228 cڡ BBox & shisbb , 229 cڡ  owr , cڡ  idx ); 234  gdbSUpMa (cڡ * ޭ , 235 cڡ * bwidth , cڡ * extghwidth , 236 GridDaBlock (3)< Ty >* gdbeu =0); 241  gdbSUpShadow (cڡ * ޭ , 242 cڡ * bwidth , cڡ * extghwidth , 243 GridDaBlock (3)< Ty >* gdbeu =0); 244  gdbRShadow (); 249  gdbSUpPtMa (cڡ * ޭ , 250 cڡ * extghwidth ); 251  gdbRPtMa (); 255 le  gdbSUpPtIaiInfo (cڡ  ign , 256 cڡ * ޭ , 257 cڡ BBox & dagh_mged_bbox , 258 cڡ BBox & dagh_shmged_bbox , 259 cڡ * dagh_d ) 261 gdbSUpPtGIaiInfo ( ign , 262 ޭ , 263 dagh_mged_bbox , 264 dagh_shmged_bbox , 265 dagh_d ); 266 gdbSUpPtSIaiInfo ( ign , 267 ޭ , 268 dagh_mged_bbox , 269 dagh_shmged_bbox , 270 dagh_d ); 272 le  gdbSUpPtIaiInfo (cڡ GridDaBlock (3)< Ty >* gdbtm ) 274 gdbSUpPtGIaiInfo ( gdbtm ); 275 gdbSUpPtSIaiInfo ( gdbtm ); 279  gdbSUpPtGIaiInfo (cڡ  ign , 280 cڡ * ޭ , 281 cڡ BBox & dagh_mged_bbox , 282 cڡ BBox & dagh_shmged_bbox , 283 cڡ * dagh_d ); 284  gdbSUpPtGIaiInfo (cڡ GridDaBlock (3)< Ty >* gdbtm ); 287  gdbSUpPtSIaiInfo (cڡ  ign , 288 cڡ * ޭ , 289 cڡ BBox & dagh_mged_bbox , 290 cڡ BBox & dagh_shmged_bbox , 291 cڡ * dagh_d ); 292  gdbSUpPtSIaiInfo (cڡ GridDaBlock (3)< Ty >* gdbtm ); 294  gdbRPtIaiInfo (); 298  gdbSUpFluxMa (cڡ GhoIai & gi ); 299  gdbSUpFluxMa (cڡ GridDaBlock (3)< Ty >* gdbtm ); 300  gdbRFluxMa (); 304  gdbSUpFluxIaiInfo (cڡ  ign , 305 cڡ GhoIai & gi , 306 cڡ * ޭ , 307 cڡ BBox & dmged_bbox , 308 cڡ BBox & dshmged_bbox ); 309  gdbSUpFluxIaiInfo (cڡ GridDaBlock (3)< Ty >* gdbtm ); 310  gdbRFluxIaiInfo (); 314  gdbSUpMuiGrid (cڡ  lc , cڡ  lf , 315 cڡ * ޭ , 316 cڡ * bwidth , cڡ * extghwidth ); 317  gdbSUpMuiGrid (cڡ  axis , 318 cڡ  lc , cڡ  lf , 319 cڡ * ޭ , 320 cڡ * bwidth , cڡ * extghwidth ); 321  gdbRMuiGrid (); 326  gdbSUpShadowMuiGrid (cڡ  lc , cڡ  lf , 327 cڡ * ޭ , 328 cڡ * bwidth , cڡ * extghwidth ); 329  gdbSUpShadowMuiGrid (cڡ  axis , 330 cڡ  lc , cڡ  lf , 331 cڡ * ޭ , 332 cڡ * bwidth , cڡ * extghwidth ); 333  gdbRShadowMuiGrid (); 338 gpublic : 339 le  dexme (cڡ  i ) const 340 { ( mydex = i ); } 342 le  has_ud () const 343 {  ( guag = ACETrue ); } 345 le  has_ighb (cڡ  d ) const 346 {  ( gbndryags [ d ] = ACEF ); } 348 le  has_boundy (cڡ  d ) const 349 {  ( gbndryags [ d ] ! ACEF ); } 351 le  has_adtiveboundy (cڡ  d ) const 352 {  ( gbndryags [ d ] = ACE_AdtiveBoundy ); } 353 le  has_exboundy (cڡ  d ) const 354 {  ( gbndryags [ d ] = ACE_ExBoundy ); } 356 le  g_gho (cڡ  d ) const 357 {  ( ggho_g_ag [ d ] = ACETrue ); } 363 give : 364  gdbWrePtGh (cڡ  oc , 365 cڡ  m , 366 cڡ  idt , 367 cڡ  mgl , 368 GridDaBuck < Ty >& gdb , 369 cڡ  ); 370  gdbWrePtS (cڡ  oc , 371 cڡ  m , 372 cڡ  idt , 373 cڡ  mgl , 374 GridDaBuck < Ty >& gdb , 375 cڡ  ); 377 gpublic : 378 le GDB_Iai ** gdbPtGhRdInfo () 379 { ( ( gdb_g_ad_fo ) ? gdb_gparent_read_info : 0 );} 380 le GDB_Iai ** gdbPtGhWreInfo () 381 { ( ( ggdb_g_wre_fo ) ? gdb_gparent_write_info : 0 );} 383 le GDB_Iai ** gdbPtSRdInfo () 384 { ( ( ggdb_t_ad_fo ) ? gdb_sparent_read_info : 0 );} 385 le GDB_Iai ** gdbPtSWreInfo () 386 { ( ( ggdb_t_wre_fo ) ? gdb_sparent_write_info : 0 );} 392 give : 393  gdbWreFluxes (cڡ  oc , 394 cڡ  m , 395 cڡ  idt , 396 cڡ  mgl , 397 GridDaBuck < Ty >& gdb , 398 cڡ  ); 400 gpublic : 401 le GDB_Iai ** gdbFluxRdInfo () 402 { ( ( gdb_ux_ad_fo ) ? gdb_flux_read_info : 0 );} 403 le GDB_Iai ** gdbFluxWreInfo () 404 { ( ( ggdb_ux_wre_fo ) ? gdb_flux_write_info : 0 );} 410 give : 411  gdbWreGhos (cڡ  oc , 412 cڡ  m , 413 cڡ  axis , 414 cڡ  d , 415 cڡ  idt , 416 cڡ  mgl , 417 GridDaBuck < Ty >& gdb , 418 cڡ  ); 420 gpublic : 421 le GDB_Iai ** gdbRdInfo (cڡ  oc ) 422 { ( ( gdb_ad_fo [ oc ]) ? gdb_read_info[proc] : 0 );} 423 le GDB_Iai ** gdbWreInfo (cڡ  oc ) 424 { ( ( ggdb_wre_fo [ oc ]) ? gdb_write_info[proc] : 0 );} 430 give : 431  gdbWreDa (cڡ  m , 432 cڡ  idt , 433 cڡ  mgl , 434 GridDaBuck < Ty >& gdb , 435 cڡ  ); 436  gdbWreDa (cڡ  m , 437 cڡ  idt , 438 cڡ  mgl , 439 cڡ BBox & whe , 440 GridDaBuck < Ty >& gdb , 441 cڡ  ); 447 gpublic : 448 cڡ BBox & mgedbox (cڡ  idt = ACE_Ma ) const 450 ( idt == ACE_Ma ? mged_bbox : 451 ( idt == ACE_Shadow ? shmged_bbox : BBox :: _emy_bbox ); 454 cڡ gBBox & boundgbox (cڡ  idt = ACE_Ma , 455 cڡ  mgl = ACENu ) const 457 ( idt == ACE_Ma && ( mgl == ACENu ||mgl== mglfe )? mage . bbox : 458 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu ||mgl== shmglfe )) ? 459 shage -> bbox : 460 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 461 mgage [ mgl - mglcr ]-> bbox : 462 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 463 shmgage [ mgl - shmglcr ]-> bbox : 464 BBox :: _emy_bbox ); 467 cڡ gBBox & ribox (cڡ  idt = ACE_Ma , 468 cڡ  mgl = ACENu ) const 470 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . ibbox : 471 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 472 shage -> ibbox : 473 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 474 mgage [ mgl - mglcr ]-> ibbox : 475 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 476 shmgage [ mgl - shmglcr ]-> ibbox : 477 BBox :: _emy_bbox ); 480 BBox iobox (cڡ  idt = ACE_Ma , 481 cڡ  mgl = ACENu ) const 483 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 484 growubydim ( mage . ibbox , hybridbndryags ) : 485 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 486 growubydim ( shage -> ibbox , hybridbndryags ) : 487 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 488 growubydim ( mgage [ mgl - mglcr ]-> ibbox , hybridbndryags ) : 489 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 490 growubydim ( shmgage [ mgl - shmglcr ]-> ibbox , hybridbndryags ) : 491 BBox :: _emy_bbox ); 494 cڡ gBBox & bndrybox (cڡ  d , 495 cڡ  idt = ACE_Ma , 496 cڡ  mgl = ACENu ) const 498 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 499 mage . bndrybbox [ d ] : 500 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 501 shage -> bndrybbox [ d ] : 502 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 503 mgage [ mgl - mglcr ]-> bndrybbox [ d ] : 504 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 505 shmgage [ mgl - shmglcr ]-> bndrybbox [ d ] : 506 BBox :: _emy_bbox ); 509 cڡ gBBox & ibox (cڡ GDB_Iai & gdbi , 510 cڡ  idt = ACE_Ma , 511 cڡ  mgl = ACENu ) const 513 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? gdbi . mbbox : 514 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 515 gdbi . shbbox : 516 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 517 gdbi . mmgbbox [ mgl - mglcr ] : 518 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 519 gdbi . shmgbbox [ mgl - shmglcr ] : 520 BBox :: _emy_bbox ); 523 cڡ gBBox & g_ghobox (cڡ  d , 524 cڡ  idt = ACE_Ma , 525 cڡ  mgl = ACENu ) const 527 ( idt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )) ? 528 gho_g_fo [ d ]. mbbox : 529 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 530 gho_g_fo [ d ]. shbbox : 531 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 532 gho_g_fo [ d ]. mmgbbox [ mgl - mglcr ] : 533 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 534 gho_g_fo [ d ]. shmgbbox [ mgl - shmglcr ] : 535 BBox :: _emy_bbox ); 538 cڡ gBBox & box (cڡ  idt , 539 cڡ  mgl = ACENu ) const 541 as ( idt = ACE_PtMa && mgl = ACENu ); 543 ( g_ag = ACETrue && idt == ACE_PtMa ) ? 544 _mage -> bbox () : 547 BBox :: _emy_bbox ); 550 cڡ gBBox & uxbox (cڡ  idt , 551 cڡ  mgl = ACENu ) const 553 as ( mgl = ACENu ); 555 ( gux_ag = ACETrue && idt < ACE_Flux && id> ACE_FluxEnd ) ? 556 ux_mage [ ACE_Flux - idt ]-> bbox () : 557 BBox :: _emy_bbox ); 564 gpublic : 565 GridDa (3)< Ty >& gridda (cڡ  idt = ACE_Ma , 566 cڡ  mgl = ACENu ) 568 i( idt = ACE_PtMa || id= ACE_PtShadow ) 569  ( da ( idt , mgl )); 570 i( gidt < ACE_Flux && idt > ACE_FluxEnd ) 571  ( uxda ( idt , mgl )); 574 ( gidt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . da : 575 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 576 shage -> da : 577 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 578 mgage [ mgl - mglcr ]-> da : 579 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 580 shmgage [ mgl - shmglcr ]-> da : 581 mage . da ); 583 cڡ GridDa (3)< gTy >& gridda (cڡ  idt = ACE_Ma , 584 cڡ  mgl = ACENu ) const 586 i( idt = ACE_PtMa || id= ACE_PtShadow ) 587  ( da ( idt , mgl )); 588 i( gidt < ACE_Flux && idt > ACE_FluxEnd ) 589  ( uxda ( idt , mgl )); 592 ( gidt == ACE_Ma && ( mgl == ACENu || mgl== mglfe )? mage . da : 593 ( idt == ACE_Shadow && shag !=0 && ( mgl == ACENu || mgl== shmglfe )) ? 594 shage -> da : 595 ( idt == ACE_Ma && mgag !=0 && mgl < mglfe && mgl>= mglcr ) ? 596 mgage [ mgl - mglcr ]-> da : 597 ( idt == ACE_Shadow && shmgag !=0 && mgl < shmglfe && mgl>= shmglcr )? 598 shmgage [ mgl - shmglcr ]-> da : 599 mage . da ); 605 gpublic : 606 GridDa (3)< Ty >& da (cڡ  idt , 607 cڡ  mgl = ACENu ) 609 #ifde DEBUG_PRINT 610 as ( _ag = ACETrue ); 611 as (( idt = ACE_PtMa || id= ACE_Ma ) && 612 mgl = ACENu ); 614  (* g_mage ); 617 cڡ GridDa (3)< gTy >& da (cڡ  idt , 618 cڡ  mgl = ACENu ) const 620 #ifde DEBUG_PRINT 621 as ( _ag = ACETrue ); 622 as (( idt = ACE_PtMa || id= ACE_Ma ) && 623 mgl = ACENu ); 625  (* g_mage ); 631 gpublic : 632 GridDa (3)< Ty >& uxda (cڡ  idt , 633 cڡ  mgl = ACENu ) 635 #ifde DEBUG_PRINT 636 as ( ux_ag = ACETrue && 637 idt < ACE_Flux && id> ACE_FluxEnd 638 && mgl = ACENu ); 640  (* gux_mage [ ACE_Flux - idt ]); 643 cڡ GridDa (3)< gTy >& uxda (cڡ  idt , 644 cڡ  mgl = ACENu ) const 646 #ifde DEBUG_PRINT 647 as ( ux_ag = ACETrue && 648 idt < ACE_Flux && id> ACE_FluxEnd 649 && mgl = ACENu ); 651  (* gux_mage [ ACE_Flux - idt ]); 656 #i defed ( Wt_c_fes ) 657  ~"GridDaBlock3.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataBlockCommon.h 1 #ide _uded_GridDaBlockComm_h 2  #_uded_GridDaBlockComm_h ) 12  ~"ACEPams.h " 14  ~"Cods.h " 15  ~"BBox.h " 17  ~"GridBox.h " 18  ~"GridBoxLi.h " 19  ~"PackedGridDaBuck.h " 20  ~"GridTab.h " 21  ~"GridHrchy.h " 23  ~"CommSv.h " 25  ~"GDBIai.h " 28  gdbSRks (cڡ  nk , cڡ  ign , * nks ); 29  gdbAlignBBox (cڡ , ass BBox &, const ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataOps1.h 1 #ide _uded_GridDaOps_1_h 2  #_uded_GridDaOps_1_h ) 14 gme < ass gTy > 15  GridDa (1)< gTy >:: l_ (cڡ GridDa(1)< Ty >& gd1 , 16 cڡ  ac1 , 17 cڡ GridDa (1)< Ty >& gd2 , 18 cڡ  ac2 , 19 cڡ BBox & whe , 20 cڡ  m ) 22 BBox gri = _bbox * gd1 ._bbox * gd2 ._bbox * whe ; 23 i(! gri . emy ()) { 28 Cods gmax_ = max ( _ , gd1 ._step); 29 gmax_ . max ( gd2 . _ ); 31 GridDa (1)< gTy >& gd = * this ; 33 BegFaIndex1 ( c1 , gd1 . _bbox , gd1. _da , cڡ Ty ); 34 BegFaIndex1 ( c2 , gd2 . _bbox , gd2. _da , cڡ Ty ); 35 BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 37 cڡ  gr = ( m = ACEA ) ? 0 : itm; 38 cڡ  gd = ( m = ACEA ? _nems : itm+1; 40  g = r ; i< gd ; it++) { 41 SIndexOfft ( c1 , ); 42 SIndexOfft ( c2 , ); 43 SIndexOfft ( d , ); 46 f_1 ( i , ri , max_ ) 47 FaIndex1 ( d , i ( Ty ((FaIndex1( c1 ,i* gac1 ) + 48 ( FaIndex1 ( c2 , i * gac2 )); 49 gd_f 53 EndFaIndex1 ( c1 ); 54 EndFaIndex1 ( c2 ); 55 EndFaIndex1 ( d ); 61 gme < ass gTy > 62  GridDa (1)< gTy >:: $equs (cڡ Ty & v , 63 cڡ BBox & whe , 64 cڡ  m ) 66 BBox ri = _bbox * whe ; 67 i(! ri . `emy ()) { 68 Cods max_ = `max ( _ , whe . `size ()); 69 BBox `to ( ri ); to . `tsize ( _ ); 70 BBox `om ( ri ); om . `tsize ( whe . `size ()); 71 `gd_ORegi ( equ )( v , to , om , max_ , m ); 73 } } 75 gme < ass gTy > 76  GridDa (1)< gTy >:: equs (cڡ GridDa(1)< Ty >& gd , 77 cڡ BBox & to , 78 cڡ BBox & om , 79 cڡ  m ) 81 cڡ Cods gtoshi = om . low (- to .lower(); 82 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 83 i(! gwom . emy ()) { 84 BBox gwto = shiabs ( wom , - toshi ); 85 Cods gmax_ = max ( _ , gd ._step); 86 gwto . tsize ( _ ); 87 gwom . tsize ( gd . _ ); 88 gd_ORegi ( equ )( ggd , gwto , gwom , gmax_ , gm ); 92 gme < ass gTy > 93  GridDa (1)< gTy >:: $us (cڡ Ty & v , 94 cڡ BBox & whe , 95 cڡ  m ) 97 BBox ri = _bbox * whe ; 98 i(! ri . `emy ()) { 99 Cods max_ = `max ( _ , whe . `size ()); 100 BBox `to ( ri ); to . `tsize ( _ ); 101 BBox `om ( ri ); om . `tsize ( whe . `size ()); 102 `gd_ORegi ( us )( v , to , om , max_ , m ); 104 } } 106 gme < ass gTy > 107  GridDa (1)< gTy >:: us (cڡ GridDa(1)< Ty >& gd , 108 cڡ BBox & to , 109 cڡ BBox & om , 110 cڡ  m ) 112 cڡ Cods gtoshi = om . low (- to .lower(); 113 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 114 i(! gwom . emy ()) { 115 BBox gwto = shiabs ( wom , - toshi ); 116 Cods gmax_ = max ( _ , gd ._step); 117 gwto . tsize ( _ ); 118 gwom . tsize ( gd . _ ); 119 gd_ORegi ( us )( ggd , gwto , gwom , gmax_ , gm ); 123 gme < ass gTy > 124  GridDa (1)< gTy >:: $mus (cڡ Ty & v , 125 cڡ BBox & whe , 126 cڡ  m ) 128 BBox ri = _bbox * whe ; 129 i(! ri . `emy ()) { 130 Cods max_ = `max ( _ , whe . `size ()); 131 BBox `to ( ri ); to . `tsize ( _ ); 132 BBox `om ( ri ); om . `tsize ( whe . `size ()); 133 `gd_ORegi ( mus )( v , to , om , max_ , m ); 135 } } 137 gme < ass gTy > 138  GridDa (1)< gTy >:: mus (cڡ GridDa(1)< Ty >& gd , 139 cڡ BBox & to , 140 cڡ BBox & om , 141 cڡ  m ) 143 cڡ Cods gtoshi = om . low (- to .lower(); 144 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 145 i(! gwom . emy ()) { 146 BBox gwto = shiabs ( wom , - toshi ); 147 Cods gmax_ = max ( _ , gd ._step); 148 gwto . tsize ( _ ); 149 gwom . tsize ( gd . _ ); 150 gd_ORegi ( mus )( ggd , gwto , gwom , gmax_ , gm ); 154 gme < ass gTy > 155  GridDa (1)< gTy >:: $muɝly (cڡ Ty & v , 156 cڡ BBox & whe , 157 cڡ  m ) 159 BBox ri = _bbox * whe ; 160 i(! ri . `emy ()) { 161 Cods max_ = `max ( _ , whe . `size ()); 162 BBox `to ( ri ); to . `tsize ( _ ); 163 BBox `om ( ri ); om . `tsize ( whe . `size ()); 164 `gd_ORegi ( mu )( v , to , om , max_ , m ); 166 } } 168 gme < ass gTy > 169  GridDa (1)< gTy >:: muɝly (cڡ GridDa(1)< Ty >& gd , 170 cڡ BBox & to , 171 cڡ BBox & om , 172 cڡ  m ) 174 cڡ Cods gtoshi = om . low (- to .lower(); 175 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 176 i(! gwom . emy ()) { 177 BBox gwto = shiabs ( wom , - toshi ); 178 Cods gmax_ = max ( _ , gd ._step); 179 gwto . tsize ( _ ); 180 gwom . tsize ( gd . _ ); 181 gd_ORegi ( mu )( ggd , gwto , gwom , gmax_ , gm ); 185 gme < ass gTy > 186  GridDa (1)< gTy >:: $divide (cڡ Ty & v , 187 cڡ BBox & whe , 188 cڡ  m ) 190 BBox ri = _bbox * whe ; 191 i(! ri . `emy ()) { 192 Cods max_ = `max ( _ , whe . `size ()); 193 BBox `to ( ri ); to . `tsize ( _ ); 194 BBox `om ( ri ); om . `tsize ( whe . `size ()); 195 `gd_ORegi ( div )( v , to , om , max_ , m ); 197 } } 199 gme < ass gTy > 200  GridDa (1)< gTy >:: divide (cڡ GridDa(1)< Ty >& gd , 201 cڡ BBox & to , 202 cڡ BBox & om , 203 cڡ  m ) 205 cڡ Cods gtoshi = om . low (- to .lower(); 206 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 207 i(! gwom . emy ()) { 208 BBox gwto = shiabs ( wom , - toshi ); 209 Cods gmax_ = max ( _ , gd ._step); 210 gwto . tsize ( _ ); 211 gwom . tsize ( gd . _ ); 212 gd_ORegi ( div )( ggd , gwto , gwom , gmax_ , gm ); 218 gme < ass gTy > 219  GridDa (1)< gTy >:: $gd_ORegi ( equ (cڡ Ty & v , 220 cڡ BBox & to , 221 cڡ BBox & om , 222 cڡ Cods & , 223 cڡ  m ) 225 `as (( m ! ACEA && itm >0 && _nems > itm) || 226 ( m = ACEA )); 228 `GridDa (1)< Ty >& d = * this ; 230 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 232 cڡ  r = ( m = ACEA ) ? 0 : itm; 233 cڡ  d = ( m = ACEA ? _nems : itm+1; 235  = r ; i< d ; it++) { 236 `SIndexOfft ( d , ); 239 `f_1 ( i , to , ) 240 `FaIndex1 ( d , i v ; 241 d_f 245 `EndFaIndex1 ( d ); 246 } } 248 gme < ass gTy > 249  GridDa (1)< gTy >:: $gd_ORegi ( equ (cڡ `GridDa (1)< Ty >& c , 250 cڡ BBox & to , 251 cڡ BBox & om , 252 cڡ Cods & , 253 cڡ  m ) 255 `as (( m ! ACEA && 256 m >0 && _nems > itm && c ._nitems > itm) || 257 ( m = ACEA && _nems = c ._nitems)); 259 `GridDa (1)< Ty >& d = * this ; 262 cڡ  di = om . `low (0)- to .lower(0); 265 `BegFaIndex1 ( c , src. _bbox , src. _da , cڡ Ty ); 266 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 268 cڡ  r = ( m = ACEA ) ? 0 : itm; 269 cڡ  d = ( m = ACEA ? _nems : itm+1; 271  = r ; i< d ; it++) { 272 `SIndexOfft ( c , ); 273 `SIndexOfft ( d , ); 276 `f_1 ( i , to , ) 277 `FaIndex1 ( d , i FaIndex1( c ,i+ di ); 278 d_f 282 `EndFaIndex1 ( d ); 283 `EndFaIndex1 ( c ); 284 } } 290 gme < ass gTy > 291  GridDa (1)< gTy >:: $gd_ORegi ( us )(cڡ Ty & v , 292 cڡ BBox & to , 293 cڡ BBox & om , 294 cڡ Cods & , 295 cڡ  m ) 297 `as (( m ! ACEA && itm >0 && _nems > itm) || 298 ( m = ACEA )); 300 `GridDa (1)< Ty >& d = * this ; 302 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 304 cڡ  r = ( m = ACEA ) ? 0 : itm; 305 cڡ  d = ( m = ACEA ? _nems : itm+1; 307  = r ; i< d ; it++) { 308 `SIndexOfft ( d , ); 311 `f_1 ( i , to , ) 312 `FaIndex1 ( d , i + v ; 313 d_f 317 `EndFaIndex1 ( d ); 318 } } 320 gme < ass gTy > 321  GridDa (1)< gTy >:: $gd_ORegi ( us )(cڡ `GridDa (1)< Ty >& c , 322 cڡ BBox & to , 323 cڡ BBox & om , 324 cڡ Cods & , 325 cڡ  m ) 327 `as (( m ! ACEA && 328 m >0 && _nems > itm && c ._nitems > itm) || 329 ( m = ACEA && _nems = c ._nitems)); 331 `GridDa (1)< Ty >& d = * this ; 334 cڡ  di = om . `low (0)- to .lower(0); 337 `BegFaIndex1 ( c , src. _bbox , src. _da , cڡ Ty ); 338 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 340 cڡ  r = ( m = ACEA ) ? 0 : itm; 341 cڡ  d = ( m = ACEA ? _nems : itm+1; 343  = r ; i< d ; it++) { 344 `SIndexOfft ( c , ); 345 `SIndexOfft ( d , ); 348 `f_1 ( i , to , ) 349 `FaIndex1 ( d , i +FaIndex1( c ,i+ di ); 350 d_f 354 `EndFaIndex1 ( d ); 355 `EndFaIndex1 ( c ); 356 } } 362 gme < ass gTy > 363  GridDa (1)< gTy >:: $gd_ORegi ( mus )(cڡ Ty & v , 364 cڡ BBox & to , 365 cڡ BBox & om , 366 cڡ Cods & , 367 cڡ  m ) 369 `as (( m ! ACEA && itm >0 && _nems > itm) || 370 ( m = ACEA )); 372 `GridDa (1)< Ty >& d = * this ; 374 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 376 cڡ  r = ( m = ACEA ) ? 0 : itm; 377 cڡ  d = ( m = ACEA ? _nems : itm+1; 379  = r ; i< d ; it++) { 380 `SIndexOfft ( d , ); 383 `f_1 ( i , to , ) 384 `FaIndex1 ( d , i - v ; 385 d_f 389 `EndFaIndex1 ( d ); 390 } } 392 gme < ass gTy > 393  GridDa (1)< gTy >:: $gd_ORegi ( mus )(cڡ `GridDa (1)< Ty >& c , 394 cڡ BBox & to , 395 cڡ BBox & om , 396 cڡ Cods & , 397 cڡ  m ) 399 `as (( m ! ACEA && 400 m >0 && _nems > itm && c ._nitems > itm) || 401 ( m = ACEA && _nems = c ._nitems)); 403 `GridDa (1)< Ty >& d = * this ; 406 cڡ  di = om . `low (0)- to .lower(0); 409 `BegFaIndex1 ( c , src. _bbox , src. _da , cڡ Ty ); 410 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 412 cڡ  r = ( m = ACEA ) ? 0 : itm; 413 cڡ  d = ( m = ACEA ? _nems : itm+1; 415  = r ; i< d ; it++) { 416 `SIndexOfft ( c , ); 417 `SIndexOfft ( d , ); 420 `f_1 ( i , to , ) 421 `FaIndex1 ( d , i -FaIndex1( c ,i+ di ); 422 d_f 426 `EndFaIndex1 ( d ); 427 `EndFaIndex1 ( c ); 428 } } 434 gme < ass gTy > 435  GridDa (1)< gTy >:: $gd_ORegi ( mu )(cڡ Ty & v , 436 cڡ BBox & to , 437 cڡ BBox & om , 438 cڡ Cods & , 439 cڡ  m ) 441 `as (( m ! ACEA && itm >0 && _nems > itm) || 442 ( m = ACEA )); 444 `GridDa (1)< Ty >& d = * this ; 446 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 448 cڡ  r = ( m = ACEA ) ? 0 : itm; 449 cڡ  d = ( m = ACEA ? _nems : itm+1; 451  = r ; i< d ; it++) { 452 `SIndexOfft ( d , ); 455 `f_1 ( i , to , ) 456 `FaIndex1 ( d , i * v ; 457 d_f 461 `EndFaIndex1 ( d ); 462 } } 464 gme < ass gTy > 465  GridDa (1)< gTy >:: $gd_ORegi ( mu )(cڡ `GridDa (1)< Ty >& c , 466 cڡ BBox & to , 467 cڡ BBox & om , 468 cڡ Cods & , 469 cڡ  m ) 471 } } 477 gme < ass gTy > 478  GridDa (1)< gTy >:: $gd_ORegi ( div )(cڡ Ty & v , 479 cڡ BBox & to , 480 cڡ BBox & om , 481 cڡ Cods & , 482 cڡ  m ) 484 `as ( v !( Ty )0.0); 485 `as (( m ! ACEA && itm >0 && _nems > itm) || 486 ( m = ACEA )); 488 `GridDa (1)< Ty >& d = * this ; 490 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 492 cڡ  r = ( m = ACEA ) ? 0 : itm; 493 cڡ  d = ( m = ACEA ? _nems : itm+1; 495  = r ; i< d ; it++) { 496 `SIndexOfft ( d , ); 499 `f_1 ( i , to , ) 500 `FaIndex1 ( d , i / v ; 501 d_f 505 `EndFaIndex1 ( d ); 506 } } 508 gme < ass gTy > 509  GridDa (1)< gTy >:: $gd_ORegi ( div )(cڡ `GridDa (1)< Ty >& c , 510 cڡ BBox & to , 511 cڡ BBox & om , 512 cڡ Cods & , 513 cڡ  m ) 515 `as (( m ! ACEA && 516 m >0 && _nems > itm && c ._nitems > itm) || 517 ( m = ACEA && _nems = c ._nitems)); 519 `GridDa (1)< Ty >& d = * this ; 522 cڡ  di = om . `low (0)- to .lower(0); 525 `BegFaIndex1 ( c , src. _bbox , src. _da , cڡ Ty ); 526 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 528 cڡ  r = ( m = ACEA ) ? 0 : itm; 529 cڡ  d = ( m = ACEA ? _nems : itm+1; 531  = r ; i< d ; it++) { 532 `SIndexOfft ( c , ); 533 `SIndexOfft ( d , ); 536 `f_1 ( i , to , ) 537 `as ( `FaIndex1 ( c , i + di !( Ty )0.0); 538 `FaIndex1 ( d , i /FaIndex1( c ,i+ di ); 539 d_f 543 `EndFaIndex1 ( d ); 544 `EndFaIndex1 ( c ); 545 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataOps2.h 1 #ide _uded_GridDaOps_2_h 2  #_uded_GridDaOps_2_h ) 14 gme < ass gTy > 15  GridDa (2)< gTy >:: l_ (cڡ GridDa(2)< Ty >& gd1 , 16 cڡ  ac1 , 17 cڡ GridDa (2)< Ty >& gd2 , 18 cڡ  ac2 , 19 cڡ BBox & whe , 20 cڡ  m ) 22 BBox gri = _bbox * gd1 ._bbox * gd2 ._bbox * whe ; 23 i(! gri . emy ()) { 28 Cods gmax_ = max ( _ , gd1 ._step); 29 gmax_ . max ( gd2 . _ ); 31 GridDa (2)< gTy >& gd = * this ; 33 BegFaIndex2 ( c1 , gd1 . _bbox , gd1. _da , cڡ Ty ); 34 BegFaIndex2 ( c2 , gd2 . _bbox , gd2. _da , cڡ Ty ); 35 BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 37 cڡ  gr = ( m = ACEA ) ? 0 : itm; 38 cڡ  gd = ( m = ACEA ? _nems : itm+1; 40  g = r ; i< gd ; it++) { 41 SIndexOfft ( c1 , ); 42 SIndexOfft ( c2 , ); 43 SIndexOfft ( d , ); 46 f_2 ( i , j , ri , max_ ) 47 FaIndex2 ( d , i , j ( Ty ((FaIndex2( c1 ,i,j* gac1 ) + 48 ( FaIndex2 ( c2 , i , j * gac2 )); 49 gd_f 53 EndFaIndex2 ( c1 ); 54 EndFaIndex2 ( c2 ); 55 EndFaIndex2 ( d ); 61 gme < ass gTy > 62  GridDa (2)< gTy >:: $equs (cڡ Ty & v , 63 cڡ BBox & whe , 64 cڡ  m ) 66 BBox ri = _bbox * whe ; 67 i(! ri . `emy ()) { 68 Cods max_ = `max ( _ , whe . `size ()); 69 BBox `to ( ri ); to . `tsize ( _ ); 70 BBox `om ( ri ); om . `tsize ( whe . `size ()); 71 `gd_ORegi ( equ )( v , to , om , max_ , m ); 73 } } 75 gme < ass gTy > 76  GridDa (2)< gTy >:: equs (cڡ GridDa(2)< Ty >& gd , 77 cڡ BBox & to , 78 cڡ BBox & om , 79 cڡ  m ) 81 cڡ Cods gtoshi = om . low (- to .lower(); 82 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 83 i(! gwom . emy ()) { 84 BBox gwto = shiabs ( wom , - toshi ); 85 Cods gmax_ = max ( _ , gd ._step); 86 gwto . tsize ( _ ); 87 gwom . tsize ( gd . _ ); 88 gd_ORegi ( equ )( ggd , gwto , gwom , gmax_ , gm ); 92 gme < ass gTy > 93  GridDa (2)< gTy >:: $us (cڡ Ty & v , 94 cڡ BBox & whe , 95 cڡ  m ) 97 BBox ri = _bbox * whe ; 98 i(! ri . `emy ()) { 99 Cods max_ = `max ( _ , whe . `size ()); 100 BBox `to ( ri ); to . `tsize ( _ ); 101 BBox `om ( ri ); om . `tsize ( whe . `size ()); 102 `gd_ORegi ( us )( v , to , om , max_ , m ); 104 } } 106 gme < ass gTy > 107  GridDa (2)< gTy >:: us (cڡ GridDa(2)< Ty >& gd , 108 cڡ BBox & to , 109 cڡ BBox & om , 110 cڡ  m ) 112 cڡ Cods gtoshi = om . low (- to .lower(); 113 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 114 i(! gwom . emy ()) { 115 BBox gwto = shiabs ( wom , - toshi ); 116 Cods gmax_ = max ( _ , gd ._step); 117 gwto . tsize ( _ ); 118 gwom . tsize ( gd . _ ); 119 gd_ORegi ( us )( ggd , gwto , gwom , gmax_ , gm ); 123 gme < ass gTy > 124  GridDa (2)< gTy >:: $mus (cڡ Ty & v , 125 cڡ BBox & whe , 126 cڡ  m ) 128 BBox ri = _bbox * whe ; 129 i(! ri . `emy ()) { 130 Cods max_ = `max ( _ , whe . `size ()); 131 BBox `to ( ri ); to . `tsize ( _ ); 132 BBox `om ( ri ); om . `tsize ( whe . `size ()); 133 `gd_ORegi ( mus )( v , to , om , max_ , m ); 135 } } 137 gme < ass gTy > 138  GridDa (2)< gTy >:: mus (cڡ GridDa(2)< Ty >& gd , 139 cڡ BBox & to , 140 cڡ BBox & om , 141 cڡ  m ) 143 cڡ Cods gtoshi = om . low (- to .lower(); 144 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 145 i(! gwom . emy ()) { 146 BBox gwto = shiabs ( wom , - toshi ); 147 Cods gmax_ = max ( _ , gd ._step); 148 gwto . tsize ( _ ); 149 gwom . tsize ( gd . _ ); 150 gd_ORegi ( mus )( ggd , gwto , gwom , gmax_ , gm ); 154 gme < ass gTy > 155  GridDa (2)< gTy >:: $muɝly (cڡ Ty & v , 156 cڡ BBox & whe , 157 cڡ  m ) 159 BBox ri = _bbox * whe ; 160 i(! ri . `emy ()) { 161 Cods max_ = `max ( _ , whe . `size ()); 162 BBox `to ( ri ); to . `tsize ( _ ); 163 BBox `om ( ri ); om . `tsize ( whe . `size ()); 164 `gd_ORegi ( mu )( v , to , om , max_ , m ); 166 } } 168 gme < ass gTy > 169  GridDa (2)< gTy >:: muɝly (cڡ GridDa(2)< Ty >& gd , 170 cڡ BBox & to , 171 cڡ BBox & om , 172 cڡ  m ) 174 cڡ Cods gtoshi = om . low (- to .lower(); 175 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 176 i(! gwom . emy ()) { 177 BBox gwto = shiabs ( wom , - toshi ); 178 Cods gmax_ = max ( _ , gd ._step); 179 gwto . tsize ( _ ); 180 gwom . tsize ( gd . _ ); 181 gd_ORegi ( mu )( ggd , gwto , gwom , gmax_ , gm ); 185 gme < ass gTy > 186  GridDa (2)< gTy >:: $divide (cڡ Ty & v , 187 cڡ BBox & whe , 188 cڡ  m ) 190 BBox ri = _bbox * whe ; 191 i(! ri . `emy ()) { 192 Cods max_ = `max ( _ , whe . `size ()); 193 BBox `to ( ri ); to . `tsize ( _ ); 194 BBox `om ( ri ); om . `tsize ( whe . `size ()); 195 `gd_ORegi ( div )( v , to , om , max_ , m ); 197 } } 199 gme < ass gTy > 200  GridDa (2)< gTy >:: divide (cڡ GridDa(2)< Ty >& gd , 201 cڡ BBox & to , 202 cڡ BBox & om , 203 cڡ  m ) 205 cڡ Cods gtoshi = om . low (- to .lower(); 206 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 207 i(! gwom . emy ()) { 208 BBox gwto = shiabs ( wom , - toshi ); 209 Cods gmax_ = max ( _ , gd ._step); 210 gwto . tsize ( _ ); 211 gwom . tsize ( gd . _ ); 212 gd_ORegi ( div )( ggd , gwto , gwom , gmax_ , gm ); 218 gme < ass gTy > 219  GridDa (2)< gTy >:: $gd_ORegi ( equ (cڡ Ty & v , 220 cڡ BBox & to , 221 cڡ BBox & om , 222 cڡ Cods & , 223 cڡ  m ) 225 `as (( m ! ACEA && itm >0 && _nems > itm) || 226 ( m = ACEA )); 228 `GridDa (2)< Ty >& d = * this ; 230 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 232 cڡ  r = ( m = ACEA ) ? 0 : itm; 233 cڡ  d = ( m = ACEA ? _nems : itm+1; 235  = r ; i< d ; it++) { 236 `SIndexOfft ( d , ); 239 `f_2 ( i , j , to , ) 240 `FaIndex2 ( d , i , j v ; 241 d_f 245 `EndFaIndex2 ( d ); 246 } } 248 gme < ass gTy > 249  GridDa (2)< gTy >:: $gd_ORegi ( equ (cڡ `GridDa (2)< Ty >& c , 250 cڡ BBox & to , 251 cڡ BBox & om , 252 cڡ Cods & , 253 cڡ  m ) 255 `as (( m ! ACEA && 256 m >0 && _nems > itm && c ._nitems > itm) || 257 ( m = ACEA && _nems = c ._nitems)); 259 `GridDa (2)< Ty >& d = * this ; 262 cڡ  di = om . `low (0)- to .lower(0); 263 cڡ  dj = om . `low (1)- to .lower(1); 266 `BegFaIndex2 ( c , src. _bbox , src. _da , cڡ Ty ); 267 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 269 cڡ  r = ( m = ACEA ) ? 0 : itm; 270 cڡ  d = ( m = ACEA ? _nems : itm+1; 272  = r ; i< d ; it++) { 273 `SIndexOfft ( c , ); 274 `SIndexOfft ( d , ); 277 `f_2 ( i , j , to , ) 278 `FaIndex2 ( d , i , j FaIndex2( c ,i+ di ,j+ dj ); 279 d_f 283 `EndFaIndex2 ( d ); 284 `EndFaIndex2 ( c ); 285 } } 291 gme < ass gTy > 292  GridDa (2)< gTy >:: $gd_ORegi ( us )(cڡ Ty & v , 293 cڡ BBox & to , 294 cڡ BBox & om , 295 cڡ Cods & , 296 cڡ  m ) 298 `as (( m ! ACEA && itm >0 && _nems > itm) || 299 ( m = ACEA )); 301 `GridDa (2)< Ty >& d = * this ; 303 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 305 cڡ  r = ( m = ACEA ) ? 0 : itm; 306 cڡ  d = ( m = ACEA ? _nems : itm+1; 308  = r ; i< d ; it++) { 309 `SIndexOfft ( d , ); 312 `f_2 ( i , j , to , ) 313 `FaIndex2 ( d , i , j + v ; 314 d_f 318 `EndFaIndex2 ( d ); 319 } } 321 gme < ass gTy > 322  GridDa (2)< gTy >:: $gd_ORegi ( us )(cڡ `GridDa (2)< Ty >& c , 323 cڡ BBox & to , 324 cڡ BBox & om , 325 cڡ Cods & , 326 cڡ  m ) 328 `as (( m ! ACEA && 329 m >0 && _nems > itm && c ._nitems > itm) || 330 ( m = ACEA && _nems = c ._nitems)); 332 `GridDa (2)< Ty >& d = * this ; 335 cڡ  di = om . `low (0)- to .lower(0); 336 cڡ  dj = om . `low (1)- to .lower(1); 339 `BegFaIndex2 ( c , src. _bbox , src. _da , cڡ Ty ); 340 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 342 cڡ  r = ( m = ACEA ) ? 0 : itm; 343 cڡ  d = ( m = ACEA ? _nems : itm+1; 345  = r ; i< d ; it++) { 346 `SIndexOfft ( c , ); 347 `SIndexOfft ( d , ); 350 `f_2 ( i , j , to , ) 351 `FaIndex2 ( d , i , j +FaIndex2( c ,i+ di ,j+ dj ); 352 d_f 356 `EndFaIndex2 ( d ); 357 `EndFaIndex2 ( c ); 358 } } 364 gme < ass gTy > 365  GridDa (2)< gTy >:: $gd_ORegi ( mus )(cڡ Ty & v , 366 cڡ BBox & to , 367 cڡ BBox & om , 368 cڡ Cods & , 369 cڡ  m ) 371 `as (( m ! ACEA && itm >0 && _nems > itm) || 372 ( m = ACEA )); 374 `GridDa (2)< Ty >& d = * this ; 376 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 378 cڡ  r = ( m = ACEA ) ? 0 : itm; 379 cڡ  d = ( m = ACEA ? _nems : itm+1; 381  = r ; i< d ; it++) { 382 `SIndexOfft ( d , ); 385 `f_2 ( i , j , to , ) 386 `FaIndex2 ( d , i , j - v ; 387 d_f 391 `EndFaIndex2 ( d ); 392 } } 394 gme < ass gTy > 395  GridDa (2)< gTy >:: $gd_ORegi ( mus )(cڡ `GridDa (2)< Ty >& c , 396 cڡ BBox & to , 397 cڡ BBox & om , 398 cڡ Cods & , 399 cڡ  m ) 401 `as (( m ! ACEA && 402 m >0 && _nems > itm && c ._nitems > itm) || 403 ( m = ACEA && _nems = c ._nitems)); 405 `GridDa (2)< Ty >& d = * this ; 408 cڡ  di = om . `low (0)- to .lower(0); 409 cڡ  dj = om . `low (1)- to .lower(1); 412 `BegFaIndex2 ( c , src. _bbox , src. _da , cڡ Ty ); 413 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 415 cڡ  r = ( m = ACEA ) ? 0 : itm; 416 cڡ  d = ( m = ACEA ? _nems : itm+1; 418  = r ; i< d ; it++) { 419 `SIndexOfft ( c , ); 420 `SIndexOfft ( d , ); 423 `f_2 ( i , j , to , ) 424 `FaIndex2 ( d , i , j -FaIndex2( c ,i+ di ,j+ dj ); 425 d_f 429 `EndFaIndex2 ( d ); 430 `EndFaIndex2 ( c ); 431 } } 437 gme < ass gTy > 438  GridDa (2)< gTy >:: $gd_ORegi ( mu )(cڡ Ty & v , 439 cڡ BBox & to , 440 cڡ BBox & om , 441 cڡ Cods & , 442 cڡ  m ) 444 `as (( m ! ACEA && itm >0 && _nems > itm) || 445 ( m = ACEA )); 447 `GridDa (2)< Ty >& d = * this ; 449 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 451 cڡ  r = ( m = ACEA ) ? 0 : itm; 452 cڡ  d = ( m = ACEA ? _nems : itm+1; 454  = r ; i< d ; it++) { 455 `SIndexOfft ( d , ); 458 `f_2 ( i , j , to , ) 459 `FaIndex2 ( d , i , j * v ; 460 d_f 464 `EndFaIndex2 ( d ); 465 } } 467 gme < ass gTy > 468  GridDa (2)< gTy >:: $gd_ORegi ( mu )(cڡ `GridDa (2)< Ty >& c , 469 cڡ BBox & to , 470 cڡ BBox & om , 471 cڡ Cods & , 472 cڡ  m ) 474 } } 480 gme < ass gTy > 481  GridDa (2)< gTy >:: $gd_ORegi ( div )(cڡ Ty & v , 482 cڡ BBox & to , 483 cڡ BBox & om , 484 cڡ Cods & , 485 cڡ  m ) 487 `as ( v !( Ty )0.0); 488 `as (( m ! ACEA && itm >0 && _nems > itm) || 489 ( m = ACEA )); 491 `GridDa (2)< Ty >& d = * this ; 493 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 495 cڡ  r = ( m = ACEA ) ? 0 : itm; 496 cڡ  d = ( m = ACEA ? _nems : itm+1; 498  = r ; i< d ; it++) { 499 `SIndexOfft ( d , ); 502 `f_2 ( i , j , to , ) 503 `FaIndex2 ( d , i , j / v ; 504 d_f 508 `EndFaIndex2 ( d ); 509 } } 511 gme < ass gTy > 512  GridDa (2)< gTy >:: $gd_ORegi ( div )(cڡ `GridDa (2)< Ty >& c , 513 cڡ BBox & to , 514 cڡ BBox & om , 515 cڡ Cods & , 516 cڡ  m ) 518 `as (( m ! ACEA && 519 m >0 && _nems > itm && c ._nitems > itm) || 520 ( m = ACEA && _nems = c ._nitems)); 522 `GridDa (2)< Ty >& d = * this ; 525 cڡ  di = om . `low (0)- to .lower(0); 526 cڡ  dj = om . `low (1)- to .lower(1); 529 `BegFaIndex2 ( c , src. _bbox , src. _da , cڡ Ty ); 530 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 532 cڡ  r = ( m = ACEA ) ? 0 : itm; 533 cڡ  d = ( m = ACEA ? _nems : itm+1; 535  = r ; i< d ; it++) { 536 `SIndexOfft ( c , ); 537 `SIndexOfft ( d , ); 540 `f_2 ( i , j , to , ) 541 `as ( `FaIndex2 ( c , i + di , j + dj !( Ty )0.0); 542 `FaIndex2 ( d , i , j /FaIndex2( c ,i+ di ,j+ dj ); 543 d_f 547 `EndFaIndex2 ( d ); 548 `EndFaIndex2 ( c ); 549 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataOps3.h 1 #ide _uded_GridDaOps_3_h 2  #_uded_GridDaOps_3_h ) 14 gme < ass gTy > 15  GridDa (3)< gTy >:: l_ (cڡ GridDa(3)< Ty >& gd1 , 16 cڡ  ac1 , 17 cڡ GridDa (3)< Ty >& gd2 , 18 cڡ  ac2 , 19 cڡ BBox & whe , 20 cڡ  m ) 22 BBox gri = _bbox * gd1 ._bbox * gd2 ._bbox * whe ; 23 i(! gri . emy ()) { 28 Cods gmax_ = max ( _ , gd1 ._step); 29 gmax_ . max ( gd2 . _ ); 31 GridDa (3)< gTy >& gd = * this ; 33 BegFaIndex3 ( c1 , gd1 . _bbox , gd1. _da , cڡ Ty ); 34 BegFaIndex3 ( c2 , gd2 . _bbox , gd2. _da , cڡ Ty ); 35 BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 37 cڡ  gr = ( m = ACEA ) ? 0 : itm; 38 cڡ  gd = ( m = ACEA ? _nems : itm+1; 40  g = r ; i< gd ; it++) { 41 SIndexOfft ( c1 , ); 42 SIndexOfft ( c2 , ); 43 SIndexOfft ( d , ); 46 f_3 ( i , j , k , ri , max_ ) 47 FaIndex3 ( d , i , j , k ( Ty ((FaIndex3( c1 ,i,j,k* gac1 ) + 48 ( FaIndex3 ( c2 , i , j , k * gac2 )); 49 gd_f 53 EndFaIndex3 ( c1 ); 54 EndFaIndex3 ( c2 ); 55 EndFaIndex3 ( d ); 61 gme < ass gTy > 62  GridDa (3)< gTy >:: $equs (cڡ Ty & v , 63 cڡ BBox & whe , 64 cڡ  m ) 66 BBox ri = _bbox * whe ; 67 i(! ri . `emy ()) { 68 Cods max_ = `max ( _ , whe . `size ()); 69 BBox `to ( ri ); to . `tsize ( _ ); 70 BBox `om ( ri ); om . `tsize ( whe . `size ()); 71 `gd_ORegi ( equ )( v , to , om , max_ , m ); 73 } } 75 gme < ass gTy > 76  GridDa (3)< gTy >:: equs (cڡ GridDa(3)< Ty >& gd , 77 cڡ BBox & to , 78 cڡ BBox & om , 79 cڡ  m ) 81 cڡ Cods gtoshi = om . low (- to .lower(); 82 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 83 i(! gwom . emy ()) { 84 BBox gwto = shiabs ( wom , - toshi ); 85 Cods gmax_ = max ( _ , gd ._step); 86 gwto . tsize ( _ ); 87 gwom . tsize ( gd . _ ); 88 gd_ORegi ( equ )( ggd , gwto , gwom , gmax_ , gm ); 92 gme < ass gTy > 93  GridDa (3)< gTy >:: $us (cڡ Ty & v , 94 cڡ BBox & whe , 95 cڡ  m ) 97 BBox ri = _bbox * whe ; 98 i(! ri . `emy ()) { 99 Cods max_ = `max ( _ , whe . `size ()); 100 BBox `to ( ri ); to . `tsize ( _ ); 101 BBox `om ( ri ); om . `tsize ( whe . `size ()); 102 `gd_ORegi ( us )( v , to , om , max_ , m ); 104 } } 106 gme < ass gTy > 107  GridDa (3)< gTy >:: us (cڡ GridDa(3)< Ty >& gd , 108 cڡ BBox & to , 109 cڡ BBox & om , 110 cڡ  m ) 112 cڡ Cods gtoshi = om . low (- to .lower(); 113 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 114 i(! gwom . emy ()) { 115 BBox gwto = shiabs ( wom , - toshi ); 116 Cods gmax_ = max ( _ , gd ._step); 117 gwto . tsize ( _ ); 118 gwom . tsize ( gd . _ ); 119 gd_ORegi ( us )( ggd , gwto , gwom , gmax_ , gm ); 123 gme < ass gTy > 124  GridDa (3)< gTy >:: $mus (cڡ Ty & v , 125 cڡ BBox & whe , 126 cڡ  m ) 128 BBox ri = _bbox * whe ; 129 i(! ri . `emy ()) { 130 Cods max_ = `max ( _ , whe . `size ()); 131 BBox `to ( ri ); to . `tsize ( _ ); 132 BBox `om ( ri ); om . `tsize ( whe . `size ()); 133 `gd_ORegi ( mus )( v , to , om , max_ , m ); 135 } } 137 gme < ass gTy > 138  GridDa (3)< gTy >:: mus (cڡ GridDa(3)< Ty >& gd , 139 cڡ BBox & to , 140 cڡ BBox & om , 141 cڡ  m ) 143 cڡ Cods gtoshi = om . low (- to .lower(); 144 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 145 i(! gwom . emy ()) { 146 BBox gwto = shiabs ( wom , - toshi ); 147 Cods gmax_ = max ( _ , gd ._step); 148 gwto . tsize ( _ ); 149 gwom . tsize ( gd . _ ); 150 gd_ORegi ( mus )( ggd , gwto , gwom , gmax_ , gm ); 154 gme < ass gTy > 155  GridDa (3)< gTy >:: $muɝly (cڡ Ty & v , 156 cڡ BBox & whe , 157 cڡ  m ) 159 BBox ri = _bbox * whe ; 160 i(! ri . `emy ()) { 161 Cods max_ = `max ( _ , whe . `size ()); 162 BBox `to ( ri ); to . `tsize ( _ ); 163 BBox `om ( ri ); om . `tsize ( whe . `size ()); 164 `gd_ORegi ( mu )( v , to , om , max_ , m ); 166 } } 168 gme < ass gTy > 169  GridDa (3)< gTy >:: muɝly (cڡ GridDa(3)< Ty >& gd , 170 cڡ BBox & to , 171 cڡ BBox & om , 172 cڡ  m ) 174 cڡ Cods gtoshi = om . low (- to .lower(); 175 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 176 i(! gwom . emy ()) { 177 BBox gwto = shiabs ( wom , - toshi ); 178 Cods gmax_ = max ( _ , gd ._step); 179 gwto . tsize ( _ ); 180 gwom . tsize ( gd . _ ); 181 gd_ORegi ( mu )( ggd , gwto , gwom , gmax_ , gm ); 185 gme < ass gTy > 186  GridDa (3)< gTy >:: $divide (cڡ Ty & v , 187 cڡ BBox & whe , 188 cڡ  m ) 190 BBox ri = _bbox * whe ; 191 i(! ri . `emy ()) { 192 Cods max_ = `max ( _ , whe . `size ()); 193 BBox `to ( ri ); to . `tsize ( _ ); 194 BBox `om ( ri ); om . `tsize ( whe . `size ()); 195 `gd_ORegi ( div )( v , to , om , max_ , m ); 197 } } 199 gme < ass gTy > 200  GridDa (3)< gTy >:: divide (cڡ GridDa(3)< Ty >& gd , 201 cڡ BBox & to , 202 cڡ BBox & om , 203 cڡ  m ) 205 cڡ Cods gtoshi = om . low (- to .lower(); 206 BBox gwom = gd . _bbox * om * shiabs (_bbox * to , toshi ); 207 i(! gwom . emy ()) { 208 BBox gwto = shiabs ( wom , - toshi ); 209 Cods gmax_ = max ( _ , gd ._step); 210 gwto . tsize ( _ ); 211 gwom . tsize ( gd . _ ); 212 gd_ORegi ( div )( ggd , gwto , gwom , gmax_ , gm ); 218 gme < ass gTy > 219  GridDa (3)< gTy >:: $gd_ORegi ( equ (cڡ Ty & v , 220 cڡ BBox & to , 221 cڡ BBox & om , 222 cڡ Cods & , 223 cڡ  m ) 225 `as (( m ! ACEA && itm >0 && _nems > itm) || 226 ( m = ACEA )); 228 `GridDa (3)< Ty >& d = * this ; 230 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 232 cڡ  r = ( m = ACEA ) ? 0 : itm; 233 cڡ  d = ( m = ACEA ? _nems : itm+1; 235  = r ; i< d ; it++) { 236 `SIndexOfft ( d , ); 239 `f_3 ( i , j , k , to , ) 240 `FaIndex3 ( d , i , j , k v ; 241 d_f 245 `EndFaIndex3 ( d ); 246 } } 248 gme < ass gTy > 249  GridDa (3)< gTy >:: $gd_ORegi ( equ (cڡ `GridDa (3)< Ty >& c , 250 cڡ BBox & to , 251 cڡ BBox & om , 252 cڡ Cods & , 253 cڡ  m ) 255 `as (( m ! ACEA && 256 m >0 && _nems > itm && c ._nitems > itm) || 257 ( m = ACEA && _nems = c ._nitems)); 259 `GridDa (3)< Ty >& d = * this ; 262 cڡ  di = om . `low (0)- to .lower(0); 263 cڡ  dj = om . `low (1)- to .lower(1); 264 cڡ  dk = om . `low (2)- to .lower(2); 267 `BegFaIndex3 ( c , src. _bbox , src. _da , cڡ Ty ); 268 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 270 cڡ  r = ( m = ACEA ) ? 0 : itm; 271 cڡ  d = ( m = ACEA ? _nems : itm+1; 273  = r ; i< d ; it++) { 274 `SIndexOfft ( c , ); 275 `SIndexOfft ( d , ); 278 `f_3 ( i , j , k , to , ) 279 `FaIndex3 ( d , i , j , k FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 280 d_f 284 `EndFaIndex3 ( d ); 285 `EndFaIndex3 ( c ); 286 } } 292 gme < ass gTy > 293  GridDa (3)< gTy >:: $gd_ORegi ( us )(cڡ Ty & v , 294 cڡ BBox & to , 295 cڡ BBox & om , 296 cڡ Cods & , 297 cڡ  m ) 299 `as (( m ! ACEA && itm >0 && _nems > itm) || 300 ( m = ACEA )); 302 `GridDa (3)< Ty >& d = * this ; 304 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 306 cڡ  r = ( m = ACEA ) ? 0 : itm; 307 cڡ  d = ( m = ACEA ? _nems : itm+1; 309  = r ; i< d ; it++) { 310 `SIndexOfft ( d , ); 313 `f_3 ( i , j , k , to , ) 314 `FaIndex3 ( d , i , j , k + v ; 315 d_f 319 `EndFaIndex3 ( d ); 320 } } 322 gme < ass gTy > 323  GridDa (3)< gTy >:: $gd_ORegi ( us )(cڡ `GridDa (3)< Ty >& c , 324 cڡ BBox & to , 325 cڡ BBox & om , 326 cڡ Cods & , 327 cڡ  m ) 329 `as (( m ! ACEA && 330 m >0 && _nems > itm && c ._nitems > itm) || 331 ( m = ACEA && _nems = c ._nitems)); 333 `GridDa (3)< Ty >& d = * this ; 336 cڡ  di = om . `low (0)- to .lower(0); 337 cڡ  dj = om . `low (1)- to .lower(1); 338 cڡ  dk = om . `low (2)- to .lower(2); 341 `BegFaIndex3 ( c , src. _bbox , src. _da , cڡ Ty ); 342 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 344 cڡ  r = ( m = ACEA ) ? 0 : itm; 345 cڡ  d = ( m = ACEA ? _nems : itm+1; 347  = r ; i< d ; it++) { 348 `SIndexOfft ( c , ); 349 `SIndexOfft ( d , ); 352 `f_3 ( i , j , k , to , ) 353 `FaIndex3 ( d , i , j , k +FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 354 d_f 358 `EndFaIndex3 ( d ); 359 `EndFaIndex3 ( c ); 360 } } 366 gme < ass gTy > 367  GridDa (3)< gTy >:: $gd_ORegi ( mus )(cڡ Ty & v , 368 cڡ BBox & to , 369 cڡ BBox & om , 370 cڡ Cods & , 371 cڡ  m ) 373 `as (( m ! ACEA && itm >0 && _nems > itm) || 374 ( m = ACEA )); 376 `GridDa (3)< Ty >& d = * this ; 378 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 380 cڡ  r = ( m = ACEA ) ? 0 : itm; 381 cڡ  d = ( m = ACEA ? _nems : itm+1; 383  = r ; i< d ; it++) { 384 `SIndexOfft ( d , ); 387 `f_3 ( i , j , k , to , ) 388 `FaIndex3 ( d , i , j , k - v ; 389 d_f 393 `EndFaIndex3 ( d ); 394 } } 396 gme < ass gTy > 397  GridDa (3)< gTy >:: $gd_ORegi ( mus )(cڡ `GridDa (3)< Ty >& c , 398 cڡ BBox & to , 399 cڡ BBox & om , 400 cڡ Cods & , 401 cڡ  m ) 403 `as (( m ! ACEA && 404 m >0 && _nems > itm && c ._nitems > itm) || 405 ( m = ACEA && _nems = c ._nitems)); 407 `GridDa (3)< Ty >& d = * this ; 410 cڡ  di = om . `low (0)- to .lower(0); 411 cڡ  dj = om . `low (1)- to .lower(1); 412 cڡ  dk = om . `low (2)- to .lower(2); 415 `BegFaIndex3 ( c , src. _bbox , src. _da , cڡ Ty ); 416 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 418 cڡ  r = ( m = ACEA ) ? 0 : itm; 419 cڡ  d = ( m = ACEA ? _nems : itm+1; 421  = r ; i< d ; it++) { 422 `SIndexOfft ( c , ); 423 `SIndexOfft ( d , ); 426 `f_3 ( i , j , k , to , ) 427 `FaIndex3 ( d , i , j , k -FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 428 d_f 432 `EndFaIndex3 ( d ); 433 `EndFaIndex3 ( c ); 434 } } 440 gme < ass gTy > 441  GridDa (3)< gTy >:: $gd_ORegi ( mu )(cڡ Ty & v , 442 cڡ BBox & to , 443 cڡ BBox & om , 444 cڡ Cods & , 445 cڡ  m ) 447 `as (( m ! ACEA && itm >0 && _nems > itm) || 448 ( m = ACEA )); 450 `GridDa (3)< Ty >& d = * this ; 452 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 454 cڡ  r = ( m = ACEA ) ? 0 : itm; 455 cڡ  d = ( m = ACEA ? _nems : itm+1; 457  = r ; i< d ; it++) { 458 `SIndexOfft ( d , ); 461 `f_3 ( i , j , k , to , ) 462 `FaIndex3 ( d , i , j , k * v ; 463 d_f 467 `EndFaIndex3 ( d ); 468 } } 470 gme < ass gTy > 471  GridDa (3)< gTy >:: $gd_ORegi ( mu )(cڡ `GridDa (3)< Ty >& c , 472 cڡ BBox & to , 473 cڡ BBox & om , 474 cڡ Cods & , 475 cڡ  m ) 477 } } 483 gme < ass gTy > 484  GridDa (3)< gTy >:: $gd_ORegi ( div )(cڡ Ty & v , 485 cڡ BBox & to , 486 cڡ BBox & om , 487 cڡ Cods & , 488 cڡ  m ) 490 `as ( v !( Ty )0.0); 491 `as (( m ! ACEA && itm >0 && _nems > itm) || 492 ( m = ACEA )); 494 `GridDa (3)< Ty >& d = * this ; 496 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 498 cڡ  r = ( m = ACEA ) ? 0 : itm; 499 cڡ  d = ( m = ACEA ? _nems : itm+1; 501  = r ; i< d ; it++) { 502 `SIndexOfft ( d , ); 505 `f_3 ( i , j , k , to , ) 506 `FaIndex3 ( d , i , j , k / v ; 507 d_f 511 `EndFaIndex3 ( d ); 512 } } 514 gme < ass gTy > 515  GridDa (3)< gTy >:: $gd_ORegi ( div )(cڡ `GridDa (3)< Ty >& c , 516 cڡ BBox & to , 517 cڡ BBox & om , 518 cڡ Cods & , 519 cڡ  m ) 521 `as (( m ! ACEA && 522 m >0 && _nems > itm && c ._nitems > itm) || 523 ( m = ACEA && _nems = c ._nitems)); 525 `GridDa (3)< Ty >& d = * this ; 528 cڡ  di = om . `low (0)- to .lower(0); 529 cڡ  dj = om . `low (1)- to .lower(1); 530 cڡ  dk = om . `low (2)- to .lower(2); 533 `BegFaIndex3 ( c , src. _bbox , src. _da , cڡ Ty ); 534 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 536 cڡ  r = ( m = ACEA ) ? 0 : itm; 537 cڡ  d = ( m = ACEA ? _nems : itm+1; 539  = r ; i< d ; it++) { 540 `SIndexOfft ( c , ); 541 `SIndexOfft ( d , ); 544 `f_3 ( i , j , k , to , ) 545 `as ( `FaIndex3 ( c , i + di , j + dj , k + dk !( Ty )0.0); 546 `FaIndex3 ( d , i , j , k /FaIndex3( c ,i+ di ,j+ dj ,k+ dk ); 547 d_f 551 `EndFaIndex3 ( d ); 552 `EndFaIndex3 ( c ); 553 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataOpsRed1.h 1 #ide _uded_GridDaOpsRed_1_h 2  #_uded_GridDaOpsRed_1_h ) 17 gme < ass gTy > 18 Ty GridDa (1)< gTy >:: $maxv (cڡ BBox & whe , 19 cڡ  m ) 22 `as (( m ! ACEA && itm >0 && _nems > itm) || 23 ( m = ACEA )); 25 Ty max_v = (Ty ACESml ; 26  ag = ACETrue ; 27 BBox ri = _bbox * whe ; 28 i(! ri . `emy ()) { 29 Cods max_ = `max ( _ , whe . `size ()); 30 ri . `tsize ( _ ); 32 `GridDa (1)< Ty >& d = * this ; 34 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 36 cڡ  r = ( m = ACEA ) ? 0 : itm; 37 cڡ  d = ( m = ACEA ? _nems : itm+1; 39  = r ; i< d ; it++) { 40 `SIndexOfft ( d , ); 43 `f_1 ( i , ri , max_ ) 44 i( ag = ACETrue ) 45 { max_v = `FaIndex1 ( d , i ); ag = ACEF ; } 46 i( `FaIndex1 ( d , i > max_v ) 47 max_v = `FaIndex1 ( d , i ); 48 d_f 52 `EndFaIndex1 ( d ); 55  ( max_v ); 56 } } 62 gme < ass gTy > 63 Ty GridDa (1)< gTy >:: $mv (cڡ BBox & whe , 64 cڡ  m ) 67 `as (( m ! ACEA && itm >0 && _nems > itm) || 68 ( m = ACEA )); 70 Ty m_v = `MAXLIM (Type); 71  ag = ACETrue ; 72 BBox ri = _bbox * whe ; 73 i(! ri . `emy ()) { 74 Cods max_ = `max ( _ , whe . `size ()); 75 ri . `tsize ( _ ); 77 `GridDa (1)< Ty >& d = * this ; 79 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 81 cڡ  r = ( m = ACEA ) ? 0 : itm; 82 cڡ  d = ( m = ACEA ? _nems : itm+1; 84  = r ; i< d ; it++) { 85 `SIndexOfft ( d , ); 88 `f_1 ( i , ri , max_ ) 89 i( ag = ACETrue ) 90 { m_v = `FaIndex1 ( d , i ); ag = ACEF ; } 91 i( `FaIndex1 ( d , i < m_v ) 92 m_v = `FaIndex1 ( d , i ); 93 d_f 97 `EndFaIndex1 ( d ); 100  ( m_v ); 101 } } 107 gme < ass gTy > 108 Ty GridDa (1)< gTy >:: $sum (cڡ BBox & whe , 109 cڡ  m ) 112 `as (( m ! ACEA && itm >0 && _nems > itm) || 113 ( m = ACEA )); 115 Ty sum_v = (Type) 0; 116 BBox ri = _bbox * whe ; 117 i(! ri . `emy ()) { 118 Cods max_ = `max ( _ , whe . `size ()); 119 ri . `tsize ( _ ); 121 `GridDa (1)< Ty >& d = * this ; 123 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 125 cڡ  r = ( m = ACEA ) ? 0 : itm; 126 cڡ  d = ( m = ACEA ? _nems : itm+1; 128  = r ; i< d ; it++) { 129 `SIndexOfft ( d , ); 132 `f_1 ( i , ri , max_ ) 133 sum_v + `FaIndex1 ( d , i ); 134 d_f 138 `EndFaIndex1 ( d ); 141  ( sum_v ); 142 } } 148 gme < ass gTy > 149 Ty GridDa (1)< gTy >:: $odu (cڡ BBox & whe , 150 cڡ  m ) 153 `as (( m ! ACEA && itm >0 && _nems > itm) || 154 ( m = ACEA )); 156 Ty od_v = (Type) 1; 157 BBox ri = _bbox * whe ; 158 i(! ri . `emy ()) { 159 Cods max_ = `max ( _ , whe . `size ()); 160 ri . `tsize ( _ ); 162 `GridDa (1)< Ty >& d = * this ; 164 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 166 cڡ  r = ( m = ACEA ) ? 0 : itm; 167 cڡ  d = ( m = ACEA ? _nems : itm+1; 169  = r ; i< d ; it++) { 170 `SIndexOfft ( d , ); 173 `f_1 ( i , ri , max_ ) 174 od_v * `FaIndex1 ( d , i ); 175 d_f 179 `EndFaIndex1 ( d ); 182  ( od_v ); 183 } } 188 gme < ass gTy > 189 Ty GridDa (1)< gTy >:: $momt1 (cڡ  axis , 190 cڡ BBox & whe , 191 cڡ  m ) 193 `as (( m ! ACEA && itm >0 && _nems > itm) || 194 ( m = ACEA )); 196 Ty m1 = (Type) 0; 198 BBox ri = _bbox * whe ; 199 i(! ri . `emy ()) { 200 Cods max_ = `max ( _ , whe . `size ()); 201 ri . `tsize ( _ ); 203 `GridDa (1)< Ty >& d = * this ; 205 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 207 cڡ  r = ( m = ACEA ) ? 0 : itm; 208 cڡ  d = ( m = ACEA ? _nems : itm+1; 210  = r ; i< d ; it++) { 211 `SIndexOfft ( d , ); 213 i( axis = ACE_X ) { 215 `f_1 ( i , ri , max_ ) 216 m1 + `FaIndex1 ( d , i ) * i; 217 d_f 220 i( axis = ACE_Y ) { 222 i( axis = ACE_Z ) { 225 `EndFaIndex1 ( d ); 227  ( m1 ); 228 } } 234 gme < ass gTy > 235  GridDa (1)< gTy >:: $sumsqrd (cڡ BBox & whe , 236 Ty & s , & c , 237 cڡ  m ) 240 `as (( m ! ACEA && itm >0 && _nems > itm) || 241 ( m = ACEA )); 243 s = ( Ty ) 0; 244 c = 0; 245 BBox ri = _bbox * whe ; 246 i(! ri . `emy ()) { 247 Cods max_ = `max ( _ , whe . `size ()); 248 ri . `tsize ( _ ); 250 `GridDa (1)< Ty >& d = * this ; 252 `BegFaIndex1 ( d , d. _bbox , d. _da , Ty ); 254 cڡ  r = ( m = ACEA ) ? 0 : itm; 255 cڡ  d = ( m = ACEA ? _nems : itm+1; 257  = r ; i< d ; it++) { 258 `SIndexOfft ( d , ); 261 `f_1 ( i , ri , max_ ) 262 s + `FaIndex1 ( d , i ) * FastIndex1(dst,i); 263 c ++; 264 d_f 267 `EndFaIndex1 ( d ); 270 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataOpsRed2.h 1 #ide _uded_GridDaOpsRed_2_h 2  #_uded_GridDaOpsRed_2_h ) 17 gme < ass gTy > 18 Ty GridDa (2)< gTy >:: $maxv (cڡ BBox & whe , 19 cڡ  m ) 22 `as (( m ! ACEA && itm >0 && _nems > itm) || 23 ( m = ACEA )); 25 Ty max_v = (Ty ACESml ; 26  ag = ACETrue ; 27 BBox ri = _bbox * whe ; 28 i(! ri . `emy ()) { 29 Cods max_ = `max ( _ , whe . `size ()); 30 ri . `tsize ( _ ); 32 `GridDa (2)< Ty >& d = * this ; 34 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 36 cڡ  r = ( m = ACEA ) ? 0 : itm; 37 cڡ  d = ( m = ACEA ? _nems : itm+1; 39  = r ; i< d ; it++) { 40 `SIndexOfft ( d , ); 43 `f_2 ( i , j , ri , max_ ) 44 i( ag = ACETrue ) 45 { max_v = `FaIndex2 ( d , i , j ); ag = ACEF ; } 46 i( `FaIndex2 ( d , i , j > max_v ) 47 max_v = `FaIndex2 ( d , i , j ); 48 d_f 52 `EndFaIndex2 ( d ); 55  ( max_v ); 56 } } 62 gme < ass gTy > 63 Ty GridDa (2)< gTy >:: $mv (cڡ BBox & whe , 64 cڡ  m ) 67 `as (( m ! ACEA && itm >0 && _nems > itm) || 68 ( m = ACEA )); 70 Ty m_v = `MAXLIM (Type); 71  ag = ACETrue ; 72 BBox ri = _bbox * whe ; 73 i(! ri . `emy ()) { 74 Cods max_ = `max ( _ , whe . `size ()); 75 ri . `tsize ( _ ); 77 `GridDa (2)< Ty >& d = * this ; 79 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 81 cڡ  r = ( m = ACEA ) ? 0 : itm; 82 cڡ  d = ( m = ACEA ? _nems : itm+1; 84  = r ; i< d ; it++) { 85 `SIndexOfft ( d , ); 88 `f_2 ( i , j , ri , max_ ) 89 i( ag = ACETrue ) 90 { m_v = `FaIndex2 ( d , i , j ); ag = ACEF ; } 91 i( `FaIndex2 ( d , i , j < m_v ) 92 m_v = `FaIndex2 ( d , i , j ); 93 d_f 97 `EndFaIndex2 ( d ); 100  ( m_v ); 101 } } 107 gme < ass gTy > 108 Ty GridDa (2)< gTy >:: $sum (cڡ BBox & whe , 109 cڡ  m ) 112 `as (( m ! ACEA && itm >0 && _nems > itm) || 113 ( m = ACEA )); 115 Ty sum_v = (Type) 0; 116 BBox ri = _bbox * whe ; 117 i(! ri . `emy ()) { 118 Cods max_ = `max ( _ , whe . `size ()); 119 ri . `tsize ( _ ); 121 `GridDa (2)< Ty >& d = * this ; 123 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 125 cڡ  r = ( m = ACEA ) ? 0 : itm; 126 cڡ  d = ( m = ACEA ? _nems : itm+1; 128  = r ; i< d ; it++) { 129 `SIndexOfft ( d , ); 132 `f_2 ( i , j , ri , max_ ) 133 sum_v + `FaIndex2 ( d , i , j ); 134 d_f 138 `EndFaIndex2 ( d ); 141  ( sum_v ); 142 } } 148 gme < ass gTy > 149 Ty GridDa (2)< gTy >:: $odu (cڡ BBox & whe , 150 cڡ  m ) 153 `as (( m ! ACEA && itm >0 && _nems > itm) || 154 ( m = ACEA )); 156 Ty od_v = (Type) 1; 157 BBox ri = _bbox * whe ; 158 i(! ri . `emy ()) { 159 Cods max_ = `max ( _ , whe . `size ()); 160 ri . `tsize ( _ ); 162 `GridDa (2)< Ty >& d = * this ; 164 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 166 cڡ  r = ( m = ACEA ) ? 0 : itm; 167 cڡ  d = ( m = ACEA ? _nems : itm+1; 169  = r ; i< d ; it++) { 170 `SIndexOfft ( d , ); 173 `f_2 ( i , j , ri , max_ ) 174 od_v * `FaIndex2 ( d , i , j ); 175 d_f 179 `EndFaIndex2 ( d ); 182  ( od_v ); 183 } } 188 gme < ass gTy > 189 Ty GridDa (2)< gTy >:: $momt1 (cڡ  axis , 190 cڡ BBox & whe , 191 cڡ  m ) 193 `as (( m ! ACEA && itm >0 && _nems > itm) || 194 ( m = ACEA )); 196 Ty m1 = (Type) 0; 198 BBox ri = _bbox * whe ; 199 i(! ri . `emy ()) { 200 Cods max_ = `max ( _ , whe . `size ()); 201 ri . `tsize ( _ ); 203 `GridDa (2)< Ty >& d = * this ; 205 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 207 cڡ  r = ( m = ACEA ) ? 0 : itm; 208 cڡ  d = ( m = ACEA ? _nems : itm+1; 210  = r ; i< d ; it++) { 211 `SIndexOfft ( d , ); 213 i( axis = ACE_X ) { 215 `f_2 ( i , j , ri , max_ ) 216 m1 + `FaIndex2 ( d , i , j ) * i; 217 d_f 220 i( axis = ACE_Y ) { 222 `f_2 ( i , j , ri , max_ ) 223 m1 + `FaIndex2 ( d , i , j ) * j; 224 d_f 227 i( axis = ACE_Z ) { 230 `EndFaIndex2 ( d ); 232  ( m1 ); 233 } } 239 gme < ass gTy > 240  GridDa (2)< gTy >:: $sumsqrd (cڡ BBox & whe , 241 Ty & s , & c , 242 cڡ  m ) 245 `as (( m ! ACEA && itm >0 && _nems > itm) || 246 ( m = ACEA )); 248 s = ( Ty ) 0; 249 c = 0; 250 BBox ri = _bbox * whe ; 251 i(! ri . `emy ()) { 252 Cods max_ = `max ( _ , whe . `size ()); 253 ri . `tsize ( _ ); 255 `GridDa (2)< Ty >& d = * this ; 257 `BegFaIndex2 ( d , d. _bbox , d. _da , Ty ); 259 cڡ  r = ( m = ACEA ) ? 0 : itm; 260 cڡ  d = ( m = ACEA ? _nems : itm+1; 262  = r ; i< d ; it++) { 263 `SIndexOfft ( d , ); 266 `f_2 ( i , j , ri , max_ ) 267 s + `FaIndex2 ( d , i , j ) * FastIndex2(dst,i,j); 268 c ++; 269 d_f 272 `EndFaIndex2 ( d ); 275 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataOpsRed3.h 1 #ide _uded_GridDaOpsRed_3_h 2  #_uded_GridDaOpsRed_3_h ) 17 gme < ass gTy > 18 Ty GridDa (3)< gTy >:: $maxv (cڡ BBox & whe , 19 cڡ  m ) 22 `as (( m ! ACEA && itm >0 && _nems > itm) || 23 ( m = ACEA )); 25 Ty max_v = (Ty ACESml ; 26  ag = ACETrue ; 27 BBox ri = _bbox * whe ; 28 i(! ri . `emy ()) { 29 Cods max_ = `max ( _ , whe . `size ()); 30 ri . `tsize ( _ ); 32 `GridDa (3)< Ty >& d = * this ; 34 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 36 cڡ  r = ( m = ACEA ) ? 0 : itm; 37 cڡ  d = ( m = ACEA ? _nems : itm+1; 39  = r ; i< d ; it++) { 40 `SIndexOfft ( d , ); 43 `f_3 ( i , j , k , ri , max_ ) 44 i( ag = ACETrue ) 45 { max_v = `FaIndex3 ( d , i , j , k ); ag = ACEF ; } 46 i( `FaIndex3 ( d , i , j , k > max_v ) 47 max_v = `FaIndex3 ( d , i , j , k ); 48 d_f 52 `EndFaIndex3 ( d ); 55  ( max_v ); 56 } } 62 gme < ass gTy > 63 Ty GridDa (3)< gTy >:: $mv (cڡ BBox & whe , 64 cڡ  m ) 67 `as (( m ! ACEA && itm >0 && _nems > itm) || 68 ( m = ACEA )); 70 Ty m_v = `MAXLIM (Type); 71  ag = ACETrue ; 72 BBox ri = _bbox * whe ; 73 i(! ri . `emy ()) { 74 Cods max_ = `max ( _ , whe . `size ()); 75 ri . `tsize ( _ ); 77 `GridDa (3)< Ty >& d = * this ; 79 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 81 cڡ  r = ( m = ACEA ) ? 0 : itm; 82 cڡ  d = ( m = ACEA ? _nems : itm+1; 84  = r ; i< d ; it++) { 85 `SIndexOfft ( d , ); 88 `f_3 ( i , j , k , ri , max_ ) 89 i( ag = ACETrue ) 90 { m_v = `FaIndex3 ( d , i , j , k ); ag = ACEF ; } 91 i( `FaIndex3 ( d , i , j , k < m_v ) 92 m_v = `FaIndex3 ( d , i , j , k ); 93 d_f 97 `EndFaIndex3 ( d ); 100  ( m_v ); 101 } } 107 gme < ass gTy > 108 Ty GridDa (3)< gTy >:: $sum (cڡ BBox & whe , 109 cڡ  m ) 112 `as (( m ! ACEA && itm >0 && _nems > itm) || 113 ( m = ACEA )); 115 Ty sum_v = (Type) 0; 116 BBox ri = _bbox * whe ; 117 i(! ri . `emy ()) { 118 Cods max_ = `max ( _ , whe . `size ()); 119 ri . `tsize ( _ ); 121 `GridDa (3)< Ty >& d = * this ; 123 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 125 cڡ  r = ( m = ACEA ) ? 0 : itm; 126 cڡ  d = ( m = ACEA ? _nems : itm+1; 128  = r ; i< d ; it++) { 129 `SIndexOfft ( d , ); 132 `f_3 ( i , j , k , ri , max_ ) 133 sum_v + `FaIndex3 ( d , i , j , k ); 134 d_f 138 `EndFaIndex3 ( d ); 141  ( sum_v ); 142 } } 148 gme < ass gTy > 149 Ty GridDa (3)< gTy >:: $odu (cڡ BBox & whe , 150 cڡ  m ) 153 `as (( m ! ACEA && itm >0 && _nems > itm) || 154 ( m = ACEA )); 156 Ty od_v = (Type) 1; 157 BBox ri = _bbox * whe ; 158 i(! ri . `emy ()) { 159 Cods max_ = `max ( _ , whe . `size ()); 160 ri . `tsize ( _ ); 162 `GridDa (3)< Ty >& d = * this ; 164 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 166 cڡ  r = ( m = ACEA ) ? 0 : itm; 167 cڡ  d = ( m = ACEA ? _nems : itm+1; 169  = r ; i< d ; it++) { 170 `SIndexOfft ( d , ); 173 `f_3 ( i , j , k , ri , max_ ) 174 od_v * `FaIndex3 ( d , i , j , k ); 175 d_f 179 `EndFaIndex3 ( d ); 182  ( od_v ); 183 } } 188 gme < ass gTy > 189 Ty GridDa (3)< gTy >:: $momt1 (cڡ  axis , 190 cڡ BBox & whe , 191 cڡ  m ) 193 `as (( m ! ACEA && itm >0 && _nems > itm) || 194 ( m = ACEA )); 196 Ty m1 = (Type) 0; 198 BBox ri = _bbox * whe ; 199 i(! ri . `emy ()) { 200 Cods max_ = `max ( _ , whe . `size ()); 201 ri . `tsize ( _ ); 203 `GridDa (3)< Ty >& d = * this ; 205 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 207 cڡ  r = ( m = ACEA ) ? 0 : itm; 208 cڡ  d = ( m = ACEA ? _nems : itm+1; 210  = r ; i< d ; it++) { 211 `SIndexOfft ( d , ); 213 i( axis = ACE_X ) { 215 `f_3 ( i , j , k , ri , max_ ) 216 m1 + `FaIndex3 ( d , i , j , k ) * i; 217 d_f 220 i( axis = ACE_Y ) { 222 `f_3 ( i , j , k , ri , max_ ) 223 m1 + `FaIndex3 ( d , i , j , k ) * j; 224 d_f 227 i( axis = ACE_Z ) { 229 `f_3 ( i , j , k , ri , max_ ) 230 m1 + `FaIndex3 ( d , i , j , k ) * k; 231 d_f 235 `EndFaIndex3 ( d ); 237  ( m1 ); 238 } } 244 gme < ass gTy > 245  GridDa (3)< gTy >:: $sumsqrd (cڡ BBox & whe , 246 Ty & s , & c , 247 cڡ  m ) 250 `as (( m ! ACEA && itm >0 && _nems > itm) || 251 ( m = ACEA )); 253 s = ( Ty ) 0; 254 c = 0; 255 BBox ri = _bbox * whe ; 256 i(! ri . `emy ()) { 257 Cods max_ = `max ( _ , whe . `size ()); 258 ri . `tsize ( _ ); 260 `GridDa (3)< Ty >& d = * this ; 262 `BegFaIndex3 ( d , d. _bbox , d. _da , Ty ); 264 cڡ  r = ( m = ACEA ) ? 0 : itm; 265 cڡ  d = ( m = ACEA ? _nems : itm+1; 267  = r ; i< d ; it++) { 268 `SIndexOfft ( d , ); 271 `f_3 ( i , j , k , ri , max_ ) 272 s + `FaIndex3 ( d , i , j , k ) * FastIndex3(dst,i,j,k); 273 c ++; 274 d_f 277 `EndFaIndex3 ( d ); 280 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridDataParams.h 1 #ide _uded_GridDaPams_h 2  #_uded_GridDaPams_h ) 12  #ALL (-2) ) 13  #CENTER (-1) ) 15  #NULL_FACE (-1) ) 16  #FACES (0) ) 17  #WEST (0) ) 18  #EAST (1) ) 19  #SOUTH (2) ) 20  #NORTH (3) ) 21  #FRONT (4) ) 22  #BACK (5) ) 23  #INSIDE (6) ) 28  #NULL_CORNER (-1) ) 29  #CORNERS (10) ) 31  #WSF (10) ) 32  #WSB (11) ) 33  #WNF (12) ) 34  #WNB (13) ) 35  #ESF (14) ) 36  #ESB (15) ) 37  #ENF (16) ) 38  #ENB (17) ) 40  #WS (10) ) 41  #WN (11) ) 42  #ES (12) ) 43  #EN (13) ) 48  #NULL_EDGE (-1) ) 49  #EDGES (20) ) 50  #WSC (20) ) 51  #WNC (21) ) 52  #WCF (22) ) 53  #WCB (23) ) 54  #CSF (24) ) 55  #CSB (25) ) 56  #CNF (26) ) 57  #CNB (27) ) 58  #ENC (28) ) 59  #ESC (29) ) 60  #ECB (30) ) 61  #ECF (31) ) 63 cڡ  gDCrs2 [6][3] = { 64 { WS , WN , NULL_CORNER },{ ES , EN ,NULL_CORNER}, 65 { WS , ES , NULL_CORNER },{ WN , EN ,NULL_CORNER}, 66 { WS , WN , ES }, {ES, EN ,WN} 69 cڡ  gDCrs3 [8][7] = { 70 { WSF , WSB , WNF , WNB , NULL_CORNER ,NULL_CORNER,NULL_CORNER}, 71 { ESF , ESB , ENF , ENB , NULL_CORNER ,NULL_CORNER,NULL_CORNER}, 72 { WSF , WSB , ESF , ESB , NULL_CORNER ,NULL_CORNER,NULL_CORNER}, 73 { WNF , WNB , ENF , ENB , NULL_CORNER ,NULL_CORNER,NULL_CORNER}, 74 { WSF , WNF , ESF , ENF , NULL_CORNER ,NULL_CORNER,NULL_CORNER}, 75 { WSB , WNB , ESB , ENB , NULL_CORNER ,NULL_CORNER,NULL_CORNER}, 76 { WSF , WSB , WNF , WNB , ESF , ESB , ENF }, 77 { ESF , ESB , ENF , ENB , WNF , WNB , WSB } 79 cڡ  gDEdges3 [8][9] = { 80 { WSC , WNC , WCF , WCB , NULL_EDGE ,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, 81 { ENC , ESC , ECB , ECF , NULL_EDGE ,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, 82 { WSC , CSF , CSB , ESC , NULL_EDGE ,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, 83 { WNC , CNF , CNB , ENC , NULL_EDGE ,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, 84 { WCF , CSF , CNF , ECF , NULL_EDGE ,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, 85 { WCB , CSB , CNB , ECB , NULL_EDGE ,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, 86 { WSC , WNC , WCF , WCB , CSF , CSB , ESC , CNF , ECF }, 87 { ENC , ESC , ECB , ECF , WNC , CNF , CNB , WCB , CSB } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunction.cpp 11  ~"GridFuni.h " 13  ~"GridFuniDICEClBack1.h " 14  ~"GridFuniDICEClBack2.h " 15  ~"GridFuniDICEClBack3.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunction.h 1 #ide _uded_GridFuni_h 2  #_uded_GridFuni_h ) 14  ~"ACEPams.h " 16  ~"Li.h " 18  ~"GridDaPams.h " 20  ~"GridHrchy.h " 22  ~"ACEUCD.h " 24  ~"GridFuniVoid.h " 26  ~"GridFuni1.h " 27  ~"GridFuni2.h " 28  ~"GridFuni3.h " 33 le  $SGridFuniTy ( GridFuniVoid & GFV , 34 cڡ  ty ) 35 { GFV . `GF_SGridFuniTy ( ty ); } } 37 le  $SCommTy ( GridFuniVoid & GFV , cڡ  c ) 38 { GFV . `GF_SCommTy ( c ); } } 39 le  $SShadowFg ( GridFuniVoid & GFV , cڡ  s ) 40 { GFV . `GF_SShadowFg ( s ); } } 41 le  $SBoundyTy ( GridFuniVoid & GFV , cڡ  b ) 42 { GFV . `GF_SBoundyTy ( b ); } } 43 le  $SAdtBoundyTy ( GridFuniVoid & GFV , cڡ  ab ) 44 { GFV . `GF_SAdtBoundyTy ( ab ); } } 45 le  $SExGhoFg ( GridFuniVoid & GFV , cڡ  e ) 46 { GFV . `GF_SExGhoFg ( e ); } } 48 le  $SUpdeFg ( GridFuniVoid & GFV , cڡ  f ) 49 { GFV . `GF_SUpdeFg ( f ); } } 51 le  $SPrgFg ( GridFuniVoid & GFV , cڡ  f ) 52 { GFV . `GF_SPrgFg ( f ); } } 53 le  $SShadowPrgFg ( GridFuniVoid & GFV , cڡ  f ) 54 { GFV . `GF_SShadowPrgFg ( f ); } } 56 le  $STimeIpީiFg ( GridFuniVoid & GFV , cڡ  f ) 57 { GFV . `GF_STimeIpީiFg ( f ); } } 58 le  $SShadowTimeIpީiFg ( GridFuniVoid & GFV , cڡ  f ) 59 { GFV . `GF_SShadowTimeIpީiFg ( f ); } } 61 le  $SReriFg ( GridFuniVoid & GFV , cڡ  f ) 62 { GFV . `GF_SReriFg ( f ); } } 64 le  $SBndryUpdeFg ( GridFuniVoid & GFV , cڡ  f ) 65 { GFV . `GF_SBndryUpdeFg ( f ); } } 66 le  $SAdtBndryUpdeFg ( GridFuniVoid & GFV , cڡ  f ) 67 { GFV . `GF_SAdtBndryUpdeFg ( f ); } } 69 le  $SIOFg ( GridFuniVoid & GFV , cڡ  f ) 70 { GFV . `GF_SIOFg ( f ); } } 72 le  $SCheckpotFg ( GridFuniVoid & GFV , cڡ  f ) 73 { GFV . `GF_SCheckpotFg ( f ); } } 75 le  $SBoundyWidth ( GridFuniVoid & GFV , cڡ  bw ) 76 { GFV . `GF_BoundyWidth ( bw ); } } 77 le  $SBoundyWidth ( GridFuniVoid & GFV , cڡ * bw ) 78 { GFV . `GF_BoundyWidth ( bw ); } } 80 le  $SExGhoWidth ( GridFuniVoid & GFV , cڡ  ew ) 81 { GFV . `GF_ExGhoWidth ( ew ); } } 82 le  $SExGhoWidth ( GridFuniVoid & GFV , cڡ * ew ) 83 { GFV . `GF_ExGhoWidth ( ew ); } } 85 le  $SSSnc ( GridFuniVoid & GFV , cڡ  ss ) 86 { GFV . `GF_SSSnc ( ss ); } } 87 le  $SSSnc ( GridFuniVoid & GFV , cڡ * ss ) 88 { GFV . `GF_SSSnc ( ss ); } } 90 le  $STimeSnc ( GridFuniVoid & GFV , cڡ  ts ) 91 { GFV . `GF_STimeSnc ( ts ); } } 93 le  $STimeAls ( GridFuniVoid & GFV , cڡ  t , cڡ  to ) 94 { GFV . `GF_STimeAls ( t , to ); } } 96 le  $SAlignmt ( GridFuniVoid & GFV , cڡ  a ) 97 { GFV . `GF_SAlignmt ( a ); } } 99 le  $SPtFg ( GridFuniVoid & GFV , cڡ  p ) 100 { GFV . `GF_SPtFg ( p ); } } 101 le  $SFluxFg ( GridFuniVoid & GFV , cڡ  f ) 102 { GFV . `GF_SFluxFg ( f ); } } 107 le  $UpdedVueAt ( GridFuniVoid & GFV ) 108 {  GFV . `updedvue (); } } 109 le  $SUpdedVueSp ( GridFuniVoid & GFV , cڡ  u ) 110 { GFV . `tupdedvue ( u ); } } 115 le  $SUrFg ( GridFuniVoid & GFV , 116 cڡ  id , cڡ ACEGFVFgTy & f ) 117 { GFV . `GF_SUrFg ( id , f ); } } 119 le ACEGFVFgTy $GUrFg ( GridFuniVoid & GFV , 120 cڡ  id ) 121 {  ( GFV . `GF_GUrFg ( id )); } } 126 #ide ACEVeGridFuni 127 le  Sync ( Li < GridFuniVoid *> & gfvli , cڡ  t , cڡ  l , 128 cڡ  idt = ACE_Ma ) 130 GridFuniVoid ** gfv = 0; 131 ACELiLo ( gfvli , gfv , GridFuniVoid *) { 132 i((* ggfv )-> comm ()(*gfv)-> GF_WreGhos ( t , l , idt ); 133 i((* ggfv )-> comm ()(*gfv)-> GF_RdGhos ( t , l , idt ); 134 } gACEEndLo 137 le  Sync ( Li < GridFuniVoid *> & gfvli , cڡ  t , cڡ  l , 138 cڡ  mgl , cڡ  idt ) 140 GridFuniVoid ** ggfv = 0; 141 ACELiLo ( gfvli , gfv , GridFuniVoid *) { 142 i((* ggfv )-> comm ()(*gfv)-> GF_WreGhos ( t , l , mgl , idt ); 143 i((* ggfv )-> comm ()(*gfv)-> GF_RdGhos ( t , l , mgl , idt ); 144 } gACEEndLo 147 le  Sync ( Li < GridFuniVoid *> & gfvli , cڡ  t , cڡ  l , 148 cڡ  axis , cڡ  d , 149 cڡ  idt ) 151 GridFuniVoid ** ggfv = 0; 152 ACELiLo ( gfvli , gfv , GridFuniVoid *) { 153 i((* ggfv )-> comm ()(*gfv)-> GF_WreGhos ( t , l , axis , d , idt ); 154 i((* ggfv )-> comm ()(*gfv)-> GF_RdGhos ( t , l , axis , d , idt ); 155 } gACEEndLo 158 le  Sync ( Li < GridFuniVoid *> & gfvli , cڡ  t , cڡ  l , 159 cڡ  mgl , cڡ  axis , cڡ  d , 160 cڡ  idt ) 162 GridFuniVoid ** ggfv = 0; 163 ACELiLo ( gfvli , gfv , GridFuniVoid *) { 164 i((* ggfv )-> comm ()(*gfv)-> GF_WreGhos ( t , l , mgl , axis , d , idt ); 165 i((* ggfv )-> comm ()(*gfv)-> GF_RdGhos ( t , l , mgl , axis , d , idt ); 166 } gACEEndLo @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunction1.c 1 #ide _uded_GridFuni1_c 2  #_uded_GridFuni1_c ) 21 gme < ass gACE_GFTy > 22 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 23 gGridHrchy & ggh ) 24 : GridFuniVoid ( gh . dagh_ty (),1, me ,gh. numbems (),gh, 25 gh . deu_ignmt (1), 26 gh . boundywidth (), 27 gh . exghowidth (), 28 ACEComm , ACENoShadow , 29 gh . ag (),gh. uxag (), 30 gh . boundyty (), 31 gh . adtboundyty (), 32 ACENoExGho ), 33 ngth (0), gdb (0), bvue (0), 34 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 35 func (0), iofunc (0) 41 gme < ass gACE_GFTy > 42 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 43 cڡ  gt_ , 44 cڡ  gs_ , 45 gGridHrchy & ggh , 46 cڡ  gcag , 47 cڡ  gsag , 48 cڡ  gextghag ) 49 : GridFuniVoid ( gh . dagh_ty (),1, me ,gh. numbems (), t_ , s_ , 50 gh , ACE_A ,gh. boundywidth (), 51 gh . exghowidth (), 52 cag , sag , 53 gh . ag (),gh. uxag (), 54 gh . boundyty (), 55 gh . adtboundyty (), extghag ), 56 ngth (0), gdb (0), bvue (0), 57 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 58 func (0), iofunc (0) 60 GF_Compo (); 61 i( gdagh . chk_t (&& checkpot ()) 62 GF_CheckpotRet (); 68 gme < ass gACE_GFTy > 69 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 70 cڡ  gt_ , 71 cڡ  gs_ , 72 gGridHrchy & ggh , 73 cڡ  gty , 74 cڡ  gcag , 75 cڡ  gsag , 76 cڡ  gbag , 77 cڡ  gadbag , 78 cڡ  gextghag ) 79 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 80 1, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 81 gh . `boundywidth (),gh. `exghowidth (), 82 cag , sag , 83 gh . `ag (),gh. `uxag (), 84 bag , adbag , extghag ), 85 `ngth (0), `gdb (0), `bvue (0), 86 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 87 `func (0), `iofunc (0) 89 `GF_Compo (); 90 i( dagh . `chk_t (&& `checkpot ()) 91 `GF_CheckpotRet (); 92 } } 94 gme < ass gACE_GFTy > 95 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 96 cڡ  gt_ , 97 cڡ * gs_ , 98 gGridHrchy & ggh , 99 cڡ  gty , 100 cڡ  gcag , 101 cڡ  gsag , 102 cڡ  gbag , 103 cڡ  gadbag , 104 cڡ  gextghag ) 105 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 106 1, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 107 gh . `boundywidth (),gh. `exghowidth (), 108 cag , sag , 109 gh . `ag (),gh. `uxag (), 110 bag , adbag , extghag ), 111 `ngth (0), `gdb (0), `bvue (0), 112 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 113 `func (0), `iofunc (0) 115 `GF_Compo (); 116 i( dagh . `chk_t (&& `checkpot ()) 117 `GF_CheckpotRet (); 118 } } 123 gme < ass gACE_GFTy > 124 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 125 cڡ  gt_ , 126 cڡ  gs_ , 127 gGridHrchy & ggh , 128 cڡ  gty , 129 cڡ  gign , 130 cڡ  gcag , 131 cڡ  gsag , 132 cڡ  gbag , 133 cڡ  gadbag , 134 cڡ  gextghag ) 135 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 136 1, me , gh . `numbems (), t_ , s_ ,gh, ign , 137 gh . `boundywidth (),gh. `exghowidth (), 138 cag , sag , 139 gh . `ag (),gh. `uxag (), 140 bag , adbag , extghag ), 141 `ngth (0), `gdb (0), `bvue (0), 142 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 143 `func (0), `iofunc (0) 145 `GF_Compo (); 146 i( dagh . `chk_t (&& `checkpot ()) 147 `GF_CheckpotRet (); 148 } } 150 gme < ass gACE_GFTy > 151 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 152 cڡ  gt_ , 153 cڡ * gs_ , 154 gGridHrchy & ggh , 155 cڡ  gty , 156 cڡ  gign , 157 cڡ  gcag , 158 cڡ  gsag , 159 cڡ  gbag , 160 cڡ  gadbag , 161 cڡ  gextghag ) 162 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 163 1, me , gh . `numbems (), t_ , s_ ,gh, ign , 164 gh . `boundywidth (),gh. `exghowidth (), 165 cag , sag , 166 gh . `ag (),gh. `uxag (), 167 bag , adbag , extghag ), 168 `ngth (0), `gdb (0), `bvue (0), 169 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 170 `func (0), `iofunc (0) 172 `GF_Compo (); 173 i( dagh . `chk_t (&& `checkpot ()) 174 `GF_CheckpotRet (); 175 } } 180 gme < ass gACE_GFTy > 181 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 182 cڡ  gt_ , 183 cڡ  gs_ , 184 cڡ  gtime , 185 cڡ  gv , 186 gGridHrchy & ggh , 187 cڡ  gty , 188 cڡ  gcag , 189 cڡ  gsag , 190 cڡ  gbag , 191 cڡ  gadbag , 192 cڡ  gextghag ) 193 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 194 1, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 195 gh . `boundywidth (),gh. `exghowidth (), 196 cag , sag , 197 gh . `ag (),gh. `uxag (), 198 bag , adbag , extghag ), 199 `ngth (0), `gdb (0), `bvue (0), 200 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 201 `func (0), `iofunc (0) 203 `GF_Compo ( time , v ); 204 i( dagh . `chk_t (&& `checkpot ()) 205 `GF_CheckpotRet (); 206 } } 208 gme < ass gACE_GFTy > 209 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 210 cڡ  gt_ , 211 cڡ * gs_ , 212 cڡ  gtime , 213 cڡ  gv , 214 gGridHrchy & ggh , 215 cڡ  gty , 216 cڡ  gcag , 217 cڡ  gsag , 218 cڡ  gbag , 219 cڡ  gadbag , 220 cڡ  gextghag ) 221 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 222 1, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 223 gh . `boundywidth (),gh. `exghowidth (), 224 cag , sag , 225 gh . `ag (),gh. `uxag (), 226 bag , adbag , extghag ), 227 `ngth (0), `gdb (0), `bvue (0), 228 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 229 `func (0), `iofunc (0) 231 `GF_Compo ( time , v ); 232 i( dagh . `chk_t (&& `checkpot ()) 233 `GF_CheckpotRet (); 234 } } 239 gme < ass gACE_GFTy > 240 GridFuni (1)< gACE_GFTy >::GridFuni(1)(cڡ  me [], 241 cڡ GridFuni (1)< gACE_GFTy >& ggf , 242 cڡ  gtime , 243 cڡ  gv , 244 cڡ  gcag , 245 cڡ  gsag , 246 cڡ  gbag , 247 cڡ  gadbag , 248 cڡ  gextghag ) 249 : GridFuniVoid ( me ,1, gf . GF_NIms (),gf, 250 cag , sag , 251 gf . _ag ,gf. ux_ag , 252 bag , adbag , extghag ), 253 ngth (0), gdb (0), bvue (0), 254 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 255 func (0), iofunc (0) 257 GF_Compo ( gf , time , v ); 258 i( gdagh . chk_t (&& checkpot ()) 259 GF_CheckpotRet (); 265 gme < ass gACE_GFTy > 266 GridFuni (1)< gACE_GFTy >::~GridFunction(1)() 268 GF_DeGDBStage (); 274 gme < ass gACE_GFTy > 275  GridFuni (1)< gACE_GFTy >:: $GF_DeGDBStage () 277 cڡ  vs = dagh . `tٮvs (); 278 cڡ  times = 2* time__d +1; 280 i( gdb ) { 281  t = 0 ; < times ;++) { 282 i( gdb [ t ]) { 283  l = 0 ; < vs ;l++) { 284 i( gdb [ t ][ l ]) { 285  i = 0 ; i < ngth ; i++) 286 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 287  tmpi = i +1; 288 tmpi < ngth && gdb [ t ][ l ][tmpi] && gdb[t][l][tmpi]-> `dexme ( i ); 289 tmpi ++) 290 gdb [ t ][ l ][ tmpi ] = 0; 291 de gdb [ t ][ l ][ i ]; gdb[t][l][i] = 0; 293 de [] gdb [ t ][ l ]; gdb[t][l] = 0; 296 de [] gdb [ t ]; gdb[t] = 0; 299 de [] gdb ; gdb = 0; 301 } } 303 gme < ass gACE_GFTy > 304  GridFuni (1)< gACE_GFTy >:: $GF_DeGDBStage (cڡ  t ) 306 cڡ  vs = dagh . `tٮvs (); 308 i( gdb && gdb[ t ]) { 309  l = 0 ; < vs ;l++) { 310 i( gdb [ t ][ l ]) { 311  i = 0 ; i < ngth ; i++) 312 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 313  tmpi = i +1; 314 tmpi < ngth && gdb [ t ][ l ][tmpi] && gdb[t][l][tmpi]-> `dexme ( i ); 315 tmpi ++) 316 gdb [ t ][ l ][ tmpi ] = 0; 317 de gdb [ t ][ l ][ i ]; gdb[t][l][i] = 0; 319 de [] gdb [ t ][ l ]; gdb[t][l] = 0; 322 de [] gdb [ t ]; gdb[t] = 0; 324 } } 329 gme < ass gACE_GFTy > 330  GridFuni (1)< gACE_GFTy >:: $GF_SUpGDBPors () 332 cڡ  vs = dagh . `tٮvs (); 333 cڡ  times = 2* time__d +1; 335 `GridDaBlock (1)< ACE_GFTy >* tmpgdb = 0; 337  idx = -1; 338  t = 0 ; < times ;++i( gdb [t]) { 339  l = 0 ; < vs -1 ;l++i( gdb [ t ][l]) { 340 tmpgdb = 0; 341  i = 0 ; i < ngth ; i++) { 342 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 343 tmpgdb = gdb [ t ][ l ][ i ]; 345 i( gdb [ t ][ l ][ i ] =0 && tmpgdb ) { 346 gdb [ t ][ l ][ i ] = tmpgdb ; 351 } } 354 gme < ass gACE_GFTy > 355  GridFuni (1)< gACE_GFTy >:: $GF_Compo () 358 i( comm_ag > ACETemeComm ) { 359 me_ag = comm_ag - ACETemeComm ; 360 #ifde DEBUG_PRINT 361 `as ( dagh . gi [ me_ag ]); 363 comm_ag = dagh . gi [ me_ag ]-> `comm_ty (); 366 i( `compod ()) ; 368 is . `compu_is ( GhoIai :: `_ag ( comm_ag ), 369 GhoIai :: `cr_ag ( comm_ag ), 370 GhoIai :: `edge_ag ( comm_ag ), 371 GhoIai :: `sime_ag ( comm_ag )); 373 cڡ  me = comm_rvi :: `oc_me (); 374 cڡ  um = comm_rvi :: `oc_num (); 376 cڡ  vs = dagh . `tٮvs (); 378  t = 0, l = 0, i = 0; 381 cuime [0] = w [ vs ]; 382 cuime [1] = w [ vs ]; 383  i =0;i< vs ;i++) { 384 cuime [0][ i ] = curtime[1][i] = 0; 387 cڡ  ts = 2* time__d +1; 388 cڡ  mdex = dagh . `maxdex ()+1; 390 gt = w `GridTab ( gfid , vs , ts ); 392 GridBoxLi * lgbl = dagh . `lgbl (); 393 ngth = lgbl -> `maxdex ()+1; 395 #ifde DEBUG_PRINT_GF_GT 396 comm_rvi :: `log () << "\n************* Grid Table *************\n" 397 << "------ [" << game << "] ------" << "\n" 398 << * gt 400 ). `ush (); 404 `GF_DeGDBStage (); 407 gdb = w `GridDaBlock (1)< ACE_GFTy > ***[ ts ]; 408  t =0;t< ts ;t++) { 409 gdb [ t ] = ( `GridDaBlock (1)< ACE_GFTy > *** NULL ; 411  t =0;t< ts ;t++) { 412 i(! gdb [ time_s [ t ]]) { 413 gdb [ time_s [ t ]] = w `GridDaBlock (1)< ACE_GFTy > **[ vs ]; 415  l =0;l< vs ;l++) { 416 gdb [ time_s [ t ]][ l ] = w `GridDaBlock (1)< ACE_GFTy > *[ ngth ]; 417  i =0;i< ngth ;i++) 418 gdb [ time_s [ t ]][ l ][ i ] = ( `GridDaBlock (1)< ACE_GFTy > * NULL ; 423 cڡ  has_shadow = `shadow (); 425 `GridFuni (1)< ACE_GFTy >* geme = 0; 426 i( me_ag ! ACENu ) { 427 geme = ( `GridFuni (1)< ACE_GFTy >* dagh . gi [ me_ag ]; 428 i( geme && !geme-> `compod ()) gftemplate = 0; 430 cڡ `GridDaBlock (1)< ACE_GFTy >* gdbtm = 0; 432  GridBox * gb = 0; 433  gbi = 0; 434  gb = lgbl -> `f (); gb; gb =gbl-> `xt ()) { 435 cڡ  fe = gb -> `gbFeLev (); 436 cڡ  cr = gb -> `gbCrsLev (); 437 gbi = gb -> `gbIndex (); 438  l =0;l< vs ;l++) { 439 cڡ  v = dagh . `vnum ( l ); 440 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 441 cڡ  = dagh . `gCutTime ( l ); 442  tmi = ACENu ; 443 i( me_ag ! ACENu && 444 geme && 445 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 446 && geme -> gdb [ tmi ][ l ]) 447 gdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 448 gdbtm = 0; 449 i( v > cr &&ev < fe ) { 450  t =0;t< ts ;t++i( gdb [t] && gdb[t][ l ]) { 451 gdb [ t ][ l ][ gbi ] = w `GridDaBlock (1)< ACE_GFTy >( gfid , dagh , * gt , 452 is , 453 gbi , * gb , 454 nems , 455 t , 456 dagh . `vnum ( l ), 457 bwidth , 458 extghowidth , 459 ovp , 460 a__d , 461 ignmt , mdex , 462 `comm ( t , l ), 463 has_shadow , 464 _ag , 465 `uxes ( t , l ), 466 gdbtm ); 467 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 473 i( `comm ()) { 474 `GF_GhGhoCommInfo (); 475 `GF_SUpGhoCommSvs (); 477 i( ` ()) { 478 `GF_GhPtCommInfo (); 479 `GF_SUpPtCommSvs (); 481 i( `uxes ()) { 482 `GF_GhFluxCommInfo (); 483 `GF_SUpFluxCommSvs (); 485 `GF_SUpGDBPors (); 486 compo_ag = ACETrue ; 487 } } 492 gme < ass gACE_GFTy > 493  GridFuni (1)< gACE_GFTy >:: $GF_Compo (cڡ  T , cڡ  L ) 495 i( comm_ag > ACETemeComm ) { 496 me_ag = comm_ag - ACETemeComm ; 497 #ifde DEBUG_PRINT 498 `as ( dagh . gi [ me_ag ]); 500 comm_ag = dagh . gi [ me_ag ]-> `comm_ty (); 503 i( `compod ()) ; 505 is . `compu_is ( GhoIai :: `_ag ( comm_ag ), 506 GhoIai :: `cr_ag ( comm_ag ), 507 GhoIai :: `edge_ag ( comm_ag ), 508 GhoIai :: `sime_ag ( comm_ag )); 510 cڡ  me = comm_rvi :: `oc_me (); 511 cڡ  um = comm_rvi :: `oc_num (); 513 cڡ  vs = dagh . `tٮvs (); 514 cڡ  Lnum = dagh . `vnum ( L ); 516  t = 0, l = 0, i = 0; 519 cuime [0] = w [ vs ]; 520 cuime [1] = w [ vs ]; 521  i =0;i< vs ;i++) { 522 cuime [0][ i ] = curtime[1][i] = 0; 525 cڡ  ts = 2* time__d +1; 526 cڡ  ev = dagh . `fev (); 527 cڡ  = dagh . `fevdex (); 528 cڡ  mdex = dagh . `maxdex ()+1; 530 i( L = ACEALevs ) { 531 gt = w `GridTab ( gfid , vs , ts ); 533 i( L < ) { 534 gt = w `GridTab ( gfid , vs , ts ); 538 #ifde DEBUG_PRINT 539 `as (( L - ) == 1); 541 gt = w `GridTab ( gfid , vs , ts ); 544 #ifde DEBUG_PRINT_GF_GT 545 comm_rvi :: `log () << "\n************* Grid Table *************\n" 546 << "------ [" << game << "] ------" << "\n" 547 << * gt 549 ). `ush (); 552 GridBoxLi * lgbl = dagh . `lgbl (); 553 ngth = lgbl -> `maxdex ()+1; 556 `GF_DeGDBStage (); 559 gdb = w `GridDaBlock (1)< ACE_GFTy > ***[ ts ]; 560  t =0;t< ts ;t++) { 561 gdb [ t ] = ( `GridDaBlock (1)< ACE_GFTy > *** NULL ; 563  t =0;t< ts ;t++) { 564  l =0;l< vs ;l++) { 565 cڡ  th = ( l < ) ? : fl; 566 i( T ! ACEATimes && `dagh_timedex (T, th ! time_s [ t ]) ; 567 i(! gdb [ time_s [ t ]]) { 568 gdb [ time_s [ t ]] = w `GridDaBlock (1)< ACE_GFTy > **[ vs ]; 569  =0;< vs ;ll++) 570 gdb [ time_s [ t ]][ ] = ( `GridDaBlock (1)< ACE_GFTy > ** NULL ; 572 i(( L = ACEALevs || L = l && ! gdb [ time_s [ t ]][l]) { 573 gdb [ time_s [ t ]][ l ] = w `GridDaBlock (1)< ACE_GFTy > *[ ngth ]; 575  i =0;i< ngth ;i++) 576 gdb [ time_s [ t ]][ l ][ i ] = ( `GridDaBlock (1)< ACE_GFTy > * NULL ; 581 cڡ  has_shadow = `shadow (); 583 `GridFuni (1)< ACE_GFTy >* geme = 0; 584 i( me_ag ! ACENu ) { 585 geme = ( `GridFuni (1)< ACE_GFTy >* dagh . gi [ me_ag ]; 586 i( geme && !geme-> `compod ()) gftemplate = 0; 588 cڡ `GridDaBlock (1)< ACE_GFTy >* gdbtm = 0; 590  GridBox * gb = 0; 591  gbi = 0; 592  gb = lgbl -> `f (); gb; gb =gbl-> `xt ()) { 593 cڡ  fe = gb -> `gbFeLev (); 594 cڡ  cr = gb -> `gbCrsLev (); 595 gbi = gb -> `gbIndex (); 596  l =0;l< vs ;l++) { 597 i( L ! ACEALevs && L ! l ) ; 598 cڡ  v = ( l < ? dagh . `vnum : ev ; 599 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 600 cڡ  = dagh . `gCutTime ( l ); 601  tmi = ACENu ; 602 i( me_ag ! ACENu && 603 geme && 604 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 605 && geme -> gdb [ tmi ][ l ]) 606 gdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 607 gdbtm = 0; 608 i( v > cr &&ev < fe ) { 609  t =0;t< ts ;t++) { 610 i( T ! ACEATimes && `dagh_timedex (T, l ! t ) ; 611 i( gdb [ t ] && gdb[t][ l ]) { 612 gdb [ t ][ l ][ gbi ] = w `GridDaBlock (1)< ACE_GFTy >( gfid , dagh , * gt , 613 is , 614 gbi , * gb , 615 nems , 616 t , 617 dagh . `vnum ( l ), 618 bwidth , 619 extghowidth , 620 ovp , 621 a__d , 622 ignmt , mdex , 623 `comm ( t , l ), 624 has_shadow , 625 _ag , 626 `uxes ( t , l ), 627 gdbtm ); 628 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 635 i( `comm ()) { 636 `GF_GhGhoCommInfo (); 637 `GF_SUpGhoCommSvs (); 639 i( ` ()) { 640 `GF_GhPtCommInfo (); 641 `GF_SUpPtCommSvs (); 643 i( `uxes ()) { 644 `GF_GhFluxCommInfo (); 645 `GF_SUpFluxCommSvs (); 647 `GF_SUpGDBPors (); 648 compo_ag = ACETrue ; 649 } } 654 gme < ass gACE_GFTy > 655  GridFuni (1)< gACE_GFTy >:: GF_Compo ( 656 cڡ GridFuni (1)< ACE_GFTy >& gf , 657 cڡ  T , cڡ  L ) 659 i( gcomm_ag > ACETemeComm ) { 660 me_ag = comm_ag - ACETemeComm ; 661 #ifde DEBUG_PRINT 662 as ( dagh . gi [ me_ag ]); 664 gcomm_ag = dagh . gi [ me_ag ]-> comm_ty (); 667 i( compod ()) ; 669 #ifde ACEVeGridFuni 670 * gvgfag = w [ nems ]; 671  gvgfi =0;vgfi< gnems ;vgfi++) 672 gvgfag [ vgfi ] = ACETrue ; 676 gis . compu_is ( GhoIai :: _ag ( comm_ag ), 677 GhoIai :: cr_ag ( comm_ag ), 678 GhoIai :: edge_ag ( comm_ag ), 679 GhoIai :: sime_ag ( comm_ag )); 681 cڡ  gme = comm_rvi :: oc_me (); 682 cڡ  gum = comm_rvi :: oc_num (); 684 cڡ  gvs = dagh . tٮvs (); 685 cڡ  gLnum = dagh . vnum ( L ); 687  gt = 0, gl = 0, gi = 0; 690 gcuime [0] = w [ vs ]; 691 gcuime [1] = w [ vs ]; 692  gi =0;i< gvs ;i++) { 693 gcuime [0][ i ] = gf . cuime [0][i]; 694 gcuime [1][ i ] = gf . cuime [1][i]; 697 cڡ  gts = 2* time__d +1; 698 cڡ  gev = dagh . fev (); 699 cڡ  g = dagh . fevdex (); 700 cڡ  gmdex = dagh . maxdex ()+1; 702 i( gL = ACEALevs ) { 703 gt = w GridTab ( gfid , vs , ts ); 705 i( gL < ) { 706 gt = w GridTab ( gfid , vs , ts ); 710 #ifde DEBUG_PRINT 711 as (( L - ) == 1); 713 ggt = w GridTab ( gfid , vs , ts ); 716 gngth = gf . ngth ; 718 #ifde DEBUG_PRINT_GF_GT 719 gcomm_rvi :: log () << "\n************* Grid Table *************\n" 720 << "------ [" << game << "] ------" << "\n" 721 << * gt 723 ). ush (); 727 GF_DeGDBStage (); 730 ggdb = w GridDaBlock (1)< ACE_GFTy > ***[ ts ]; 731  gt =0;t< gts ;t++) { 732 ggdb [ t ] = ( GridDaBlock (1)< ACE_GFTy > *** NULL ; 734  gt =0;t< gts ;t++) { 735  gl =0;l< gvs ;l++) { 736 cڡ  gth = ( l < ) ? : fl; 737 i( gT ! ACEATimes && dagh_timedex ( T , th ! time_s [ t ]) ; 738 i(! ggdb [ time_s [ t ]]) { 739 ggdb [ time_s [ t ]] = w GridDaBlock (1)< ACE_GFTy > **[ vs ]; 740  g =0;< gvs ;ll++) 741 ggdb [ time_s [ t ]][ ] = ( GridDaBlock (1)< ACE_GFTy > ** NULL ; 743 i(( gL = ACEALevs || L = l && ! gdb [ time_s [ t ]][l]) { 744 gdb [ time_s [ t ]][ l ] = w GridDaBlock (1)< ACE_GFTy > *[ ngth ]; 746  gi =0;i< gngth ;i++) 747 ggdb [ time_s [ t ]][ l ][ i ] = ( GridDaBlock (1)< ACE_GFTy > * NULL ; 752 cڡ  ghas_shadow = shadow (); 753 cڡ  ghe_has_shadow = gf . shadow (); 755 GridFuni (1)< gACE_GFTy >* ggeme = 0; 756 i( gme_ag ! ACENu ) { 757 geme = ( GridFuni (1)< ACE_GFTy >* dagh . gi [ me_ag ]; 758 i( ggeme && !geme-> compod ()) gftemplate = 0; 760 cڡ GridDaBlock (1)< gACE_GFTy >* ggdbtm = 0; 762 GridBoxLi * glgbl = dagh . lgbl (); 763  GridBox * ggb = 0; 764  ggbi = 0; 766  ggb = lgbl -> f (); gb; gb =gbl-> xt ()) { 767 cڡ  fe = gb -> gbFeLev (); 768 cڡ  gcr = gb -> gbCrsLev (); 769 ggbi = gb -> gbIndex (); 771  gl =0;l< gvs ;l++) { 772 i( gL ! ACEALevs && L ! l ) ; 773 cڡ  gv = ( l < ? dagh . vnum : ev ; 774 i( gv < gcr ||ev > gfe ) ; 775 cڡ  gi = dagh_timedex ( dagh . gCutTime ( l ),l); 776 cڡ  g = dagh . gCutTime ( l ); 777  gtmi = ACENu ; 778 i( gme_ag ! ACENu && 779 geme && 780 geme -> gdb [( tmi =geme-> dagh_timedex ( , l ))] 781 && ggeme -> ggdb [ tmi ][ l ]) 782 ggdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 783 ggdbtm = 0; 785  gt =0;t< gts ;t++) { 786 i( gT ! ACEATimes && dagh_timedex ( T , l ! t ) ; 787 cڡ  g = ( l < ) ? : fl; 788 i( ggdb [ t ] && gdb[t][ l ] && 789 ggf . ggdb [ t ] && gf.gdb[t][ ] && 790 ggf . ggdb [ t ][ ][ gbi ] && gf.gdb[t][][gbi]-> dexme (gbi)) { 791 ggdb [ t ][ l ][ gbi ] = w GridDaBlock (1)< ACE_GFTy >( gfid , gdagh , * ggt , 792 gis , 793 ggbi , * ggb , 794 gnems , 795 gt , 796 gdagh . vnum ( l ), 797 gbwidth , gextghowidth , 798 govp , 799 ga__d , 800 gignmt , gmdex , 801 comm ( t , l ), ghas_shadow , 802 g_ag , 803 uxes ( t , l ), 804 ggdbtm ); 806 i( ggdbtm =0 || comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 810 i( gACEInGFOnCi = ACETrue ) { 811 i( l > && pfunc && ( g (|| shadow_g ())) { 813  mygc = 0; ACE_GFTy gmygs [1]; 814 i( g ()) 815 (* gpfunc )( FORTRAN_ARGS ( gf . gdb [ t ][ ][ gbi ]-> mage . da ), 816 FORTRAN_ARGS ( gdb [ t ][ l ][ gbi ]-> mage . da ), 817 BOUNDING_BOX ( gdb [ t ][ l ][ gbi ]-> mage . da ), 818 #ifde ACEVeGridFuni 819 gvgfag , 821 gmygs ,& gmygc ); 822 i( ghas_shadow && ghe_has_shadow && shadow_g ()) { 824 (* gpfunc )( FORTRAN_ARGS ( gf . gdb [ t ][ ][ gbi ]-> shage -> da ), 825 FORTRAN_ARGS ( gdb [ t ][ l ][ gbi ]-> shage -> da ), 826 BOUNDING_BOX ( gdb [ t ][ l ][ gbi ]-> shage -> da ), 827 #ifde ACEVeGridFuni 828 gvgfag , 830 gmygs ,& gmygc ); 832 i( ghas_shadow ) { 833 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gdb [t][l][gbi]-> mage . da ); 837 ggdb [ t ][ l ][ gbi ]-> gmage . gda . cy ( gf . gdb [t][ ][gbi]-> mage . da ); 838 i( ghas_shadow && ghe_has_shadow ) 839 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gf . gdb [t][ ][gbi]-> shage -> da ); 840 i( ghas_shadow ) 841 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gdb [t][l][gbi]-> mage . da ); 849 #ifde ACEVeGridFuni 850 i( gvgfag gde [] vgfflag; 853 i( comm ()) { 854 GF_GhGhoCommInfo (); 855 GF_SUpGhoCommSvs (); 857 i( ()) { 858 GF_GhPtCommInfo (); 859 GF_SUpPtCommSvs (); 861 i( uxes ()) { 862 GF_GhFluxCommInfo (); 863 GF_SUpFluxCommSvs (); 865 GF_SUpGDBPors (); 866 gcompo_ag = ACETrue ; 872 gme < ass gACE_GFTy > 873  GridFuni (1)< gACE_GFTy >:: $GF_Recompo (cڡ  omdex , 874 GridBoxLi & li , 875 GridBoxLi & i , 876 GridBoxLi & i , 877 GridBoxLi & i ) 880 cڡ  me = comm_rvi :: `oc_me (); 881 cڡ  um = comm_rvi :: `oc_num (); 883 #ifde ACEVeGridFuni 884 * vgfag = w [ nems ]; 885  vgfi =0;vgfi< nems ;vgfi++) 886 vgfag [ vgfi ] = ACETrue ; 889  t =0, l =0, i =0, oi =0, p =0, m =0; 890  GridBox * tmpgb = 0; 892 `GridDaBlock (1)< ACE_GFTy > **** dgdb = gdb ; gdb = 0; 893 cڡ  dngth = ngth ;ength = 0; 895 gt -> `ab (); 897 cڡ  mdex = dagh . `maxdex ()+1; 898 cڡ  vs = dagh . `tٮvs (); 899 cڡ  times = 2* time__d +1; 901 GridBoxLi * lgbl = dagh . `lgbl (); 902 ngth = lgbl -> `maxdex ()+1; 908 cڡ  ev = dagh . `crv (); 909 cڡ  has_shadow = `shadow (); 910 cڡ  shadow = dagh . `daghshadow (); 912 gdb = w `GridDaBlock (1)< ACE_GFTy > ***[ times ]; 913  t =0;t< times ;t++) { 914 gdb [ t ] = ( `GridDaBlock (1)< ACE_GFTy > *** NULL ; 915 i( dgdb [ t ]) { 916 gdb [ t ] = w `GridDaBlock (1)< ACE_GFTy > **[ vs ]; 917  l =0;l< vs ;l++) { 918 gdb [ t ][ l ] = w `GridDaBlock (1)< ACE_GFTy > *[ ngth ]; 919  i =0;i< ngth ;i++) 920 gdb [ t ][ l ][ i ] = ( `GridDaBlock (1)< ACE_GFTy > * NULL ; 926 `GF_DeGhoCommInfo (); 927 `GF_DeDaCommInfo (); 928 `GF_DePtCommInfo (); 929 `GF_DeFluxCommInfo (); 931  v = 0; 932  idx = 0; 933  dowr = ACENoBody ; 936 i( comm_rvi :: `d (&& um > 1) { 937 i(! i . `imy ()) { 939 #ifde DEBUG_PRINT_GF_RG 940 comm_rvi :: `log () << "\n************* Recv List *************\n" 941 << i 943 ). `ush (); 946 tmpgb = i . `f (); 947 v = 0; 948 idx = 0; 949 dowr = ACENoBody ; 951 i( me_ag = ACENu ) { 953 i( rcvsize de []cvsize; 954 i( shrcvsize de [] shrcvsize; 956 rcvsize = w [ um ]; 957 shrcvsize = w [ um ]; 959  p =0;p< um ;p++) { 960 rcvsize [ p ] = shrcvsize [p] = 0; 963 BBox * rb = w BBox[ um * vs * omdex ]; 964 * oidx = w [ um * vs * omdex ]; 965  ridx = 0; 967 cڡ `GridDaBlock (1)< ACE_GFTy >* gdbtm = 0; 969 ; tmpgb ;tmpgb= i . `xt ()) { 970 dowr = tmpgb -> `gbOwr (); 973 #ifde DEBUG_PRINT_GF_RG 974 `as ( lgbl -> `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 975 tmpgb -> `gbCrsLev ()) == 1); 977 cڡ GridBox & mgb = lgbl -> `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 978 tmpgb -> `gbCrsLev ()); 979 idx = mgb . `gbIndex (); 980  l =0;l< vs ;l++) { 981 v = dagh . `vnum ( l ); 982 i! mgb . `gbCڏs ( v ) ) ; 983 gdbtm = 0; 984  t =0;t< times ;t++) { 985 i(! gdb [ t ] || !gdb[t][ l ]) ; 986 i(! gdb [ t ][ l ][ idx ]) { 987 gdb [ t ][ l ][ idx ] = w `GridDaBlock (1)< ACE_GFTy >( gfid , dagh , * gt , 988 is , 989 idx , mgb , 990 nems , 991 t , v , 992 bwidth , 993 extghowidth , 994 ovp , 995 a__d , 996 ignmt , mdex , 997 `comm ( t , l ), 998 has_shadow , 999 _ag , 1000 `uxes ( t , l ), 1001 gdbtm ); 1002 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1004 i( tmpgb -> `gbCڏs ( v )) { 1005 ridx = dowr * vs * omdex + l *omdex + tmpgb -> `gbIndex (); 1006 BBox `gb ( tmpgb -> `gbBBox ( v , ovp )); 1007 `gdbAlignBBox ( gk , gb , ignmt ); 1008 i( rb [ ridx ]. `emy (){b[ridx] = gb ; oidx [ridx] = idx ; } 1009 i( oidx [ ridx ] = idx && gb . `mgab ( rb [ridx], ovp )) { 1010 #ifde DEBUG_PRINT_GF_RG 1011 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1012 << "[Mgg: " << rb [ ridx ] << " & " << gb << " ]" 1013 << dl ). `ush (); 1015 rb [ ridx ] + gb ; 1018 rcvsize [ dowr ] + gdhdr :: `gdbsize ( nems *( ACE_GFTy )* rb [ ridx ]. `size ()); 1019 i( has_shadow = ACETrue shrcvsize [ dowr ] += 1020 gdhdr :: `gdbsize ( nems *( ACE_GFTy )* `crn ( rb [ ridx ], shadow ). `size ()); 1022 #ifde DEBUG_PRINT_GF_RG 1023 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1024 << "[From:" << dowr << "]" 1025 << "[BB:" << rb [ ridx ] << "]" 1026 << "[Si:" << tmpgb -> `gbIndex () << "]" 1027 << "[Ri:" << idx << "]" 1028 << "[Sl:" << l << "]" 1029 << dl ). `ush (); 1032 rb [ ridx ] = gb ; 1033 oidx [ ridx ] = idx ; 1038  p =0;p< um ;p++) { 1039  l =0;l< vs ;l++) { 1040  m =0;m< omdex ;m++) { 1041 ridx = p * vs * omdex + l *omdex + m ; 1042 i(! rb [ ridx ]. `emy ()) { 1044 #ifde DEBUG_PRINT_GF_RG 1045 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1046 << "[From:" << p << "]" 1047 << "[BB:" << rb [ ridx ] << "]" 1048 << "[Si:" << m << "]" 1049 << "[Ri:" << oidx [ ridx ] << "]" 1050 << "[Sl:" << l << "]" 1051 << dl ). `ush (); 1054 rcvsize [ p ] + gdhdr :: `gdbsize ( nems *( ACE_GFTy )* rb [ ridx ]. `size ()); 1055 i( has_shadow = ACETrue shrcvsize [ p ] += 1056 gdhdr :: `gdbsize ( nems *( ACE_GFTy )* `crn ( rb [ ridx ], shadow ). `size ()); 1057 rb [ ridx ]. `my (); 1062  t =0;t< times ;t++) { 1063 i(! gdb [ t ]) ; 1064  p =0;p< um ;p++) { 1065 i( me = p ) ; 1066 i( rcvsize [ p ] > 0 || shrcvsize [p] > 0) { 1067 i(! da_cv_rv [ p ]) { 1068 da_cv_rv [ p ] = w GridTabDaRcv *[ times ]; 1069  i =0; i< times ; i++ da_cv_rv [ p ][i] = 0; 1071 da_cv_rv [ p ][ t ] = 1072 w `GridTabDaRcv (* gt , ( ACEDaTag | t ), rcvsize [ p ]+ shrcvsize [p],); 1079 i( rb de []b; 1080 i( oidx de []toidx; 1084 `GridFuni (1)< ACE_GFTy >* geme = 1085 ( `GridFuni (1)< ACE_GFTy >* dagh . gi [ me_ag ]; 1087 rcvsize = geme ->rcvsize; 1088 shrcvsize = geme ->shrcvsize; 1090 cڡ `GridDaBlock (1)< ACE_GFTy >* gdbtm = 0; 1092 ; tmpgb ;tmpgb= i . `xt ()) { 1095 #ifde DEBUG_PRINT_GF_RG 1096 `as ( lgbl -> `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1097 tmpgb -> `gbCrsLev ()) == 1); 1099 cڡ GridBox & mgb = lgbl -> `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1100 tmpgb -> `gbCrsLev ()); 1102 idx = mgb . `gbIndex (); 1103  l =0;l< vs ;l++) { 1104 v = dagh . `vnum ( l ); 1105 i! mgb . `gbCڏs ( v ) ) ; 1106 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1107 cڡ  = dagh . `gCutTime ( l ); 1108  tmi = ACENu ; 1109 i( geme && 1110 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1111 && geme -> gdb [ tmi ][ l ]) 1112 gdbtm = geme -> gdb [ tmi ][ l ][ idx ]; 1113 gdbtm = 0; 1114  t =0;t< times ;t++) { 1115 i(! gdb [ t ] || !gdb[t][ l ]) ; 1116 i(! gdb [ t ][ l ][ idx ]) { 1117 gdb [ t ][ l ][ idx ] = w `GridDaBlock (1)< ACE_GFTy >( gfid , dagh , * gt , 1118 is , 1119 idx , mgb , 1120 nems , 1121 t , v , 1122 bwidth , 1123 extghowidth , 1124 ovp , 1125 a__d , 1126 ignmt , mdex , 1127 `comm ( t , l ), 1128 has_shadow , 1129 _ag , 1130 `uxes ( t , l ), 1131 gdbtm ); 1132 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1136  rsize = 0; 1137  t =0;t< times ;t++) { 1138 i(! gdb [ t ]) ; 1139  p =0;p< um ;p++) { 1140 i( me = p ) ; 1141 rsize = rcvsize [ p ]; 1142 i( has_shadow = ACETrue rsize + shrcvsize [ p ]; 1143 i( rsize > 0) { 1144 i(! da_cv_rv [ p ]) { 1145 da_cv_rv [ p ] = w GridTabDaRcv *[ times ]; 1146  i =0; i< times ; i++ da_cv_rv [ p ][i] = 0; 1148 da_cv_rv [ p ][ t ] = 1149 w `GridTabDaRcv (* gt , ( ACEDaTag | t ), rsize , p ); 1153 rcvsize = 0; 1154 shrcvsize = 0; 1160 i( comm_rvi :: `d (&& um > 1) { 1161  wowr = ACENoBody ; 1162 i(! i . `imy ()) { 1164 tmpgb = i . `f (); 1165 v = 0; 1166 idx = 0; 1168 i( me_ag = ACENu ) { 1170 = 2* i . `numb (); 1172 i( dsize de [] sndsize; 1173 i( dbbox de [] sndbbox; 1174 i( ddex de [] sndindex; 1175 i( rcvdex de []cvindex; 1176 i( dv de [] sndlevel; 1177 i( dt de [] sndcnt; 1179 dsize = w [ um * vs * ]; 1180 dbbox = w BBox [ um * vs * ]; 1181 ddex = w [ um * vs * ]; 1182 rcvdex = w [ um * vs * ]; 1183 dv = w [ um * vs * ]; 1185 dt = w [ um ]; 1187  p =0;p< um ;p++ dt [p] = 0; 1189 BBox * sb = w BBox[ um * vs * omdex ]; 1190 * oidx = w [ um * vs * omdex ]; 1192  nidx = 0; 1193  sidx = 0; 1194  tmpid = 0; 1196 ; tmpgb ;tmpgb= i . `xt ()) { 1199 #ifde DEBUG_PRINT_GF_RG 1200 `as ( li . `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1201 tmpgb -> `gbCrsLev ()) == 1); 1203 cڡ GridBox & wgb = li . `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1204 tmpgb -> `gbCrsLev ()); 1205 idx = wgb . `gbIndex (); 1206 wowr = tmpgb -> `gbOwr (); 1207  l =0;l< vs ;l++) { 1208 v = dagh . `vnum ( l ); 1209 i(! wgb . `gbCڏs ( v )) ; 1210 i( tmpgb -> `gbCڏs ( v )) { 1211 sidx = wowr * vs * omdex + l *omdex + idx ; 1212 nidx = tmpgb -> `gbIndex (); 1213 BBox `gb ( tmpgb -> `gbBBox ( v , ovp )); 1214 `gdbAlignBBox ( gk , gb , ignmt ); 1215 i( sb [ sidx ]. `emy (){ sb[sidx] = gb ; oidx [sidx] = nidx ; } 1216 i( oidx [ sidx ] = nidx && gb . `mgab ( sb [sidx], ovp )) { 1217 #ifde DEBUG_PRINT_GF_RG 1218 comm_rvi :: `log () << "GF_Recompose::SendInfo " 1219 << "[Mgg: " << sb [ sidx ] << " & " << gb << " ]" 1220 << dl ). `ush (); 1222 sb [ sidx ] + gb ; 1225 tmpid = wowr * vs * + dt [newowner]; 1226 dbbox [ tmpid ] = sb [ sidx ]; 1227 dsize [ tmpid ] = nems *( ACE_GFTy )* sb [ sidx ]. `size (); 1228 ddex [ tmpid ] = idx ; 1229 rcvdex [ tmpid ] = oidx [ sidx ]; 1230 dv [ tmpid ] = l ; 1232 #ifde DEBUG_PRINT_GF_RG 1233 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ wowr ] << "]" 1234 << "[To:" << wowr << "]" 1235 << "[BB:" << dbbox [ tmpid ] << "]" 1236 << "[Sz:" << dsize [ tmpid ] << "]" 1237 << "[Si:" << ddex [ tmpid ] << "]" 1238 << "[Ri:" << rcvdex [ tmpid ] << "]" 1239 << "[Sl:" << dv [ tmpid ] << "]" 1240 << dl ). `ush (); 1243 dt [ wowr ]++; 1245 i( has_shadow = ACETrue ) { 1246 cڡ BBox sbb = `crn ( sb [ sidx ], shadow ); 1247 dbbox [ tmpid +1] = sbb ; 1248 dsize [ tmpid +1] = nems *( ACE_GFTy )* sbb . `size (); 1249 ddex [ tmpid +1] = idx ; 1250 rcvdex [ tmpid +1] = oidx [ sidx ]; 1251 dv [ tmpid +1] = l ; 1253 #ifde DEBUG_PRINT_GF_RG 1254 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ wowr ] << "]" 1255 << "[To:" << wowr << "]" 1256 << "[BB:" << dbbox [ tmpid +1] << "]" 1257 << "[Sz:" << dsize [ tmpid +1] << "]" 1258 << "[Si:" << ddex [ tmpid +1] << "]" 1259 << "[Ri:" << rcvdex [ tmpid +1] << "]" 1260 << "[Sl:" << dv [ tmpid +1] << "]" 1261 << dl ). `ush (); 1264 dt [ wowr ]++; 1266 sb [ sidx ] = gb ; 1267 oidx [ sidx ] = nidx ; 1272  p =0;p< um ;p++) { 1273  l =0;l< vs ;l++) { 1274  m =0;m< omdex ;m++) { 1275 sidx = p * vs * omdex + l *omdex + m ; 1276 i(! sb [ sidx ]. `emy ()) { 1277 tmpid = p * vs * + dt [p]; 1278 dbbox [ tmpid ] = sb [ sidx ]; 1279 dsize [ tmpid ] = nems *( ACE_GFTy )* sb [ sidx ]. `size (); 1280 ddex [ tmpid ] = m ; 1281 rcvdex [ tmpid ] = oidx [ sidx ]; 1282 dv [ tmpid ] = l ; 1284 #ifde DEBUG_PRINT_GF_RG 1285 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ p ] << "]" 1286 << "[To:" << p << "]" 1287 << "[BB:" << dbbox [ tmpid ] << "]" 1288 << "[Sz:" << dsize [ tmpid ] << "]" 1289 << "[Si:" << ddex [ tmpid ] << "]" 1290 << "[Ri:" << rcvdex [ tmpid ] << "]" 1291 << "[Sl:" << dv [ tmpid ] << "]" 1292 << dl ). `ush (); 1295 dt [ p ]++; 1296 i( has_shadow = ACETrue ) { 1297 cڡ BBox sbb = `crn ( sb [ sidx ], shadow ); 1298 dbbox [ tmpid +1] = sbb ; 1299 dsize [ tmpid +1] = nems *( ACE_GFTy )* sbb . `size (); 1300 ddex [ tmpid +1] = m ; 1301 rcvdex [ tmpid +1] = oidx [ sidx ]; 1302 dv [ tmpid +1] = l ; 1304 #ifde DEBUG_PRINT_GF_RG 1305 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ p ] << "]" 1306 << "[To:" << p << "]" 1307 << "[BB:" << dbbox [ tmpid +1] << "]" 1308 << "[Sz:" << dsize [ tmpid +1] << "]" 1309 << "[Si:" << ddex [ tmpid +1] << "]" 1310 << "[Ri:" << rcvdex [ tmpid +1] << "]" 1311 << "[Sl:" << dv [ tmpid +1] << "]" 1312 << dl ). `ush (); 1315 dt [ p ]++; 1317 sb [ sidx ]. `my (); 1323  s = 0; 1324  off = 0; 1325  t =0;t< times ;t++) { 1326 i(! dgdb [ t ]) ; 1327  p =0;p< um ;p++) { 1328 i( p = me ) ; 1329 i( dt [ p ] == 0) ; 1330 off = p * vs * ; 1331 GridDaBuck < ACE_GFTy > * gdbkt = 1332 w GridDaBuck < ACE_GFTy >( dt [ p ],( dsize + off ), ACEPacked ); 1333 s = 0; 1334  s < dt [ p ]) { 1335 #ifde DEBUG_PRINT 1336 `as ( dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]); 1338 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1339 ACEA , ACE_Ma , ACENu , dbbox [ off + s ],* gdbkt ,s); 1340 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1342 #ifde DEBUG_PRINT_GF_RG 1343 comm_rvi :: `log () << "GF_Recompose::Sending" 1344 << * gdbkt -> `hd ( s ) 1345 << dl ). `ush (); 1348 s ++; 1349 i( has_shadow = ACETrue ) { 1350 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1351 ACEA , ACE_Shadow , ACENu , dbbox [ off + s ],* gdbkt ,s); 1352 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1354 #ifde DEBUG_PRINT_GF_RG 1355 comm_rvi :: `log () << "GF_Recompose::Sending" 1356 << * gdbkt -> `hd ( s ) 1357 << dl ). `ush (); 1360 s ++; 1363 gt -> `nd (( ACEDaTag | t ), gdbkt , p ); 1367 #ifde DEBUG_PRINT_GF_RG 1368 comm_rvi :: `log () << "\n************* Send List *************\n" 1369 << i 1371 ). `ush (); 1381 i( sb de [] sb; 1382 i( oidx de [] stoidx; 1386 `GridFuni (1)< ACE_GFTy >* geme = 1387 ( `GridFuni (1)< ACE_GFTy >* dagh . gi [ me_ag ]; 1389 = geme ->slen; 1390 dsize = geme ->sndsize; 1391 dbbox = geme ->sndbbox; 1392 ddex = geme ->sndindex; 1393 rcvdex = geme ->rcvindex; 1394 dv = geme ->sndlevel; 1395 dt = geme ->sndcnt; 1397  s = 0; 1398  off = 0; 1400  t =0;t< times ;t++) { 1401 i(! dgdb [ t ]) ; 1402  p =0;p< um ;p++) { 1403 i( p = me ) ; 1404 i( dt [ p ] == 0) ; 1405 off = p * vs * ; 1406 GridDaBuck < ACE_GFTy > * gdbkt = 1407 w GridDaBuck < ACE_GFTy >( dt [ p ],( dsize + off ), ACEPacked ); 1408 s = 0; 1409  s < dt [ p ]) { 1410 #ifde DEBUG_PRINT 1411 `as ( dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]); 1413 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1414 ACEA , ACE_Ma , ACENu , dbbox [ off + s ],* gdbkt ,s); 1415 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1417 #ifde DEBUG_PRINT_GF_RG 1418 comm_rvi :: `log () << "GF_Recompose::Sending" 1419 << * gdbkt -> `hd ( s ) 1420 << dl ). `ush (); 1423 s ++; 1424 i( has_shadow = ACETrue ) { 1425 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1426 ACEA , ACE_Shadow , ACENu , dbbox [ off + s ],* gdbkt ,s); 1427 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1429 #ifde DEBUG_PRINT_GF_RG 1430 comm_rvi :: `log () << "GF_Recompose::Sending" 1431 << * gdbkt -> `hd ( s ) 1432 << dl ). `ush (); 1435 s ++; 1438 gt -> `nd (( ACEDaTag | t ), gdbkt , p ); 1442 #ifde DEBUG_PRINT_GF_RG 1443 comm_rvi :: `log () << "\n************* Send List *************\n" 1444 << i 1446 ). `ush (); 1449 dsize = 0; 1450 dbbox = 0; 1451 ddex = 0; 1452 rcvdex = 0; 1453 dv = 0; 1454 dt = 0; 1461 `GridFuni (1)< ACE_GFTy >* geme = 0; 1462 i( me_ag ! ACENu ) { 1463 geme = ( `GridFuni (1)< ACE_GFTy >* dagh . gi [ me_ag ]; 1465 cڡ `GridDaBlock (1)< ACE_GFTy >* gdbtm = 0; 1467 `GridDaBlock (1)< ACE_GFTy >* gdbeu = 0; 1469  l =0;l< vs ;l++) { 1470 v = dagh . `vnum ( l ); 1471 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1472 cڡ  = dagh . `gCutTime ( l ); 1473  tmi = ACENu ; 1476  GridBox * mgb = lgbl -> `f ();mgb;mgbgbl-> `xt ()) { 1477 i(! mgb -> `gbCڏs ( v )) ; 1478 i = mgb -> `gbIndex (); 1479 i( me_ag ! ACENu && 1480 geme && 1481 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1482 && geme -> gdb [ tmi ][ l ]) 1483 gdbtm = geme -> gdb [ tmi ][ l ][ i ]; 1484 gdbtm = 0; 1486 #ide ACE_NO_REUSE_GDB 1487 #ifde DEBUG_PRINT_GF_RG 1488 `as ( li . `absmches ( mgb -> `gbBBox ( v ),lev) <= 1); 1490  ci = li . `absdex ( mgb -> `gbBBox ( v ),lev); 1493  t =0;t< times ;t++) { 1494 i(! gdb [ t ] || !gdb[t][ l ]) ; 1495 i(! gdb [ t ][ l ][ i ]) { 1497 #ide ACE_NO_REUSE_GDB 1498 i( ci ! ACENu && 1499 dgdb [ t ] && oldgdb[t][ l ] && oldgdb[t][l][ ci ]) 1500 gdbeu = dgdb [ t ][ l ][ ci ]; 1503 gdbeu = 0; 1505 gdb [ t ][ l ][ i ] = w `GridDaBlock (1)< ACE_GFTy >( gfid , dagh , * gt , 1506 is , 1507 i , * mgb , 1508 nems , 1509 t , v , 1510 bwidth , 1511 extghowidth , 1512 ovp , 1513 a__d , 1514 ignmt , mdex , 1515 `comm ( t , l ), 1516 has_shadow , 1517 _ag , 1518 `uxes ( t , l ), 1519 gdbtm , 1520 gdbeu ); 1521 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ i ]; 1529 i( `comm ()) { 1530 `GF_GhGhoCommInfo (); 1531 `GF_SUpGhoCommSvs (); 1533 i( ` ()) { 1534 `GF_GhPtCommInfo (); 1535 `GF_SUpPtCommSvs (); 1537 i( `uxes ()) { 1538 `GF_GhFluxCommInfo (); 1539 `GF_SUpFluxCommSvs (); 1541 `GF_SUpGDBPors (); 1548 #ifde DEBUG_PRINT_GF_RG 1549 comm_rvi :: `log () << "\n************* Overlap List *************\n" 1550 << i 1552 ). `ush (); 1555  l =0;l< vs ;l++) { 1556 cڡ  v = dagh . `vnum ( l ); 1558 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1559 cڡ  i = ( times ==1? ACENu : 1560 `dagh_timedex ( dagh . `gPviousTime ( l ),l); 1561 cڡ  i = ( times ==1? ACENu : 1562 `dagh_timedex ( dagh . `gNextTime ( l ),l); 1563 cڡ  t = dagh . `time ( l ); 1565  m =0;m< times ;mpt++) { 1566 i(! gdb [ m ] || !gdb[m][ l ]) ; 1568 i( m == 0) { 1569 t = i ; 1571 i( m < time__d ) { 1572 t = time__d - m ; 1575 t = m ; 1577 i( l > 0 i = 0 ; i < ngth ; i++) { 1578 i(! gdb [ t ] || 1579 ! gdb [ t ][ l ] || 1580 ! gdb [ t ][ l ][ i ] || 1581 ! gdb [ t ][ l ][ i ]-> `dexme (i) || 1582 gdb [ t ][ l ][ i ]-> `has_ud ()) ; 1585 i( l > 0 && gdb [ t ][l-1] && gdb[t][l-1][ i ]) { 1586 i( pfunc && ( `g (|| `shadow_g ())) { 1588  mygc = 0; ACE_GFTy mygs [1]; 1589 i( `g ()) { 1590 (* pfunc )( `FORTRAN_ARGS ( gdb [ t ][ l -1][ i ]-> mage . da ), 1591 `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> mage . da ), 1592 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> mage . da ), 1593 #ifde ACEVeGridFuni 1594 vgfag , 1596 mygs ,& mygc ); 1598 i( has_shadow = ACETrue && `shadow_g ()) { 1599 (* pfunc )( `FORTRAN_ARGS ( gdb [ t ][ l -1][ i ]-> shage -> da ), 1600 `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> shage -> da ), 1601 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> shage -> da ), 1602 #ifde ACEVeGridFuni 1603 vgfag , 1605 mygs ,& mygc ); 1608 i( `timeީe (|| `shadow_timeީe ()) { 1610 i( t = i &&t! ACENu && i >ti && 1611 gdb [ i ] && gdb[i][ l ][ i ]) { 1615 cڡ ac = 1.0/ dagh . `fe (); 1616 cڡ emac = 1.0- ac ; 1617 i( func ) { 1618 i( `timeީe ()) { 1619 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1620 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1621 & emac , 1622 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1623 & ac , 1624 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> mage . da ) 1625 #ifde ACEVeGridFuni 1626 , vgfag 1630 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1631 cڡ shac = 1.0/ dagh . `fe (); 1632 cڡ emshac = 1.0 - shac ; 1633 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1634 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1635 & emshac , 1636 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1637 & shac , 1638 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> shage -> da ) 1639 #ifde ACEVeGridFuni 1640 , vgfag 1646 i( `timeީe ()) { 1647 gdb [ i ][ l ][ i ]-> mage . da . `l_ ( 1648 gdb [ i ][ l ][ i ]-> mage . da ,(1.0- ac ), 1649 gdb [ i ][ l ][ i ]-> mage . da , ac ); 1651 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1652 cڡ shac = 1.0/ dagh . `fe (); 1653 gdb [ i ][ l ][ i ]-> shage -> da . `l_ ( 1654 gdb [ i ][ l ][ i ]-> shage -> da ,(1.0- shac ), 1655 gdb [ i ][ l ][ i ]-> shage -> da , shac ); 1661 i( i ! ACENu && t =&&t> i && 1662 gdb [ i ] && gdb[i][ l ][ i ]) { 1663 cڡ ac = 1.0/ dagh . `fe (); 1664 cڡ emac = 1.0 - ac ; 1665 i( func ) { 1666 i( `timeީe ()) { 1667 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1668 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1669 & emac , 1670 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1671 & ac , 1672 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> mage . da ) 1673 #ifde ACEVeGridFuni 1674 , vgfag 1678 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1679 cڡ shac = 1.0/ dagh . `fe (); 1680 cڡ emshac = 1.0 - shac ; 1681 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1682 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1683 & emshac , 1684 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1685 & shac , 1686 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> shage -> da ) 1687 #ifde ACEVeGridFuni 1688 , vgfag 1694 i( `timeީe ()) { 1695 gdb [ i ][ l ][ i ]-> mage . da . `l_ ( 1696 gdb [ i ][ l ][ i ]-> mage . da ,(1.0- ac ), 1697 gdb [ i ][ l ][ i ]-> mage . da , ac ); 1699 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1700 cڡ shac = 1.0/ dagh . `fe (); 1701 gdb [ i ][ l ][ i ]-> shage -> da . `l_ ( 1702 gdb [ i ][ l ][ i ]-> shage -> da ,(1.0- shac ), 1703 gdb [ i ][ l ][ i ]-> shage -> da , shac ); 1709 i( l > 0 && !( gdb [ t ][l-1] && gdb[t][l-1][ i ])) { 1710 `as (0); 1715  tmpgb = i . `f (); 1716 tmpgb ;tmpgb= i . `xt ()) { 1717 #ifde DEBUG_PRINT 1718 `as ( tmpgb -> `gbOwr (= me ); 1720 i( tmpgb -> `gbCڏs ( v )) { 1721 oi = tmpgb -> `gbIndex (); 1723 #ifde DEBUG_PRINT_GF_RG 1724 comm_rvi :: `log () << "OVERLAP INDEX MATCHES : " 1725 << lgbl -> `mches ( tmpgb -> `gbBBox ( v ),v<< dl ). `ush (); 1727  ni = lgbl -> `dex ( tmpgb -> `gbBBox ( v ),lev); 1728 i( ni = ACENu || ! gdb [ t ][ l ][ni] || gdb[t][l][ni]-> `has_ud ()) 1730 #ifde DEBUG_PRINT 1731 `as ( dgdb [ t ][ l ][ oi ] && 1732 dgdb [ t ][ l ][ oi ]-> mage . da . `ok_to_dex ()); 1733 i( has_shadow = ACETrue ) 1734 `as ( dgdb [ t ][ l ][ oi ] && 1735 dgdb [ t ][ l ][ oi ]-> shage -> da . `ok_to_dex ()); 1737 gdb [ t ][ l ][ ni ]-> mage . da . `cy ( 1738 dgdb [ t ][ l ][ oi ]-> mage . da ); 1739 i( has_shadow = ACETrue ) 1740 gdb [ t ][ l ][ ni ]-> shage -> da . `cy ( 1741 dgdb [ t ][ l ][ oi ]-> shage -> da ); 1746 i( comm_rvi :: `d (&& um > 1) { 1747  p =0;< um ;++) { 1748 i( da_cv_rv [ p ] && da_cv_rv[p][ t ]) { 1749 i(! da_cv_rv [ p ][ t ]-> `ived ()) 1750 comm_rvi :: `rve (* da_cv_rv [ p ][ t ]-> `q ()); 1751 de da_cv_rv [ p ][ t ]; 1752 da_cv_rv [ p ][ t ] = 0; 1755 `GF_RdDa ( t , l ); 1773  t =0;t< times ;t++) { 1774 i(! gdb [ t ] || !gdb[t][ l ]) ; 1775 i( `comm ()) { 1776 cڡ  um = `dagh_timevue ( t , l ); 1777 `GF_Sync ( um , l , ACE_Ma ); 1778 i( has_shadow = ACETrue `GF_Sync ( um , l , ACE_Shadow ); 1783 gt -> `tdab (); 1786  p =0;p< um ;p++) { 1787 i( da_cv_rv [ p ]) { 1788 de [] da_cv_rv [ p ]; 1789 da_cv_rv [ p ] = 0; 1795 i( dgdb ) { 1796  t =0;t< times ;t++) { 1797 i( dgdb [ t ]) { 1798  l =0;l< vs ;l++) { 1799 i( dgdb [ t ][ l ]) { 1800  i =0;i< dngth ;i++) { 1801 i( dgdb [ t ][ l ][ i ] && oldgdb[t][l][i]-> `dexme (i)){ 1802  tmpi = i +1; 1803 tmpi < dngth && dgdb [ t ][ l ][tmpi] && oldgdb[t][l][tmpi]-> `dexme ( i ); 1804 tmpi ++) 1805 dgdb [ t ][ l ][ tmpi ] = 0; 1806 de dgdb [ t ][ l ][ i ]; oldgdb[t][l][i] = 0; 1809 de [] dgdb [ t ][ l ]; 1812 de [] dgdb [ t ]; 1815 de [] dgdb ; 1819 #ifde ACEVeGridFuni 1820 i( vgfag de [] vgfflag; 1822 } } 1827 gme < ass gACE_GFTy > 1828  GridFuni (1)< gACE_GFTy >:: $GF_CheckpotRecompo () 1831 cڡ  me = comm_rvi :: `oc_me (); 1832 cڡ  um = comm_rvi :: `oc_num (); 1834  t =0, l =0, i =0; 1836 `GridDaBlock (1)< ACE_GFTy > **** dgdb = gdb ; gdb = 0; 1837 cڡ  dngth = ngth ;ength = 0; 1839 gt -> `ab (); 1841 cڡ  mdex = dagh . `maxdex ()+1; 1842 cڡ  vs = dagh . `tٮvs (); 1843 cڡ  times = 2* time__d +1; 1845 GridBoxLi * lgbl = dagh . `lgbl (); 1846 ngth = lgbl -> `maxdex ()+1; 1848 cڡ  ev = dagh . `crv (); 1849 cڡ  has_shadow = `shadow (); 1850 cڡ  shadow = dagh . `daghshadow (); 1852 gdb = w `GridDaBlock (1)< ACE_GFTy > ***[ times ]; 1853  t =0;t< times ;t++) { 1854 gdb [ t ] = ( `GridDaBlock (1)< ACE_GFTy > *** NULL ; 1855 i( dgdb [ t ]) { 1856 gdb [ t ] = w `GridDaBlock (1)< ACE_GFTy > **[ vs ]; 1857  l =0;l< vs ;l++) { 1858 gdb [ t ][ l ] = w `GridDaBlock (1)< ACE_GFTy > *[ ngth ]; 1859  i =0;i< ngth ;i++) 1860 gdb [ t ][ l ][ i ] = ( `GridDaBlock (1)< ACE_GFTy > * NULL ; 1866 `GF_DeGhoCommInfo (); 1867 `GF_DeDaCommInfo (); 1868 `GF_DePtCommInfo (); 1869 `GF_DeFluxCommInfo (); 1872 i( dgdb ) { 1873  t =0;t< times ;t++) { 1874 i( dgdb [ t ]) { 1875  l =0;l< vs ;l++) { 1876 i( dgdb [ t ][ l ]) { 1877  i =0;i< dngth ;i++) 1878 i( dgdb [ t ][ l ][ i ] && oldgdb[t][l][i]-> `dexme (i)) { 1879  tmpi = i +1; 1882 tmpi < dngth && dgdb [ t ][ l ][tmpi] && oldgdb[t][l][tmpi]-> `dexme ( i ); 1883 tmpi ++) 1884 dgdb [ t ][ l ][ tmpi ] = 0; 1885 de dgdb [ t ][ l ][ i ]; oldgdb[t][l][i] = 0; 1887 de [] dgdb [ t ][ l ]; oldgdb[t][l] = 0; 1890 de [] dgdb [ t ]; oldgdb[t] = 0; 1893 de [] dgdb ; oldgdb = 0; 1898 `GridFuni (1)< ACE_GFTy >* geme = 0; 1899 i( me_ag ! ACENu ) { 1900 geme = ( `GridFuni (1)< ACE_GFTy >* dagh . gi [ me_ag ]; 1902 cڡ `GridDaBlock (1)< ACE_GFTy >* gdbtm = 0; 1904  GridBox * tmpgb = 0; 1905  idx = 0; 1906  l =0;l< vs ;l++) { 1907 cڡ  v = dagh . `vnum ( l ); 1908 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1909 cڡ  = dagh . `gCutTime ( l ); 1910  tmi = ACENu ; 1912  tmpgb = lgbl -> `f ();tmpgb;tmpgbgbl-> `xt ()) { 1913 i(! tmpgb -> `gbCڏs ( v )) ; 1914 idx = tmpgb -> `gbIndex (); 1915 i( me_ag ! ACENu && 1916 geme && 1917 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1918 && geme -> gdb [ tmi ][ l ]) 1919 gdbtm = geme -> gdb [ tmi ][ l ][ idx ]; 1920 gdbtm = 0; 1921  t =0;t< times ;t++) { 1922 i(! gdb [ t ] || !gdb[t][ l ]) ; 1924 i(! gdb [ t ][ l ][ idx ]) { 1925 gdb [ t ][ l ][ idx ] = w `GridDaBlock (1)< ACE_GFTy >( gfid , dagh , * gt , 1926 is , 1927 idx , * tmpgb , 1928 nems , 1929 t , v , 1930 bwidth , 1931 extghowidth , 1932 ovp , 1933 a__d , 1934 ignmt , mdex , 1935 `comm ( t , l ), 1936 has_shadow , 1937 _ag , 1938 `uxes ( t , l ), 1939 gdbtm ); 1940 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1948 i( `comm ()) { 1949 `GF_GhGhoCommInfo (); 1950 `GF_SUpGhoCommSvs (); 1952 i( ` ()) { 1953 `GF_GhPtCommInfo (); 1954 `GF_SUpPtCommSvs (); 1956 i( `uxes ()) { 1957 `GF_GhFluxCommInfo (); 1958 `GF_SUpFluxCommSvs (); 1960 `GF_SUpGDBPors (); 1962 i( `checkpot () `GF_CheckpotRet (); 1964 } } 1970 gme < ass gACE_GFTy > 1971  GridFuni (1)< gACE_GFTy >:: $GF_SUpGhoCommSvs () 1973 i(! `comm ()) ; 1975 cڡ  um = comm_rvi :: `oc_num (); 1976 cڡ  me = comm_rvi :: `oc_me (); 1978 cڡ  vs = dagh . `tٮvs (); 1979 cڡ  t = vs * ACEMaxAxis * ACEMaxDs ; 1981  i =0;i< um ;i++) { 1982 i( i = me || ! gho_cv_fo [i]) ; 1983 i(! gho_cv_rv [ i ]) { 1984 gho_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 1985  c =0; c< t ; c++ gho_cv_rv [ i ][c] = 0; 1987  j =0;j< t ;j++) { 1988 i(! gho_cv_fo [ i ][ j ]) ; 1989 cڡ GF_Iai * gri = gho_cv_fo [ i ][ j ]; 1990 gho_cv_rv [ i ][ j ] = 1991 w `GridTabGhoRcv (* gt , ( ACEGhoTag | j ), gri -> tsize , i ); 1994 } } 1999 gme < ass gACE_GFTy > 2000  GridFuni (1)< gACE_GFTy >:: $GF_GhGhoCommInfo () 2002 i(! `comm ()) ; 2004 cڡ  me = comm_rvi :: `oc_me (); 2006  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2007  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2009 cڡ  um = comm_rvi :: `oc_num (); 2010 cڡ  vs = dagh . `tٮvs (); 2011 cڡ  t1 = vs * ACEMaxAxis * ACEMaxDs ; 2012 cڡ  t2 = ACEMaxAxis * ACEMaxDs ; 2013 cڡ  mdex = dagh . `maxdex ()+1; 2015 i( gho_cv_t de [] ghost_recv_cnt; 2016 gho_cv_t = w [ t1 ]; 2017  k =0;k< t1 ;k++ gho_cv_t [k] = 0; 2019 Li <> rsize ; 2020 Li <> wsize ; 2021  r =0, w =0; 2023 #ifde ACEVeGridFuni 2024 Li <> mrsize ; 2025 Li <> mwsize ; 2026  mr =0, mw =0; 2029 `GridDaBlock (1)< ACE_GFTy > * g = 0; 2030 GDB_Iai * gdbi = 0; 2032  p =0;p< um ;p++) { 2033  l =0;l< vs ;l++) { 2034  c =0;c< t2 ;c++) { 2035 cڡ  idx1 = l * t2 + c ; 2036 cڡ  idx2 = c * mdex ; 2037  i =0; i< ngth ; i++) { 2038 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2039 g = gdb [ t ][ l ][ i ]; 2040  m =0; m< mdex ; m++) { 2042 i( g -> gdb_wre_fo [ p ] && ( gdbi =g->gdb_wre_fo[p][ idx2 + m ])) { 2044 i(! gho_nd_fo [ p ]) { 2045 gho_nd_fo [ p ] = w GF_Iai * [ t1 ]; 2046  k =0;k< t1 ;k++ gho_nd_fo [ p ][k] = 0; 2048 i(! gho_nd_fo [ p ][ idx1 ]) 2049 gho_nd_fo [ p ][ idx1 ] = w GF_Iai ; 2051 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2052 gho_nd_fo [ p ][ idx1 ]-> tsize + gdhdr :: `gdbsize ( w ); 2053 #ifde ACEVeGridFuni 2054 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2055 gho_nd_fo [ p ][ idx1 ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2057 #ifde DEBUG_PRINT 2058 `as w != 0 ); 2060 wsize . `add ( w ); 2061 #ifde ACEVeGridFuni 2062 mwsize . `add ( mw ); 2066 i( g -> gdb_ad_fo [ p ] && ( gdbi =g->gdb_ad_fo[p][ idx2 + m ])) { 2068 i(! gho_cv_fo [ p ]) { 2069 gho_cv_fo [ p ] = w GF_Iai * [ t1 ]; 2070  k =0;k< t1 ;k++ gho_cv_fo [ p ][k] = 0; 2072 i(! gho_cv_fo [ p ][ idx1 ]) 2073 gho_cv_fo [ p ][ idx1 ] = w GF_Iai ; 2075 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2076 gho_cv_fo [ p ][ idx1 ]-> tsize + gdhdr :: `gdbsize ( r ); 2077 #ifde ACEVeGridFuni 2078 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2079 gho_cv_fo [ p ][ idx1 ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2081 #ifde DEBUG_PRINT 2082 `as r != 0 ); 2084 rsize . `add ( r ); 2085 #ifde ACEVeGridFuni 2086 mrsize . `add ( mr ); 2092 i( gho_nd_fo [ p ] && gho_nd_fo[p][ idx1 ]) { 2093 wsize . `y ( gho_nd_fo [ p ][ idx1 ]-> size ,gho_nd_fo[p][idx1]-> t ); 2094 #ifde ACEVeGridFuni 2095 mwsize . `y ( gho_nd_fo [ p ][ idx1 ]-> msize ,gho_nd_fo[p][idx1]-> t ); 2098 i( gho_cv_fo [ p ] && gho_cv_fo[p][ idx1 ]) { 2099 rsize . `y ( gho_cv_fo [ p ][ idx1 ]-> size ,gho_cv_fo[p][idx1]-> t ); 2100 i( p ! me gho_cv_t [ idx1 ] + gho_cv_fo [p][idx1]-> t ; 2101 #ifde ACEVeGridFuni 2102 mrsize . `y ( gho_cv_fo [ p ][ idx1 ]-> msize ,gho_cv_fo[p][idx1]-> t ); 2105 wsize . `emy (); rsize .empty(); 2106 #ifde ACEVeGridFuni 2107 mwsize . `emy (); mrsize .empty(); 2111 #ifde DEBUG_PRINT_GF_COMM 2112 comm_rvi :: `log (<< "[GF_Iai:[" << p << "]" << dl ). `ush (); 2113  k =0;k< t1 ;k++) { 2114 i( gho_cv_fo [ p ] && gho_cv_fo[p][ k ]) 2115 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2116 << * gho_cv_fo [ p ][ k ] << "]" 2117 << dl ). `ush (); 2119 comm_rvi :: `log (<< dl ). `ush (); 2120  k =0;k< t1 ;k++) { 2121 i( gho_nd_fo [ p ] && gho_nd_fo[p][ k ]) 2122 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2123 << * gho_nd_fo [ p ][ k ] << "]" 2124 << dl ). `ush (); 2126 comm_rvi :: `log (<< "]" << dl ). `ush (); 2129 } } 2134 gme < ass gACE_GFTy > 2135  GridFuni (1)< gACE_GFTy >:: $GF_SUpPtCommSvs () 2137 i(! ` ()) ; 2139 cڡ  um = comm_rvi :: `oc_num (); 2140 cڡ  me = comm_rvi :: `oc_me (); 2142 cڡ  t = dagh . `tٮvs (); 2144  i = 0; 2145  i =0;i< um ;i++) { 2146 i( i = me || ! g_cv_fo [i]) ; 2147 i(! g_cv_rv [ i ]) { 2148 g_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2149  c =0; c< t ; c++ g_cv_rv [ i ][c] = 0; 2151  j =0;j< t ;j++) { 2152 i(! g_cv_fo [ i ][ j ]) ; 2153 cڡ GF_Iai * gri = g_cv_fo [ i ][ j ]; 2154 g_cv_rv [ i ][ j ] = 2155 w `GridTabGhoRcv (* gt , ( ACEGPtTag | j ), gri -> tsize , i ); 2159  i =0;i< um ;i++) { 2160 i( i = me || ! t_cv_fo [i]) ; 2161 i(! t_cv_rv [ i ]) { 2162 t_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2163  c =0; c< t ; c++ t_cv_rv [ i ][c] = 0; 2165  j =0;j< t ;j++) { 2166 i(! t_cv_fo [ i ][ j ]) ; 2167 cڡ GF_Iai * gri = t_cv_fo [ i ][ j ]; 2168 t_cv_rv [ i ][ j ] = 2169 w `GridTabGhoRcv (* gt , ( ACESPtTag | j ), gri -> tsize , i ); 2172 } } 2177 gme < ass gACE_GFTy > 2178  GridFuni (1)< gACE_GFTy >:: $GF_GhGPtCommInfo () 2180 i(! ` ()) ; 2182 cڡ  me = comm_rvi :: `oc_me (); 2184  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2185  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2187 cڡ  um = comm_rvi :: `oc_num (); 2188 cڡ  vs = dagh . `tٮvs (); 2189 cڡ  mdex = dagh . `maxdex ()+1; 2191 Li <> rsize ; 2192 Li <> wsize ; 2193  r =0, w =0; 2195 #ifde ACEVeGridFuni 2196 Li <> mrsize ; 2197 Li <> mwsize ; 2198  mr =0, mw =0; 2201 `GridDaBlock (1)< ACE_GFTy >* g = 0; 2202 GDB_Iai * gdbi = 0; 2204  p =0;p< um ;p++) { 2205  l =0;l< vs ;l++) { 2206 cڡ  idx = p * mdex ; 2207  i =0; i< ngth ; i++) { 2208 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2209 g = gdb [ t ][ l ][ i ]; 2210  m =0; m< mdex ; m++) { 2212 i( g -> gdb_g_wre_fo && ( gdbi =g->gdb_g_wre_fo[ idx + m ])) { 2214 i(! g_nd_fo [ p ]) { 2215 g_nd_fo [ p ] = w GF_Iai * [ vs ]; 2216  k =0;k< vs ;k++ g_nd_fo [ p ][k] = 0; 2218 i(! g_nd_fo [ p ][ l ]) 2219 g_nd_fo [ p ][ l ] = w GF_Iai ; 2221 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2222 g_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2223 #ifde ACEVeGridFuni 2224 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2225 g_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2227 #ifde DEBUG_PRINT 2228 `as w != 0 ); 2230 wsize . `add ( w ); 2231 #ifde ACEVeGridFuni 2232 mwsize . `add ( mw ); 2236 i( g -> gdb_g_ad_fo && ( gdbi =g->gdb_g_ad_fo[ idx + m ])) { 2238 i(! g_cv_fo [ p ]) { 2239 g_cv_fo [ p ] = w GF_Iai * [ vs ]; 2240  k =0;k< vs ;k++ g_cv_fo [ p ][k] = 0; 2242 i(! g_cv_fo [ p ][ l ]) 2243 g_cv_fo [ p ][ l ] = w GF_Iai ; 2245 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2246 g_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2247 #ifde ACEVeGridFuni 2248 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2249 g_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2251 #ifde DEBUG_PRINT 2252 `as r != 0 ); 2254 rsize . `add ( r ); 2255 #ifde ACEVeGridFuni 2256 mrsize . `add ( mr ); 2262 i( g_nd_fo [ p ] && g_nd_fo[p][ l ]) { 2263 wsize . `y ( g_nd_fo [ p ][ l ]-> size ,g_nd_fo[p][l]-> t ); 2264 #ifde ACEVeGridFuni 2265 mwsize . `y ( g_nd_fo [ p ][ l ]-> msize ,g_nd_fo[p][l]-> t ); 2268 i( g_cv_fo [ p ] && g_cv_fo[p][ l ]) { 2269 rsize . `y ( g_cv_fo [ p ][ l ]-> size ,g_cv_fo[p][l]-> t ); 2270 #ifde ACEVeGridFuni 2271 mrsize . `y ( g_cv_fo [ p ][ l ]-> msize ,g_cv_fo[p][l]-> t ); 2274 wsize . `emy (); rsize .empty(); 2275 #ifde ACEVeGridFuni 2276 mwsize . `emy (); mrsize .empty(); 2279 #ifde DEBUG_PRINT_GF_COMM 2280 comm_rvi :: `log (<< "[GF_Iai(GhPt):[" << p << "]" << dl ). `ush (); 2281  k =0;k< vs ;k++) { 2282 i( g_cv_fo [ p ] && g_cv_fo[p][ k ]) 2283 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2284 << * g_cv_fo [ p ][ k ] << "]" 2285 << dl ). `ush (); 2287 comm_rvi :: `log (<< dl ). `ush (); 2288  k =0;k< vs ;k++) { 2289 i( g_nd_fo [ p ] && g_nd_fo[p][ k ]) 2290 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2291 << * g_nd_fo [ p ][ k ] << "]" 2292 << dl ). `ush (); 2294 comm_rvi :: `log (<< "]" << dl ). `ush (); 2297 } } 2299 gme < ass gACE_GFTy > 2300  GridFuni (1)< gACE_GFTy >:: $GF_GhSPtCommInfo () 2302 i(! ` ()) ; 2304 cڡ  me = comm_rvi :: `oc_me (); 2306  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2307  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2309 cڡ  um = comm_rvi :: `oc_num (); 2310 cڡ  vs = dagh . `tٮvs (); 2311 cڡ  mdex = dagh . `maxdex ()+1; 2313 Li <> rsize ; 2314 Li <> wsize ; 2315  r =0, w =0; 2317 #ifde ACEVeGridFuni 2318 Li <> mrsize ; 2319 Li <> mwsize ; 2320  mr =0, mw =0; 2323 `GridDaBlock (1)< ACE_GFTy >* g = 0; 2324 GDB_Iai * gdbi = 0; 2326  p =0;p< um ;p++) { 2327  l =0;l< vs ;l++) { 2328 cڡ  idx = p * mdex ; 2329  i =0; i< ngth ; i++) { 2330 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2331 g = gdb [ t ][ l ][ i ]; 2332  m =0; m< mdex ; m++) { 2334 i( g -> gdb_t_wre_fo && ( gdbi =g->gdb_t_wre_fo[ idx + m ])) { 2336 i(! t_nd_fo [ p ]) { 2337 t_nd_fo [ p ] = w GF_Iai * [ vs ]; 2338  k =0;k< vs ;k++ t_nd_fo [ p ][k] = 0; 2340 i(! t_nd_fo [ p ][ l ]) 2341 t_nd_fo [ p ][ l ] = w GF_Iai ; 2343 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2344 t_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2345 #ifde ACEVeGridFuni 2346 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2347 t_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2349 #ifde DEBUG_PRINT 2350 `as w != 0 ); 2352 wsize . `add ( w ); 2353 #ifde ACEVeGridFuni 2354 mwsize . `add ( mw ); 2358 i( g -> gdb_t_ad_fo && ( gdbi =g->gdb_t_ad_fo[ idx + m ])) { 2360 i(! t_cv_fo [ p ]) { 2361 t_cv_fo [ p ] = w GF_Iai * [ vs ]; 2362  k =0;k< vs ;k++ t_cv_fo [ p ][k] = 0; 2364 i(! t_cv_fo [ p ][ l ]) 2365 t_cv_fo [ p ][ l ] = w GF_Iai ; 2367 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2368 t_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2369 #ifde ACEVeGridFuni 2370 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2371 t_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2373 #ifde DEBUG_PRINT 2374 `as r != 0 ); 2376 rsize . `add ( r ); 2377 #ifde ACEVeGridFuni 2378 mrsize . `add ( mr ); 2384 i( t_nd_fo [ p ] && s_nd_fo[p][ l ]) { 2385 wsize . `y ( t_nd_fo [ p ][ l ]-> size ,t_nd_fo[p][l]-> t ); 2386 #ifde ACEVeGridFuni 2387 mwsize . `y ( t_nd_fo [ p ][ l ]-> msize ,t_nd_fo[p][l]-> t ); 2390 i( t_cv_fo [ p ] && s_cv_fo[p][ l ]) { 2391 rsize . `y ( t_cv_fo [ p ][ l ]-> size ,t_cv_fo[p][l]-> t ); 2392 #ifde ACEVeGridFuni 2393 mrsize . `y ( t_cv_fo [ p ][ l ]-> msize ,t_cv_fo[p][l]-> t ); 2396 wsize . `emy (); rsize .empty(); 2397 #ifde ACEVeGridFuni 2398 mwsize . `emy (); mrsize .empty(); 2401 #ifde DEBUG_PRINT_GF_COMM 2402 comm_rvi :: `log (<< "[GF_Iai(SPt):[" << p << "]" << dl ). `ush (); 2403  k =0;k< vs ;k++) { 2404 i( t_cv_fo [ p ] && s_cv_fo[p][ k ]) 2405 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2406 << * t_cv_fo [ p ][ k ] << "]" 2407 << dl ). `ush (); 2409 comm_rvi :: `log (<< dl ). `ush (); 2410  k =0;k< vs ;k++) { 2411 i( t_nd_fo [ p ] && s_nd_fo[p][ k ]) 2412 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2413 << * t_nd_fo [ p ][ k ] << "]" 2414 << dl ). `ush (); 2416 comm_rvi :: `log (<< "]" << dl ). `ush (); 2419 } } 2425 gme < ass gACE_GFTy > 2426  GridFuni (1)< gACE_GFTy >:: $GF_SUpFluxCommSvs () 2428 i(! `uxes ()) ; 2430 cڡ  um = comm_rvi :: `oc_num (); 2431 cڡ  me = comm_rvi :: `oc_me (); 2433 cڡ  t = dagh . `tٮvs (); 2435  i =0;i< um ;i++) { 2436 i( i = me || ! ux_cv_fo [i]) ; 2437 i(! ux_cv_rv [ i ]) { 2438 ux_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2439  c =0; c< t ; c++ ux_cv_rv [ i ][c] = 0; 2441  j =0;j< t ;j++) { 2442 i(! ux_cv_fo [ i ][ j ]) ; 2443 cڡ GF_Iai * gri = ux_cv_fo [ i ][ j ]; 2444 ux_cv_rv [ i ][ j ] = 2445 w `GridTabGhoRcv (* gt , ( ACEFluxTag | j ), gri -> tsize , i ); 2448 } } 2453 gme < ass gACE_GFTy > 2454  GridFuni (1)< gACE_GFTy >:: $GF_GhFluxCommInfo () 2456 i(! `uxes ()) ; 2458 cڡ  me = comm_rvi :: `oc_me (); 2460  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2461  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2463 cڡ  mynk = 1; 2464 cڡ  um = comm_rvi :: `oc_num (); 2465 cڡ  vs = dagh . `tٮvs (); 2466 cڡ  mdex = dagh . `maxdex ()+1; 2467 cڡ  t1 = 2* mynk ; 2468 cڡ  t2 = t1 * mdex ;; 2470 Li <> rsize ; 2471 Li <> wsize ; 2472  r =0, w =0; 2474 #ifde ACEVeGridFuni 2475 Li <> mrsize ; 2476 Li <> mwsize ; 2477  mr =0, mw =0; 2480 `GridDaBlock (1)< ACE_GFTy > * g = 0; 2481 GDB_Iai * gdbi = 0; 2483  idx = 0; 2484  p =0;p< um ;p++) { 2485  l =0;l< vs ;l++) { 2486  i =0; i< ngth ; i++i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][i]) { 2487 g = gdb [ t ][ l ][ i ]; 2488  c =0;c< mynk ;c++) { 2489  m =0; m< mdex ; m++) { 2491 idx = p * t2 + 2* c * mdex ; 2493 i( g -> gdb_ux_wre_fo && ( gdbi =g->gdb_ux_wre_fo[ idx + m ])) { 2495 i(! ux_nd_fo [ p ]) { 2496 ux_nd_fo [ p ] = w GF_Iai * [ vs ]; 2497  k =0;k< vs ;k++ ux_nd_fo [ p ][k] = 0; 2499 i(! ux_nd_fo [ p ][ l ]) 2500 ux_nd_fo [ p ][ l ] = w GF_Iai ; 2502 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2503 ux_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2504 #ifde ACEVeGridFuni 2505 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2506 ux_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2508 #ifde DEBUG_PRINT 2509 `as w != 0 ); 2511 wsize . `add ( w ); 2512 #ifde ACEVeGridFuni 2513 mwsize . `add ( mw ); 2517 i( g -> gdb_ux_ad_fo && ( gdbi =g->gdb_ux_ad_fo[ idx + m ])) { 2519 i(! ux_cv_fo [ p ]) { 2520 ux_cv_fo [ p ] = w GF_Iai * [ vs ]; 2521  k =0;k< vs ;k++ ux_cv_fo [ p ][k] = 0; 2523 i(! ux_cv_fo [ p ][ l ]) 2524 ux_cv_fo [ p ][ l ] = w GF_Iai ; 2526 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2527 ux_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2528 #ifde ACEVeGridFuni 2529 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2530 ux_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2532 #ifde DEBUG_PRINT 2533 `as r != 0 ); 2535 rsize . `add ( r ); 2536 #ifde ACEVeGridFuni 2537 mrsize . `add ( mr ); 2540 idx = p * t2 + (2* c +1)* mdex ; 2542 i( g -> gdb_ux_wre_fo && ( gdbi =g->gdb_ux_wre_fo[ idx + m ])) { 2544 i(! ux_nd_fo [ p ]) { 2545 ux_nd_fo [ p ] = w GF_Iai * [ vs ]; 2546  k =0;k< vs ;k++ ux_nd_fo [ p ][k] = 0; 2548 i(! ux_nd_fo [ p ][ l ]) 2549 ux_nd_fo [ p ][ l ] = w GF_Iai ; 2551 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2552 ux_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2553 #ifde ACEVeGridFuni 2554 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2555 ux_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2557 #ifde DEBUG_PRINT 2558 `as w != 0 ); 2560 wsize . `add ( w ); 2561 #ifde ACEVeGridFuni 2562 mwsize . `add ( mw ); 2566 i( g -> gdb_ux_ad_fo && ( gdbi =g->gdb_ux_ad_fo[ idx + m ])) { 2568 i(! ux_cv_fo [ p ]) { 2569 ux_cv_fo [ p ] = w GF_Iai * [ vs ]; 2570  k =0;k< vs ;k++ ux_cv_fo [ p ][k] = 0; 2572 i(! ux_cv_fo [ p ][ l ]) 2573 ux_cv_fo [ p ][ l ] = w GF_Iai ; 2575 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2576 ux_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2577 #ifde ACEVeGridFuni 2578 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2579 ux_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2581 #ifde DEBUG_PRINT 2582 `as r != 0 ); 2584 rsize . `add ( r ); 2585 #ifde ACEVeGridFuni 2586 mrsize . `add ( mr ); 2592 i( ux_nd_fo [ p ] && flux_nd_fo[p][ l ]) { 2593 wsize . `y ( ux_nd_fo [ p ][ l ]-> size ,ux_nd_fo[p][l]-> t ); 2594 #ifde ACEVeGridFuni 2595 mwsize . `y ( ux_nd_fo [ p ][ l ]-> msize ,ux_nd_fo[p][l]-> t ); 2598 i( ux_cv_fo [ p ] && flux_cv_fo[p][ l ]) { 2599 rsize . `y ( ux_cv_fo [ p ][ l ]-> size ,ux_cv_fo[p][l]-> t ); 2600 #ifde ACEVeGridFuni 2601 mrsize . `y ( ux_cv_fo [ p ][ l ]-> msize ,ux_cv_fo[p][l]-> t ); 2604 wsize . `emy (); rsize .empty(); 2605 #ifde ACEVeGridFuni 2606 mwsize . `emy (); mrsize .empty(); 2609 #ifde DEBUG_PRINT_GF_COMM 2610 comm_rvi :: `log (<< "[GF_Iai(Flux):[" << p << "]" << dl ). `ush (); 2611  k =0;k< vs ;k++) { 2612 i( ux_cv_fo [ p ] && flux_cv_fo[p][ k ]) 2613 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2614 << * ux_cv_fo [ p ][ k ] << "]" 2615 << dl ). `ush (); 2617 comm_rvi :: `log (<< dl ). `ush (); 2618  k =0;k< vs ;k++) { 2619 i( ux_nd_fo [ p ] && flux_nd_fo[p][ k ]) 2620 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2621 << * ux_nd_fo [ p ][ k ] << "]" 2622 << dl ). `ush (); 2624 comm_rvi :: `log (<< "]" << dl ). `ush (); 2627 } } 2633 gme < ass gACE_GFTy > 2634  GridFuni (1)< gACE_GFTy >:: $GF_SwTimeLevs (cڡ  l , 2635 cڡ  t1 , 2636 cڡ  t2 ) 2638 cڡ  ti1 = `dagh_timedex ( t1 , l ); 2639 cڡ  ti2 = `dagh_timedex ( t2 , l ); 2641 i( ti1 = ti2 ) ; 2643 #ifde DEBUG_PRINT 2644 `as ( gdb [ ti1 ] && gdb[ ti2 ]); 2647 `GridDaBlock (1)< ACE_GFTy >** gdb1 = gdb [ ti1 ][ l ]; 2648 `GridDaBlock (1)< ACE_GFTy >** gdb2 = gdb [ ti2 ][ l ]; 2650 i( gdb1 ) { 2651  i =0;i< ngth ;i++) 2652 i( gdb1 [ i ] && gdb1[i]-> `dexme (i)gdb1[i]-> timum = ti2 ; 2654 i( gdb2 ) { 2655  i =0;i< ngth ;i++) 2656 i( gdb2 [ i ] && gdb2[i]-> `dexme (i)gdb2[i]-> timum = ti1 ; 2658 gdb [ ti1 ][ l ] = gdb2 ; 2659 gdb [ ti2 ][ l ] = gdb1 ; 2660 } } 2663 gme < ass gACE_GFTy > 2664  GridFuni (1)< gACE_GFTy >:: $GF_CyeTimeLevs (cڡ  l ) 2666 i( time__d == 0) ; 2668 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 2669 cڡ  i = `dagh_timedex ( dagh . `gPviousTime ( l ),l); 2670 cڡ  i = `dagh_timedex ( dagh . `gNextTime ( l ),l); 2672 #ifde DEBUG_PRINT 2673 `as ( gdb [ i ] && gdb[ i ] && gdb[ i ]); 2674 `as ( gdb [ i ][ l ] && gdb[ i ][l] && gdb[ i ][l]); 2677 `GridDaBlock (1)< ACE_GFTy >** cgdb = gdb [ i ][ l ]; 2678 `GridDaBlock (1)< ACE_GFTy >** pgdb = gdb [ i ][ l ]; 2679 `GridDaBlock (1)< ACE_GFTy >** ngdb = gdb [ i ][ l ]; 2681  i = 0; 2683 i( cgdb && ( i ! i )) { 2684  i =0;i< ngth ;i++) 2685 i( cgdb [ i ] && cgdb[i]-> `dexme (i)cgdb[i]-> timum = i ; 2687 i( pgdb && ( i ! i )) { 2688  i =0;i< ngth ;i++) 2689 i( pgdb [ i ] &&gdb[i]-> `dexme (i)pgdb[i]-> timum = i ; 2691 i( ngdb && ( i ! i )) { 2692  i =0;i< ngth ;i++) 2693 i( ngdb [ i ] &&gdb[i]-> `dexme (i)ngdb[i]-> timum = i ; 2695 i( i ! i gdb [i][ l ] = ngdb ; 2696 i( i ! i gdb [i][ l ] = cgdb ; 2697 i( i ! i gdb [i][ l ] = pgdb ; 2698 } } 2703 gme < ass gACE_GFTy > 2704  GridFuni (1)< gACE_GFTy >:: $tbboxli ( BBoxLi & bbl , 2705 cڡ  l , 2706 cڡ  idt ) 2708 i(! bbl . `imy ()bbl. `emy (); 2709  t = 0, i = 0; 2710  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2711  i =0; i< ngth ; i++) 2712 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2713 bbl . `add ( gdb [ t ][ l ][ i ]-> `ribox ( idt )); 2714 } } 2716 gme < ass gACE_GFTy > 2717  GridFuni (1)< gACE_GFTy >:: $tbboxli ( BBoxLi & bbl , 2718 cڡ  l , 2719 cڡ  mgl , 2720 cڡ  idt ) 2722 i(! bbl . `imy ()bbl. `emy (); 2723  t = 0, i = 0; 2724  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2725  i =0; i< ngth ; i++) 2726 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2727 bbl . `add ( gdb [ t ][ l ][ i ]-> `ribox ( idt , mgl )); 2728 } } 2730 gme < ass gACE_GFTy > 2731  GridFuni (1)< gACE_GFTy >:: $dabboxli ( BBoxLi & bbl , 2732 cڡ  l , 2733 cڡ  idt ) 2735 i(! bbl . `imy ()bbl. `emy (); 2736  t = 0, i = 0; 2737  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2738  i =0; i< ngth ; i++) 2739 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2740 bbl . `add ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt )); 2741 } } 2743 gme < ass gACE_GFTy > 2744  GridFuni (1)< gACE_GFTy >:: $dabboxli ( BBoxLi & bbl , 2745 cڡ  l , 2746 cڡ  mgl , 2747 cڡ  idt ) 2749 i(! bbl . `imy ()bbl. `emy (); 2750  t = 0, i = 0; 2751  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2752  i =0; i< ngth ; i++) 2753 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2754 bbl . `add ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt , mgl )); 2755 } } 2757 gme < ass gACE_GFTy > 2758  GridFuni (1)< gACE_GFTy >:: $mgedbboxli ( BBoxLi & bbl , 2759 cڡ  l , 2760 cڡ  idt ) 2762 i(! bbl . `imy ()bbl. `emy (); 2763  t = 0, i = 0; 2764  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2765  i =0; i< ngth ; i++) 2766 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2767 bbl . `add ( gdb [ t ][ l ][ i ]-> `mgedbox ( idt )); 2768 } } 2773 gme < ass gACE_GFTy > 2774  GridFuni (1)< gACE_GFTy >:: $GF_SupShadow (cڡ  time , 2775 cڡ  v ) 2777 cڡ  t = `dagh_timedex ( time , v ); 2778 cڡ  l = v ; 2780  i =0; i< ngth ; i++) 2781 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2782 gdb [ t ][ l ][ i ]-> `gdbSUpShadow ( ovp , bwidth , extghowidth ); 2784 shadow_ag = ACEHasShadow ; 2785 } } 2787 gme < ass gACE_GFTy > 2788  GridFuni (1)< gACE_GFTy >:: $GF_RShadow (cڡ  time , 2789 cڡ  v ) 2791 cڡ  t = `dagh_timedex ( time , v ); 2792 cڡ  l = v ; 2793  i =0; i< ngth ; i++) 2794 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2795 gdb [ t ][ l ][ i ]-> `gdbRShadow (); 2797 shadow_ag = ACENoShadow ; 2798 } } 2804 gme < ass gACE_GFTy > 2805  GridFuni (1)< gACE_GFTy >:: $GF_SupMuiGrid (cڡ  time , 2806 cڡ  v , 2807 cڡ  mglc , 2808 cڡ  mglf , 2809 cڡ  idt ) 2811 cڡ  t = `dagh_timedex ( time , v ); 2812 cڡ  l = v ; 2814 i( idt = ACE_Ma ) { 2815  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2816 gdb [ t ][ l ][ i ]-> `gdbSUpMuiGrid ( mglc , mglf , 2817 ovp , bwidth , extghowidth ); 2819 i( `shadow ()) { 2820  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2821 gdb [ t ][ l ][ i ]-> `gdbSUpShadowMuiGrid ( mglc , mglf , 2822 ovp , bwidth , extghowidth ); 2824 } } 2826 gme < ass gACE_GFTy > 2827  GridFuni (1)< gACE_GFTy >:: $GF_SupMuiGrid (cڡ  time , 2828 cڡ  v , 2829 cڡ  axis , 2830 cڡ  mglc , 2831 cڡ  mglf , 2832 cڡ  idt ) 2834 cڡ  t = `dagh_timedex ( time , v ); 2835 cڡ  l = v ; 2837 i( idt = ACE_Ma ) { 2838  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2839 gdb [ t ][ l ][ i ]-> `gdbSUpMuiGrid ( axis , mglc , mglf , 2840 ovp , bwidth , extghowidth ); 2842 i( `shadow ()) { 2843  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2844 gdb [ t ][ l ][ i ]-> `gdbSUpShadowMuiGrid ( axis , mglc , mglf , 2845 ovp , bwidth , extghowidth ); 2847 } } 2849 gme < ass gACE_GFTy > 2850  GridFuni (1)< gACE_GFTy >:: $GF_RMuiGrid (cڡ  time , 2851 cڡ  v , 2852 cڡ  idt ) 2854 cڡ  t = `dagh_timedex ( time , v ); 2855 cڡ  l = v ; 2857 i( idt = ACE_Ma ) { 2858  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2859 gdb [ t ][ l ][ i ]-> `gdbRMuiGrid (); 2861 i( `shadow ()) { 2862  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2863 gdb [ t ][ l ][ i ]-> `gdbRShadowMuiGrid (); 2865 } } 2871 gme < ass gACE_GFTy > 2872  GridFuni (1)< gACE_GFTy >:: $GF_Checkpot ( ofam & ofs ) 2874 #ifde DEBUG_PRINT 2875 `as ( dagh . `chk_t (&& `checkpot ()); 2878 cڡ  vs = dagh . `tٮvs (); 2879 cڡ  times = 2* time__d + 1; 2880 cڡ  dnum = vs * ngth * times ; 2881 ofs . `wre ((*)& vs ,()); 2882 ofs . `wre ((*)& ngth ,()); 2883 ofs . `wre ((*)& times ,()); 2885 ampos * chkd = w smpos[ dnum ]; 2886 ampos chkdpos = ofs . `p (); 2887 ofs . `wre ((*) chkd ,( ampos )* dnum ); 2889 ofs << *(( GridFuniVoid *) this ); 2891  c =0; c< ngth ; c++) { 2892  l =0;< vs ;++) { 2893  t =0;< times ;++) { 2894 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ c ] && gdb[t][l][c]-> `dexme (c)) { 2895 chkd [ c * vs * times + l *times+ t ] = ofs . `p (); 2896 ofs << * gdb [ t ][ l ][ c ]; 2899 chkd [ c * vs * times + l *times+ t ] = ACENu ; 2904 ampos cuos = ofs . `p (); 2905 ofs . `ekp ( chkdpos ); 2906 ofs . `wre ((*) chkd ,( ampos )* dnum ); 2907 ofs . `ekp ( cuos ); 2908 i( chkd de [] chkptdir; 2909 } } 2911 gme < ass gACE_GFTy > 2912  GridFuni (1)< gACE_GFTy >:: $GF_CheckpotRet () 2914 #ifde DEBUG_PRINT 2915 `as ( dagh . `chk_t (&& `checkpot ()); 2918 cڡ  num = comm_rvi :: `oc_num (); 2919 cڡ  me = comm_rvi :: `oc_me (); 2920 cڡ  dum = dagh . `chk_um (); 2921 cڡ  vs = dagh . `tٮvs (); 2922 cڡ  times = 2* time__d + 1; 2924  t =0, l =0, c =0; 2926 i( dum = num ) { 2927  ampos pos ; 2929 ifam ifs ; 2930  eag = dagh . `ACE_GGFChkISm ( me , game , gfid , ifs ); 2931 i( eag = ACEF ) ; 2933  hievs = 0, higth = 0, his = 0; 2934 ifs . `ad ((*)& hievs ,()); 2935 ifs . `ad ((*)& higth ,()); 2936 ifs . `ad ((*)& his ,()); 2938 #ifde DEBUG_PRINT 2939 `as ( hievs = vs ); 2940 `as ( higth = ngth ); 2943 cڡ  dnum = hievs * higth * his ; 2944 ampos * chkd = w smpos[ dnum ]; 2945 ifs . `ad ((*) chkd ,( ampos )* dnum ); 2946  c =0; c< ngth ; c++) { 2947  l =0;< vs ;++) { 2948  t =0;< times ;++) { 2949 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ c ] && gdb[t][l][c]-> `dexme (c) && 2950 t < his && 2952 ( pos = chkd [ c * hievs * his + l *his+ t ])!= `ampos ( ACENu )) { 2953 ifs . `ekg ( pos ); 2954 ifs >> * gdb [ t ][ l ][ c ]; 2959 i( chkd de [] chkptdir; 2960 dagh . `ACE_CloChkISm ( ifs ); 2963 GridBoxLi * lgbl = dagh . `lgbl (); 2964 GridBoxLi * dggbl = dagh . `dggbl (); 2965 cڡ  dmdex = dggbl -> `maxdex () + 1; 2967 cڡ  addnum = dum * dmdex ; 2969 * adom = w [ dum ]; 2970  =0;< dum ;++ adom [] = ACENu ; 2972 * add = w [ addnum ]; 2973 * adtodex = w [ addnum ]; 2974  i =0; i< addnum ;i++) 2975 { add [ i ] = ACENu ; adtodex [i] = ACENull; } 2977 GridBoxLi `myli (* dggbl ); 2978 myli ** lgbl ; 2980  GridBox * gb = myli . `f ();gb;gb=myli. `xt ()) { 2981 add [ gb -> `gbOwr ()* dmdex + gb-> `gbIndex ()] = ACETrue ; 2982 #ifde DEBUG_PRINT_GF_RG 2983 `as ( lgbl -> `mches ( gb -> `gbBBox (gb-> `gbCrsLev ()), 2984 gb -> `gbCrsLev ()) == 1); 2986 adtodex [ gb -> `gbOwr ()* dmdex + gb-> `gbIndex ()] = 2987 lgbl -> `dex ( gb -> `gbBBox (gb-> `gbCrsLev ()),gb->gbCrsLev()); 2989 adom [ gb -> `gbOwr ()] = ACETrue ; 2992  idx = ACENu ; 2993  ampos pos ; 2994  p =0;< dum ;++i( adom [p] = ACETrue ) { 2995 ifam ifs ; 2996  eag = dagh . `ACE_GGFChkISm ( p , game , gfid , ifs ); 2997 i( eag = ACEF ) ; 2999  hievs = 0, higth = 0, his = 0; 3000 ifs . `ad ((*)& hievs ,()); 3001 ifs . `ad ((*)& higth ,()); 3002 ifs . `ad ((*)& his ,()); 3004 #ifde DEBUG_PRINT 3005 `as ( hievs = vs ); 3006 `as ( higth < dmdex ); 3009 cڡ  dnum = hievs * higth * his ; 3010 ampos * chkd = w smpos[ dnum ]; 3011 ifs . `ad ((*) chkd ,( ampos )* dnum ); 3012  c =0; c< dmdex ; c++) { 3013  l =0;< vs ;++) { 3014 i( add [ p * dmdex + c ] = ACENu ) ; 3015 idx = adtodex [ p * dmdex + c ]; 3016  t =0;< times ;++) { 3017 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ idx ] && < his && 3019 ( pos = chkd [ c * hievs * his + l *his+ t ])!= `ampos ( ACENu )) { 3020 ifs . `ekg ( pos ); 3021 ifs >> * gdb [ t ][ l ][ idx ]; 3026 i( chkd de [] chkptdir; 3027 dagh . `ACE_CloChkISm ( ifs ); 3029 i( adom de []eadfrom; 3030 i( add de []eaddir; 3031 i( adtodex de []eadtoindex; 3035 i( `comm ()) { 3036  l =0;< vs ;++) { 3037  t =0;< times ;++) { 3038 i( gdb [ t ] && gdb[t][ l ]) { 3039 cڡ  um = `dagh_timevue ( t , l ); 3040 `GF_Sync ( um , l , ACE_Ma ); 3041 i( `shadow (= ACETrue `GF_Sync ( um , l , ACE_Shadow ); 3046 } } 3051 gme < ass gACE_GFTy > 3052 goam & GridFuni (1)< gACE_GFTy >:: $GF_DebugPrtIDa ( oam & os , 3053 cڡ  time , 3054 cڡ  v , 3055 cڡ  idt ) 3057 os << * this ; 3058 os << "(" << time << ") "; 3059 os << "(" << v << ") "; 3060 os << "\n"; 3061 cڡ  t = `dagh_timedex ( time , v ); 3062 cڡ  l = v ; 3063  i =0; i< ngth ; i++) { 3064 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 3065 os << "Ii: " << gdb [ t ][ l ][ i ]-> `boundgbox ( idt ) << "\n"; 3066 `GridDa (1)< ACE_GFTy > `tmpgd ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt )); 3067 tmpgd = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 3068 os << tmpgd ; 3069 os << "\n"; 3072  os ; 3073 } } 3075 gme < ass gACE_GFTy > 3076 goam & GridFuni (1)< gACE_GFTy >:: $GF_DebugPrtDa ( oam & os , 3077 cڡ  time , 3078 cڡ  v , 3079 cڡ  idt ) 3081 os << * this ; 3082 os << "(" << time << ") "; 3083 os << "(" << v << ") "; 3084 os << "\n"; 3085 cڡ  t = `dagh_timedex ( time , v ); 3086 cڡ  l = v ; 3087  i =0; i< ngth ; i++) 3088 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 3089 os << gdb [ t ][ l ][ i ]-> `gridda ( idt ); 3090  os ; 3091 } } 3093 gme < ass gACE_GFTy > 3094 goam & GridFuni (1)< gACE_GFTy >:: $GF_DebugPrtDaBlk ( oam & os , 3095 cڡ  time , 3096 cڡ  v ) 3098 os << * this ; 3099 os << "(" << time << ") "; 3100 os << "(" << v << ") "; 3101 os << "\n"; 3102 cڡ  t = `dagh_timedex ( time , v ); 3103 cڡ  l = v ; 3104  i =0; i< ngth ; i++) 3105 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 3106 os << * gdb [ t ][ l ][ i ] << "\n"; 3107  os ; 3108 } } 3114 gme < ass gACE_GFTy > 3115 goam & gݔ << (oam& gos , cڡ GridFuni (1)< gACE_GFTy >& ggf ) 3118 i(& ggf =( GridFuni (1)< ACE_GFTy > * NULL  os ; 3120 gos << "GridFuni: " << ggf . GF_Name (); 3122  gos ; 3126 gme < ass gACE_GFTy > 3127 goam & GridFuni (1)< gACE_GFTy >:: $GF_DebugPrtTheDa ( oam & os ) 3130 cڡ  vs = dagh . `tٮvs (); 3131 cڡ  times = 2* time__d +1; 3133 os << "******* THE DATA *********" << dl ; 3134 i( gdb ) { 3135  t =0;t< times ;t++) { 3136 i( gdb [ t ]) { 3137  l =0;l< vs ;l++) { 3138 i( gdb [ t ][ l ]) { 3139  i =0;i< ngth ;i++) { 3140 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)){ 3141 os << "gdb[ " << t << "][" 3142 << l << "][" << i << "]:" << dl ; 3143 os << * gdb [ t ][ l ][ i ] << dl ; 3151 os << "******* END THE DATA *********" << dl ; 3152  os ; 3153 } } 3155  ~"GridFuniComm1.h " 3156  ~"GridFuniFuncs1.h " 3157  ~"GridFuniOps1.h " 3158  ~"GridFuniOpsDi1.h " 3159  ~"GridFuniOpsRed1.h " 3160  ~"GridFuniBndry1.h " 3161  ~"GridFuniIO1.h " 3162  ~"GridFuniUCD1.h " 3163  ~"GridFuniViz1.h " 3164  ~"GridFuniDICE1.h " 3165  ~"GridFuniPts1.h " 3166  ~"GridFuniFluxes1.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunction1.h 1 #ide _uded_GridFuni1_h 2  #_uded_GridFuni1_h ) 14  ~"GridDa1.h " 15  ~"GridDaBlock1.h " 16  ~"ACEUCD.h " 19  ~"DICEInude.h " 21 #ide GridFuniName 22  #GridFuni ( dim `me2 ( GridFuni ,dim) ) 23  #GridFuniName ) 26  ~"GFIt.h " 28 #i defed ( __GNUG__ || defed( __GNUC__ ) 29 gme < ass gACE_GFTy > cs GridFuni (1); 31 gme < ass gACE_GFTy > 32 goam & gݔ <<(oam&, cڡ GridFuni (1)< gACE_GFTy >&); 35 gme < ass gACE_GFTy > 36 ass GridFuni (1: public GridFuniVoid 38 public : 39 GridDa (1)< ACE_GFTy >& ݔ ()( GDIt (1)& gfi , 40  gma__shadow ) { 41  ݔ ()( ggfi . time (),gfi. v (),gfi. compڒt (), 42 gma__shadow ); 44 give : 45 #i defed ( __GNUG__ || defed( __GNUC__ ) 46 nd oam & ݔ << <>(oam&, cڡ GridFuni (1)< gACE_GFTy >&); 48 nd goam & gݔ <<(oam&, cڡ GridFuni (1)< gACE_GFTy >&); 50 nd ass gGridHrchy ; 53  gngth ; 54 GridDaBlock (1)< gACE_GFTy > **** ggdb ; 57 ACE_GFTy gbvue ; 59  #GF_TYPE ACE_GFTy ) 60  ~"GridFuniI.h " 63 InFunc gifunc ; 66 UpdeFunc gufunc ; 69 BndryUpdeFunc gbfunc ; 70 AdBndryUpdeFunc gabfunc ; 73 PrgFunc gpfunc ; 74 ReriFunc grfunc ; 75 TimeIpFunc gfunc ; 78 FluxAddFunc gfunc ; 81 IOFunc giofunc ; 86 give : 87 GridFuni (1)(cڡ GridFuni(1)< ACE_GFTy >&); 88 cڡ GridFuni (1)< gACE_GFTy >& gݔ = 89 (cڡ GridFuni (1)< ACE_GFTy >&); 95 gpublic : 96 GridFuni (1)(cڡ me [], 97 gGridHrchy & ggh ); 100 GridFuni (1)(cڡ  gme [], 101 cڡ  gt_ , 102 cڡ  gs_ , 103 gGridHrchy & ggh , 104 cڡ  gcag = ACEComm , 105 cڡ  gsag = ACENoShadow , 106 cڡ  gextghag = ACENoExGho ); 108 GridFuni (1)(cڡ  gme [], 109 cڡ  gt_ , 110 cڡ  gs_ , 111 gGridHrchy & ggh , 112 cڡ  gty , 113 cڡ  gcag , 114 cڡ  gsag , 115 cڡ  gbag , 116 cڡ  gadbag , 117 cڡ  gextghag = ACENoExGho ); 119 GridFuni (1)(cڡ  gme [], 120 cڡ  gt_ , 121 cڡ * gs_ , 122 gGridHrchy & ggh , 123 cڡ  gty , 124 cڡ  gcag , 125 cڡ  gsag , 126 cڡ  gbag , 127 cڡ  gadbag , 128 cڡ  gextghag = ACENoExGho ); 131 GridFuni (1)(cڡ  gme [], 132 cڡ  gt_ , 133 cڡ  gs_ , 134 gGridHrchy & ggh , 135 cڡ  gty , 136 cڡ  gign , 137 cڡ  gcag , 138 cڡ  gsag , 139 cڡ  gbag , 140 cڡ  gadbag , 141 cڡ  gextghag ); 143 GridFuni (1)(cڡ  gme [], 144 cڡ  gt_ , 145 cڡ * gs_ , 146 gGridHrchy & ggh , 147 cڡ  gty , 148 cڡ  gign , 149 cڡ  gcag , 150 cڡ  gsag , 151 cڡ  gbag , 152 cڡ  gadbag , 153 cڡ  gextghag ); 156 GridFuni (1)(cڡ  gme [], 157 cڡ  gt_ , 158 cڡ  gs_ , 159 cڡ  gtime , 160 cڡ  gv , 161 gGridHrchy & ggh , 162 cڡ  gty , 163 cڡ  gcag , 164 cڡ  gsag , 165 cڡ  gbag , 166 cڡ  gadbag , 167 cڡ  gextghag = ACENoExGho ); 169 GridFuni (1)(cڡ  gme [], 170 cڡ  gt_ , 171 cڡ * gs_ , 172 cڡ  gtime , 173 cڡ  gv , 174 gGridHrchy & ggh , 175 cڡ  gty , 176 cڡ  gcag , 177 cڡ  gsag , 178 cڡ  gbag , 179 cڡ  gadbag , 180 cڡ  gextghag = ACENoExGho ); 183 GridFuni (1)(cڡ  gme [], 184 cڡ GridFuni (1)< gACE_GFTy >& ggf , 185 cڡ  gtime , 186 cڡ  gv , 187 cڡ  gcag , 188 cڡ  gsag , 189 cڡ  gbag , 190 cڡ  gadbag , 191 cڡ  gextghag = ACENoExGho ); 197 gpublic : 198 ~ GridFuni (1)(); 204 give : 205  GF_DeGDBStage (); 206  GF_DeGDBStage (cڡ  t ); 212 give : 213  GF_Compo (); 214  GF_Compo (cڡ  T , 215 cڡ  L ); 216  GF_Compo (cڡ GridFuni (1)< ACE_GFTy >& gf , 217 cڡ  T , 218 cڡ  L ); 220  GF_Recompo (cڡ  omdex , 221 GridBoxLi & li , 222 GridBoxLi & i , 223 GridBoxLi & i , 224 GridBoxLi & i ); 230  GF_CheckpotRecompo (); 231  GF_Checkpot ( ofam & ofs ); 232  GF_CheckpotRet (); 239 give : 240  GF_SUpGDBPors (); 246 give : 247  GF_SUpGhoCommSvs (); 248  GF_GhGhoCommInfo (); 250  GF_SUpPtCommSvs (); 251  GF_GhPtCommInfo () 253 GF_GhGPtCommInfo (); 254 GF_GhSPtCommInfo (); 256  GF_GhGPtCommInfo (); 257  GF_GhSPtCommInfo (); 259  GF_SUpFluxCommSvs (); 260  GF_GhFluxCommInfo (); 266 gpublic : 267 le  GF_SInFunc (* f ) 268 { ifunc = ( InFunc f ; } 269 le  GF_SUpdeFunc (* uf ) 270 { gufunc = ( UpdeFunc uf ; } 271 le  GF_SBndryUpdeFunc (* bf ) 272 { gbfunc = ( BndryUpdeFunc bf ; } 273 le  GF_SAdtiveBndryUpdeFunc (* abf ) 274 { gabfunc = ( AdBndryUpdeFunc abf ; } 275 le  GF_SPrgFunc (* pf ) 276 { gpfunc = ( PrgFunc pf ; } 277 le  GF_SReriFunc (* rf ) 278 { grfunc = ( ReriFunc rf ; } 279 le  GF_STimeIpީiFunc (* tif ) 280 { gfunc = ( TimeIpFunc tif ; } 281 le  GF_SFluxAddFuncFunc (* f ) 282 { gfunc = ( FluxAddFunc f ; } 284 le  GF_SIOFunc (* iof ) 285 { giofunc = ( IOFunc iof ; } 291 gpublic : 292 le  has_func () 293 {  ( ifunc !( InFunc ) 0); } 294 le  has_updefunc () 295 {  ( gufunc !( UpdeFunc ) 0); } 296 le  has_bndryupdefunc () 297 {  ( gbfunc !( BndryUpdeFunc ) 0); } 298 le  has_adtivebndryupdefunc () 299 {  ( gabfunc !( AdBndryUpdeFunc ) 0); } 300 le  has_gfunc () 301 {  ( gpfunc !( PrgFunc ) 0); } 302 le  has_rifunc () 303 {  ( grfunc !( ReriFunc ) 0); } 304 le  has_timefunc () 305 {  ( gfunc !( TimeIpFunc ) 0); } 306 le  has_uxaddfunc () 307 {  ( gfunc !( FluxAddFunc ) 0); } 308 le  has_iofunc () 309 {  ( giofunc !( IOFunc ) 0); } 315 gpublic : 316 le  GF_CutTime (cڡ  v , 317 cڡ  idt = ACE_Ma ) const 318 {  cuime [ GridHrchy :: daghdex ( idt )][ v ] ; } 320 le  GF_SCutTime (cڡ  ime , 321 cڡ  v , 322 cڡ  idt = ACE_Ma ) 323 { cuime [ GridHrchy :: daghdex ( idt )][ v ] = ime ; } 325 le  GF_InCutTime (cڡ  v , 326 cڡ  idt = ACE_Ma ) 327 { cuime [ GridHrchy :: daghdex ( idt )][ v ] + dagh . time (lev,ident); } 329 le  GF_PviousTime (cڡ  v , 330 cڡ  idt = ACE_Ma ) const 331 {  cuime [ GridHrchy :: daghdex ( idt )][ v ] - 332 dagh . time ( v , idt ); } 334 le  GF_NextTime (cڡ  v , 335 cڡ  idt = ACE_Ma ) const 336 {  cuime [ dagh . daghdex ( idt )][ v ] + 337 dagh . time ( v , idt ); } 339 give : 354 public : 355 le  dagh_timevue (cڡ  t , 356 cڡ  l , 357 cڡ  idt = ACE_Ma ) const 358 {  (( t - time__d )* dagh . time ( l , idt ) + 359 dagh . gCutTime ( l , idt )); } 361 le  dagh_timedex (cڡ  t , 362 cڡ  l , 363 cڡ  idt = ACE_Ma ) const 364 {  ( time_s [(( t - dagh . gCutTime ( l , idt ))/dagh. time (l,ident)) 365 + time__d ]); } 371 gpublic : 372 le  GF_SBoundyVue (cڡ ACE_GFTy vue ) 373 { bvue = vue ; } 379 gpublic : 380  GF_SwTimeLevs (cڡ  l , cڡ  t1 , cڡ  t2 ); 381  GF_CyeTimeLevs (cڡ  l ); 387 gpublic : 388 le  n (cڡ {  ( ngth ); } 389 le GridDaBlock (1)< gACE_GFTy >& mygdb (cڡ  t , 390 cڡ  l , 391 cڡ  c ) 392 {  (* ggdb [ dagh_timedex ( t , l )][l][ c ]); } 394 le  exis (cڡ  t , 395 cڡ  l , 396 cڡ  c ) const 397 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ] != 398 ( GridDaBlock (1)< ACE_GFTy > *) NULL && 399 gdb [ dagh_timedex ( t , l )][l][ c ]-> dexme (c)); } 401 le  comm () const 402 {  ( gcomm_ag ! ACENoComm ); } 403 le  comm (cڡ  t , 404 cڡ  l ) const 405 {  ( gcomm_ag != ACENoComm ) && 406 ( comm_ag != ACECommCutTimeOy || 407 t == dagh_timedex ( dagh . gCutTime ( l ),l)); } 409 le  () const 410 {  g_ag = ACETrue ; } 411 le  uxes () const 412 {  gux_ag = ACETrue ; } 413 le  uxes (cڡ  t , cڡ  l ) const 414 {  gux_ag = ACETrue ; } 422 give : 423  GF_RdDa (cڡ  time ); 424  GF_RdDa (cڡ  time , cڡ  v ); 425  GF_RdDa (cڡ  time , GridDa (1)< ACE_GFTy >& to ); 431 gpublic : 432 #ifde ACEVeGridFuni 433 le  GF_GhPt (cڡ  time , 434 cڡ  v , 435 cڡ  idt ) 437 GF_GWrePt ( time , v , ACEA , idt ); 438 GF_GRdPt ( time , v , ACEA , idt ); 440 le  GF_SPt (cڡ  time , 441 cڡ  v , 442 cڡ  idt ) 444 GF_SWrePt ( time , v , ACEA , idt ); 445 GF_SRdPt ( time , v , ACEA , idt ); 449 le  GF_GhPt (cڡ  time , 450 cڡ  v , 451 #ifde ACEVeGridFuni 452 cڡ  m , 454 cڡ  idt ) 456 #ifde ACEVeGridFuni 457 GF_GWrePt ( time , v , m , idt ); 458 GF_GRdPt ( time , v , m , idt ); 460 GF_GWrePt ( time , v , idt ); 461 GF_GRdPt ( time , v , idt ); 465  GF_GWrePt (cڡ  time , 466 cڡ  v , 467 #ifde ACEVeGridFuni 468 cڡ  m , 470 cڡ  idt ); 472  GF_GRdPt (cڡ  time , 473 cڡ  v , 474 #ifde ACEVeGridFuni 475 cڡ  m , 477 cڡ  idt ); 479 le  GF_SPt (cڡ  time , 480 cڡ  v , 481 #ifde ACEVeGridFuni 482 cڡ  m , 484 cڡ  idt ) 486 #ifde ACEVeGridFuni 487 GF_SWrePt ( time , v , m , idt ); 488 GF_SRdPt ( time , v , m , idt ); 490 GF_SWrePt ( time , v , idt ); 491 GF_SRdPt ( time , v , idt ); 495  GF_SWrePt (cڡ  time , 496 cڡ  v , 497 #ifde ACEVeGridFuni 498 cڡ  m , 500 cڡ  idt ); 502  GF_SRdPt (cڡ  time , 503 cڡ  v , 504 #ifde ACEVeGridFuni 505 cڡ  m , 507 cڡ  idt ); 513 gpublic : 514 #ifde ACEVeGridFuni 515 le  GF_GhFluxes (cڡ  time , 516 cڡ  v , 517 cڡ  idt ) 519 GF_WreFluxes ( time , v , ACEA , idt ); 520 GF_RdFluxes ( time , v , ACEA , idt ); 524 le  GF_GhFluxes (cڡ  time , 525 cڡ  v , 526 #ifde ACEVeGridFuni 527 cڡ  m , 529 cڡ  idt ) 531 #ifde ACEVeGridFuni 532 GF_WreFluxes ( time , v , m , idt ); 533 GF_RdFluxes ( time , v , m , idt ); 535 GF_WreFluxes ( time , v , idt ); 536 GF_RdFluxes ( time , v , idt ); 540  GF_WreFluxes (cڡ  time , 541 cڡ  v , 542 #ifde ACEVeGridFuni 543 cڡ  m , 545 cڡ  idt ); 547  GF_RdFluxes (cڡ  time , 548 cڡ  v , 549 #ifde ACEVeGridFuni 550 cڡ  m , 552 cڡ  idt ); 557 give : 558  GF_IpGhos (cڡ  time , 559 cڡ  v , 560 cڡ  m , 561 cڡ  mgl , 562 cڡ  idt ); 563  GF_IpGhos (cڡ  time , 564 cڡ  v , 565 cڡ  m , 566 cڡ  mgl , 567 cڡ  axis , 568 cڡ  d , 569 cڡ  idt ); 571 gpublic : 572  GF_WreGhos (cڡ  time , 573 cڡ  v , 574 #ifde ACEVeGridFuni 575 cڡ  m , 577 cڡ  idt ); 578  GF_WreGhos (cڡ  time , 579 cڡ  v , 580 #ifde ACEVeGridFuni 581 cڡ  m , 583 cڡ  mgl , 584 cڡ  idt ); 585  GF_WreGhos (cڡ  time , 586 cڡ  v , 587 #ifde ACEVeGridFuni 588 cڡ  m , 590 cڡ  axis , 591 cڡ  d , 592 cڡ  idt ); 593  GF_WreGhos (cڡ  time , 594 cڡ  v , 595 #ifde ACEVeGridFuni 596 cڡ  m , 598 cڡ  mgl , 599 cڡ  axis , 600 cڡ  d , 601 cڡ  idt ); 607  GF_RdGhos (cڡ  time , 608 cڡ  v , 609 #ifde ACEVeGridFuni 610 cڡ  m , 612 cڡ  idt ); 613  GF_RdGhos (cڡ  time , 614 cڡ  v , 615 #ifde ACEVeGridFuni 616 cڡ  m , 618 cڡ  mgl , 619 cڡ  idt ); 620  GF_RdGhos (cڡ  time , 621 cڡ  v , 622 #ifde ACEVeGridFuni 623 cڡ  m , 625 cڡ  axis , 626 cڡ  d , 627 cڡ  idt ); 628  GF_RdGhos (cڡ  time , 629 cڡ  v , 630 #ifde ACEVeGridFuni 631 cڡ  m , 633 cڡ  mgl , 634 cڡ  axis , 635 cڡ  d , 636 cڡ  idt ); 640 gpublic : 648 #ifde ACEVeGridFuni 649 le  GF_Sync (cڡ  time , 650 cڡ  v , 651 cڡ  idt ) 653 GF_WreGhos ( time , v , ACEA , idt ); 654 GF_RdGhos ( time , v , ACEA , idt ); 658 le  GF_Sync (cڡ  time , 659 cڡ  v , 660 #ifde ACEVeGridFuni 661 cڡ  m , 663 cڡ  idt ) 665 #ifde ACEVeGridFuni 666 GF_WreGhos ( time , v , m , idt ); 667 GF_RdGhos ( time , v , m , idt ); 669 GF_WreGhos ( time , v , idt ); 670 GF_RdGhos ( time , v , idt ); 674 le  GF_Sync (cڡ  time , 675 cڡ  v , 676 #ifde ACEVeGridFuni 677 cڡ  m , 679 cڡ  mgl , 680 cڡ  idt ) 682 #ifde ACEVeGridFuni 683 GF_WreGhos ( time , v , m , mgl , idt ); 684 GF_RdGhos ( time , v , m , mgl , idt ); 686 GF_WreGhos ( time , v , mgl , idt ); 687 GF_RdGhos ( time , v , mgl , idt ); 691 le  GF_Sync (cڡ  time , 692 cڡ  v , 693 #ifde ACEVeGridFuni 694 cڡ  m , 696 cڡ  axis , 697 cڡ  d , 698 cڡ  idt ) 700 #ifde ACEVeGridFuni 701 GF_WreGhos ( time , v , m , axis , d , idt ); 702 GF_RdGhos ( time , v , m , axis , d , idt ); 704 GF_WreGhos ( time , v , axis , d , idt ); 705 GF_RdGhos ( time , v , axis , d , idt ); 709 le  GF_Sync (cڡ  time , 710 cڡ  v , 711 #ifde ACEVeGridFuni 712 cڡ  m , 714 cڡ  mgl , 715 cڡ  axis , 716 cڡ  d , 717 cڡ  idt ) 719 #ifde ACEVeGridFuni 720 GF_WreGhos ( time , v , m , mgl , axis , d , idt ); 721 GF_RdGhos ( time , v , m , mgl , axis , d , idt ); 723 GF_WreGhos ( time , v , mgl , axis , d , idt ); 724 GF_RdGhos ( time , v , mgl , axis , d , idt ); 732 gpublic : 733  GF_In (cڡ  time , 734 cڡ  v , 735 GF_TYPE * gs =0, 736 cڡ  t =0, 737 cڡ  idt = ACE_Ma ); 738  GF_In (cڡ  time , 739 cڡ  v , 740 cڡ BBox & bb , 741 GF_TYPE * gs =0, 742 cڡ  t =0, 743 cڡ  idt = ACE_Ma ); 745  GF_Upde (cڡ  time_om , 746 cڡ  time_to , 747 cڡ  v , 748 GF_TYPE * gs =0, 749 cڡ  t =0, 750 cڡ  idt = ACE_Ma ); 751  GF_Upde (cڡ  time_om , 752 cڡ  time_to , 753 cڡ  v , 754 cڡ BBox & bb , 755 GF_TYPE * gs =0, 756 cڡ  t =0, 757 cڡ  idt = ACE_Ma ); 759  GF_Prg (cڡ  tf , 760 cڡ  lf , 761 cڡ  , 762 cڡ  , 763 #ifde ACEVeGridFuni 764 cڡ  m = ACEA , 766 GF_TYPE * gs =0, 767 cڡ  t =0, 768 cڡ  idt = ACE_Ma ); 769  GF_Prg (cڡ  tf , 770 cڡ  lf , 771 cڡ  , 772 cڡ  , 773 cڡ BBox & bb , 774 #ifde ACEVeGridFuni 775 cڡ  m = ACEA , 777 GF_TYPE * gs =0, 778 cڡ  t =0, 779 cڡ  idt = ACE_Ma ); 781  GF_Reri (cڡ  tf , 782 cڡ  lf , 783 cڡ  , 784 cڡ  , 785 #ifde ACEVeGridFuni 786 cڡ  m = ACEA , 788 GF_TYPE * gs =0, 789 cڡ  t =0, 790 cڡ  idt = ACE_Ma ); 791  GF_Reri (cڡ  tf , 792 cڡ  lf , 793 cڡ  , 794 cڡ  , 795 cڡ BBox & bb , 796 #ifde ACEVeGridFuni 797 cڡ  m = ACEA , 799 GF_TYPE * gs =0, 800 cڡ  t =0, 801 cڡ  idt = ACE_Ma ); 803  GF_IO (cڡ  time , 804 cڡ  v , 805 GF_TYPE * gs =0, 806 cڡ  t =0, 807 cڡ  idt = ACE_Ma ); 808  GF_IO (cڡ  time , 809 cڡ  v , 810 cڡ BBox & bb , 811 GF_TYPE * gs =0, 812 cڡ  t =0, 813 cڡ  idt = ACE_Ma ); 819  GF_BndryUpde (cڡ  t , 820 cڡ  l , 824 GF_TYPE * gs , 825 cڡ  t , 826 cڡ  idt ); 827  GF_BndryUpde (cڡ  t , 828 cڡ  l , 832 cڡ  mgl , 833 GF_TYPE * gs , 834 cڡ  t , 835 cڡ  idt ); 837  GF_DoAdtBndryUpde ( GridDaBlock (1)< ACE_GFTy > &, 838 GridDaBlock (1)< ACE_GFTy > &, 839 GridDaBlock (1)< ACE_GFTy > &, 840 cڡ  ac , 844 GF_TYPE * gs , 845 cڡ  t , 846 cڡ  idt ); 848  GF_DoAdtBndryUpde ( GridDaBlock (1)< ACE_GFTy > &, 849 GridDaBlock (1)< ACE_GFTy > &, 850 GridDaBlock (1)< ACE_GFTy > &, 851 cڡ  ac , 855 cڡ  mgl , 856 GF_TYPE * gs , 857 cڡ  t , 858 cڡ  idt ); 864  boundy_ag (cڡ  t , 865 cڡ  l , 866 cڡ  c , 867 cڡ  d ) const 868 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gbndryags [ d ]); } 870 cڡ * boundy_ag (cڡ  t , 871 cڡ  l , 872 cڡ  c ) const 873 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gbndryags ); } 879 le cڡ gBBox & dabbox (cڡ  t , 880 cڡ  l , 881 cڡ  c , 882 cڡ  idt = ACE_Ma ) const 883 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt )); } 884 le BBox dabbox (cڡ  t , 885 cڡ  l , 886 cڡ  c , 887 cڡ  idt = ACE_Ma ) 888 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt )); } 890 le cڡ gBBox & dabbox (cڡ  t , 891 cڡ  l , 892 cڡ  c , 893 cڡ  mgl , 894 cڡ  idt ) const 895 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt , mgl )); } 896 le BBox dabbox (cڡ  t , 897 cڡ  l , 898 cڡ  c , 899 cڡ  mgl , 900 cڡ  idt ) 901 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt , mgl )); } 903 le cڡ gBBox & ribbox (cڡ  t , 904 cڡ  l , 905 cڡ  c , 906 cڡ  idt = ACE_Ma ) const 907 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt )); } 908 le BBox ribbox (cڡ  t , 909 cڡ  l , 910 cڡ  c , 911 cڡ  idt = ACE_Ma ) 912 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt )); } 914 le cڡ gBBox & ribbox (cڡ  t , 915 cڡ  l , 916 cڡ  c , 917 cڡ  mgl , 918 cڡ  idt ) const 919 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt , mgl )); } 920 le BBox ribbox (cڡ  t , 921 cڡ  l , 922 cڡ  c , 923 cڡ  mgl , 924 cڡ  idt ) 925 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt , mgl )); } 927 le cڡ gBBox & bndrybbox (cڡ  t , 928 cڡ  l , 929 cڡ  c , 930 cڡ  d , 931 cڡ  idt = ACE_Ma ) const 932 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt )); } 933 le BBox bndrybbox (cڡ  t , 934 cڡ  l , 935 cڡ  c , 936 cڡ  d , 937 cڡ  idt = ACE_Ma ) 938 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt )); } 940 le cڡ gBBox & bndrybbox (cڡ  t , 941 cڡ  l , 942 cڡ  c , 943 cڡ  d , 944 cڡ  mgl , 945 cڡ  idt ) const 946 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt , mgl )); } 947 le BBox bndrybbox (cڡ  t , 948 cڡ  l , 949 cڡ  c , 950 cڡ  d , 951 cڡ  mgl , 952 cڡ  idt ) 953 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt , mgl )); } 955 le cڡ gBBox & mgedbbox (cڡ  t , 956 cڡ  l , 957 cڡ  c , 958 cڡ  idt = ACE_Ma ) const 959 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> mgedbox ( idt )); } 960 le BBox mgedbbox (cڡ  t , 961 cڡ  l , 962 cڡ  c , 963 cڡ  idt = ACE_Ma ) 964 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> mgedbox ( idt )); } 966  tbboxli ( BBoxLi & bbl , 967 cڡ  l , 968 cڡ  idt = ACE_Ma ); 969  tbboxli ( BBoxLi & bbl , 970 cڡ  l , 971 cڡ  mgl , 972 cڡ  idt ); 974  dabboxli ( BBoxLi & bbl , 975 cڡ  l , 976 cڡ  idt = ACE_Ma ); 977  dabboxli ( BBoxLi & bbl , 978 cڡ  l , 979 cڡ  mgl , 980 cڡ  idt ); 982  mgedbboxli ( BBoxLi & bbl , 983 cڡ  l , 984 cڡ  idt = ACE_Ma ); 990 le GridDa (1)< gACE_GFTy > cڡ & ݔ ((cڡ  gt , 991 cڡ  gl , 992 cڡ  gc , 993 cڡ  gidt ) const 994 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , ACENu )); } 996 le GridDa (1)< gACE_GFTy > & ݔ ((cڡ  gt , 997 cڡ  gl , 998 cڡ  gc , 999 cڡ  gidt ) 1000 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , ACENu )); } 1002 le GridDa (1)< gACE_GFTy > cڡ & ݔ ((cڡ  gt , 1003 cڡ  gl , 1004 cڡ  gc , 1005 cڡ  gmgl , 1006 cڡ  gidt ) const 1007 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , mgl )); } 1009 le GridDa (1)< gACE_GFTy > & ݔ ((cڡ  gt , 1010 cڡ  gl , 1011 cڡ  gc , 1012 cڡ  gmgl , 1013 cڡ  gidt ) 1014 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , mgl )); } 1020  GF_SupShadow (cڡ  time , cڡ  v ); 1021  GF_RShadow (cڡ  time , cڡ  v ); 1027  GF_SupMuiGrid (cڡ  time , 1028 cڡ  v , 1029 cڡ  mglc , 1030 cڡ  mglf , 1031 cڡ  idt ); 1032  GF_SupMuiGrid (cڡ  time , 1033 cڡ  v , 1034 cڡ  axis , 1035 cڡ  mglc , 1036 cڡ  mglf , 1037 cڡ  idt ); 1038  GF_RMuiGrid (cڡ  time , 1039 cڡ  v , 1040 cڡ  idt ); 1046  GF_Fl (cڡ ACE_GFTy & v , 1047 cڡ  time , 1048 cڡ  v , 1049 cڡ  idt = ACE_Ma ); 1050  GF_Fl (cڡ ACE_GFTy & v , 1051 cڡ  time , 1052 cڡ  v , 1053 cڡ  mgl , 1054 cڡ  idt ); 1056  GF_Cy (cڡ  t1 , 1057 cڡ  l1 , 1058 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1059 cڡ  t2 , 1060 cڡ  l2 , 1061 cڡ BBox & whe , 1062 cڡ  idt = ACE_Ma ); 1063  GF_Cy (cڡ  t1 , 1064 cڡ  l1 , 1065 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1066 cڡ  t2 , 1067 cڡ  l2 , 1068 cڡ  idt = ACE_Ma ); 1070  GF_equs (cڡ  t , 1071 cڡ  l , 1072 cڡ BBox & whe , 1073 cڡ ACE_GFTy & v , 1074 cڡ  idt = ACE_Ma ); 1075  GF_equs (cڡ  t , 1076 cڡ  l , 1077 cڡ ACE_GFTy & v , 1078 cڡ  idt = ACE_Ma ); 1079  GF_equs (cڡ  t1 , 1080 cڡ  l1 , 1081 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1082 cڡ  t2 , 1083 cڡ  l2 , 1084 cڡ BBox & whe , 1085 cڡ  idt = ACE_Ma ); 1086  GF_equs (cڡ  t1 , 1087 cڡ  l1 , 1088 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1089 cڡ  t2 , 1090 cڡ  l2 , 1091 cڡ  idt = ACE_Ma ); 1093  GF_us (cڡ  t , 1094 cڡ  l , 1095 cڡ BBox & whe , 1096 cڡ ACE_GFTy & v , 1097 cڡ  idt = ACE_Ma ); 1098  GF_us (cڡ  t , 1099 cڡ  l , 1100 cڡ ACE_GFTy & v , 1101 cڡ  idt = ACE_Ma ); 1102  GF_us (cڡ  t1 , 1103 cڡ  l1 , 1104 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1105 cڡ  t2 , 1106 cڡ  l2 , 1107 cڡ BBox & whe , 1108 cڡ  idt = ACE_Ma ); 1109  GF_us (cڡ  t1 , 1110 cڡ  l1 , 1111 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1112 cڡ  t2 , 1113 cڡ  l2 , 1114 cڡ  idt = ACE_Ma ); 1116  GF_mus (cڡ  t , 1117 cڡ  l , 1118 cڡ BBox & whe , 1119 cڡ ACE_GFTy & v , 1120 cڡ  idt = ACE_Ma ); 1121  GF_mus (cڡ  t , 1122 cڡ  l , 1123 cڡ ACE_GFTy & v , 1124 cڡ  idt = ACE_Ma ); 1125  GF_mus (cڡ  t1 , 1126 cڡ  l1 , 1127 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1128 cڡ  t2 , 1129 cڡ  l2 , 1130 cڡ BBox & whe , 1131 cڡ  idt = ACE_Ma ); 1132  GF_mus (cڡ  t1 , 1133 cڡ  l1 , 1134 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1135 cڡ  t2 , 1136 cڡ  l2 , 1137 cڡ  idt = ACE_Ma ); 1139  GF_muɝly (cڡ  t , 1140 cڡ  l , 1141 cڡ BBox & whe , 1142 cڡ ACE_GFTy & v , 1143 cڡ  idt = ACE_Ma ); 1144  GF_muɝly (cڡ  t , 1145 cڡ  l , 1146 cڡ ACE_GFTy & v , 1147 cڡ  idt = ACE_Ma ); 1148  GF_muɝly (cڡ  t1 , 1149 cڡ  l1 , 1150 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1151 cڡ  t2 , 1152 cڡ  l2 , 1153 cڡ BBox & whe , 1154 cڡ  idt = ACE_Ma ); 1155  GF_muɝly (cڡ  t1 , 1156 cڡ  l1 , 1157 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1158 cڡ  t2 , 1159 cڡ  l2 , 1160 cڡ  idt = ACE_Ma ); 1162  GF_divide (cڡ  t , 1163 cڡ  l , 1164 cڡ BBox & whe , 1165 cڡ ACE_GFTy & v , 1166 cڡ  idt = ACE_Ma ); 1167  GF_divide (cڡ  t , 1168 cڡ  l , 1169 cڡ ACE_GFTy & v , 1170 cڡ  idt = ACE_Ma ); 1171  GF_divide (cڡ  t1 , 1172 cڡ  l1 , 1173 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1174 cڡ  t2 , 1175 cڡ  l2 , 1176 cڡ BBox & whe , 1177 cڡ  idt = ACE_Ma ); 1178  GF_divide (cڡ  t1 , 1179 cڡ  l1 , 1180 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1181 cڡ  t2 , 1182 cڡ  l2 , 1183 cڡ  idt = ACE_Ma ); 1189  GF_gh_e (cڡ  t1 , 1190 cڡ  l1 , 1191 cڡ BBox & to , 1192 cڡ BBox & om , 1193 GridDa (1)< ACE_GFTy >& to , 1194 cڡ  , 1195 cڡ  idt = ACE_Ma , 1196 cڡ ACE_GFTy defv =(ACE_GFType)0); 1198  GF_Cy (cڡ  t1 , 1199 cڡ  l1 , 1200 cڡ GridFuni (1)< ACE_GFTy >& rhs , 1201 cڡ  t2 , 1202 cڡ  l2 , 1203 cڡ BBox & to , 1204 cڡ BBox & om , 1205 cڡ  idt = ACE_Ma ); 1243 ACE_GFTy GF_maxv (cڡ  t , 1244 cڡ  l , 1245 #ifde ACEVeGridFuni 1246 cڡ  m , 1248 cڡ  idt = ACE_Ma ); 1249 ACE_GFTy GF_maxv (cڡ  t , 1250 cڡ  l , 1251 #ifde ACEVeGridFuni 1252 cڡ  m , 1254 cڡ BBox & whe , 1255 cڡ  idt = ACE_Ma ); 1256 ACE_GFTy GF_maxv (cڡ  t , 1257 cڡ  l , 1258 #ifde ACEVeGridFuni 1259 cڡ  m , 1261 cڡ  lmg , 1262 cڡ  idt ); 1263 ACE_GFTy GF_maxv (cڡ  t , 1264 cڡ  l , 1265 #ifde ACEVeGridFuni 1266 cڡ  m , 1268 cڡ  lmg , 1269 cڡ BBox & whe , 1270 cڡ  idt ); 1272 ACE_GFTy GF_mv (cڡ  t , 1273 cڡ  l , 1274 #ifde ACEVeGridFuni 1275 cڡ  m , 1277 cڡ  idt = ACE_Ma ); 1278 ACE_GFTy GF_mv (cڡ  t , 1279 cڡ  l , 1280 #ifde ACEVeGridFuni 1281 cڡ  m , 1283 cڡ BBox & whe , 1284 cڡ  idt = ACE_Ma ); 1285 ACE_GFTy GF_mv (cڡ  t , 1286 cڡ  l , 1287 #ifde ACEVeGridFuni 1288 cڡ  m , 1290 cڡ  lmg , 1291 cڡ  idt ); 1292 ACE_GFTy GF_mv (cڡ  t , 1293 cڡ  l , 1294 #ifde ACEVeGridFuni 1295 cڡ  m , 1297 cڡ  lmg , 1298 cڡ BBox & whe , 1299 cڡ  idt ); 1301 ACE_GFTy GF_sum (cڡ  t , 1302 cڡ  l , 1303 #ifde ACEVeGridFuni 1304 cڡ  m , 1306 cڡ  idt = ACE_Ma ); 1307 ACE_GFTy GF_sum (cڡ  t , 1308 cڡ  l , 1309 #ifde ACEVeGridFuni 1310 cڡ  m , 1312 cڡ BBox & whe , 1313 cڡ  idt = ACE_Ma ); 1314 ACE_GFTy GF_sum (cڡ  t , 1315 cڡ  l , 1316 #ifde ACEVeGridFuni 1317 cڡ  m , 1319 cڡ  lmg , 1320 cڡ  idt ); 1321 ACE_GFTy GF_sum (cڡ  t , 1322 cڡ  l , 1323 #ifde ACEVeGridFuni 1324 cڡ  m , 1326 cڡ  lmg , 1327 cڡ BBox & whe , 1328 cڡ  idt ); 1330 ACE_GFTy GF_odu (cڡ  t , 1331 cڡ  l , 1332 #ifde ACEVeGridFuni 1333 cڡ  m , 1335 cڡ  idt = ACE_Ma ); 1336 ACE_GFTy GF_odu (cڡ  t , 1337 cڡ  l , 1338 #ifde ACEVeGridFuni 1339 cڡ  m , 1341 cڡ BBox & whe , 1342 cڡ  idt = ACE_Ma ); 1343 ACE_GFTy GF_odu (cڡ  t , 1344 cڡ  l , 1345 #ifde ACEVeGridFuni 1346 cڡ  m , 1348 cڡ  lmg , 1349 cڡ  idt ); 1350 ACE_GFTy GF_odu (cڡ  t , 1351 cڡ  l , 1352 #ifde ACEVeGridFuni 1353 cڡ  m , 1355 cڡ  lmg , 1356 cڡ BBox & whe , 1357 cڡ  idt ); 1359 ACE_GFTy GF_nm2 (cڡ  t , 1360 cڡ  l , 1361 #ifde ACEVeGridFuni 1362 cڡ  m , 1364 cڡ  idt = ACE_Ma ); 1365 ACE_GFTy GF_nm2 (cڡ  t , 1366 cڡ  l , 1367 #ifde ACEVeGridFuni 1368 cڡ  m , 1370 cڡ BBox & whe , 1371 cڡ  idt = ACE_Ma ); 1372 ACE_GFTy GF_nm2 (cڡ  t , 1373 cڡ  l , 1374 #ifde ACEVeGridFuni 1375 cڡ  m , 1377 cڡ  lmg , 1378 cڡ  idt ); 1379 ACE_GFTy GF_nm2 (cڡ  t , 1380 cڡ  l , 1381 #ifde ACEVeGridFuni 1382 cڡ  m , 1384 cڡ  lmg , 1385 cڡ BBox & whe , 1386 cڡ  idt ); 1392  GF_Wre (cڡ  t , 1393 cڡ  l , 1394 #ifde ACEVeGridFuni 1395 cڡ  m , 1397 cڡ  mgl , 1398 cڡ  idt , 1399 cڡ  gfdty ); 1400 le  GF_Wre (cڡ  t , 1401 cڡ  l , 1402 #ifde ACEVeGridFuni 1403 cڡ  m , 1405 cڡ  gfdty ) 1406 { GF_Wre ( t , l , 1407 #ifde ACEVeGridFuni 1408 m , 1410 ACENu , ACE_Ma , gfdty ); } 1411 le  GF_Wre (cڡ  t , 1412 cڡ  l , 1413 #ifde ACEVeGridFuni 1414 cڡ  m , 1416 cڡ  mgl , 1417 cڡ  gfdty ) 1418 {( gmgl >0? GF_Wre ( t , l , 1419 #ifde ACEVeGridFuni 1420 m , 1422 mgl , ACE_Ma , gfdty ) : 1423 GF_Wre ( t , l , 1424 #ifde ACEVeGridFuni 1425 m , 1427 ACENu , mgl , gfdty ); } 1429  GF_Wre (cڡ  t , 1430 cڡ  l , 1431 #ifde ACEVeGridFuni 1432 cڡ  m , 1434 cڡ  mgl , 1435 cڡ  idt , 1436 cڡ BBox & whe , 1437 cڡ  gfdty ); 1438 le  GF_Wre (cڡ  t , 1439 cڡ  l , 1440 #ifde ACEVeGridFuni 1441 cڡ  m , 1443 cڡ BBox & whe , 1444 cڡ  gfdty ) 1445 { GF_Wre ( t , l , 1446 #ifde ACEVeGridFuni 1447 m , 1449 ACENu , ACE_Ma , whe , gfdty ); } 1450 le  GF_Wre (cڡ  t , 1451 cڡ  l , 1452 #ifde ACEVeGridFuni 1453 cڡ  m , 1455 cڡ  mgl , 1456 cڡ BBox & whe , 1457 cڡ  gfdty ) 1458 {( gmgl >0? GF_Wre ( t , l , 1459 #ifde ACEVeGridFuni 1460 m , 1462 mgl , ACE_Ma , whe , gfdty ) : 1463 GF_Wre ( t , l , 1464 #ifde ACEVeGridFuni 1465 m , 1467 ACENu , 1468 mgl , 1469 whe , 1470 gfdty ); } 1472  GF_Rd (cڡ  t , 1473 cڡ  l , 1474 #ifde ACEVeGridFuni 1475 cڡ  m , 1477 cڡ  mgl , 1478 cڡ  idt , 1479 cڡ  gfdty ); 1480 le  GF_Rd (cڡ  t , 1481 cڡ  l , 1482 #ifde ACEVeGridFuni 1483 cڡ  m , 1485 cڡ  gfdty ) 1486 { GF_Rd ( t , l , 1487 #ifde ACEVeGridFuni 1488 m , 1490 ACENu , ACE_Ma , gfdty ); } 1491 le  GF_Rd (cڡ  t , 1492 cڡ  l , 1493 #ifde ACEVeGridFuni 1494 cڡ  m , 1496 cڡ  mgl , 1497 cڡ  gfdty ) 1498 {( gmgl >0? GF_Rd ( t , l , 1499 #ifde ACEVeGridFuni 1500 m , 1502 mgl , ACE_Ma , gfdty ) : 1503 GF_Rd ( t , l , ACENu , 1504 #ifde ACEVeGridFuni 1505 m , 1507 mgl , gfdty ); } 1509  GF_Rd (cڡ  t , 1510 cڡ  l , 1511 #ifde ACEVeGridFuni 1512 cڡ  m , 1514 cڡ  mgl , 1515 cڡ  idt , 1516 cڡ BBox & whe , 1517 cڡ  gfdty ); 1518 le  GF_Rd (cڡ  t , 1519 cڡ  l , 1520 #ifde ACEVeGridFuni 1521 cڡ  m , 1523 cڡ BBox & whe , 1524 cڡ  gfdty ) 1525 { GF_Rd ( t , l , 1526 #ifde ACEVeGridFuni 1527 m , 1529 ACENu , ACE_Ma , whe , gfdty ); } 1530 le  GF_Rd (cڡ  t , 1531 cڡ  l , 1532 #ifde ACEVeGridFuni 1533 cڡ  m , 1535 cڡ  mgl , 1536 cڡ BBox & whe , 1537 cڡ  gfdty ) 1538 {( gmgl >0? GF_Rd ( t , l , 1539 #ifde ACEVeGridFuni 1540 m , 1542 mgl , ACE_Ma , whe , gfdty ) : 1543 GF_Rd ( t , l , 1544 #ifde ACEVeGridFuni 1545 m , 1547 ACENu , mgl , whe , gfdty ); } 1553  GF_GUCDDa (cڡ ACEUCD (1)& daghucd , 1554 cڡ  t , 1555 ACE_GFTy *& ucdda , 1556 cڡ  ucdrv ); 1560  GF_Vw (cڡ  t , 1561 cڡ  l , 1562 #ifde ACEVeGridFuni 1563 cڡ  m , 1565 cڡ  axis , 1566 cڡ BBox & whe , 1567 cڡ  prv , 1568 cڡ  ty , 1569 cڡ * xg , 1570 cڡ * drv , 1571 cڡ  idt = ACE_Ma ); 1577 goam & GF_DebugPrtDa ( oam & os , 1578 cڡ  t , 1579 cڡ  l , 1580 cڡ  idt ); 1581 goam & GF_DebugPrtIDa ( oam & os , 1582 cڡ  t , 1583 cڡ  l , 1584 cڡ  idt ); 1585 goam & GF_DebugPrtDaBlk ( oam & os , 1586 cڡ  time , 1587 cڡ  v ); 1588 goam & GF_DebugPrtTheDa ( oam & os ); 1592 #ifde DICE 1594  SObjDesti (); 1595  SObjVws (); 1596  SObjCommds (); 1597  SFuniPors (); 1598  GF_GDaSli (cڡ  tim , 1599 cڡ  v , 1600 #ifde ACEVeGridFuni 1601 cڡ  m , 1603 cڡ BBox & whe , 1604 * bufr , 1605 cڡ  idim , 1606 cڡ  prv , 1607 cڡ  idt ); 1608  GF_GMaxV (cڡ  tim , 1609 cڡ  v , 1610 #ifde ACEVeGridFuni 1611 cڡ  m , 1613 * bufr , 1614 cڡ  idt ); 1615  GF_GMV (cڡ  tim , 1616 cڡ  v , 1617 #ifde ACEVeGridFuni 1618 cڡ  m , 1620 * bufr , 1621 cڡ  idt ); 1622  GF_GNm (cڡ  tim , 1623 cڡ  v , 1624 #ifde ACEVeGridFuni 1625 cڡ  m , 1627 * bufr , 1628 cڡ  idt ); 1632 #ifde DICE 1637 * GF1VwXSli ( DICEBaObje *); 1638 * GF1VwMaxV ( DICEBaObje *); 1639 * GF1VwMV ( DICEBaObje *); 1640 * GF1VwNm ( DICEBaObje *); 1645 #i defed ( Wt_c_fes ) 1646  ~"GridFuni1.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunction2.c 1 #ide _uded_GridFuni2_c 2  #_uded_GridFuni2_c ) 21 gme < ass gACE_GFTy > 22 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 23 gGridHrchy & ggh ) 24 : GridFuniVoid ( gh . dagh_ty (),2, me ,gh. numbems (),gh, 25 gh . deu_ignmt (2), 26 gh . boundywidth (), 27 gh . exghowidth (), 28 ACEComm , ACENoShadow , 29 gh . ag (),gh. uxag (), 30 gh . boundyty (), 31 gh . adtboundyty (), 32 ACENoExGho ), 33 ngth (0), gdb (0), bvue (0), 34 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 35 func (0), iofunc (0) 41 gme < ass gACE_GFTy > 42 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 43 cڡ  gt_ , 44 cڡ  gs_ , 45 gGridHrchy & ggh , 46 cڡ  gcag , 47 cڡ  gsag , 48 cڡ  gextghag ) 49 : GridFuniVoid ( gh . dagh_ty (),2, me ,gh. numbems (), t_ , s_ , 50 gh , ACE_A ,gh. boundywidth (), 51 gh . exghowidth (), 52 cag , sag , 53 gh . ag (),gh. uxag (), 54 gh . boundyty (), 55 gh . adtboundyty (), extghag ), 56 ngth (0), gdb (0), bvue (0), 57 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 58 func (0), iofunc (0) 60 GF_Compo (); 61 i( gdagh . chk_t (&& checkpot ()) 62 GF_CheckpotRet (); 68 gme < ass gACE_GFTy > 69 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 70 cڡ  gt_ , 71 cڡ  gs_ , 72 gGridHrchy & ggh , 73 cڡ  gty , 74 cڡ  gcag , 75 cڡ  gsag , 76 cڡ  gbag , 77 cڡ  gadbag , 78 cڡ  gextghag ) 79 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 80 2, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 81 gh . `boundywidth (),gh. `exghowidth (), 82 cag , sag , 83 gh . `ag (),gh. `uxag (), 84 bag , adbag , extghag ), 85 `ngth (0), `gdb (0), `bvue (0), 86 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 87 `func (0), `iofunc (0) 89 `GF_Compo (); 90 i( dagh . `chk_t (&& `checkpot ()) 91 `GF_CheckpotRet (); 92 } } 94 gme < ass gACE_GFTy > 95 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 96 cڡ  gt_ , 97 cڡ * gs_ , 98 gGridHrchy & ggh , 99 cڡ  gty , 100 cڡ  gcag , 101 cڡ  gsag , 102 cڡ  gbag , 103 cڡ  gadbag , 104 cڡ  gextghag ) 105 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 106 2, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 107 gh . `boundywidth (),gh. `exghowidth (), 108 cag , sag , 109 gh . `ag (),gh. `uxag (), 110 bag , adbag , extghag ), 111 `ngth (0), `gdb (0), `bvue (0), 112 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 113 `func (0), `iofunc (0) 115 `GF_Compo (); 116 i( dagh . `chk_t (&& `checkpot ()) 117 `GF_CheckpotRet (); 118 } } 123 gme < ass gACE_GFTy > 124 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 125 cڡ  gt_ , 126 cڡ  gs_ , 127 gGridHrchy & ggh , 128 cڡ  gty , 129 cڡ  gign , 130 cڡ  gcag , 131 cڡ  gsag , 132 cڡ  gbag , 133 cڡ  gadbag , 134 cڡ  gextghag ) 135 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 136 2, me , gh . `numbems (), t_ , s_ ,gh, ign , 137 gh . `boundywidth (),gh. `exghowidth (), 138 cag , sag , 139 gh . `ag (),gh. `uxag (), 140 bag , adbag , extghag ), 141 `ngth (0), `gdb (0), `bvue (0), 142 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 143 `func (0), `iofunc (0) 145 `GF_Compo (); 146 i( dagh . `chk_t (&& `checkpot ()) 147 `GF_CheckpotRet (); 148 } } 150 gme < ass gACE_GFTy > 151 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 152 cڡ  gt_ , 153 cڡ * gs_ , 154 gGridHrchy & ggh , 155 cڡ  gty , 156 cڡ  gign , 157 cڡ  gcag , 158 cڡ  gsag , 159 cڡ  gbag , 160 cڡ  gadbag , 161 cڡ  gextghag ) 162 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 163 2, me , gh . `numbems (), t_ , s_ ,gh, ign , 164 gh . `boundywidth (),gh. `exghowidth (), 165 cag , sag , 166 gh . `ag (),gh. `uxag (), 167 bag , adbag , extghag ), 168 `ngth (0), `gdb (0), `bvue (0), 169 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 170 `func (0), `iofunc (0) 172 `GF_Compo (); 173 i( dagh . `chk_t (&& `checkpot ()) 174 `GF_CheckpotRet (); 175 } } 180 gme < ass gACE_GFTy > 181 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 182 cڡ  gt_ , 183 cڡ  gs_ , 184 cڡ  gtime , 185 cڡ  gv , 186 gGridHrchy & ggh , 187 cڡ  gty , 188 cڡ  gcag , 189 cڡ  gsag , 190 cڡ  gbag , 191 cڡ  gadbag , 192 cڡ  gextghag ) 193 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 194 2, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 195 gh . `boundywidth (),gh. `exghowidth (), 196 cag , sag , 197 gh . `ag (),gh. `uxag (), 198 bag , adbag , extghag ), 199 `ngth (0), `gdb (0), `bvue (0), 200 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 201 `func (0), `iofunc (0) 203 `GF_Compo ( time , v ); 204 i( dagh . `chk_t (&& `checkpot ()) 205 `GF_CheckpotRet (); 206 } } 208 gme < ass gACE_GFTy > 209 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 210 cڡ  gt_ , 211 cڡ * gs_ , 212 cڡ  gtime , 213 cڡ  gv , 214 gGridHrchy & ggh , 215 cڡ  gty , 216 cڡ  gcag , 217 cڡ  gsag , 218 cڡ  gbag , 219 cڡ  gadbag , 220 cڡ  gextghag ) 221 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 222 2, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 223 gh . `boundywidth (),gh. `exghowidth (), 224 cag , sag , 225 gh . `ag (),gh. `uxag (), 226 bag , adbag , extghag ), 227 `ngth (0), `gdb (0), `bvue (0), 228 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 229 `func (0), `iofunc (0) 231 `GF_Compo ( time , v ); 232 i( dagh . `chk_t (&& `checkpot ()) 233 `GF_CheckpotRet (); 234 } } 239 gme < ass gACE_GFTy > 240 GridFuni (2)< gACE_GFTy >::GridFuni(2)(cڡ  me [], 241 cڡ GridFuni (2)< gACE_GFTy >& ggf , 242 cڡ  gtime , 243 cڡ  gv , 244 cڡ  gcag , 245 cڡ  gsag , 246 cڡ  gbag , 247 cڡ  gadbag , 248 cڡ  gextghag ) 249 : GridFuniVoid ( me ,2, gf . GF_NIms (),gf, 250 cag , sag , 251 gf . _ag ,gf. ux_ag , 252 bag , adbag , extghag ), 253 ngth (0), gdb (0), bvue (0), 254 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 255 func (0), iofunc (0) 257 GF_Compo ( gf , time , v ); 258 i( gdagh . chk_t (&& checkpot ()) 259 GF_CheckpotRet (); 265 gme < ass gACE_GFTy > 266 GridFuni (2)< gACE_GFTy >::~GridFunction(2)() 268 GF_DeGDBStage (); 274 gme < ass gACE_GFTy > 275  GridFuni (2)< gACE_GFTy >:: $GF_DeGDBStage () 277 cڡ  vs = dagh . `tٮvs (); 278 cڡ  times = 2* time__d +1; 280 i( gdb ) { 281  t = 0 ; < times ;++) { 282 i( gdb [ t ]) { 283  l = 0 ; < vs ;l++) { 284 i( gdb [ t ][ l ]) { 285  i = 0 ; i < ngth ; i++) 286 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 287  tmpi = i +1; 288 tmpi < ngth && gdb [ t ][ l ][tmpi] && gdb[t][l][tmpi]-> `dexme ( i ); 289 tmpi ++) 290 gdb [ t ][ l ][ tmpi ] = 0; 291 de gdb [ t ][ l ][ i ]; gdb[t][l][i] = 0; 293 de [] gdb [ t ][ l ]; gdb[t][l] = 0; 296 de [] gdb [ t ]; gdb[t] = 0; 299 de [] gdb ; gdb = 0; 301 } } 303 gme < ass gACE_GFTy > 304  GridFuni (2)< gACE_GFTy >:: $GF_DeGDBStage (cڡ  t ) 306 cڡ  vs = dagh . `tٮvs (); 308 i( gdb && gdb[ t ]) { 309  l = 0 ; < vs ;l++) { 310 i( gdb [ t ][ l ]) { 311  i = 0 ; i < ngth ; i++) 312 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 313  tmpi = i +1; 314 tmpi < ngth && gdb [ t ][ l ][tmpi] && gdb[t][l][tmpi]-> `dexme ( i ); 315 tmpi ++) 316 gdb [ t ][ l ][ tmpi ] = 0; 317 de gdb [ t ][ l ][ i ]; gdb[t][l][i] = 0; 319 de [] gdb [ t ][ l ]; gdb[t][l] = 0; 322 de [] gdb [ t ]; gdb[t] = 0; 324 } } 329 gme < ass gACE_GFTy > 330  GridFuni (2)< gACE_GFTy >:: $GF_SUpGDBPors () 332 cڡ  vs = dagh . `tٮvs (); 333 cڡ  times = 2* time__d +1; 335 `GridDaBlock (2)< ACE_GFTy >* tmpgdb = 0; 337  idx = -1; 338  t = 0 ; < times ;++i( gdb [t]) { 339  l = 0 ; < vs -1 ;l++i( gdb [ t ][l]) { 340 tmpgdb = 0; 341  i = 0 ; i < ngth ; i++) { 342 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 343 tmpgdb = gdb [ t ][ l ][ i ]; 345 i( gdb [ t ][ l ][ i ] =0 && tmpgdb ) { 346 gdb [ t ][ l ][ i ] = tmpgdb ; 351 } } 354 gme < ass gACE_GFTy > 355  GridFuni (2)< gACE_GFTy >:: $GF_Compo () 358 i( comm_ag > ACETemeComm ) { 359 me_ag = comm_ag - ACETemeComm ; 360 #ifde DEBUG_PRINT 361 `as ( dagh . gi [ me_ag ]); 363 comm_ag = dagh . gi [ me_ag ]-> `comm_ty (); 366 i( `compod ()) ; 368 is . `compu_is ( GhoIai :: `_ag ( comm_ag ), 369 GhoIai :: `cr_ag ( comm_ag ), 370 GhoIai :: `edge_ag ( comm_ag ), 371 GhoIai :: `sime_ag ( comm_ag )); 373 cڡ  me = comm_rvi :: `oc_me (); 374 cڡ  um = comm_rvi :: `oc_num (); 376 cڡ  vs = dagh . `tٮvs (); 378  t = 0, l = 0, i = 0; 381 cuime [0] = w [ vs ]; 382 cuime [1] = w [ vs ]; 383  i =0;i< vs ;i++) { 384 cuime [0][ i ] = curtime[1][i] = 0; 387 cڡ  ts = 2* time__d +1; 388 cڡ  mdex = dagh . `maxdex ()+1; 390 gt = w `GridTab ( gfid , vs , ts ); 392 GridBoxLi * lgbl = dagh . `lgbl (); 393 ngth = lgbl -> `maxdex ()+1; 395 #ifde DEBUG_PRINT_GF_GT 396 comm_rvi :: `log () << "\n************* Grid Table *************\n" 397 << "------ [" << game << "] ------" << "\n" 398 << * gt 400 ). `ush (); 404 `GF_DeGDBStage (); 407 gdb = w `GridDaBlock (2)< ACE_GFTy > ***[ ts ]; 408  t =0;t< ts ;t++) { 409 gdb [ t ] = ( `GridDaBlock (2)< ACE_GFTy > *** NULL ; 411  t =0;t< ts ;t++) { 412 i(! gdb [ time_s [ t ]]) { 413 gdb [ time_s [ t ]] = w `GridDaBlock (2)< ACE_GFTy > **[ vs ]; 415  l =0;l< vs ;l++) { 416 gdb [ time_s [ t ]][ l ] = w `GridDaBlock (2)< ACE_GFTy > *[ ngth ]; 417  i =0;i< ngth ;i++) 418 gdb [ time_s [ t ]][ l ][ i ] = ( `GridDaBlock (2)< ACE_GFTy > * NULL ; 423 cڡ  has_shadow = `shadow (); 425 `GridFuni (2)< ACE_GFTy >* geme = 0; 426 i( me_ag ! ACENu ) { 427 geme = ( `GridFuni (2)< ACE_GFTy >* dagh . gi [ me_ag ]; 428 i( geme && !geme-> `compod ()) gftemplate = 0; 430 cڡ `GridDaBlock (2)< ACE_GFTy >* gdbtm = 0; 432  GridBox * gb = 0; 433  gbi = 0; 434  gb = lgbl -> `f (); gb; gb =gbl-> `xt ()) { 435 cڡ  fe = gb -> `gbFeLev (); 436 cڡ  cr = gb -> `gbCrsLev (); 437 gbi = gb -> `gbIndex (); 438  l =0;l< vs ;l++) { 439 cڡ  v = dagh . `vnum ( l ); 440 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 441 cڡ  = dagh . `gCutTime ( l ); 442  tmi = ACENu ; 443 i( me_ag ! ACENu && 444 geme && 445 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 446 && geme -> gdb [ tmi ][ l ]) 447 gdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 448 gdbtm = 0; 449 i( v > cr &&ev < fe ) { 450  t =0;t< ts ;t++i( gdb [t] && gdb[t][ l ]) { 451 gdb [ t ][ l ][ gbi ] = w `GridDaBlock (2)< ACE_GFTy >( gfid , dagh , * gt , 452 is , 453 gbi , * gb , 454 nems , 455 t , 456 dagh . `vnum ( l ), 457 bwidth , 458 extghowidth , 459 ovp , 460 a__d , 461 ignmt , mdex , 462 `comm ( t , l ), 463 has_shadow , 464 _ag , 465 `uxes ( t , l ), 466 gdbtm ); 467 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 473 i( `comm ()) { 474 `GF_GhGhoCommInfo (); 475 `GF_SUpGhoCommSvs (); 477 i( ` ()) { 478 `GF_GhPtCommInfo (); 479 `GF_SUpPtCommSvs (); 481 i( `uxes ()) { 482 `GF_GhFluxCommInfo (); 483 `GF_SUpFluxCommSvs (); 485 `GF_SUpGDBPors (); 486 compo_ag = ACETrue ; 487 } } 492 gme < ass gACE_GFTy > 493  GridFuni (2)< gACE_GFTy >:: $GF_Compo (cڡ  T , cڡ  L ) 495 i( comm_ag > ACETemeComm ) { 496 me_ag = comm_ag - ACETemeComm ; 497 #ifde DEBUG_PRINT 498 `as ( dagh . gi [ me_ag ]); 500 comm_ag = dagh . gi [ me_ag ]-> `comm_ty (); 503 i( `compod ()) ; 505 is . `compu_is ( GhoIai :: `_ag ( comm_ag ), 506 GhoIai :: `cr_ag ( comm_ag ), 507 GhoIai :: `edge_ag ( comm_ag ), 508 GhoIai :: `sime_ag ( comm_ag )); 510 cڡ  me = comm_rvi :: `oc_me (); 511 cڡ  um = comm_rvi :: `oc_num (); 513 cڡ  vs = dagh . `tٮvs (); 514 cڡ  Lnum = dagh . `vnum ( L ); 516  t = 0, l = 0, i = 0; 519 cuime [0] = w [ vs ]; 520 cuime [1] = w [ vs ]; 521  i =0;i< vs ;i++) { 522 cuime [0][ i ] = curtime[1][i] = 0; 525 cڡ  ts = 2* time__d +1; 526 cڡ  ev = dagh . `fev (); 527 cڡ  = dagh . `fevdex (); 528 cڡ  mdex = dagh . `maxdex ()+1; 530 i( L = ACEALevs ) { 531 gt = w `GridTab ( gfid , vs , ts ); 533 i( L < ) { 534 gt = w `GridTab ( gfid , vs , ts ); 538 #ifde DEBUG_PRINT 539 `as (( L - ) == 1); 541 gt = w `GridTab ( gfid , vs , ts ); 544 #ifde DEBUG_PRINT_GF_GT 545 comm_rvi :: `log () << "\n************* Grid Table *************\n" 546 << "------ [" << game << "] ------" << "\n" 547 << * gt 549 ). `ush (); 552 GridBoxLi * lgbl = dagh . `lgbl (); 553 ngth = lgbl -> `maxdex ()+1; 556 `GF_DeGDBStage (); 559 gdb = w `GridDaBlock (2)< ACE_GFTy > ***[ ts ]; 560  t =0;t< ts ;t++) { 561 gdb [ t ] = ( `GridDaBlock (2)< ACE_GFTy > *** NULL ; 563  t =0;t< ts ;t++) { 564  l =0;l< vs ;l++) { 565 cڡ  th = ( l < ) ? : fl; 566 i( T ! ACEATimes && `dagh_timedex (T, th ! time_s [ t ]) ; 567 i(! gdb [ time_s [ t ]]) { 568 gdb [ time_s [ t ]] = w `GridDaBlock (2)< ACE_GFTy > **[ vs ]; 569  =0;< vs ;ll++) 570 gdb [ time_s [ t ]][ ] = ( `GridDaBlock (2)< ACE_GFTy > ** NULL ; 572 i(( L = ACEALevs || L = l && ! gdb [ time_s [ t ]][l]) { 573 gdb [ time_s [ t ]][ l ] = w `GridDaBlock (2)< ACE_GFTy > *[ ngth ]; 575  i =0;i< ngth ;i++) 576 gdb [ time_s [ t ]][ l ][ i ] = ( `GridDaBlock (2)< ACE_GFTy > * NULL ; 581 cڡ  has_shadow = `shadow (); 583 `GridFuni (2)< ACE_GFTy >* geme = 0; 584 i( me_ag ! ACENu ) { 585 geme = ( `GridFuni (2)< ACE_GFTy >* dagh . gi [ me_ag ]; 586 i( geme && !geme-> `compod ()) gftemplate = 0; 588 cڡ `GridDaBlock (2)< ACE_GFTy >* gdbtm = 0; 590  GridBox * gb = 0; 591  gbi = 0; 592  gb = lgbl -> `f (); gb; gb =gbl-> `xt ()) { 593 cڡ  fe = gb -> `gbFeLev (); 594 cڡ  cr = gb -> `gbCrsLev (); 595 gbi = gb -> `gbIndex (); 596  l =0;l< vs ;l++) { 597 i( L ! ACEALevs && L ! l ) ; 598 cڡ  v = ( l < ? dagh . `vnum : ev ; 599 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 600 cڡ  = dagh . `gCutTime ( l ); 601  tmi = ACENu ; 602 i( me_ag ! ACENu && 603 geme && 604 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 605 && geme -> gdb [ tmi ][ l ]) 606 gdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 607 gdbtm = 0; 608 i( v > cr &&ev < fe ) { 609  t =0;t< ts ;t++) { 610 i( T ! ACEATimes && `dagh_timedex (T, l ! t ) ; 611 i( gdb [ t ] && gdb[t][ l ]) { 612 gdb [ t ][ l ][ gbi ] = w `GridDaBlock (2)< ACE_GFTy >( gfid , dagh , * gt , 613 is , 614 gbi , * gb , 615 nems , 616 t , 617 dagh . `vnum ( l ), 618 bwidth , 619 extghowidth , 620 ovp , 621 a__d , 622 ignmt , mdex , 623 `comm ( t , l ), 624 has_shadow , 625 _ag , 626 `uxes ( t , l ), 627 gdbtm ); 628 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 635 i( `comm ()) { 636 `GF_GhGhoCommInfo (); 637 `GF_SUpGhoCommSvs (); 639 i( ` ()) { 640 `GF_GhPtCommInfo (); 641 `GF_SUpPtCommSvs (); 643 i( `uxes ()) { 644 `GF_GhFluxCommInfo (); 645 `GF_SUpFluxCommSvs (); 647 `GF_SUpGDBPors (); 648 compo_ag = ACETrue ; 649 } } 654 gme < ass gACE_GFTy > 655  GridFuni (2)< gACE_GFTy >:: GF_Compo ( 656 cڡ GridFuni (2)< ACE_GFTy >& gf , 657 cڡ  T , cڡ  L ) 659 i( gcomm_ag > ACETemeComm ) { 660 me_ag = comm_ag - ACETemeComm ; 661 #ifde DEBUG_PRINT 662 as ( dagh . gi [ me_ag ]); 664 gcomm_ag = dagh . gi [ me_ag ]-> comm_ty (); 667 i( compod ()) ; 669 #ifde ACEVeGridFuni 670 * gvgfag = w [ nems ]; 671  gvgfi =0;vgfi< gnems ;vgfi++) 672 gvgfag [ vgfi ] = ACETrue ; 676 gis . compu_is ( GhoIai :: _ag ( comm_ag ), 677 GhoIai :: cr_ag ( comm_ag ), 678 GhoIai :: edge_ag ( comm_ag ), 679 GhoIai :: sime_ag ( comm_ag )); 681 cڡ  gme = comm_rvi :: oc_me (); 682 cڡ  gum = comm_rvi :: oc_num (); 684 cڡ  gvs = dagh . tٮvs (); 685 cڡ  gLnum = dagh . vnum ( L ); 687  gt = 0, gl = 0, gi = 0; 690 gcuime [0] = w [ vs ]; 691 gcuime [1] = w [ vs ]; 692  gi =0;i< gvs ;i++) { 693 gcuime [0][ i ] = gf . cuime [0][i]; 694 gcuime [1][ i ] = gf . cuime [1][i]; 697 cڡ  gts = 2* time__d +1; 698 cڡ  gev = dagh . fev (); 699 cڡ  g = dagh . fevdex (); 700 cڡ  gmdex = dagh . maxdex ()+1; 702 i( gL = ACEALevs ) { 703 gt = w GridTab ( gfid , vs , ts ); 705 i( gL < ) { 706 gt = w GridTab ( gfid , vs , ts ); 710 #ifde DEBUG_PRINT 711 as (( L - ) == 1); 713 ggt = w GridTab ( gfid , vs , ts ); 716 gngth = gf . ngth ; 718 #ifde DEBUG_PRINT_GF_GT 719 gcomm_rvi :: log () << "\n************* Grid Table *************\n" 720 << "------ [" << game << "] ------" << "\n" 721 << * gt 723 ). ush (); 727 GF_DeGDBStage (); 730 ggdb = w GridDaBlock (2)< ACE_GFTy > ***[ ts ]; 731  gt =0;t< gts ;t++) { 732 ggdb [ t ] = ( GridDaBlock (2)< ACE_GFTy > *** NULL ; 734  gt =0;t< gts ;t++) { 735  gl =0;l< gvs ;l++) { 736 cڡ  gth = ( l < ) ? : fl; 737 i( gT ! ACEATimes && dagh_timedex ( T , th ! time_s [ t ]) ; 738 i(! ggdb [ time_s [ t ]]) { 739 ggdb [ time_s [ t ]] = w GridDaBlock (2)< ACE_GFTy > **[ vs ]; 740  g =0;< gvs ;ll++) 741 ggdb [ time_s [ t ]][ ] = ( GridDaBlock (2)< ACE_GFTy > ** NULL ; 743 i(( gL = ACEALevs || L = l && ! gdb [ time_s [ t ]][l]) { 744 gdb [ time_s [ t ]][ l ] = w GridDaBlock (2)< ACE_GFTy > *[ ngth ]; 746  gi =0;i< gngth ;i++) 747 ggdb [ time_s [ t ]][ l ][ i ] = ( GridDaBlock (2)< ACE_GFTy > * NULL ; 752 cڡ  ghas_shadow = shadow (); 753 cڡ  ghe_has_shadow = gf . shadow (); 755 GridFuni (2)< gACE_GFTy >* ggeme = 0; 756 i( gme_ag ! ACENu ) { 757 geme = ( GridFuni (2)< ACE_GFTy >* dagh . gi [ me_ag ]; 758 i( ggeme && !geme-> compod ()) gftemplate = 0; 760 cڡ GridDaBlock (2)< gACE_GFTy >* ggdbtm = 0; 762 GridBoxLi * glgbl = dagh . lgbl (); 763  GridBox * ggb = 0; 764  ggbi = 0; 766  ggb = lgbl -> f (); gb; gb =gbl-> xt ()) { 767 cڡ  fe = gb -> gbFeLev (); 768 cڡ  gcr = gb -> gbCrsLev (); 769 ggbi = gb -> gbIndex (); 771  gl =0;l< gvs ;l++) { 772 i( gL ! ACEALevs && L ! l ) ; 773 cڡ  gv = ( l < ? dagh . vnum : ev ; 774 i( gv < gcr ||ev > gfe ) ; 775 cڡ  gi = dagh_timedex ( dagh . gCutTime ( l ),l); 776 cڡ  g = dagh . gCutTime ( l ); 777  gtmi = ACENu ; 778 i( gme_ag ! ACENu && 779 geme && 780 geme -> gdb [( tmi =geme-> dagh_timedex ( , l ))] 781 && ggeme -> ggdb [ tmi ][ l ]) 782 ggdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 783 ggdbtm = 0; 785  gt =0;t< gts ;t++) { 786 i( gT ! ACEATimes && dagh_timedex ( T , l ! t ) ; 787 cڡ  g = ( l < ) ? : fl; 788 i( ggdb [ t ] && gdb[t][ l ] && 789 ggf . ggdb [ t ] && gf.gdb[t][ ] && 790 ggf . ggdb [ t ][ ][ gbi ] && gf.gdb[t][][gbi]-> dexme (gbi)) { 791 ggdb [ t ][ l ][ gbi ] = w GridDaBlock (2)< ACE_GFTy >( gfid , gdagh , * ggt , 792 gis , 793 ggbi , * ggb , 794 gnems , 795 gt , 796 gdagh . vnum ( l ), 797 gbwidth , gextghowidth , 798 govp , 799 ga__d , 800 gignmt , gmdex , 801 comm ( t , l ), ghas_shadow , 802 g_ag , 803 uxes ( t , l ), 804 ggdbtm ); 806 i( ggdbtm =0 || comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 810 i( gACEInGFOnCi = ACETrue ) { 811 i( l > && pfunc && ( g (|| shadow_g ())) { 813  mygc = 0; ACE_GFTy gmygs [1]; 814 i( g ()) 815 (* gpfunc )( FORTRAN_ARGS ( gf . gdb [ t ][ ][ gbi ]-> mage . da ), 816 FORTRAN_ARGS ( gdb [ t ][ l ][ gbi ]-> mage . da ), 817 BOUNDING_BOX ( gdb [ t ][ l ][ gbi ]-> mage . da ), 818 #ifde ACEVeGridFuni 819 gvgfag , 821 gmygs ,& gmygc ); 822 i( ghas_shadow && ghe_has_shadow && shadow_g ()) { 824 (* gpfunc )( FORTRAN_ARGS ( gf . gdb [ t ][ ][ gbi ]-> shage -> da ), 825 FORTRAN_ARGS ( gdb [ t ][ l ][ gbi ]-> shage -> da ), 826 BOUNDING_BOX ( gdb [ t ][ l ][ gbi ]-> shage -> da ), 827 #ifde ACEVeGridFuni 828 gvgfag , 830 gmygs ,& gmygc ); 832 i( ghas_shadow ) { 833 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gdb [t][l][gbi]-> mage . da ); 837 ggdb [ t ][ l ][ gbi ]-> gmage . gda . cy ( gf . gdb [t][ ][gbi]-> mage . da ); 838 i( ghas_shadow && ghe_has_shadow ) 839 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gf . gdb [t][ ][gbi]-> shage -> da ); 840 i( ghas_shadow ) 841 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gdb [t][l][gbi]-> mage . da ); 849 #ifde ACEVeGridFuni 850 i( gvgfag gde [] vgfflag; 853 i( comm ()) { 854 GF_GhGhoCommInfo (); 855 GF_SUpGhoCommSvs (); 857 i( ()) { 858 GF_GhPtCommInfo (); 859 GF_SUpPtCommSvs (); 861 i( uxes ()) { 862 GF_GhFluxCommInfo (); 863 GF_SUpFluxCommSvs (); 865 GF_SUpGDBPors (); 866 gcompo_ag = ACETrue ; 872 gme < ass gACE_GFTy > 873  GridFuni (2)< gACE_GFTy >:: $GF_Recompo (cڡ  omdex , 874 GridBoxLi & li , 875 GridBoxLi & i , 876 GridBoxLi & i , 877 GridBoxLi & i ) 880 cڡ  me = comm_rvi :: `oc_me (); 881 cڡ  um = comm_rvi :: `oc_num (); 883 #ifde ACEVeGridFuni 884 * vgfag = w [ nems ]; 885  vgfi =0;vgfi< nems ;vgfi++) 886 vgfag [ vgfi ] = ACETrue ; 889  t =0, l =0, i =0, oi =0, p =0, m =0; 890  GridBox * tmpgb = 0; 892 `GridDaBlock (2)< ACE_GFTy > **** dgdb = gdb ; gdb = 0; 893 cڡ  dngth = ngth ;ength = 0; 895 gt -> `ab (); 897 cڡ  mdex = dagh . `maxdex ()+1; 898 cڡ  vs = dagh . `tٮvs (); 899 cڡ  times = 2* time__d +1; 901 GridBoxLi * lgbl = dagh . `lgbl (); 902 ngth = lgbl -> `maxdex ()+1; 908 cڡ  ev = dagh . `crv (); 909 cڡ  has_shadow = `shadow (); 910 cڡ  shadow = dagh . `daghshadow (); 912 gdb = w `GridDaBlock (2)< ACE_GFTy > ***[ times ]; 913  t =0;t< times ;t++) { 914 gdb [ t ] = ( `GridDaBlock (2)< ACE_GFTy > *** NULL ; 915 i( dgdb [ t ]) { 916 gdb [ t ] = w `GridDaBlock (2)< ACE_GFTy > **[ vs ]; 917  l =0;l< vs ;l++) { 918 gdb [ t ][ l ] = w `GridDaBlock (2)< ACE_GFTy > *[ ngth ]; 919  i =0;i< ngth ;i++) 920 gdb [ t ][ l ][ i ] = ( `GridDaBlock (2)< ACE_GFTy > * NULL ; 926 `GF_DeGhoCommInfo (); 927 `GF_DeDaCommInfo (); 928 `GF_DePtCommInfo (); 929 `GF_DeFluxCommInfo (); 931  v = 0; 932  idx = 0; 933  dowr = ACENoBody ; 936 i( comm_rvi :: `d (&& um > 1) { 937 i(! i . `imy ()) { 939 #ifde DEBUG_PRINT_GF_RG 940 comm_rvi :: `log () << "\n************* Recv List *************\n" 941 << i 943 ). `ush (); 946 tmpgb = i . `f (); 947 v = 0; 948 idx = 0; 949 dowr = ACENoBody ; 951 i( me_ag = ACENu ) 953 i( rcvsize de []cvsize; 954 i( shrcvsize de [] shrcvsize; 956 rcvsize = w [ um ]; 957 shrcvsize = w [ um ]; 959  p =0;p< um ;p++) { 960 rcvsize [ p ] = shrcvsize [p] = 0; 963 BBox * rb = w BBox[ um * vs * omdex ]; 964 * oidx = w [ um * vs * omdex ]; 965  ridx = 0; 967 cڡ `GridDaBlock (2)< ACE_GFTy >* gdbtm = 0; 969 ; tmpgb ;tmpgb= i . `xt ()) { 970 dowr = tmpgb -> `gbOwr (); 973 #ifde DEBUG_PRINT_GF_RG 974 `as ( lgbl -> `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 975 tmpgb -> `gbCrsLev ()) == 1); 977 cڡ GridBox & mgb = lgbl -> `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 978 tmpgb -> `gbCrsLev ()); 979 idx = mgb . `gbIndex (); 980  l =0;l< vs ;l++) { 981 v = dagh . `vnum ( l ); 982 i! mgb . `gbCڏs ( v ) ) ; 983 gdbtm = 0; 984  t =0;t< times ;t++) { 985 i(! gdb [ t ] || !gdb[t][ l ]) ; 986 i(! gdb [ t ][ l ][ idx ]) { 987 gdb [ t ][ l ][ idx ] = w `GridDaBlock (2)< ACE_GFTy >( gfid , dagh , * gt , 988 is , 989 idx , mgb , 990 nems , 991 t , v , 992 bwidth , 993 extghowidth , 994 ovp , 995 a__d , 996 ignmt , mdex , 997 `comm ( t , l ), 998 has_shadow , 999 _ag , 1000 `uxes ( t , l ), 1001 gdbtm ); 1002 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1005 i( tmpgb -> `gbCڏs ( v )) { 1006 ridx = dowr * vs * omdex + l *omdex + tmpgb -> `gbIndex (); 1007 BBox `gb ( tmpgb -> `gbBBox ( v , ovp )); 1008 `gdbAlignBBox ( gk , gb , ignmt ); 1009 i( rb [ ridx ]. `emy (){b[ridx] = gb ; oidx [ridx] = idx ; } 1010 i( oidx [ ridx ] = idx && gb . `mgab ( rb [ridx], ovp )) { 1011 #ifde DEBUG_PRINT_GF_RG 1012 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1013 << "[Mgg: " << rb [ ridx ] << " & " << gb << " ]" 1014 << dl ). `ush (); 1016 rb [ ridx ] + gb ; 1019 rcvsize [ dowr ] + gdhdr :: `gdbsize ( nems *( ACE_GFTy )* rb [ ridx ]. `size ()); 1020 i( has_shadow = ACETrue shrcvsize [ dowr ] += 1021 gdhdr :: `gdbsize ( nems *( ACE_GFTy )* `crn ( rb [ ridx ], shadow ). `size ()); 1023 #ifde DEBUG_PRINT_GF_RG 1024 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1025 << "[From:" << dowr << "]" 1026 << "[BB:" << rb [ ridx ] << "]" 1027 << "[Si:" << tmpgb -> `gbIndex () << "]" 1028 << "[Ri:" << idx << "]" 1029 << "[Sl:" << l << "]" 1030 << dl ). `ush (); 1033 rb [ ridx ] = gb ; 1034 oidx [ ridx ] = idx ; 1039  p =0;p< um ;p++) { 1040  l =0;l< vs ;l++) { 1041  m =0;m< omdex ;m++) { 1042 ridx = p * vs * omdex + l *omdex + m ; 1043 i(! rb [ ridx ]. `emy ()) { 1045 #ifde DEBUG_PRINT_GF_RG 1046 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1047 << "[From:" << p << "]" 1048 << "[BB:" << rb [ ridx ] << "]" 1049 << "[Si:" << m << "]" 1050 << "[Ri:" << oidx [ ridx ] << "]" 1051 << "[Sl:" << l << "]" 1052 << dl ). `ush (); 1055 rcvsize [ p ] + gdhdr :: `gdbsize ( nems *( ACE_GFTy )* rb [ ridx ]. `size ()); 1056 i( has_shadow = ACETrue shrcvsize [ p ] += 1057 gdhdr :: `gdbsize ( nems *( ACE_GFTy )* `crn ( rb [ ridx ], shadow ). `size ()); 1058 rb [ ridx ]. `my (); 1063  t =0;t< times ;t++) { 1064 i(! gdb [ t ]) ; 1065  p =0;p< um ;p++) { 1066 i( me = p ) ; 1067 i( rcvsize [ p ] > 0 || shrcvsize [p] > 0) { 1068 i(! da_cv_rv [ p ]) { 1069 da_cv_rv [ p ] = w GridTabDaRcv *[ times ]; 1070  i =0; i< times ; i++ da_cv_rv [ p ][i] = 0; 1072 da_cv_rv [ p ][ t ] = 1073 w `GridTabDaRcv (* gt , ( ACEDaTag | t ), rcvsize [ p ]+ shrcvsize [p],); 1080 i( rb de []b; 1081 i( oidx de []toidx; 1087 `GridFuni (2)< ACE_GFTy >* geme = 1088 ( `GridFuni (2)< ACE_GFTy >* dagh . gi [ me_ag ]; 1090 rcvsize = geme ->rcvsize; 1091 shrcvsize = geme ->shrcvsize; 1093 cڡ `GridDaBlock (2)< ACE_GFTy >* gdbtm = 0; 1095 ; tmpgb ;tmpgb= i . `xt ()) { 1098 #ifde DEBUG_PRINT_GF_RG 1099 `as ( lgbl -> `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1100 tmpgb -> `gbCrsLev ()) == 1); 1102 cڡ GridBox & mgb = lgbl -> `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1103 tmpgb -> `gbCrsLev ()); 1105 idx = mgb . `gbIndex (); 1106  l =0;l< vs ;l++) { 1107 v = dagh . `vnum ( l ); 1108 i! mgb . `gbCڏs ( v ) ) ; 1109 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1110 cڡ  = dagh . `gCutTime ( l ); 1111  tmi = ACENu ; 1112 i( geme && 1113 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1114 && geme -> gdb [ tmi ][ l ]) 1115 gdbtm = geme -> gdb [ tmi ][ l ][ idx ]; 1116 gdbtm = 0; 1117  t =0;t< times ;t++) { 1118 i(! gdb [ t ] || !gdb[t][ l ]) ; 1119 i(! gdb [ t ][ l ][ idx ]) { 1120 gdb [ t ][ l ][ idx ] = w `GridDaBlock (2)< ACE_GFTy >( gfid , dagh , * gt , 1121 is , 1122 idx , mgb , 1123 nems , 1124 t , v , 1125 bwidth , 1126 extghowidth , 1127 ovp , 1128 a__d , 1129 ignmt , mdex , 1130 `comm ( t , l ), 1131 has_shadow , 1132 _ag , 1133 `uxes ( t , l ), 1134 gdbtm ); 1135 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1140  rsize = 0; 1141  t =0;t< times ;t++) { 1142 i(! gdb [ t ]) ; 1143  p =0;p< um ;p++) { 1144 i( me = p ) ; 1145 rsize = rcvsize [ p ]; 1146 i( has_shadow = ACETrue rsize + shrcvsize [ p ]; 1147 i( rsize > 0) { 1148 i(! da_cv_rv [ p ]) { 1149 da_cv_rv [ p ] = w GridTabDaRcv *[ times ]; 1150  i =0; i< times ; i++ da_cv_rv [ p ][i] = 0; 1152 da_cv_rv [ p ][ t ] = 1153 w `GridTabDaRcv (* gt , ( ACEDaTag | t ), rsize , p ); 1157 rcvsize = 0; 1158 shrcvsize = 0; 1164 i( comm_rvi :: `d (&& um > 1) { 1165  wowr = ACENoBody ; 1166 i(! i . `imy ()) { 1168 tmpgb = i . `f (); 1169 v = 0; 1170 idx = 0; 1172 i( me_ag = ACENu ) { 1174 = 2* i . `numb (); 1176 i( dsize de [] sndsize; 1177 i( dbbox de [] sndbbox; 1178 i( ddex de [] sndindex; 1179 i( rcvdex de []cvindex; 1180 i( dv de [] sndlevel; 1181 i( dt de [] sndcnt; 1183 dsize = w [ um * vs * ]; 1184 dbbox = w BBox [ um * vs * ]; 1185 ddex = w [ um * vs * ]; 1186 rcvdex = w [ um * vs * ]; 1187 dv = w [ um * vs * ]; 1189 dt = w [ um ]; 1191  p =0;p< um ;p++ dt [p] = 0; 1193 BBox * sb = w BBox[ um * vs * omdex ]; 1194 * oidx = w [ um * vs * omdex ]; 1196  nidx = 0; 1197  sidx = 0; 1198  tmpid = 0; 1200 ; tmpgb ;tmpgb= i . `xt ()) { 1203 #ifde DEBUG_PRINT_GF_RG 1204 `as ( li . `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1205 tmpgb -> `gbCrsLev ()) == 1); 1207 cڡ GridBox & wgb = li . `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1208 tmpgb -> `gbCrsLev ()); 1209 idx = wgb . `gbIndex (); 1210 wowr = tmpgb -> `gbOwr (); 1211  l =0;l< vs ;l++) { 1212 v = dagh . `vnum ( l ); 1213 i(! wgb . `gbCڏs ( v )) ; 1214 i( tmpgb -> `gbCڏs ( v )) { 1215 sidx = wowr * vs * omdex + l *omdex + idx ; 1216 nidx = tmpgb -> `gbIndex (); 1217 BBox `gb ( tmpgb -> `gbBBox ( v , ovp )); 1218 `gdbAlignBBox ( gk , gb , ignmt ); 1219 i( sb [ sidx ]. `emy (){ sb[sidx] = gb ; oidx [sidx] = nidx ; } 1220 i( oidx [ sidx ] = nidx && gb . `mgab ( sb [sidx], ovp )) { 1221 #ifde DEBUG_PRINT_GF_RG 1222 comm_rvi :: `log () << "GF_Recompose::SendInfo " 1223 << "[Mgg: " << sb [ sidx ] << " & " << gb << " ]" 1224 << dl ). `ush (); 1226 sb [ sidx ] + gb ; 1229 tmpid = wowr * vs * + dt [newowner]; 1230 dbbox [ tmpid ] = sb [ sidx ]; 1231 dsize [ tmpid ] = nems *( ACE_GFTy )* sb [ sidx ]. `size (); 1232 ddex [ tmpid ] = idx ; 1233 rcvdex [ tmpid ] = oidx [ sidx ]; 1234 dv [ tmpid ] = l ; 1236 #ifde DEBUG_PRINT_GF_RG 1237 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ wowr ] << "]" 1238 << "[To:" << wowr << "]" 1239 << "[BB:" << dbbox [ tmpid ] << "]" 1240 << "[Sz:" << dsize [ tmpid ] << "]" 1241 << "[Si:" << ddex [ tmpid ] << "]" 1242 << "[Ri:" << rcvdex [ tmpid ] << "]" 1243 << "[Sl:" << dv [ tmpid ] << "]" 1244 << dl ). `ush (); 1247 dt [ wowr ]++; 1249 i( has_shadow = ACETrue ) { 1250 cڡ BBox sbb = `crn ( sb [ sidx ], shadow ); 1251 dbbox [ tmpid +1] = sbb ; 1252 dsize [ tmpid +1] = nems *( ACE_GFTy )* sbb . `size (); 1253 ddex [ tmpid +1] = idx ; 1254 rcvdex [ tmpid +1] = oidx [ sidx ]; 1255 dv [ tmpid +1] = l ; 1257 #ifde DEBUG_PRINT_GF_RG 1258 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ wowr ] << "]" 1259 << "[To:" << wowr << "]" 1260 << "[BB:" << dbbox [ tmpid +1] << "]" 1261 << "[Sz:" << dsize [ tmpid +1] << "]" 1262 << "[Si:" << ddex [ tmpid +1] << "]" 1263 << "[Ri:" << rcvdex [ tmpid +1] << "]" 1264 << "[Sl:" << dv [ tmpid +1] << "]" 1265 << dl ). `ush (); 1268 dt [ wowr ]++; 1270 sb [ sidx ] = gb ; 1271 oidx [ sidx ] = nidx ; 1276  p =0;p< um ;p++) { 1277  l =0;l< vs ;l++) { 1278  m =0;m< omdex ;m++) { 1279 sidx = p * vs * omdex + l *omdex + m ; 1280 i(! sb [ sidx ]. `emy ()) { 1281 tmpid = p * vs * + dt [p]; 1282 dbbox [ tmpid ] = sb [ sidx ]; 1283 dsize [ tmpid ] = nems *( ACE_GFTy )* sb [ sidx ]. `size (); 1284 ddex [ tmpid ] = m ; 1285 rcvdex [ tmpid ] = oidx [ sidx ]; 1286 dv [ tmpid ] = l ; 1288 #ifde DEBUG_PRINT_GF_RG 1289 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ p ] << "]" 1290 << "[To:" << p << "]" 1291 << "[BB:" << dbbox [ tmpid ] << "]" 1292 << "[Sz:" << dsize [ tmpid ] << "]" 1293 << "[Si:" << ddex [ tmpid ] << "]" 1294 << "[Ri:" << rcvdex [ tmpid ] << "]" 1295 << "[Sl:" << dv [ tmpid ] << "]" 1296 << dl ). `ush (); 1299 dt [ p ]++; 1300 i( has_shadow = ACETrue ) { 1301 cڡ BBox sbb = `crn ( sb [ sidx ], shadow ); 1302 dbbox [ tmpid +1] = sbb ; 1303 dsize [ tmpid +1] = nems *( ACE_GFTy )* sbb . `size (); 1304 ddex [ tmpid +1] = m ; 1305 rcvdex [ tmpid +1] = oidx [ sidx ]; 1306 dv [ tmpid +1] = l ; 1308 #ifde DEBUG_PRINT_GF_RG 1309 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ p ] << "]" 1310 << "[To:" << p << "]" 1311 << "[BB:" << dbbox [ tmpid +1] << "]" 1312 << "[Sz:" << dsize [ tmpid +1] << "]" 1313 << "[Si:" << ddex [ tmpid +1] << "]" 1314 << "[Ri:" << rcvdex [ tmpid +1] << "]" 1315 << "[Sl:" << dv [ tmpid +1] << "]" 1316 << dl ). `ush (); 1319 dt [ p ]++; 1321 sb [ sidx ]. `my (); 1327  s = 0; 1328  off = 0; 1329  t =0;t< times ;t++) { 1330 i(! dgdb [ t ]) ; 1331  p =0;p< um ;p++) { 1332 i( p = me ) ; 1333 i( dt [ p ] == 0) ; 1334 off = p * vs * ; 1335 GridDaBuck < ACE_GFTy > * gdbkt = 1336 w GridDaBuck < ACE_GFTy >( dt [ p ],( dsize + off ), ACEPacked ); 1337 s = 0; 1338  s < dt [ p ]) { 1339 #ifde DEBUG_PRINT 1340 `as ( dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]); 1342 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1343 ACEA , ACE_Ma , ACENu , dbbox [ off + s ],* gdbkt ,s); 1344 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1346 #ifde DEBUG_PRINT_GF_RG 1347 comm_rvi :: `log () << "GF_Recompose::Sending" 1348 << * gdbkt -> `hd ( s ) 1349 << dl ). `ush (); 1352 s ++; 1353 i( has_shadow = ACETrue ) { 1354 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1355 ACEA , ACE_Shadow , ACENu , dbbox [ off + s ],* gdbkt ,s); 1356 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1358 #ifde DEBUG_PRINT_GF_RG 1359 comm_rvi :: `log () << "GF_Recompose::Sending" 1360 << * gdbkt -> `hd ( s ) 1361 << dl ). `ush (); 1364 s ++; 1367 gt -> `nd (( ACEDaTag | t ), gdbkt , p ); 1371 #ifde DEBUG_PRINT_GF_RG 1372 comm_rvi :: `log () << "\n************* Send List *************\n" 1373 << i 1375 ). `ush (); 1385 i( sb de [] sb; 1386 i( oidx de [] stoidx; 1392 `GridFuni (2)< ACE_GFTy >* geme = 1393 ( `GridFuni (2)< ACE_GFTy >* dagh . gi [ me_ag ]; 1395 = geme ->slen; 1396 dsize = geme ->sndsize; 1397 dbbox = geme ->sndbbox; 1398 ddex = geme ->sndindex; 1399 rcvdex = geme ->rcvindex; 1400 dv = geme ->sndlevel; 1401 dt = geme ->sndcnt; 1403  s = 0; 1404  off = 0; 1406  t =0;t< times ;t++) { 1407 i(! dgdb [ t ]) ; 1408  p =0;p< um ;p++) { 1409 i( p = me ) ; 1410 i( dt [ p ] == 0) ; 1411 off = p * vs * ; 1412 GridDaBuck < ACE_GFTy > * gdbkt = 1413 w GridDaBuck < ACE_GFTy >( dt [ p ],( dsize + off ), ACEPacked ); 1414 s = 0; 1415  s < dt [ p ]) { 1416 #ifde DEBUG_PRINT 1417 `as ( dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]); 1419 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1420 ACEA , ACE_Ma , ACENu , dbbox [ off + s ],* gdbkt ,s); 1421 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1423 #ifde DEBUG_PRINT_GF_RG 1424 comm_rvi :: `log () << "GF_Recompose::Sending" 1425 << * gdbkt -> `hd ( s ) 1426 << dl ). `ush (); 1429 s ++; 1430 i( has_shadow = ACETrue ) { 1431 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1432 ACEA , ACE_Shadow , ACENu , dbbox [ off + s ],* gdbkt ,s); 1433 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1435 #ifde DEBUG_PRINT_GF_RG 1436 comm_rvi :: `log () << "GF_Recompose::Sending" 1437 << * gdbkt -> `hd ( s ) 1438 << dl ). `ush (); 1441 s ++; 1444 gt -> `nd (( ACEDaTag | t ), gdbkt , p ); 1448 #ifde DEBUG_PRINT_GF_RG 1449 comm_rvi :: `log () << "\n************* Send List *************\n" 1450 << i 1452 ). `ush (); 1455 dsize = 0; 1456 dbbox = 0; 1457 ddex = 0; 1458 rcvdex = 0; 1459 dv = 0; 1460 dt = 0; 1468 `GridFuni (2)< ACE_GFTy >* geme = 0; 1469 i( me_ag ! ACENu ) { 1470 geme = ( `GridFuni (2)< ACE_GFTy >* dagh . gi [ me_ag ]; 1472 cڡ `GridDaBlock (2)< ACE_GFTy >* gdbtm = 0; 1474 `GridDaBlock (2)< ACE_GFTy >* gdbeu = 0; 1476  l =0;l< vs ;l++) { 1477 v = dagh . `vnum ( l ); 1478 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1479 cڡ  = dagh . `gCutTime ( l ); 1480  tmi = ACENu ; 1483  GridBox * mgb = lgbl -> `f ();mgb;mgbgbl-> `xt ()) { 1484 i(! mgb -> `gbCڏs ( v )) ; 1485 i = mgb -> `gbIndex (); 1486 i( me_ag ! ACENu && 1487 geme && 1488 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1489 && geme -> gdb [ tmi ][ l ]) 1490 gdbtm = geme -> gdb [ tmi ][ l ][ i ]; 1491 gdbtm = 0; 1493 #ide ACE_NO_REUSE_GDB 1494 #ifde DEBUG_PRINT_GF_RG 1495 `as ( li . `absmches ( mgb -> `gbBBox ( v ),lev) <= 1); 1497  ci = li . `absdex ( mgb -> `gbBBox ( v ),lev); 1500  t =0;t< times ;t++) { 1501 i(! gdb [ t ] || !gdb[t][ l ]) ; 1502 i(! gdb [ t ][ l ][ i ]) { 1504 #ide ACE_NO_REUSE_GDB 1505 i( ci ! ACENu && 1506 dgdb [ t ] && oldgdb[t][ l ] && oldgdb[t][l][ ci ]) 1507 gdbeu = dgdb [ t ][ l ][ ci ]; 1510 gdbeu = 0; 1512 gdb [ t ][ l ][ i ] = w `GridDaBlock (2)< ACE_GFTy >( gfid , dagh , * gt , 1513 is , 1514 i , * mgb , 1515 nems , 1516 t , v , 1517 bwidth , 1518 extghowidth , 1519 ovp , 1520 a__d , 1521 ignmt , mdex , 1522 `comm ( t , l ), 1523 has_shadow , 1524 _ag , 1525 `uxes ( t , l ), 1526 gdbtm , 1527 gdbeu ); 1528 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ i ]; 1536 i( `comm ()) { 1537 `GF_GhGhoCommInfo (); 1538 `GF_SUpGhoCommSvs (); 1540 i( ` ()) { 1541 `GF_GhPtCommInfo (); 1542 `GF_SUpPtCommSvs (); 1544 i( `uxes ()) { 1545 `GF_GhFluxCommInfo (); 1546 `GF_SUpFluxCommSvs (); 1548 `GF_SUpGDBPors (); 1555 #ifde DEBUG_PRINT_GF_RG 1556 comm_rvi :: `log () << "\n************* Overlap List *************\n" 1557 << i 1559 ). `ush (); 1562  l =0;l< vs ;l++) { 1563 cڡ  v = dagh . `vnum ( l ); 1565 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1566 cڡ  i = ( times ==1? ACENu : 1567 `dagh_timedex ( dagh . `gPviousTime ( l ),l); 1568 cڡ  i = ( times ==1? ACENu : 1569 `dagh_timedex ( dagh . `gNextTime ( l ),l); 1570 cڡ  t = dagh . `time ( l ); 1572  m =0;m< times ;mpt++) { 1573 i(! gdb [ m ] || !gdb[m][ l ]) ; 1575 i( m == 0) { 1576 t = i ; 1578 i( m < time__d ) { 1579 t = time__d - m ; 1582 t = m ; 1584 i( l > 0 i = 0 ; i < ngth ; i++) { 1585 i(! gdb [ t ] || 1586 ! gdb [ t ][ l ] || 1587 ! gdb [ t ][ l ][ i ] || 1588 ! gdb [ t ][ l ][ i ]-> `dexme (i) || 1589 gdb [ t ][ l ][ i ]-> `has_ud ()) ; 1592 i( l > 0 && gdb [ t ][l-1] && gdb[t][l-1][ i ]) { 1593 i( pfunc && ( `g (|| `shadow_g ())) { 1595  mygc = 0; ACE_GFTy mygs [1]; 1596 i( `g ()) { 1597 (* pfunc )( `FORTRAN_ARGS ( gdb [ t ][ l -1][ i ]-> mage . da ), 1598 `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> mage . da ), 1599 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> mage . da ), 1600 #ifde ACEVeGridFuni 1601 vgfag , 1603 mygs ,& mygc ); 1605 i( has_shadow = ACETrue && `shadow_g ()) { 1606 (* pfunc )( `FORTRAN_ARGS ( gdb [ t ][ l -1][ i ]-> shage -> da ), 1607 `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> shage -> da ), 1608 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> shage -> da ), 1609 #ifde ACEVeGridFuni 1610 vgfag , 1612 mygs ,& mygc ); 1615 i( `timeީe (|| `shadow_timeީe ()) { 1617 i( t = i &&t! ACENu && i >ti && 1618 gdb [ i ] && gdb[i][ l ][ i ]) { 1622 cڡ ac = 1.0/ dagh . `fe (); 1623 cڡ emac = 1.0- ac ; 1624 i( func ) { 1625 i( `timeީe ()) { 1626 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1627 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1628 & emac , 1629 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1630 & ac , 1631 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> mage . da ) 1632 #ifde ACEVeGridFuni 1633 , vgfag 1637 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1638 cڡ shac = 1.0/ dagh . `fe (); 1639 cڡ emshac = 1.0 - shac ; 1640 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1641 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1642 & emshac , 1643 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1644 & shac , 1645 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> shage -> da ) 1646 #ifde ACEVeGridFuni 1647 , vgfag 1653 i( `timeީe ()) { 1654 gdb [ i ][ l ][ i ]-> mage . da . `l_ ( 1655 gdb [ i ][ l ][ i ]-> mage . da ,(1.0- ac ), 1656 gdb [ i ][ l ][ i ]-> mage . da , ac ); 1658 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1659 cڡ shac = 1.0/ dagh . `fe (); 1660 gdb [ i ][ l ][ i ]-> shage -> da . `l_ ( 1661 gdb [ i ][ l ][ i ]-> shage -> da ,(1.0- shac ), 1662 gdb [ i ][ l ][ i ]-> shage -> da , shac ); 1668 i( i ! ACENu && t =&&t> i && 1669 gdb [ i ] && gdb[i][ l ][ i ]) { 1670 cڡ ac = 1.0/ dagh . `fe (); 1671 cڡ emac = 1.0 - ac ; 1672 i( func ) { 1673 i( `timeީe ()) { 1674 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1675 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1676 & emac , 1677 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1678 & ac , 1679 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> mage . da ) 1680 #ifde ACEVeGridFuni 1681 , vgfag 1685 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1686 cڡ shac = 1.0/ dagh . `fe (); 1687 cڡ emshac = 1.0 - shac ; 1688 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1689 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1690 & emshac , 1691 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1692 & shac , 1693 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> shage -> da ) 1694 #ifde ACEVeGridFuni 1695 , vgfag 1701 i( `timeީe ()) { 1702 gdb [ i ][ l ][ i ]-> mage . da . `l_ ( 1703 gdb [ i ][ l ][ i ]-> mage . da ,(1.0- ac ), 1704 gdb [ i ][ l ][ i ]-> mage . da , ac ); 1706 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1707 cڡ shac = 1.0/ dagh . `fe (); 1708 gdb [ i ][ l ][ i ]-> shage -> da . `l_ ( 1709 gdb [ i ][ l ][ i ]-> shage -> da ,(1.0- shac ), 1710 gdb [ i ][ l ][ i ]-> shage -> da , shac ); 1716 i( l > 0 && !( gdb [ t ][l-1] && gdb[t][l-1][ i ])) { 1717 `as (0); 1722  tmpgb = i . `f (); 1723 tmpgb ;tmpgb= i . `xt ()) { 1724 #ifde DEBUG_PRINT 1725 `as ( tmpgb -> `gbOwr (= me ); 1727 i( tmpgb -> `gbCڏs ( v )) { 1728 oi = tmpgb -> `gbIndex (); 1730 #ifde DEBUG_PRINT_GF_RG 1731 comm_rvi :: `log () << "OVERLAP INDEX MATCHES : " 1732 << lgbl -> `mches ( tmpgb -> `gbBBox ( v ),v<< dl ). `ush (); 1734  ni = lgbl -> `dex ( tmpgb -> `gbBBox ( v ),lev); 1735 i( ni = ACENu || ! gdb [ t ][ l ][ni] || gdb[t][l][ni]-> `has_ud ()) 1737 #ifde DEBUG_PRINT 1738 `as ( dgdb [ t ][ l ][ oi ] && 1739 dgdb [ t ][ l ][ oi ]-> mage . da . `ok_to_dex ()); 1740 i( has_shadow = ACETrue ) 1741 `as ( dgdb [ t ][ l ][ oi ] && 1742 dgdb [ t ][ l ][ oi ]-> shage -> da . `ok_to_dex ()); 1744 gdb [ t ][ l ][ ni ]-> mage . da . `cy ( 1745 dgdb [ t ][ l ][ oi ]-> mage . da ); 1746 i( has_shadow = ACETrue ) 1747 gdb [ t ][ l ][ ni ]-> shage -> da . `cy ( 1748 dgdb [ t ][ l ][ oi ]-> shage -> da ); 1753 i( comm_rvi :: `d (&& um > 1) { 1754  p =0;< um ;++) { 1755 i( da_cv_rv [ p ] && da_cv_rv[p][ t ]) { 1756 i(! da_cv_rv [ p ][ t ]-> `ived ()) 1757 comm_rvi :: `rve (* da_cv_rv [ p ][ t ]-> `q ()); 1758 de da_cv_rv [ p ][ t ]; 1759 da_cv_rv [ p ][ t ] = 0; 1762 `GF_RdDa ( t , l ); 1780  t =0;t< times ;t++) { 1781 i(! gdb [ t ] || !gdb[t][ l ]) ; 1782 i( `comm ()) { 1783 cڡ  um = `dagh_timevue ( t , l ); 1784 `GF_Sync ( um , l , ACE_Ma ); 1785 i( has_shadow = ACETrue `GF_Sync ( um , l , ACE_Shadow ); 1790 gt -> `tdab (); 1793  p =0;p< um ;p++) { 1794 i( da_cv_rv [ p ]) { 1795 de [] da_cv_rv [ p ]; 1796 da_cv_rv [ p ] = 0; 1802 i( dgdb ) 1804  t =0;t< times ;t++) 1806 i( dgdb [ t ]) 1808  l =0;l< vs ;l++) 1810 i( dgdb [ t ][ l ]) 1812  i =0;i< dngth ;i++) 1814 i( dgdb [ t ][ l ][ i ] && oldgdb[t][l][i]-> `dexme (i)) 1816  tmpi = i +1; 1817 tmpi < dngth && dgdb [ t ][ l ][tmpi] && oldgdb[t][l][tmpi]-> `dexme ( i ); 1818 tmpi ++) 1819 dgdb [ t ][ l ][ tmpi ] = 0; 1820 de dgdb [ t ][ l ][ i ]; oldgdb[t][l][i] = 0; 1825 de [] dgdb [ t ] ; 1828 de [] dgdb ; 1832 #ifde ACEVeGridFuni 1833 i( vgfag de [] vgfflag; 1835 } } 1839 gme < ass gACE_GFTy > 1840  GridFuni (2)< gACE_GFTy >:: $GF_CheckpotRecompo () 1842 cڡ  me = comm_rvi :: `oc_me (); 1843 cڡ  um = comm_rvi :: `oc_num (); 1845  t =0, l =0, i =0; 1847 `GridDaBlock (2)< ACE_GFTy > **** dgdb = gdb ; gdb = 0; 1848 cڡ  dngth = ngth ;ength = 0; 1850 gt -> `ab (); 1852 cڡ  mdex = dagh . `maxdex ()+1; 1853 cڡ  vs = dagh . `tٮvs (); 1854 cڡ  times = 2* time__d +1; 1856 GridBoxLi * lgbl = dagh . `lgbl (); 1857 ngth = lgbl -> `maxdex ()+1; 1859 cڡ  ev = dagh . `crv (); 1860 cڡ  has_shadow = `shadow (); 1861 cڡ  shadow = dagh . `daghshadow (); 1863 gdb = w `GridDaBlock (2)< ACE_GFTy > ***[ times ]; 1864  t =0;t< times ;t++) { 1865 gdb [ t ] = ( `GridDaBlock (2)< ACE_GFTy > *** NULL ; 1866 i( dgdb [ t ]) { 1867 gdb [ t ] = w `GridDaBlock (2)< ACE_GFTy > **[ vs ]; 1868  l =0;l< vs ;l++) { 1869 gdb [ t ][ l ] = w `GridDaBlock (2)< ACE_GFTy > *[ ngth ]; 1870  i =0;i< ngth ;i++) 1871 gdb [ t ][ l ][ i ] = ( `GridDaBlock (2)< ACE_GFTy > * NULL ; 1877 `GF_DeGhoCommInfo (); 1878 `GF_DeDaCommInfo (); 1879 `GF_DePtCommInfo (); 1880 `GF_DeFluxCommInfo (); 1883 i( dgdb ) { 1884  t =0;t< times ;t++) 1886 i( dgdb [ t ]) 1888  l =0;l< vs ;l++) 1890 i( dgdb [ t ][ l ]) 1892  i =0;i< dngth ;i++) 1893 i( dgdb [ t ][ l ][ i ] && oldgdb[t][l][i]-> `dexme (i)) 1895  tmpi = i +1; 1898 tmpi < dngth && dgdb [ t ][ l ][tmpi] && oldgdb[t][l][tmpi]-> `dexme ( i ); 1899 tmpi ++) 1900 dgdb [ t ][ l ][ tmpi ] = 0; 1901 de dgdb [ t ][ l ][ i ]; oldgdb[t][l][i] = 0; 1903 de [] dgdb [ t ][ l ]; oldgdb[t][l] = 0; 1906 de [] dgdb [ t ]; oldgdb[t] = 0; 1909 de [] dgdb ; oldgdb = 0; 1914 `GridFuni (2)< ACE_GFTy >* geme = 0; 1915 i( me_ag ! ACENu ) { 1916 geme = ( `GridFuni (2)< ACE_GFTy >* dagh . gi [ me_ag ]; 1918 cڡ `GridDaBlock (2)< ACE_GFTy >* gdbtm = 0; 1920  GridBox * tmpgb = 0; 1921  idx = 0; 1922  l =0;l< vs ;l++) { 1923 cڡ  v = dagh . `vnum ( l ); 1924 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1925 cڡ  = dagh . `gCutTime ( l ); 1926  tmi = ACENu ; 1928  tmpgb = lgbl -> `f ();tmpgb;tmpgbgbl-> `xt ()) { 1929 i(! tmpgb -> `gbCڏs ( v )) ; 1930 idx = tmpgb -> `gbIndex (); 1931 i( me_ag ! ACENu && 1932 geme && 1933 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1934 && geme -> gdb [ tmi ][ l ]) 1935 gdbtm = geme -> gdb [ tmi ][ l ][ idx ]; 1936 gdbtm = 0; 1937  t =0;t< times ;t++) { 1938 i(! gdb [ t ] || !gdb[t][ l ]) ; 1940 i(! gdb [ t ][ l ][ idx ]) { 1941 gdb [ t ][ l ][ idx ] = w `GridDaBlock (2)< ACE_GFTy >( gfid , dagh , * gt , 1942 is , 1943 idx , * tmpgb , 1944 nems , 1945 t , v , 1946 bwidth , 1947 extghowidth , 1948 ovp , 1949 a__d , 1950 ignmt , mdex , 1951 `comm ( t , l ), 1952 has_shadow , 1953 _ag , 1954 `uxes ( t , l ), 1955 gdbtm ); 1956 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1964 i( `comm ()) { 1965 `GF_GhGhoCommInfo (); 1966 `GF_SUpGhoCommSvs (); 1968 i( ` ()) { 1969 `GF_GhPtCommInfo (); 1970 `GF_SUpPtCommSvs (); 1972 i( `uxes ()) { 1973 `GF_GhFluxCommInfo (); 1974 `GF_SUpFluxCommSvs (); 1976 `GF_SUpGDBPors (); 1978 i( `checkpot () `GF_CheckpotRet (); 1980 } } 1986 gme < ass gACE_GFTy > 1987  GridFuni (2)< gACE_GFTy >:: $GF_SUpGhoCommSvs () 1989 i(! `comm ()) ; 1991 cڡ  um = comm_rvi :: `oc_num (); 1992 cڡ  me = comm_rvi :: `oc_me (); 1994 cڡ  vs = dagh . `tٮvs (); 1995 cڡ  t = vs * ACEMaxAxis * ACEMaxDs ; 1997  i =0;i< um ;i++) { 1998 i( i = me || ! gho_cv_fo [i]) ; 1999 i(! gho_cv_rv [ i ]) { 2000 gho_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2001  c =0; c< t ; c++ gho_cv_rv [ i ][c] = 0; 2003  j =0;j< t ;j++) { 2004 i(! gho_cv_fo [ i ][ j ]) ; 2005 cڡ GF_Iai * gri = gho_cv_fo [ i ][ j ]; 2006 gho_cv_rv [ i ][ j ] = 2007 w `GridTabGhoRcv (* gt , ( ACEGhoTag | j ), gri -> tsize , i ); 2010 } } 2015 gme < ass gACE_GFTy > 2016  GridFuni (2)< gACE_GFTy >:: $GF_GhGhoCommInfo () 2018 i(! `comm ()) ; 2020 cڡ  me = comm_rvi :: `oc_me (); 2022  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2023  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2025 cڡ  um = comm_rvi :: `oc_num (); 2026 cڡ  vs = dagh . `tٮvs (); 2027 cڡ  t1 = vs * ACEMaxAxis * ACEMaxDs ; 2028 cڡ  t2 = ACEMaxAxis * ACEMaxDs ; 2029 cڡ  mdex = dagh . `maxdex ()+1; 2031 i( gho_cv_t de [] ghost_recv_cnt; 2032 gho_cv_t = w [ t1 ]; 2033  k =0;k< t1 ;k++ gho_cv_t [k] = 0; 2035 Li <> rsize ; 2036 Li <> wsize ; 2037  r =0, w =0; 2039 #ifde ACEVeGridFuni 2040 Li <> mrsize ; 2041 Li <> mwsize ; 2042  mr =0, mw =0; 2045 `GridDaBlock (2)< ACE_GFTy > * g = 0; 2046 GDB_Iai * gdbi = 0; 2048  p =0;p< um ;p++) { 2049  l =0;l< vs ;l++) { 2050  c =0;c< t2 ;c++) { 2051 cڡ  idx1 = l * t2 + c ; 2052 cڡ  idx2 = c * mdex ; 2053  i =0; i< ngth ; i++) { 2054 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2055 g = gdb [ t ][ l ][ i ]; 2056  m =0; m< mdex ; m++) { 2058 i( g -> gdb_wre_fo [ p ] && ( gdbi =g->gdb_wre_fo[p][ idx2 + m ])) { 2060 i(! gho_nd_fo [ p ]) { 2061 gho_nd_fo [ p ] = w GF_Iai * [ t1 ]; 2062  k =0;k< t1 ;k++ gho_nd_fo [ p ][k] = 0; 2064 i(! gho_nd_fo [ p ][ idx1 ]) 2065 gho_nd_fo [ p ][ idx1 ] = w GF_Iai ; 2067 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2068 gho_nd_fo [ p ][ idx1 ]-> tsize + gdhdr :: `gdbsize ( w ); 2069 #ifde ACEVeGridFuni 2070 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2071 gho_nd_fo [ p ][ idx1 ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2073 #ifde DEBUG_PRINT 2074 `as w != 0 ); 2076 wsize . `add ( w ); 2077 #ifde ACEVeGridFuni 2078 mwsize . `add ( mw ); 2082 i( g -> gdb_ad_fo [ p ] && ( gdbi =g->gdb_ad_fo[p][ idx2 + m ])) { 2084 i(! gho_cv_fo [ p ]) { 2085 gho_cv_fo [ p ] = w GF_Iai * [ t1 ]; 2086  k =0;k< t1 ;k++ gho_cv_fo [ p ][k] = 0; 2088 i(! gho_cv_fo [ p ][ idx1 ]) 2089 gho_cv_fo [ p ][ idx1 ] = w GF_Iai ; 2091 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2092 gho_cv_fo [ p ][ idx1 ]-> tsize + gdhdr :: `gdbsize ( r ); 2093 #ifde ACEVeGridFuni 2094 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2095 gho_cv_fo [ p ][ idx1 ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2097 #ifde DEBUG_PRINT 2098 `as r != 0 ); 2100 rsize . `add ( r ); 2101 #ifde ACEVeGridFuni 2102 mrsize . `add ( mr ); 2108 i( gho_nd_fo [ p ] && gho_nd_fo[p][ idx1 ]) { 2109 wsize . `y ( gho_nd_fo [ p ][ idx1 ]-> size ,gho_nd_fo[p][idx1]-> t ); 2110 #ifde ACEVeGridFuni 2111 mwsize . `y ( gho_nd_fo [ p ][ idx1 ]-> msize ,gho_nd_fo[p][idx1]-> t ); 2114 i( gho_cv_fo [ p ] && gho_cv_fo[p][ idx1 ]) { 2115 rsize . `y ( gho_cv_fo [ p ][ idx1 ]-> size ,gho_cv_fo[p][idx1]-> t ); 2116 i( p ! me gho_cv_t [ idx1 ] + gho_cv_fo [p][idx1]-> t ; 2117 #ifde ACEVeGridFuni 2118 mrsize . `y ( gho_cv_fo [ p ][ idx1 ]-> msize ,gho_cv_fo[p][idx1]-> t ); 2121 wsize . `emy (); rsize .empty(); 2122 #ifde ACEVeGridFuni 2123 mwsize . `emy (); mrsize .empty(); 2127 #ifde DEBUG_PRINT_GF_COMM 2128 comm_rvi :: `log (<< "[GF_Iai:[" << p << "]" << dl ). `ush (); 2129  k =0;k< t1 ;k++) { 2130 i( gho_cv_fo [ p ] && gho_cv_fo[p][ k ]) 2131 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2132 << * gho_cv_fo [ p ][ k ] << "]" 2133 << dl ). `ush (); 2135 comm_rvi :: `log (<< dl ). `ush (); 2136  k =0;k< t1 ;k++) { 2137 i( gho_nd_fo [ p ] && gho_nd_fo[p][ k ]) 2138 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2139 << * gho_nd_fo [ p ][ k ] << "]" 2140 << dl ). `ush (); 2142 comm_rvi :: `log (<< "]" << dl ). `ush (); 2145 } } 2150 gme < ass gACE_GFTy > 2151  GridFuni (2)< gACE_GFTy >:: $GF_SUpPtCommSvs () 2153 i(! ` ()) ; 2155 cڡ  um = comm_rvi :: `oc_num (); 2156 cڡ  me = comm_rvi :: `oc_me (); 2158 cڡ  t = dagh . `tٮvs (); 2160  i = 0; 2161  i =0;i< um ;i++) { 2162 i( i = me || ! g_cv_fo [i]) ; 2163 i(! g_cv_rv [ i ]) { 2164 g_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2165  c =0; c< t ; c++ g_cv_rv [ i ][c] = 0; 2167  j =0;j< t ;j++) { 2168 i(! g_cv_fo [ i ][ j ]) ; 2169 cڡ GF_Iai * gri = g_cv_fo [ i ][ j ]; 2170 g_cv_rv [ i ][ j ] = 2171 w `GridTabGhoRcv (* gt , ( ACEGPtTag | j ), gri -> tsize , i ); 2175  i =0;i< um ;i++) { 2176 i( i = me || ! t_cv_fo [i]) ; 2177 i(! t_cv_rv [ i ]) { 2178 t_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2179  c =0; c< t ; c++ t_cv_rv [ i ][c] = 0; 2181  j =0;j< t ;j++) { 2182 i(! t_cv_fo [ i ][ j ]) ; 2183 cڡ GF_Iai * gri = t_cv_fo [ i ][ j ]; 2184 t_cv_rv [ i ][ j ] = 2185 w `GridTabGhoRcv (* gt , ( ACESPtTag | j ), gri -> tsize , i ); 2188 } } 2193 gme < ass gACE_GFTy > 2194  GridFuni (2)< gACE_GFTy >:: $GF_GhGPtCommInfo () 2196 i(! ` ()) ; 2198 cڡ  me = comm_rvi :: `oc_me (); 2200  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2201  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2203 cڡ  um = comm_rvi :: `oc_num (); 2204 cڡ  vs = dagh . `tٮvs (); 2205 cڡ  mdex = dagh . `maxdex ()+1; 2207 Li <> rsize ; 2208 Li <> wsize ; 2209  r =0, w =0; 2211 #ifde ACEVeGridFuni 2212 Li <> mrsize ; 2213 Li <> mwsize ; 2214  mr =0, mw =0; 2217 `GridDaBlock (2)< ACE_GFTy >* g = 0; 2218 GDB_Iai * gdbi = 0; 2220  p =0;p< um ;p++) { 2221  l =0;l< vs ;l++) { 2222 cڡ  idx = p * mdex ; 2223  i =0; i< ngth ; i++) { 2224 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2225 g = gdb [ t ][ l ][ i ]; 2226  m =0; m< mdex ; m++) { 2228 i( g -> gdb_g_wre_fo && ( gdbi =g->gdb_g_wre_fo[ idx + m ])) { 2230 i(! g_nd_fo [ p ]) { 2231 g_nd_fo [ p ] = w GF_Iai * [ vs ]; 2232  k =0;k< vs ;k++ g_nd_fo [ p ][k] = 0; 2234 i(! g_nd_fo [ p ][ l ]) 2235 g_nd_fo [ p ][ l ] = w GF_Iai ; 2237 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2238 g_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2239 #ifde ACEVeGridFuni 2240 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2241 g_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2243 #ifde DEBUG_PRINT 2244 `as w != 0 ); 2246 wsize . `add ( w ); 2247 #ifde ACEVeGridFuni 2248 mwsize . `add ( mw ); 2252 i( g -> gdb_g_ad_fo && ( gdbi =g->gdb_g_ad_fo[ idx + m ])) { 2254 i(! g_cv_fo [ p ]) { 2255 g_cv_fo [ p ] = w GF_Iai * [ vs ]; 2256  k =0;k< vs ;k++ g_cv_fo [ p ][k] = 0; 2258 i(! g_cv_fo [ p ][ l ]) 2259 g_cv_fo [ p ][ l ] = w GF_Iai ; 2261 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2262 g_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2263 #ifde ACEVeGridFuni 2264 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2265 g_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2267 #ifde DEBUG_PRINT 2268 `as r != 0 ); 2270 rsize . `add ( r ); 2271 #ifde ACEVeGridFuni 2272 mrsize . `add ( mr ); 2278 i( g_nd_fo [ p ] && g_nd_fo[p][ l ]) { 2279 wsize . `y ( g_nd_fo [ p ][ l ]-> size ,g_nd_fo[p][l]-> t ); 2280 #ifde ACEVeGridFuni 2281 mwsize . `y ( g_nd_fo [ p ][ l ]-> msize ,g_nd_fo[p][l]-> t ); 2284 i( g_cv_fo [ p ] && g_cv_fo[p][ l ]) { 2285 rsize . `y ( g_cv_fo [ p ][ l ]-> size ,g_cv_fo[p][l]-> t ); 2286 #ifde ACEVeGridFuni 2287 mrsize . `y ( g_cv_fo [ p ][ l ]-> msize ,g_cv_fo[p][l]-> t ); 2290 wsize . `emy (); rsize .empty(); 2291 #ifde ACEVeGridFuni 2292 mwsize . `emy (); mrsize .empty(); 2295 #ifde DEBUG_PRINT_GF_COMM 2296 comm_rvi :: `log (<< "[GF_Iai(GhPt):[" << p << "]" << dl ). `ush (); 2297  k =0;k< vs ;k++) { 2298 i( g_cv_fo [ p ] && g_cv_fo[p][ k ]) 2299 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2300 << * g_cv_fo [ p ][ k ] << "]" 2301 << dl ). `ush (); 2303 comm_rvi :: `log (<< dl ). `ush (); 2304  k =0;k< vs ;k++) { 2305 i( g_nd_fo [ p ] && g_nd_fo[p][ k ]) 2306 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2307 << * g_nd_fo [ p ][ k ] << "]" 2308 << dl ). `ush (); 2310 comm_rvi :: `log (<< "]" << dl ). `ush (); 2313 } } 2315 gme < ass gACE_GFTy > 2316  GridFuni (2)< gACE_GFTy >:: $GF_GhSPtCommInfo () 2318 i(! ` ()) ; 2320 cڡ  me = comm_rvi :: `oc_me (); 2322  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2323  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2325 cڡ  um = comm_rvi :: `oc_num (); 2326 cڡ  vs = dagh . `tٮvs (); 2327 cڡ  mdex = dagh . `maxdex ()+1; 2329 Li <> rsize ; 2330 Li <> wsize ; 2331  r =0, w =0; 2333 #ifde ACEVeGridFuni 2334 Li <> mrsize ; 2335 Li <> mwsize ; 2336  mr =0, mw =0; 2339 `GridDaBlock (2)< ACE_GFTy >* g = 0; 2340 GDB_Iai * gdbi = 0; 2342  p =0;p< um ;p++) { 2343  l =0;l< vs ;l++) { 2344 cڡ  idx = p * mdex ; 2345  i =0; i< ngth ; i++) { 2346 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2347 g = gdb [ t ][ l ][ i ]; 2348  m =0; m< mdex ; m++) { 2350 i( g -> gdb_t_wre_fo && ( gdbi =g->gdb_t_wre_fo[ idx + m ])) { 2352 i(! t_nd_fo [ p ]) { 2353 t_nd_fo [ p ] = w GF_Iai * [ vs ]; 2354  k =0;k< vs ;k++ t_nd_fo [ p ][k] = 0; 2356 i(! t_nd_fo [ p ][ l ]) 2357 t_nd_fo [ p ][ l ] = w GF_Iai ; 2359 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2360 t_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2361 #ifde ACEVeGridFuni 2362 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2363 t_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2365 #ifde DEBUG_PRINT 2366 `as w != 0 ); 2368 wsize . `add ( w ); 2369 #ifde ACEVeGridFuni 2370 mwsize . `add ( mw ); 2374 i( g -> gdb_t_ad_fo && ( gdbi =g->gdb_t_ad_fo[ idx + m ])) { 2376 i(! t_cv_fo [ p ]) { 2377 t_cv_fo [ p ] = w GF_Iai * [ vs ]; 2378  k =0;k< vs ;k++ t_cv_fo [ p ][k] = 0; 2380 i(! t_cv_fo [ p ][ l ]) 2381 t_cv_fo [ p ][ l ] = w GF_Iai ; 2383 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2384 t_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2385 #ifde ACEVeGridFuni 2386 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2387 t_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2389 #ifde DEBUG_PRINT 2390 `as r != 0 ); 2392 rsize . `add ( r ); 2393 #ifde ACEVeGridFuni 2394 mrsize . `add ( mr ); 2400 i( t_nd_fo [ p ] && s_nd_fo[p][ l ]) { 2401 wsize . `y ( t_nd_fo [ p ][ l ]-> size ,t_nd_fo[p][l]-> t ); 2402 #ifde ACEVeGridFuni 2403 mwsize . `y ( t_nd_fo [ p ][ l ]-> msize ,t_nd_fo[p][l]-> t ); 2406 i( t_cv_fo [ p ] && s_cv_fo[p][ l ]) { 2407 rsize . `y ( t_cv_fo [ p ][ l ]-> size ,t_cv_fo[p][l]-> t ); 2408 #ifde ACEVeGridFuni 2409 mrsize . `y ( t_cv_fo [ p ][ l ]-> msize ,t_cv_fo[p][l]-> t ); 2412 wsize . `emy (); rsize .empty(); 2413 #ifde ACEVeGridFuni 2414 mwsize . `emy (); mrsize .empty(); 2417 #ifde DEBUG_PRINT_GF_COMM 2418 comm_rvi :: `log (<< "[GF_Iai(SPt):[" << p << "]" << dl ). `ush (); 2419  k =0;k< vs ;k++) { 2420 i( t_cv_fo [ p ] && s_cv_fo[p][ k ]) 2421 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2422 << * t_cv_fo [ p ][ k ] << "]" 2423 << dl ). `ush (); 2425 comm_rvi :: `log (<< dl ). `ush (); 2426  k =0;k< vs ;k++) { 2427 i( t_nd_fo [ p ] && s_nd_fo[p][ k ]) 2428 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2429 << * t_nd_fo [ p ][ k ] << "]" 2430 << dl ). `ush (); 2432 comm_rvi :: `log (<< "]" << dl ). `ush (); 2435 } } 2441 gme < ass gACE_GFTy > 2442  GridFuni (2)< gACE_GFTy >:: $GF_SUpFluxCommSvs () 2444 i(! `uxes ()) ; 2446 cڡ  um = comm_rvi :: `oc_num (); 2447 cڡ  me = comm_rvi :: `oc_me (); 2449 cڡ  t = dagh . `tٮvs (); 2451  i =0;i< um ;i++) { 2452 i( i = me || ! ux_cv_fo [i]) ; 2453 i(! ux_cv_rv [ i ]) { 2454 ux_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2455  c =0; c< t ; c++ ux_cv_rv [ i ][c] = 0; 2457  j =0;j< t ;j++) { 2458 i(! ux_cv_fo [ i ][ j ]) ; 2459 cڡ GF_Iai * gri = ux_cv_fo [ i ][ j ]; 2460 ux_cv_rv [ i ][ j ] = 2461 w `GridTabGhoRcv (* gt , ( ACEFluxTag | j ), gri -> tsize , i ); 2464 } } 2469 gme < ass gACE_GFTy > 2470  GridFuni (2)< gACE_GFTy >:: $GF_GhFluxCommInfo () 2472 i(! `uxes ()) ; 2474 cڡ  me = comm_rvi :: `oc_me (); 2476  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2477  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2479 cڡ  mynk = 2; 2480 cڡ  um = comm_rvi :: `oc_num (); 2481 cڡ  vs = dagh . `tٮvs (); 2482 cڡ  mdex = dagh . `maxdex ()+1; 2483 cڡ  t1 = 2* mynk ; 2484 cڡ  t2 = t1 * mdex ;; 2486 Li <> rsize ; 2487 Li <> wsize ; 2488  r =0, w =0; 2490 #ifde ACEVeGridFuni 2491 Li <> mrsize ; 2492 Li <> mwsize ; 2493  mr =0, mw =0; 2496 `GridDaBlock (2)< ACE_GFTy > * g = 0; 2497 GDB_Iai * gdbi = 0; 2499  idx = 0; 2500  p =0;p< um ;p++) { 2501  l =0;l< vs ;l++) { 2502  i =0; i< ngth ; i++i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][i]) { 2503 g = gdb [ t ][ l ][ i ]; 2504  c =0;c< mynk ;c++) { 2505  m =0; m< mdex ; m++) { 2507 idx = p * t2 + 2* c * mdex ; 2509 i( g -> gdb_ux_wre_fo && ( gdbi =g->gdb_ux_wre_fo[ idx + m ])) { 2511 i(! ux_nd_fo [ p ]) { 2512 ux_nd_fo [ p ] = w GF_Iai * [ vs ]; 2513  k =0;k< vs ;k++ ux_nd_fo [ p ][k] = 0; 2515 i(! ux_nd_fo [ p ][ l ]) 2516 ux_nd_fo [ p ][ l ] = w GF_Iai ; 2518 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2519 ux_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2520 #ifde ACEVeGridFuni 2521 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2522 ux_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2524 #ifde DEBUG_PRINT 2525 `as w != 0 ); 2527 wsize . `add ( w ); 2528 #ifde ACEVeGridFuni 2529 mwsize . `add ( mw ); 2533 i( g -> gdb_ux_ad_fo && ( gdbi =g->gdb_ux_ad_fo[ idx + m ])) { 2535 i(! ux_cv_fo [ p ]) { 2536 ux_cv_fo [ p ] = w GF_Iai * [ vs ]; 2537  k =0;k< vs ;k++ ux_cv_fo [ p ][k] = 0; 2539 i(! ux_cv_fo [ p ][ l ]) 2540 ux_cv_fo [ p ][ l ] = w GF_Iai ; 2542 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2543 ux_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2544 #ifde ACEVeGridFuni 2545 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2546 ux_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2548 #ifde DEBUG_PRINT 2549 `as r != 0 ); 2551 rsize . `add ( r ); 2552 #ifde ACEVeGridFuni 2553 mrsize . `add ( mr ); 2556 idx = p * t2 + (2* c +1)* mdex ; 2558 i( g -> gdb_ux_wre_fo && ( gdbi =g->gdb_ux_wre_fo[ idx + m ])) { 2560 i(! ux_nd_fo [ p ]) { 2561 ux_nd_fo [ p ] = w GF_Iai * [ vs ]; 2562  k =0;k< vs ;k++ ux_nd_fo [ p ][k] = 0; 2564 i(! ux_nd_fo [ p ][ l ]) 2565 ux_nd_fo [ p ][ l ] = w GF_Iai ; 2567 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2568 ux_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2569 #ifde ACEVeGridFuni 2570 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2571 ux_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2573 #ifde DEBUG_PRINT 2574 `as w != 0 ); 2576 wsize . `add ( w ); 2577 #ifde ACEVeGridFuni 2578 mwsize . `add ( mw ); 2582 i( g -> gdb_ux_ad_fo && ( gdbi =g->gdb_ux_ad_fo[ idx + m ])) { 2584 i(! ux_cv_fo [ p ]) { 2585 ux_cv_fo [ p ] = w GF_Iai * [ vs ]; 2586  k =0;k< vs ;k++ ux_cv_fo [ p ][k] = 0; 2588 i(! ux_cv_fo [ p ][ l ]) 2589 ux_cv_fo [ p ][ l ] = w GF_Iai ; 2591 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2592 ux_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2593 #ifde ACEVeGridFuni 2594 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2595 ux_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2597 #ifde DEBUG_PRINT 2598 `as r != 0 ); 2600 rsize . `add ( r ); 2601 #ifde ACEVeGridFuni 2602 mrsize . `add ( mr ); 2608 i( ux_nd_fo [ p ] && flux_nd_fo[p][ l ]) { 2609 wsize . `y ( ux_nd_fo [ p ][ l ]-> size ,ux_nd_fo[p][l]-> t ); 2610 #ifde ACEVeGridFuni 2611 mwsize . `y ( ux_nd_fo [ p ][ l ]-> msize ,ux_nd_fo[p][l]-> t ); 2614 i( ux_cv_fo [ p ] && flux_cv_fo[p][ l ]) { 2615 rsize . `y ( ux_cv_fo [ p ][ l ]-> size ,ux_cv_fo[p][l]-> t ); 2616 #ifde ACEVeGridFuni 2617 mrsize . `y ( ux_cv_fo [ p ][ l ]-> msize ,ux_cv_fo[p][l]-> t ); 2620 wsize . `emy (); rsize .empty(); 2621 #ifde ACEVeGridFuni 2622 mwsize . `emy (); mrsize .empty(); 2625 #ifde DEBUG_PRINT_GF_COMM 2626 comm_rvi :: `log (<< "[GF_Iai(Flux):[" << p << "]" << dl ). `ush (); 2627  k =0;k< vs ;k++) { 2628 i( ux_cv_fo [ p ] && flux_cv_fo[p][ k ]) 2629 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2630 << * ux_cv_fo [ p ][ k ] << "]" 2631 << dl ). `ush (); 2633 comm_rvi :: `log (<< dl ). `ush (); 2634  k =0;k< vs ;k++) { 2635 i( ux_nd_fo [ p ] && flux_nd_fo[p][ k ]) 2636 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2637 << * ux_nd_fo [ p ][ k ] << "]" 2638 << dl ). `ush (); 2640 comm_rvi :: `log (<< "]" << dl ). `ush (); 2643 } } 2649 gme < ass gACE_GFTy > 2650  GridFuni (2)< gACE_GFTy >:: $GF_SwTimeLevs (cڡ  l , 2651 cڡ  t1 , 2652 cڡ  t2 ) 2654 cڡ  ti1 = `dagh_timedex ( t1 , l ); 2655 cڡ  ti2 = `dagh_timedex ( t2 , l ); 2657 i( ti1 = ti2 ) ; 2659 #ifde DEBUG_PRINT 2660 `as ( gdb [ ti1 ] && gdb[ ti2 ]); 2663 `GridDaBlock (2)< ACE_GFTy >** gdb1 = gdb [ ti1 ][ l ]; 2664 `GridDaBlock (2)< ACE_GFTy >** gdb2 = gdb [ ti2 ][ l ]; 2666 i( gdb1 ) { 2667  i =0;i< ngth ;i++) 2668 i( gdb1 [ i ] && gdb1[i]-> `dexme (i)gdb1[i]-> timum = ti2 ; 2670 i( gdb2 ) { 2671  i =0;i< ngth ;i++) 2672 i( gdb2 [ i ] && gdb2[i]-> `dexme (i)gdb2[i]-> timum = ti1 ; 2674 gdb [ ti1 ][ l ] = gdb2 ; 2675 gdb [ ti2 ][ l ] = gdb1 ; 2676 } } 2679 gme < ass gACE_GFTy > 2680  GridFuni (2)< gACE_GFTy >:: $GF_CyeTimeLevs (cڡ  l ) 2682 i( time__d == 0) ; 2684 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 2685 cڡ  i = `dagh_timedex ( dagh . `gPviousTime ( l ),l); 2686 cڡ  i = `dagh_timedex ( dagh . `gNextTime ( l ),l); 2688 #ifde DEBUG_PRINT 2689 `as ( gdb [ i ] && gdb[ i ] && gdb[ i ]); 2690 `as ( gdb [ i ][ l ] && gdb[ i ][l] && gdb[ i ][l]); 2693 `GridDaBlock (2)< ACE_GFTy >** cgdb = gdb [ i ][ l ]; 2694 `GridDaBlock (2)< ACE_GFTy >** pgdb = gdb [ i ][ l ]; 2695 `GridDaBlock (2)< ACE_GFTy >** ngdb = gdb [ i ][ l ]; 2697  i = 0; 2699 i( cgdb && ( i ! i )) { 2700  i =0;i< ngth ;i++) 2701 i( cgdb [ i ] && cgdb[i]-> `dexme (i)cgdb[i]-> timum = i ; 2703 i( pgdb && ( i ! i )) { 2704  i =0;i< ngth ;i++) 2705 i( pgdb [ i ] &&gdb[i]-> `dexme (i)pgdb[i]-> timum = i ; 2707 i( ngdb && ( i ! i )) { 2708  i =0;i< ngth ;i++) 2709 i( ngdb [ i ] &&gdb[i]-> `dexme (i)ngdb[i]-> timum = i ; 2711 i( i ! i gdb [i][ l ] = ngdb ; 2712 i( i ! i gdb [i][ l ] = cgdb ; 2713 i( i ! i gdb [i][ l ] = pgdb ; 2714 } } 2719 gme < ass gACE_GFTy > 2720  GridFuni (2)< gACE_GFTy >:: $tbboxli ( BBoxLi & bbl , 2721 cڡ  l , 2722 cڡ  idt ) 2724 i(! bbl . `imy ()bbl. `emy (); 2725  t = 0, i = 0; 2726  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2727  i =0; i< ngth ; i++) 2728 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2729 bbl . `add ( gdb [ t ][ l ][ i ]-> `ribox ( idt )); 2730 } } 2732 gme < ass gACE_GFTy > 2733  GridFuni (2)< gACE_GFTy >:: $tbboxli ( BBoxLi & bbl , 2734 cڡ  l , 2735 cڡ  mgl , 2736 cڡ  idt ) 2738 i(! bbl . `imy ()bbl. `emy (); 2739  t = 0, i = 0; 2740  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2741  i =0; i< ngth ; i++) 2742 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2743 bbl . `add ( gdb [ t ][ l ][ i ]-> `ribox ( idt , mgl )); 2744 } } 2746 gme < ass gACE_GFTy > 2747  GridFuni (2)< gACE_GFTy >:: $dabboxli ( BBoxLi & bbl , 2748 cڡ  l , 2749 cڡ  idt ) 2751 i(! bbl . `imy ()bbl. `emy (); 2752  t = 0, i = 0; 2753  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2754  i =0; i< ngth ; i++) 2755 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2756 bbl . `add ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt )); 2757 } } 2759 gme < ass gACE_GFTy > 2760  GridFuni (2)< gACE_GFTy >:: $dabboxli ( BBoxLi & bbl , 2761 cڡ  l , 2762 cڡ  mgl , 2763 cڡ  idt ) 2765 i(! bbl . `imy ()bbl. `emy (); 2766  t = 0, i = 0; 2767  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2768  i =0; i< ngth ; i++) 2769 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2770 bbl . `add ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt , mgl )); 2771 } } 2773 gme < ass gACE_GFTy > 2774  GridFuni (2)< gACE_GFTy >:: $mgedbboxli ( BBoxLi & bbl , 2775 cڡ  l , 2776 cڡ  idt ) 2778 i(! bbl . `imy ()bbl. `emy (); 2779  t = 0, i = 0; 2780  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2781  i =0; i< ngth ; i++) 2782 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2783 bbl . `add ( gdb [ t ][ l ][ i ]-> `mgedbox ( idt )); 2784 } } 2789 gme < ass gACE_GFTy > 2790  GridFuni (2)< gACE_GFTy >:: $GF_SupShadow (cڡ  time , 2791 cڡ  v ) 2793 cڡ  t = `dagh_timedex ( time , v ); 2794 cڡ  l = v ; 2796  i =0; i< ngth ; i++) 2797 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2798 gdb [ t ][ l ][ i ]-> `gdbSUpShadow ( ovp , bwidth , extghowidth ); 2800 shadow_ag = ACEHasShadow ; 2801 } } 2803 gme < ass gACE_GFTy > 2804  GridFuni (2)< gACE_GFTy >:: $GF_RShadow (cڡ  time , 2805 cڡ  v ) 2807 cڡ  t = `dagh_timedex ( time , v ); 2808 cڡ  l = v ; 2809  i =0; i< ngth ; i++) 2810 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2811 gdb [ t ][ l ][ i ]-> `gdbRShadow (); 2813 shadow_ag = ACENoShadow ; 2814 } } 2820 gme < ass gACE_GFTy > 2821  GridFuni (2)< gACE_GFTy >:: $GF_SupMuiGrid (cڡ  time , 2822 cڡ  v , 2823 cڡ  mglc , 2824 cڡ  mglf , 2825 cڡ  idt ) 2827 cڡ  t = `dagh_timedex ( time , v ); 2828 cڡ  l = v ; 2830 i( idt = ACE_Ma ) { 2831  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2832 gdb [ t ][ l ][ i ]-> `gdbSUpMuiGrid ( mglc , mglf , 2833 ovp , bwidth , extghowidth ); 2835 i( `shadow ()) { 2836  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2837 gdb [ t ][ l ][ i ]-> `gdbSUpShadowMuiGrid ( mglc , mglf , 2838 ovp , bwidth , extghowidth ); 2840 } } 2842 gme < ass gACE_GFTy > 2843  GridFuni (2)< gACE_GFTy >:: $GF_SupMuiGrid (cڡ  time , 2844 cڡ  v , 2845 cڡ  axis , 2846 cڡ  mglc , 2847 cڡ  mglf , 2848 cڡ  idt ) 2850 cڡ  t = `dagh_timedex ( time , v ); 2851 cڡ  l = v ; 2853 i( idt = ACE_Ma ) { 2854  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2855 gdb [ t ][ l ][ i ]-> `gdbSUpMuiGrid ( axis , mglc , mglf , 2856 ovp , bwidth , extghowidth ); 2858 i( `shadow ()) { 2859  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2860 gdb [ t ][ l ][ i ]-> `gdbSUpShadowMuiGrid ( axis , mglc , mglf , 2861 ovp , bwidth , extghowidth ); 2863 } } 2865 gme < ass gACE_GFTy > 2866  GridFuni (2)< gACE_GFTy >:: $GF_RMuiGrid (cڡ  time , 2867 cڡ  v , 2868 cڡ  idt ) 2870 cڡ  t = `dagh_timedex ( time , v ); 2871 cڡ  l = v ; 2873 i( idt = ACE_Ma ) { 2874  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2875 gdb [ t ][ l ][ i ]-> `gdbRMuiGrid (); 2877 i( `shadow ()) { 2878  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2879 gdb [ t ][ l ][ i ]-> `gdbRShadowMuiGrid (); 2881 } } 2887 gme < ass gACE_GFTy > 2888  GridFuni (2)< gACE_GFTy >:: $GF_Checkpot ( ofam & ofs ) 2890 #ifde DEBUG_PRINT 2891 `as ( dagh . `chk_t (&& `checkpot ()); 2894 cڡ  vs = dagh . `tٮvs (); 2895 cڡ  times = 2* time__d + 1; 2896 cڡ  dnum = vs * ngth * times ; 2897 ofs . `wre ((*)& vs ,()); 2898 ofs . `wre ((*)& ngth ,()); 2899 ofs . `wre ((*)& times ,()); 2901 ampos * chkd = w smpos[ dnum ]; 2902 ampos chkdpos = ofs . `p (); 2903 ofs . `wre ((*) chkd ,( ampos )* dnum ); 2905 ofs << *(( GridFuniVoid *) this ); 2907  c =0; c< ngth ; c++) { 2908  l =0;< vs ;++) { 2909  t =0;< times ;++) { 2910 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ c ] && gdb[t][l][c]-> `dexme (c)) { 2911 chkd [ c * vs * times + l *times+ t ] = ofs . `p (); 2912 ofs << * gdb [ t ][ l ][ c ]; 2915 chkd [ c * vs * times + l *times+ t ] = ACENu ; 2920 ampos cuos = ofs . `p (); 2921 ofs . `ekp ( chkdpos ); 2922 ofs . `wre ((*) chkd ,( ampos )* dnum ); 2923 ofs . `ekp ( cuos ); 2924 i( chkd de [] chkptdir; 2925 } } 2927 gme < ass gACE_GFTy > 2928  GridFuni (2)< gACE_GFTy >:: $GF_CheckpotRet () 2930 #ifde DEBUG_PRINT 2931 `as ( dagh . `chk_t (&& `checkpot ()); 2934 cڡ  num = comm_rvi :: `oc_num (); 2935 cڡ  me = comm_rvi :: `oc_me (); 2936 cڡ  dum = dagh . `chk_um (); 2937 cڡ  vs = dagh . `tٮvs (); 2938 cڡ  times = 2* time__d + 1; 2940  t =0, l =0, c =0; 2942 i( dum = num ) { 2943  ampos pos ; 2945 ifam ifs ; 2946  eag = dagh . `ACE_GGFChkISm ( me , game , gfid , ifs ); 2947 i( eag = ACEF ) ; 2949  hievs = 0, higth = 0, his = 0; 2950 ifs . `ad ((*)& hievs ,()); 2951 ifs . `ad ((*)& higth ,()); 2952 ifs . `ad ((*)& his ,()); 2954 #ifde DEBUG_PRINT 2955 `as ( hievs = vs ); 2956 `as ( higth = ngth ); 2959 cڡ  dnum = hievs * higth * his ; 2960 ampos * chkd = w smpos[ dnum ]; 2961 ifs . `ad ((*) chkd ,( ampos )* dnum ); 2962  c =0; c< ngth ; c++) { 2963  l =0;< vs ;++) { 2964  t =0;< times ;++) { 2965 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ c ] && gdb[t][l][c]-> `dexme (c) && 2966 t < his && 2968 ( pos = chkd [ c * hievs * his + l *his+ t ])!= `ampos ( ACENu )) { 2969 ifs . `ekg ( pos ); 2970 ifs >> * gdb [ t ][ l ][ c ]; 2975 i( chkd de [] chkptdir; 2976 dagh . `ACE_CloChkISm ( ifs ); 2979 GridBoxLi * lgbl = dagh . `lgbl (); 2980 GridBoxLi * dggbl = dagh . `dggbl (); 2981 cڡ  dmdex = dggbl -> `maxdex () + 1; 2983 cڡ  addnum = dum * dmdex ; 2985 * adom = w [ dum ]; 2986  =0;< dum ;++ adom [] = ACENu ; 2988 * add = w [ addnum ]; 2989 * adtodex = w [ addnum ]; 2990  i =0; i< addnum ;i++) 2991 { add [ i ] = ACENu ; adtodex [i] = ACENull; } 2993 GridBoxLi `myli (* dggbl ); 2994 myli ** lgbl ; 2996  GridBox * gb = myli . `f ();gb;gb=myli. `xt ()) { 2997 add [ gb -> `gbOwr ()* dmdex + gb-> `gbIndex ()] = ACETrue ; 2998 #ifde DEBUG_PRINT_GF_RG 2999 `as ( lgbl -> `mches ( gb -> `gbBBox (gb-> `gbCrsLev ()), 3000 gb -> `gbCrsLev ()) == 1); 3002 adtodex [ gb -> `gbOwr ()* dmdex + gb-> `gbIndex ()] = 3003 lgbl -> `dex ( gb -> `gbBBox (gb-> `gbCrsLev ()),gb->gbCrsLev()); 3005 adom [ gb -> `gbOwr ()] = ACETrue ; 3008  idx = ACENu ; 3009  ampos pos ; 3010  p =0;< dum ;++i( adom [p] = ACETrue ) { 3011 ifam ifs ; 3012  eag = dagh . `ACE_GGFChkISm ( p , game , gfid , ifs ); 3013 i( eag = ACEF ) ; 3015  hievs = 0, higth = 0, his = 0; 3016 ifs . `ad ((*)& hievs ,()); 3017 ifs . `ad ((*)& higth ,()); 3018 ifs . `ad ((*)& his ,()); 3020 #ifde DEBUG_PRINT 3021 `as ( hievs = vs ); 3022 `as ( higth < dmdex ); 3025 cڡ  dnum = hievs * higth * his ; 3026 ampos * chkd = w smpos[ dnum ]; 3027 ifs . `ad ((*) chkd ,( ampos )* dnum ); 3028  c =0; c< dmdex ; c++) { 3029  l =0;< vs ;++) { 3030 i( add [ p * dmdex + c ] = ACENu ) ; 3031 idx = adtodex [ p * dmdex + c ]; 3032  t =0;< times ;++) { 3033 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ idx ] && < his && 3035 ( pos = chkd [ c * hievs * his + l *his+ t ])!= `ampos ( ACENu )) { 3036 ifs . `ekg ( pos ); 3037 ifs >> * gdb [ t ][ l ][ idx ]; 3042 i( chkd de [] chkptdir; 3043 dagh . `ACE_CloChkISm ( ifs ); 3045 i( adom de []eadfrom; 3046 i( add de []eaddir; 3047 i( adtodex de []eadtoindex; 3051 i( `comm ()) { 3052  l =0;< vs ;++) { 3053  t =0;< times ;++) { 3054 i( gdb [ t ] && gdb[t][ l ]) { 3055 cڡ  um = `dagh_timevue ( t , l ); 3056 `GF_Sync ( um , l , ACE_Ma ); 3057 i( `shadow (= ACETrue `GF_Sync ( um , l , ACE_Shadow ); 3062 } } 3067 gme < ass gACE_GFTy > 3068 goam & GridFuni (2)< gACE_GFTy >:: $GF_DebugPrtIDa ( oam & os , 3069 cڡ  time , 3070 cڡ  v , 3071 cڡ  idt ) 3073 os << * this ; 3074 os << "(" << time << ") "; 3075 os << "(" << v << ") "; 3076 os << "\n"; 3077 cڡ  t = `dagh_timedex ( time , v ); 3078 cڡ  l = v ; 3079  i =0; i< ngth ; i++) { 3080 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 3081 os << "Ii: " << gdb [ t ][ l ][ i ]-> `boundgbox ( idt ) << "\n"; 3082 `GridDa (2)< ACE_GFTy > `tmpgd ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt )); 3083 tmpgd = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 3084 os << tmpgd ; 3085 os << "\n"; 3088  os ; 3089 } } 3091 gme < ass gACE_GFTy > 3092 goam & GridFuni (2)< gACE_GFTy >:: $GF_DebugPrtDa ( oam & os , 3093 cڡ  time , 3094 cڡ  v , 3095 cڡ  idt ) 3097 os << * this ; 3098 os << "(" << time << ") "; 3099 os << "(" << v << ") "; 3100 os << "\n"; 3101 cڡ  t = `dagh_timedex ( time , v ); 3102 cڡ  l = v ; 3103  i =0; i< ngth ; i++) 3104 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 3105 os << gdb [ t ][ l ][ i ]-> `gridda ( idt ); 3106  os ; 3107 } } 3109 gme < ass gACE_GFTy > 3110 goam & GridFuni (2)< gACE_GFTy >:: $GF_DebugPrtDaBlk ( oam & os , 3111 cڡ  time , 3112 cڡ  v ) 3114 os << * this ; 3115 os << "(" << time << ") "; 3116 os << "(" << v << ") "; 3117 os << "\n"; 3118 cڡ  t = `dagh_timedex ( time , v ); 3119 cڡ  l = v ; 3120  i =0; i< ngth ; i++) 3121 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 3122 os << * gdb [ t ][ l ][ i ] << "\n"; 3123  os ; 3124 } } 3130 gme < ass gACE_GFTy > 3131 goam & gݔ << (oam& gos , cڡ GridFuni (2)< gACE_GFTy >& ggf ) 3134 i(& ggf =( GridFuni (2)< ACE_GFTy > * NULL  os ; 3136 gos << "GridFuni: " << ggf . GF_Name (); 3138  gos ; 3142 gme < ass gACE_GFTy > 3143 goam & GridFuni (2)< gACE_GFTy >:: $GF_DebugPrtTheDa ( oam & os ) 3146 cڡ  vs = dagh . `tٮvs (); 3147 cڡ  times = 2* time__d +1; 3149 os << "******* THE DATA *********" << dl ; 3150 i( gdb ) { 3151  t =0;t< times ;t++) { 3152 i( gdb [ t ]) { 3153  l =0;l< vs ;l++) { 3154 i( gdb [ t ][ l ]) { 3155  i =0;i< ngth ;i++) { 3156 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)){ 3157 os << "gdb[ " << t << "][" 3158 << l << "][" << i << "]:" << dl ; 3159 os << * gdb [ t ][ l ][ i ] << dl ; 3167 os << "******* END THE DATA *********" << dl ; 3168  os ; 3169 } } 3171  ~"GridFuniComm2.h " 3172  ~"GridFuniFuncs2.h " 3173  ~"GridFuniOps2.h " 3174  ~"GridFuniOpsDi2.h " 3175  ~"GridFuniOpsRed2.h " 3176  ~"GridFuniBndry2.h " 3177  ~"GridFuniIO2.h " 3178  ~"GridFuniUCD2.h " 3179  ~"GridFuniViz2.h " 3180  ~"GridFuniDICE2.h " 3181  ~"GridFuniPts2.h " 3182  ~"GridFuniFluxes2.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunction2.h 1 #ide _uded_GridFuni2_h 2  #_uded_GridFuni2_h ) 14  ~"GridDa2.h " 15  ~"GridDaBlock2.h " 16  ~"ACEUCD.h " 19  ~"DICEInude.h " 21 #ide GridFuniName 22  #GridFuni ( dim `me2 ( GridFuni ,dim) ) 23  #GridFuniName ) 26  ~"GFIt.h " 28 #i defed ( __GNUG__ || defed( __GNUC__ ) 29 gme < ass gACE_GFTy > cs GridFuni (2); 31 gme < ass gACE_GFTy > 32 goam & gݔ <<(oam&, cڡ GridFuni (2)< gACE_GFTy >&); 35 gme < ass gACE_GFTy > 36 ass GridFuni (2: public GridFuniVoid 38 public : 39 GridDa (2)< ACE_GFTy >& ݔ ()( GDIt (2)& gfi , 40  gma__shadow ) { 41  ݔ ()( ggfi . time (),gfi. v (),gfi. compڒt (), 42 gma__shadow ); 44 give : 45 #i defed ( __GNUG__ || defed( __GNUC__ ) 46 nd oam & ݔ << <>(oam&, cڡ GridFuni (2)< gACE_GFTy >&); 48 nd goam & gݔ <<(oam&, cڡ GridFuni (2)< gACE_GFTy >&); 50 nd ass gGridHrchy ; 53  gngth ; 54 GridDaBlock (2)< gACE_GFTy > **** ggdb ; 57 ACE_GFTy gbvue ; 59  #GF_TYPE ACE_GFTy ) 60  ~"GridFuniI.h " 63 InFunc gifunc ; 66 UpdeFunc gufunc ; 69 BndryUpdeFunc gbfunc ; 70 AdBndryUpdeFunc gabfunc ; 73 PrgFunc gpfunc ; 74 ReriFunc grfunc ; 75 TimeIpFunc gfunc ; 78 FluxAddFunc gfunc ; 81 IOFunc giofunc ; 86 give : 87 GridFuni (2)(cڡ GridFuni(2)< ACE_GFTy >&); 88 cڡ GridFuni (2)< gACE_GFTy >& gݔ = 89 (cڡ GridFuni (2)< ACE_GFTy >&); 95 gpublic : 96 GridFuni (2)(cڡ me [], 97 gGridHrchy & ggh ); 100 GridFuni (2)(cڡ  gme [], 101 cڡ  gt_ , 102 cڡ  gs_ , 103 gGridHrchy & ggh , 104 cڡ  gcag = ACEComm , 105 cڡ  gsag = ACENoShadow , 106 cڡ  gextghag = ACENoExGho ); 108 GridFuni (2)(cڡ  gme [], 109 cڡ  gt_ , 110 cڡ  gs_ , 111 gGridHrchy & ggh , 112 cڡ  gty , 113 cڡ  gcag , 114 cڡ  gsag , 115 cڡ  gbag , 116 cڡ  gadbag , 117 cڡ  gextghag = ACENoExGho ); 119 GridFuni (2)(cڡ  gme [], 120 cڡ  gt_ , 121 cڡ * gs_ , 122 gGridHrchy & ggh , 123 cڡ  gty , 124 cڡ  gcag , 125 cڡ  gsag , 126 cڡ  gbag , 127 cڡ  gadbag , 128 cڡ  gextghag = ACENoExGho ); 131 GridFuni (2)(cڡ  gme [], 132 cڡ  gt_ , 133 cڡ  gs_ , 134 gGridHrchy & ggh , 135 cڡ  gty , 136 cڡ  gign , 137 cڡ  gcag , 138 cڡ  gsag , 139 cڡ  gbag , 140 cڡ  gadbag , 141 cڡ  gextghag ); 143 GridFuni (2)(cڡ  gme [], 144 cڡ  gt_ , 145 cڡ * gs_ , 146 gGridHrchy & ggh , 147 cڡ  gty , 148 cڡ  gign , 149 cڡ  gcag , 150 cڡ  gsag , 151 cڡ  gbag , 152 cڡ  gadbag , 153 cڡ  gextghag ); 156 GridFuni (2)(cڡ  gme [], 157 cڡ  gt_ , 158 cڡ  gs_ , 159 cڡ  gtime , 160 cڡ  gv , 161 gGridHrchy & ggh , 162 cڡ  gty , 163 cڡ  gcag , 164 cڡ  gsag , 165 cڡ  gbag , 166 cڡ  gadbag , 167 cڡ  gextghag = ACENoExGho ); 169 GridFuni (2)(cڡ  gme [], 170 cڡ  gt_ , 171 cڡ * gs_ , 172 cڡ  gtime , 173 cڡ  gv , 174 gGridHrchy & ggh , 175 cڡ  gty , 176 cڡ  gcag , 177 cڡ  gsag , 178 cڡ  gbag , 179 cڡ  gadbag , 180 cڡ  gextghag = ACENoExGho ); 183 GridFuni (2)(cڡ  gme [], 184 cڡ GridFuni (2)< gACE_GFTy >& ggf , 185 cڡ  gtime , 186 cڡ  gv , 187 cڡ  gcag , 188 cڡ  gsag , 189 cڡ  gbag , 190 cڡ  gadbag , 191 cڡ  gextghag = ACENoExGho ); 197 gpublic : 198 ~ GridFuni (2)(); 204 give : 205  GF_DeGDBStage (); 206  GF_DeGDBStage (cڡ  t ); 212 give : 213  GF_Compo (); 214  GF_Compo (cڡ  T , 215 cڡ  L ); 216  GF_Compo (cڡ GridFuni (2)< ACE_GFTy >& gf , 217 cڡ  T , 218 cڡ  L ); 220  GF_Recompo (cڡ  omdex , 221 GridBoxLi & li , 222 GridBoxLi & i , 223 GridBoxLi & i , 224 GridBoxLi & i ); 230  GF_CheckpotRecompo (); 231  GF_Checkpot ( ofam & ofs ); 232  GF_CheckpotRet (); 239 give : 240  GF_SUpGDBPors (); 246 give : 247  GF_SUpGhoCommSvs (); 248  GF_GhGhoCommInfo (); 250  GF_SUpPtCommSvs (); 251  GF_GhPtCommInfo () 253 GF_GhGPtCommInfo (); 254 GF_GhSPtCommInfo (); 256  GF_GhGPtCommInfo (); 257  GF_GhSPtCommInfo (); 259  GF_SUpFluxCommSvs (); 260  GF_GhFluxCommInfo (); 266 gpublic : 267 le  GF_SInFunc (* f ) 268 { ifunc = ( InFunc f ; } 269 le  GF_SUpdeFunc (* uf ) 270 { gufunc = ( UpdeFunc uf ; } 271 le  GF_SBndryUpdeFunc (* bf ) 272 { gbfunc = ( BndryUpdeFunc bf ; } 273 le  GF_SAdtiveBndryUpdeFunc (* abf ) 274 { gabfunc = ( AdBndryUpdeFunc abf ; } 275 le  GF_SPrgFunc (* pf ) 276 { gpfunc = ( PrgFunc pf ; } 277 le  GF_SReriFunc (* rf ) 278 { grfunc = ( ReriFunc rf ; } 279 le  GF_STimeIpީiFunc (* tif ) 280 { gfunc = ( TimeIpFunc tif ; } 281 le  GF_SFluxAddFuncFunc (* f ) 282 { gfunc = ( FluxAddFunc f ; } 284 le  GF_SIOFunc (* iof ) 285 { giofunc = ( IOFunc iof ; } 291 gpublic : 292 le  has_func () 293 {  ( ifunc !( InFunc ) 0); } 294 le  has_updefunc () 295 {  ( gufunc !( UpdeFunc ) 0); } 296 le  has_bndryupdefunc () 297 {  ( gbfunc !( BndryUpdeFunc ) 0); } 298 le  has_adtivebndryupdefunc () 299 {  ( gabfunc !( AdBndryUpdeFunc ) 0); } 300 le  has_gfunc () 301 {  ( gpfunc !( PrgFunc ) 0); } 302 le  has_rifunc () 303 {  ( grfunc !( ReriFunc ) 0); } 304 le  has_timefunc () 305 {  ( gfunc !( TimeIpFunc ) 0); } 306 le  has_uxaddfunc () 307 {  ( gfunc !( FluxAddFunc ) 0); } 308 le  has_iofunc () 309 {  ( giofunc !( IOFunc ) 0); } 315 gpublic : 316 le  GF_CutTime (cڡ  v , 317 cڡ  idt = ACE_Ma ) const 318 {  cuime [ GridHrchy :: daghdex ( idt )][ v ] ; } 320 le  GF_SCutTime (cڡ  ime , 321 cڡ  v , 322 cڡ  idt = ACE_Ma ) 323 { cuime [ GridHrchy :: daghdex ( idt )][ v ] = ime ; } 325 le  GF_InCutTime (cڡ  v , 326 cڡ  idt = ACE_Ma ) 327 { cuime [ GridHrchy :: daghdex ( idt )][ v ] + dagh . time (lev,ident); } 329 le  GF_PviousTime (cڡ  v , 330 cڡ  idt = ACE_Ma ) const 331 {  cuime [ GridHrchy :: daghdex ( idt )][ v ] - 332 dagh . time ( v , idt ); } 334 le  GF_NextTime (cڡ  v , 335 cڡ  idt = ACE_Ma ) const 336 {  cuime [ dagh . daghdex ( idt )][ v ] + 337 dagh . time ( v , idt ); } 339 give : 354 public : 355 le  dagh_timevue (cڡ  t , 356 cڡ  l , 357 cڡ  idt = ACE_Ma ) const 358 {  (( t - time__d )* dagh . time ( l , idt ) + 359 dagh . gCutTime ( l , idt )); } 361 le  dagh_timedex (cڡ  t , 362 cڡ  l , 363 cڡ  idt = ACE_Ma ) const 364 {  ( time_s [(( t - dagh . gCutTime ( l , idt ))/dagh. time (l,ident)) 365 + time__d ]); } 371 gpublic : 372 le  GF_SBoundyVue (cڡ ACE_GFTy vue ) 373 { bvue = vue ; } 379 gpublic : 380  GF_SwTimeLevs (cڡ  l , cڡ  t1 , cڡ  t2 ); 381  GF_CyeTimeLevs (cڡ  l ); 387 gpublic : 388 le  n (cڡ {  ( ngth ); } 389 le GridDaBlock (2)< gACE_GFTy >& mygdb (cڡ  t , 390 cڡ  l , 391 cڡ  c ) 392 {  (* ggdb [ dagh_timedex ( t , l )][l][ c ]); } 394 le  exis (cڡ  t , 395 cڡ  l , 396 cڡ  c ) const 397 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ] != 398 ( GridDaBlock (2)< ACE_GFTy > *) NULL && 399 gdb [ dagh_timedex ( t , l )][l][ c ]-> dexme (c)); } 401 le  comm () const 402 {  ( gcomm_ag ! ACENoComm ); } 403 le  comm (cڡ  t , 404 cڡ  l ) const 405 {  ( gcomm_ag != ACENoComm ) && 406 ( comm_ag != ACECommCutTimeOy || 407 t == dagh_timedex ( dagh . gCutTime ( l ),l)); } 409 le  () const 410 {  g_ag = ACETrue ; } 411 le  uxes () const 412 {  gux_ag = ACETrue ; } 413 le  uxes (cڡ  t , cڡ  l ) const 414 {  gux_ag = ACETrue ; } 422 give : 423  GF_RdDa (cڡ  time ); 424  GF_RdDa (cڡ  time , cڡ  v ); 425  GF_RdDa (cڡ  time , GridDa (2)< ACE_GFTy >& to ); 431 gpublic : 432 #ifde ACEVeGridFuni 433 le  GF_GhPt (cڡ  time , 434 cڡ  v , 435 cڡ  idt ) 437 GF_GWrePt ( time , v , ACEA , idt ); 438 GF_GRdPt ( time , v , ACEA , idt ); 440 le  GF_SPt (cڡ  time , 441 cڡ  v , 442 cڡ  idt ) 444 GF_SWrePt ( time , v , ACEA , idt ); 445 GF_SRdPt ( time , v , ACEA , idt ); 449 le  GF_GhPt (cڡ  time , 450 cڡ  v , 451 #ifde ACEVeGridFuni 452 cڡ  m , 454 cڡ  idt ) 456 #ifde ACEVeGridFuni 457 GF_GWrePt ( time , v , m , idt ); 458 GF_GRdPt ( time , v , m , idt ); 460 GF_GWrePt ( time , v , idt ); 461 GF_GRdPt ( time , v , idt ); 465  GF_GWrePt (cڡ  time , 466 cڡ  v , 467 #ifde ACEVeGridFuni 468 cڡ  m , 470 cڡ  idt ); 472  GF_GRdPt (cڡ  time , 473 cڡ  v , 474 #ifde ACEVeGridFuni 475 cڡ  m , 477 cڡ  idt ); 479 le  GF_SPt (cڡ  time , 480 cڡ  v , 481 #ifde ACEVeGridFuni 482 cڡ  m , 484 cڡ  idt ) 486 #ifde ACEVeGridFuni 487 GF_SWrePt ( time , v , m , idt ); 488 GF_SRdPt ( time , v , m , idt ); 490 GF_SWrePt ( time , v , idt ); 491 GF_SRdPt ( time , v , idt ); 495  GF_SWrePt (cڡ  time , 496 cڡ  v , 497 #ifde ACEVeGridFuni 498 cڡ  m , 500 cڡ  idt ); 502  GF_SRdPt (cڡ  time , 503 cڡ  v , 504 #ifde ACEVeGridFuni 505 cڡ  m , 507 cڡ  idt ); 513 gpublic : 514 #ifde ACEVeGridFuni 515 le  GF_GhFluxes (cڡ  time , 516 cڡ  v , 517 cڡ  idt ) 519 GF_WreFluxes ( time , v , ACEA , idt ); 520 GF_RdFluxes ( time , v , ACEA , idt ); 524 le  GF_GhFluxes (cڡ  time , 525 cڡ  v , 526 #ifde ACEVeGridFuni 527 cڡ  m , 529 cڡ  idt ) 531 #ifde ACEVeGridFuni 532 GF_WreFluxes ( time , v , m , idt ); 533 GF_RdFluxes ( time , v , m , idt ); 535 GF_WreFluxes ( time , v , idt ); 536 GF_RdFluxes ( time , v , idt ); 540  GF_WreFluxes (cڡ  time , 541 cڡ  v , 542 #ifde ACEVeGridFuni 543 cڡ  m , 545 cڡ  idt ); 547  GF_RdFluxes (cڡ  time , 548 cڡ  v , 549 #ifde ACEVeGridFuni 550 cڡ  m , 552 cڡ  idt ); 557 give : 558  GF_IpGhos (cڡ  time , 559 cڡ  v , 560 cڡ  m , 561 cڡ  mgl , 562 cڡ  idt ); 563  GF_IpGhos (cڡ  time , 564 cڡ  v , 565 cڡ  m , 566 cڡ  mgl , 567 cڡ  axis , 568 cڡ  d , 569 cڡ  idt ); 571 gpublic : 572  GF_WreGhos (cڡ  time , 573 cڡ  v , 574 #ifde ACEVeGridFuni 575 cڡ  m , 577 cڡ  idt ); 578  GF_WreGhos (cڡ  time , 579 cڡ  v , 580 #ifde ACEVeGridFuni 581 cڡ  m , 583 cڡ  mgl , 584 cڡ  idt ); 585  GF_WreGhos (cڡ  time , 586 cڡ  v , 587 #ifde ACEVeGridFuni 588 cڡ  m , 590 cڡ  axis , 591 cڡ  d , 592 cڡ  idt ); 593  GF_WreGhos (cڡ  time , 594 cڡ  v , 595 #ifde ACEVeGridFuni 596 cڡ  m , 598 cڡ  mgl , 599 cڡ  axis , 600 cڡ  d , 601 cڡ  idt ); 607  GF_RdGhos (cڡ  time , 608 cڡ  v , 609 #ifde ACEVeGridFuni 610 cڡ  m , 612 cڡ  idt ); 613  GF_RdGhos (cڡ  time , 614 cڡ  v , 615 #ifde ACEVeGridFuni 616 cڡ  m , 618 cڡ  mgl , 619 cڡ  idt ); 620  GF_RdGhos (cڡ  time , 621 cڡ  v , 622 #ifde ACEVeGridFuni 623 cڡ  m , 625 cڡ  axis , 626 cڡ  d , 627 cڡ  idt ); 628  GF_RdGhos (cڡ  time , 629 cڡ  v , 630 #ifde ACEVeGridFuni 631 cڡ  m , 633 cڡ  mgl , 634 cڡ  axis , 635 cڡ  d , 636 cڡ  idt ); 640 gpublic : 648 #ifde ACEVeGridFuni 649 le  GF_Sync (cڡ  time , 650 cڡ  v , 651 cڡ  idt ) 653 GF_WreGhos ( time , v , ACEA , idt ); 654 GF_RdGhos ( time , v , ACEA , idt ); 658 le  GF_Sync (cڡ  time , 659 cڡ  v , 660 #ifde ACEVeGridFuni 661 cڡ  m , 663 cڡ  idt ) 665 #ifde ACEVeGridFuni 666 GF_WreGhos ( time , v , m , idt ); 667 GF_RdGhos ( time , v , m , idt ); 669 GF_WreGhos ( time , v , idt ); 670 GF_RdGhos ( time , v , idt ); 674 le  GF_Sync (cڡ  time , 675 cڡ  v , 676 #ifde ACEVeGridFuni 677 cڡ  m , 679 cڡ  mgl , 680 cڡ  idt ) 682 #ifde ACEVeGridFuni 683 GF_WreGhos ( time , v , m , mgl , idt ); 684 GF_RdGhos ( time , v , m , mgl , idt ); 686 GF_WreGhos ( time , v , mgl , idt ); 687 GF_RdGhos ( time , v , mgl , idt ); 691 le  GF_Sync (cڡ  time , 692 cڡ  v , 693 #ifde ACEVeGridFuni 694 cڡ  m , 696 cڡ  axis , 697 cڡ  d , 698 cڡ  idt ) 700 #ifde ACEVeGridFuni 701 GF_WreGhos ( time , v , m , axis , d , idt ); 702 GF_RdGhos ( time , v , m , axis , d , idt ); 704 GF_WreGhos ( time , v , axis , d , idt ); 705 GF_RdGhos ( time , v , axis , d , idt ); 709 le  GF_Sync (cڡ  time , 710 cڡ  v , 711 #ifde ACEVeGridFuni 712 cڡ  m , 714 cڡ  mgl , 715 cڡ  axis , 716 cڡ  d , 717 cڡ  idt ) 719 #ifde ACEVeGridFuni 720 GF_WreGhos ( time , v , m , mgl , axis , d , idt ); 721 GF_RdGhos ( time , v , m , mgl , axis , d , idt ); 723 GF_WreGhos ( time , v , mgl , axis , d , idt ); 724 GF_RdGhos ( time , v , mgl , axis , d , idt ); 732 gpublic : 733  GF_In (cڡ  time , 734 cڡ  v , 735 GF_TYPE * gs =0, 736 cڡ  t =0, 737 cڡ  idt = ACE_Ma ); 738  GF_In (cڡ  time , 739 cڡ  v , 740 cڡ BBox & bb , 741 GF_TYPE * gs =0, 742 cڡ  t =0, 743 cڡ  idt = ACE_Ma ); 745  GF_Upde (cڡ  time_om , 746 cڡ  time_to , 747 cڡ  v , 748 GF_TYPE * gs =0, 749 cڡ  t =0, 750 cڡ  idt = ACE_Ma ); 751  GF_Upde (cڡ  time_om , 752 cڡ  time_to , 753 cڡ  v , 754 cڡ BBox & bb , 755 GF_TYPE * gs =0, 756 cڡ  t =0, 757 cڡ  idt = ACE_Ma ); 759  GF_Prg (cڡ  tf , 760 cڡ  lf , 761 cڡ  , 762 cڡ  , 763 #ifde ACEVeGridFuni 764 cڡ  m = ACEA , 766 GF_TYPE * gs =0, 767 cڡ  t =0, 768 cڡ  idt = ACE_Ma ); 769  GF_Prg (cڡ  tf , 770 cڡ  lf , 771 cڡ  , 772 cڡ  , 773 cڡ BBox & bb , 774 #ifde ACEVeGridFuni 775 cڡ  m = ACEA , 777 GF_TYPE * gs =0, 778 cڡ  t =0, 779 cڡ  idt = ACE_Ma ); 781  GF_Reri (cڡ  tf , 782 cڡ  lf , 783 cڡ  , 784 cڡ  , 785 #ifde ACEVeGridFuni 786 cڡ  m = ACEA , 788 GF_TYPE * gs =0, 789 cڡ  t =0, 790 cڡ  idt = ACE_Ma ); 791  GF_Reri (cڡ  tf , 792 cڡ  lf , 793 cڡ  , 794 cڡ  , 795 cڡ BBox & bb , 796 #ifde ACEVeGridFuni 797 cڡ  m = ACEA , 799 GF_TYPE * gs =0, 800 cڡ  t =0, 801 cڡ  idt = ACE_Ma ); 803  GF_IO (cڡ  time , 804 cڡ  v , 805 GF_TYPE * gs =0, 806 cڡ  t =0, 807 cڡ  idt = ACE_Ma ); 808  GF_IO (cڡ  time , 809 cڡ  v , 810 cڡ BBox & bb , 811 GF_TYPE * gs =0, 812 cڡ  t =0, 813 cڡ  idt = ACE_Ma ); 819  GF_BndryUpde (cڡ  t , 820 cڡ  l , 824 GF_TYPE * gs , 825 cڡ  t , 826 cڡ  idt ); 827  GF_BndryUpde (cڡ  t , 828 cڡ  l , 832 cڡ  mgl , 833 GF_TYPE * gs , 834 cڡ  t , 835 cڡ  idt ); 837  GF_DoAdtBndryUpde ( GridDaBlock (2)< ACE_GFTy > &, 838 GridDaBlock (2)< ACE_GFTy > &, 839 GridDaBlock (2)< ACE_GFTy > &, 840 cڡ  ac , 844 GF_TYPE * gs , 845 cڡ  t , 846 cڡ  idt ); 848  GF_DoAdtBndryUpde ( GridDaBlock (2)< ACE_GFTy > &, 849 GridDaBlock (2)< ACE_GFTy > &, 850 GridDaBlock (2)< ACE_GFTy > &, 851 cڡ  ac , 855 cڡ  mgl , 856 GF_TYPE * gs , 857 cڡ  t , 858 cڡ  idt ); 864  boundy_ag (cڡ  t , 865 cڡ  l , 866 cڡ  c , 867 cڡ  d ) const 868 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gbndryags [ d ]); } 870 cڡ * boundy_ag (cڡ  t , 871 cڡ  l , 872 cڡ  c ) const 873 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gbndryags ); } 879 le cڡ gBBox & dabbox (cڡ  t , 880 cڡ  l , 881 cڡ  c , 882 cڡ  idt = ACE_Ma ) const 883 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt )); } 884 le BBox dabbox (cڡ  t , 885 cڡ  l , 886 cڡ  c , 887 cڡ  idt = ACE_Ma ) 888 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt )); } 890 le cڡ gBBox & dabbox (cڡ  t , 891 cڡ  l , 892 cڡ  c , 893 cڡ  mgl , 894 cڡ  idt ) const 895 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt , mgl )); } 896 le BBox dabbox (cڡ  t , 897 cڡ  l , 898 cڡ  c , 899 cڡ  mgl , 900 cڡ  idt ) 901 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt , mgl )); } 903 le cڡ gBBox & ribbox (cڡ  t , 904 cڡ  l , 905 cڡ  c , 906 cڡ  idt = ACE_Ma ) const 907 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt )); } 908 le BBox ribbox (cڡ  t , 909 cڡ  l , 910 cڡ  c , 911 cڡ  idt = ACE_Ma ) 912 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt )); } 914 le cڡ gBBox & ribbox (cڡ  t , 915 cڡ  l , 916 cڡ  c , 917 cڡ  mgl , 918 cڡ  idt ) const 919 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt , mgl )); } 920 le BBox ribbox (cڡ  t , 921 cڡ  l , 922 cڡ  c , 923 cڡ  mgl , 924 cڡ  idt ) 925 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt , mgl )); } 927 le cڡ gBBox & bndrybbox (cڡ  t , 928 cڡ  l , 929 cڡ  c , 930 cڡ  d , 931 cڡ  idt = ACE_Ma ) const 932 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt )); } 933 le BBox bndrybbox (cڡ  t , 934 cڡ  l , 935 cڡ  c , 936 cڡ  d , 937 cڡ  idt = ACE_Ma ) 938 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt )); } 940 le cڡ gBBox & bndrybbox (cڡ  t , 941 cڡ  l , 942 cڡ  c , 943 cڡ  d , 944 cڡ  mgl , 945 cڡ  idt ) const 946 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt , mgl )); } 947 le BBox bndrybbox (cڡ  t , 948 cڡ  l , 949 cڡ  c , 950 cڡ  d , 951 cڡ  mgl , 952 cڡ  idt ) 953 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt , mgl )); } 955 le cڡ gBBox & mgedbbox (cڡ  t , 956 cڡ  l , 957 cڡ  c , 958 cڡ  idt = ACE_Ma ) const 959 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> mgedbox ( idt )); } 960 le BBox mgedbbox (cڡ  t , 961 cڡ  l , 962 cڡ  c , 963 cڡ  idt = ACE_Ma ) 964 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> mgedbox ( idt )); } 966  tbboxli ( BBoxLi & bbl , 967 cڡ  l , 968 cڡ  idt = ACE_Ma ); 969  tbboxli ( BBoxLi & bbl , 970 cڡ  l , 971 cڡ  mgl , 972 cڡ  idt ); 974  dabboxli ( BBoxLi & bbl , 975 cڡ  l , 976 cڡ  idt = ACE_Ma ); 977  dabboxli ( BBoxLi & bbl , 978 cڡ  l , 979 cڡ  mgl , 980 cڡ  idt ); 982  mgedbboxli ( BBoxLi & bbl , 983 cڡ  l , 984 cڡ  idt = ACE_Ma ); 990 le GridDa (2)< gACE_GFTy > cڡ & ݔ ((cڡ  gt , 991 cڡ  gl , 992 cڡ  gc , 993 cڡ  gidt ) const 994 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , ACENu )); } 996 le GridDa (2)< gACE_GFTy > & ݔ ((cڡ  gt , 997 cڡ  gl , 998 cڡ  gc , 999 cڡ  gidt ) 1000 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , ACENu )); } 1002 le GridDa (2)< gACE_GFTy > cڡ & ݔ ((cڡ  gt , 1003 cڡ  gl , 1004 cڡ  gc , 1005 cڡ  gmgl , 1006 cڡ  gidt ) const 1007 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , mgl )); } 1009 le GridDa (2)< gACE_GFTy > & ݔ ((cڡ  gt , 1010 cڡ  gl , 1011 cڡ  gc , 1012 cڡ  gmgl , 1013 cڡ  gidt ) 1014 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , mgl )); } 1020  GF_SupShadow (cڡ  time , cڡ  v ); 1021  GF_RShadow (cڡ  time , cڡ  v ); 1027  GF_SupMuiGrid (cڡ  time , 1028 cڡ  v , 1029 cڡ  mglc , 1030 cڡ  mglf , 1031 cڡ  idt ); 1032  GF_SupMuiGrid (cڡ  time , 1033 cڡ  v , 1034 cڡ  axis , 1035 cڡ  mglc , 1036 cڡ  mglf , 1037 cڡ  idt ); 1038  GF_RMuiGrid (cڡ  time , 1039 cڡ  v , 1040 cڡ  idt ); 1046  GF_Fl (cڡ ACE_GFTy & v , 1047 cڡ  time , 1048 cڡ  v , 1049 cڡ  idt = ACE_Ma ); 1050  GF_Fl (cڡ ACE_GFTy & v , 1051 cڡ  time , 1052 cڡ  v , 1053 cڡ  mgl , 1054 cڡ  idt ); 1056  GF_Cy (cڡ  t1 , 1057 cڡ  l1 , 1058 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1059 cڡ  t2 , 1060 cڡ  l2 , 1061 cڡ BBox & whe , 1062 cڡ  idt = ACE_Ma ); 1063  GF_Cy (cڡ  t1 , 1064 cڡ  l1 , 1065 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1066 cڡ  t2 , 1067 cڡ  l2 , 1068 cڡ  idt = ACE_Ma ); 1070  GF_equs (cڡ  t , 1071 cڡ  l , 1072 cڡ BBox & whe , 1073 cڡ ACE_GFTy & v , 1074 cڡ  idt = ACE_Ma ); 1075  GF_equs (cڡ  t , 1076 cڡ  l , 1077 cڡ ACE_GFTy & v , 1078 cڡ  idt = ACE_Ma ); 1079  GF_equs (cڡ  t1 , 1080 cڡ  l1 , 1081 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1082 cڡ  t2 , 1083 cڡ  l2 , 1084 cڡ BBox & whe , 1085 cڡ  idt = ACE_Ma ); 1086  GF_equs (cڡ  t1 , 1087 cڡ  l1 , 1088 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1089 cڡ  t2 , 1090 cڡ  l2 , 1091 cڡ  idt = ACE_Ma ); 1093  GF_us (cڡ  t , 1094 cڡ  l , 1095 cڡ BBox & whe , 1096 cڡ ACE_GFTy & v , 1097 cڡ  idt = ACE_Ma ); 1098  GF_us (cڡ  t , 1099 cڡ  l , 1100 cڡ ACE_GFTy & v , 1101 cڡ  idt = ACE_Ma ); 1102  GF_us (cڡ  t1 , 1103 cڡ  l1 , 1104 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1105 cڡ  t2 , 1106 cڡ  l2 , 1107 cڡ BBox & whe , 1108 cڡ  idt = ACE_Ma ); 1109  GF_us (cڡ  t1 , 1110 cڡ  l1 , 1111 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1112 cڡ  t2 , 1113 cڡ  l2 , 1114 cڡ  idt = ACE_Ma ); 1116  GF_mus (cڡ  t , 1117 cڡ  l , 1118 cڡ BBox & whe , 1119 cڡ ACE_GFTy & v , 1120 cڡ  idt = ACE_Ma ); 1121  GF_mus (cڡ  t , 1122 cڡ  l , 1123 cڡ ACE_GFTy & v , 1124 cڡ  idt = ACE_Ma ); 1125  GF_mus (cڡ  t1 , 1126 cڡ  l1 , 1127 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1128 cڡ  t2 , 1129 cڡ  l2 , 1130 cڡ BBox & whe , 1131 cڡ  idt = ACE_Ma ); 1132  GF_mus (cڡ  t1 , 1133 cڡ  l1 , 1134 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1135 cڡ  t2 , 1136 cڡ  l2 , 1137 cڡ  idt = ACE_Ma ); 1139  GF_muɝly (cڡ  t , 1140 cڡ  l , 1141 cڡ BBox & whe , 1142 cڡ ACE_GFTy & v , 1143 cڡ  idt = ACE_Ma ); 1144  GF_muɝly (cڡ  t , 1145 cڡ  l , 1146 cڡ ACE_GFTy & v , 1147 cڡ  idt = ACE_Ma ); 1148  GF_muɝly (cڡ  t1 , 1149 cڡ  l1 , 1150 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1151 cڡ  t2 , 1152 cڡ  l2 , 1153 cڡ BBox & whe , 1154 cڡ  idt = ACE_Ma ); 1155  GF_muɝly (cڡ  t1 , 1156 cڡ  l1 , 1157 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1158 cڡ  t2 , 1159 cڡ  l2 , 1160 cڡ  idt = ACE_Ma ); 1162  GF_divide (cڡ  t , 1163 cڡ  l , 1164 cڡ BBox & whe , 1165 cڡ ACE_GFTy & v , 1166 cڡ  idt = ACE_Ma ); 1167  GF_divide (cڡ  t , 1168 cڡ  l , 1169 cڡ ACE_GFTy & v , 1170 cڡ  idt = ACE_Ma ); 1171  GF_divide (cڡ  t1 , 1172 cڡ  l1 , 1173 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1174 cڡ  t2 , 1175 cڡ  l2 , 1176 cڡ BBox & whe , 1177 cڡ  idt = ACE_Ma ); 1178  GF_divide (cڡ  t1 , 1179 cڡ  l1 , 1180 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1181 cڡ  t2 , 1182 cڡ  l2 , 1183 cڡ  idt = ACE_Ma ); 1189  GF_gh_e (cڡ  t1 , 1190 cڡ  l1 , 1191 cڡ BBox & to , 1192 cڡ BBox & om , 1193 GridDa (2)< ACE_GFTy >& to , 1194 cڡ  , 1195 cڡ  idt = ACE_Ma , 1196 cڡ ACE_GFTy defv =(ACE_GFType)0); 1198  GF_Cy (cڡ  t1 , 1199 cڡ  l1 , 1200 cڡ GridFuni (2)< ACE_GFTy >& rhs , 1201 cڡ  t2 , 1202 cڡ  l2 , 1203 cڡ BBox & to , 1204 cڡ BBox & om , 1205 cڡ  idt = ACE_Ma ); 1243 ACE_GFTy GF_maxv (cڡ  t , 1244 cڡ  l , 1245 #ifde ACEVeGridFuni 1246 cڡ  m , 1248 cڡ  idt = ACE_Ma ); 1249 ACE_GFTy GF_maxv (cڡ  t , 1250 cڡ  l , 1251 #ifde ACEVeGridFuni 1252 cڡ  m , 1254 cڡ BBox & whe , 1255 cڡ  idt = ACE_Ma ); 1256 ACE_GFTy GF_maxv (cڡ  t , 1257 cڡ  l , 1258 #ifde ACEVeGridFuni 1259 cڡ  m , 1261 cڡ  lmg , 1262 cڡ  idt ); 1263 ACE_GFTy GF_maxv (cڡ  t , 1264 cڡ  l , 1265 #ifde ACEVeGridFuni 1266 cڡ  m , 1268 cڡ  lmg , 1269 cڡ BBox & whe , 1270 cڡ  idt ); 1272 ACE_GFTy GF_mv (cڡ  t , 1273 cڡ  l , 1274 #ifde ACEVeGridFuni 1275 cڡ  m , 1277 cڡ  idt = ACE_Ma ); 1278 ACE_GFTy GF_mv (cڡ  t , 1279 cڡ  l , 1280 #ifde ACEVeGridFuni 1281 cڡ  m , 1283 cڡ BBox & whe , 1284 cڡ  idt = ACE_Ma ); 1285 ACE_GFTy GF_mv (cڡ  t , 1286 cڡ  l , 1287 #ifde ACEVeGridFuni 1288 cڡ  m , 1290 cڡ  lmg , 1291 cڡ  idt ); 1292 ACE_GFTy GF_mv (cڡ  t , 1293 cڡ  l , 1294 #ifde ACEVeGridFuni 1295 cڡ  m , 1297 cڡ  lmg , 1298 cڡ BBox & whe , 1299 cڡ  idt ); 1301 ACE_GFTy GF_sum (cڡ  t , 1302 cڡ  l , 1303 #ifde ACEVeGridFuni 1304 cڡ  m , 1306 cڡ  idt = ACE_Ma ); 1307 ACE_GFTy GF_sum (cڡ  t , 1308 cڡ  l , 1309 #ifde ACEVeGridFuni 1310 cڡ  m , 1312 cڡ BBox & whe , 1313 cڡ  idt = ACE_Ma ); 1314 ACE_GFTy GF_sum (cڡ  t , 1315 cڡ  l , 1316 #ifde ACEVeGridFuni 1317 cڡ  m , 1319 cڡ  lmg , 1320 cڡ  idt ); 1321 ACE_GFTy GF_sum (cڡ  t , 1322 cڡ  l , 1323 #ifde ACEVeGridFuni 1324 cڡ  m , 1326 cڡ  lmg , 1327 cڡ BBox & whe , 1328 cڡ  idt ); 1330 ACE_GFTy GF_odu (cڡ  t , 1331 cڡ  l , 1332 #ifde ACEVeGridFuni 1333 cڡ  m , 1335 cڡ  idt = ACE_Ma ); 1336 ACE_GFTy GF_odu (cڡ  t , 1337 cڡ  l , 1338 #ifde ACEVeGridFuni 1339 cڡ  m , 1341 cڡ BBox & whe , 1342 cڡ  idt = ACE_Ma ); 1343 ACE_GFTy GF_odu (cڡ  t , 1344 cڡ  l , 1345 #ifde ACEVeGridFuni 1346 cڡ  m , 1348 cڡ  lmg , 1349 cڡ  idt ); 1350 ACE_GFTy GF_odu (cڡ  t , 1351 cڡ  l , 1352 #ifde ACEVeGridFuni 1353 cڡ  m , 1355 cڡ  lmg , 1356 cڡ BBox & whe , 1357 cڡ  idt ); 1359 ACE_GFTy GF_nm2 (cڡ  t , 1360 cڡ  l , 1361 #ifde ACEVeGridFuni 1362 cڡ  m , 1364 cڡ  idt = ACE_Ma ); 1365 ACE_GFTy GF_nm2 (cڡ  t , 1366 cڡ  l , 1367 #ifde ACEVeGridFuni 1368 cڡ  m , 1370 cڡ BBox & whe , 1371 cڡ  idt = ACE_Ma ); 1372 ACE_GFTy GF_nm2 (cڡ  t , 1373 cڡ  l , 1374 #ifde ACEVeGridFuni 1375 cڡ  m , 1377 cڡ  lmg , 1378 cڡ  idt ); 1379 ACE_GFTy GF_nm2 (cڡ  t , 1380 cڡ  l , 1381 #ifde ACEVeGridFuni 1382 cڡ  m , 1384 cڡ  lmg , 1385 cڡ BBox & whe , 1386 cڡ  idt ); 1392  GF_Wre (cڡ  t , 1393 cڡ  l , 1394 #ifde ACEVeGridFuni 1395 cڡ  m , 1397 cڡ  mgl , 1398 cڡ  idt , 1399 cڡ  gfdty ); 1400 le  GF_Wre (cڡ  t , 1401 cڡ  l , 1402 #ifde ACEVeGridFuni 1403 cڡ  m , 1405 cڡ  gfdty ) 1406 { GF_Wre ( t , l , 1407 #ifde ACEVeGridFuni 1408 m , 1410 ACENu , ACE_Ma , gfdty ); } 1411 le  GF_Wre (cڡ  t , 1412 cڡ  l , 1413 #ifde ACEVeGridFuni 1414 cڡ  m , 1416 cڡ  mgl , 1417 cڡ  gfdty ) 1418 {( gmgl >0? GF_Wre ( t , l , 1419 #ifde ACEVeGridFuni 1420 m , 1422 mgl , ACE_Ma , gfdty ) : 1423 GF_Wre ( t , l , 1424 #ifde ACEVeGridFuni 1425 m , 1427 ACENu , mgl , gfdty ); } 1429  GF_Wre (cڡ  t , 1430 cڡ  l , 1431 #ifde ACEVeGridFuni 1432 cڡ  m , 1434 cڡ  mgl , 1435 cڡ  idt , 1436 cڡ BBox & whe , 1437 cڡ  gfdty ); 1438 le  GF_Wre (cڡ  t , 1439 cڡ  l , 1440 #ifde ACEVeGridFuni 1441 cڡ  m , 1443 cڡ BBox & whe , 1444 cڡ  gfdty ) 1445 { GF_Wre ( t , l , 1446 #ifde ACEVeGridFuni 1447 m , 1449 ACENu , ACE_Ma , whe , gfdty ); } 1450 le  GF_Wre (cڡ  t , 1451 cڡ  l , 1452 #ifde ACEVeGridFuni 1453 cڡ  m , 1455 cڡ  mgl , 1456 cڡ BBox & whe , 1457 cڡ  gfdty ) 1458 {( gmgl >0? GF_Wre ( t , l , 1459 #ifde ACEVeGridFuni 1460 m , 1462 mgl , ACE_Ma , whe , gfdty ) : 1463 GF_Wre ( t , l , 1464 #ifde ACEVeGridFuni 1465 m , 1467 ACENu , 1468 mgl , 1469 whe , 1470 gfdty ); } 1472  GF_Rd (cڡ  t , 1473 cڡ  l , 1474 #ifde ACEVeGridFuni 1475 cڡ  m , 1477 cڡ  mgl , 1478 cڡ  idt , 1479 cڡ  gfdty ); 1480 le  GF_Rd (cڡ  t , 1481 cڡ  l , 1482 #ifde ACEVeGridFuni 1483 cڡ  m , 1485 cڡ  gfdty ) 1486 { GF_Rd ( t , l , 1487 #ifde ACEVeGridFuni 1488 m , 1490 ACENu , ACE_Ma , gfdty ); } 1491 le  GF_Rd (cڡ  t , 1492 cڡ  l , 1493 #ifde ACEVeGridFuni 1494 cڡ  m , 1496 cڡ  mgl , 1497 cڡ  gfdty ) 1498 {( gmgl >0? GF_Rd ( t , l , 1499 #ifde ACEVeGridFuni 1500 m , 1502 mgl , ACE_Ma , gfdty ) : 1503 GF_Rd ( t , l , ACENu , 1504 #ifde ACEVeGridFuni 1505 m , 1507 mgl , gfdty ); } 1509  GF_Rd (cڡ  t , 1510 cڡ  l , 1511 #ifde ACEVeGridFuni 1512 cڡ  m , 1514 cڡ  mgl , 1515 cڡ  idt , 1516 cڡ BBox & whe , 1517 cڡ  gfdty ); 1518 le  GF_Rd (cڡ  t , 1519 cڡ  l , 1520 #ifde ACEVeGridFuni 1521 cڡ  m , 1523 cڡ BBox & whe , 1524 cڡ  gfdty ) 1525 { GF_Rd ( t , l , 1526 #ifde ACEVeGridFuni 1527 m , 1529 ACENu , ACE_Ma , whe , gfdty ); } 1530 le  GF_Rd (cڡ  t , 1531 cڡ  l , 1532 #ifde ACEVeGridFuni 1533 cڡ  m , 1535 cڡ  mgl , 1536 cڡ BBox & whe , 1537 cڡ  gfdty ) 1538 {( gmgl >0? GF_Rd ( t , l , 1539 #ifde ACEVeGridFuni 1540 m , 1542 mgl , ACE_Ma , whe , gfdty ) : 1543 GF_Rd ( t , l , 1544 #ifde ACEVeGridFuni 1545 m , 1547 ACENu , mgl , whe , gfdty ); } 1553  GF_GUCDDa (cڡ ACEUCD (2)& daghucd , 1554 cڡ  t , 1555 ACE_GFTy *& ucdda , 1556 cڡ  ucdrv ); 1560  GF_Vw (cڡ  t , 1561 cڡ  l , 1562 #ifde ACEVeGridFuni 1563 cڡ  m , 1565 cڡ  axis , 1566 cڡ BBox & whe , 1567 cڡ  prv , 1568 cڡ  ty , 1569 cڡ * xg , 1570 cڡ * drv , 1571 cڡ  idt = ACE_Ma ); 1577 goam & GF_DebugPrtDa ( oam & os , 1578 cڡ  t , 1579 cڡ  l , 1580 cڡ  idt ); 1581 goam & GF_DebugPrtIDa ( oam & os , 1582 cڡ  t , 1583 cڡ  l , 1584 cڡ  idt ); 1585 goam & GF_DebugPrtDaBlk ( oam & os , 1586 cڡ  time , 1587 cڡ  v ); 1588 goam & GF_DebugPrtTheDa ( oam & os ); 1592 #ifde DICE 1594  SObjDesti (); 1595  SObjVws (); 1596  SObjCommds (); 1597  SFuniPors (); 1598  GF_GDaSli (cڡ  tim , 1599 cڡ  v , 1600 #ifde ACEVeGridFuni 1601 cڡ  m , 1603 cڡ BBox & whe , 1604 * bufr , 1605 cڡ  idim , 1606 cڡ  prv , 1607 cڡ  idt ); 1608  GF_GMaxV (cڡ  tim , 1609 cڡ  v , 1610 #ifde ACEVeGridFuni 1611 cڡ  m , 1613 * bufr , 1614 cڡ  idt ); 1615  GF_GMV (cڡ  tim , 1616 cڡ  v , 1617 #ifde ACEVeGridFuni 1618 cڡ  m , 1620 * bufr , 1621 cڡ  idt ); 1622  GF_GNm (cڡ  tim , 1623 cڡ  v , 1624 #ifde ACEVeGridFuni 1625 cڡ  m , 1627 * bufr , 1628 cڡ  idt ); 1632 #ifde DICE 1636 * GF2VwXSli ( DICEBaObje *); 1637 * GF2VwYSli ( DICEBaObje *); 1638 * GF2VwXYSli ( DICEBaObje *); 1639 * GF2VwMaxV ( DICEBaObje *); 1640 * GF2VwMV ( DICEBaObje *); 1641 * GF2VwNm ( DICEBaObje *); 1647 #i defed ( Wt_c_fes ) 1648  ~"GridFuni2.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunction3.c 1 #ide _uded_GridFuni3_c 2  #_uded_GridFuni3_c ) 21 gme < ass gACE_GFTy > 22 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 23 gGridHrchy & ggh ) 24 : GridFuniVoid ( gh . dagh_ty (),3, me ,gh. numbems (),gh, 25 gh . deu_ignmt (3), 26 gh . boundywidth (), 27 gh . exghowidth (), 28 ACEComm , ACENoShadow , 29 gh . ag (),gh. uxag (), 30 gh . boundyty (), 31 gh . adtboundyty (), 32 ACENoExGho ), 33 ngth (0), gdb (0), bvue (0), 34 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 35 func (0), iofunc (0) 41 gme < ass gACE_GFTy > 42 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 43 cڡ  gt_ , 44 cڡ  gs_ , 45 gGridHrchy & ggh , 46 cڡ  gcag , 47 cڡ  gsag , 48 cڡ  gextghag ) 49 : GridFuniVoid ( gh . dagh_ty (),3, me ,gh. numbems (), t_ , s_ , 50 gh , ACE_A ,gh. boundywidth (), 51 gh . exghowidth (), 52 cag , sag , 53 gh . ag (),gh. uxag (), 54 gh . boundyty (), 55 gh . adtboundyty (), extghag ), 56 ngth (0), gdb (0), bvue (0), 57 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 58 func (0), iofunc (0) 60 GF_Compo (); 61 i( gdagh . chk_t (&& checkpot ()) 62 GF_CheckpotRet (); 68 gme < ass gACE_GFTy > 69 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 70 cڡ  gt_ , 71 cڡ  gs_ , 72 gGridHrchy & ggh , 73 cڡ  gty , 74 cڡ  gcag , 75 cڡ  gsag , 76 cڡ  gbag , 77 cڡ  gadbag , 78 cڡ  gextghag ) 79 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 80 3, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 81 gh . `boundywidth (),gh. `exghowidth (), 82 cag , sag , 83 gh . `ag (),gh. `uxag (), 84 bag , adbag , extghag ), 85 `ngth (0), `gdb (0), `bvue (0), 86 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 87 `func (0), `iofunc (0) 89 `GF_Compo (); 90 i( dagh . `chk_t (&& `checkpot ()) 91 `GF_CheckpotRet (); 92 } } 94 gme < ass gACE_GFTy > 95 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 96 cڡ  gt_ , 97 cڡ * gs_ , 98 gGridHrchy & ggh , 99 cڡ  gty , 100 cڡ  gcag , 101 cڡ  gsag , 102 cڡ  gbag , 103 cڡ  gadbag , 104 cڡ  gextghag ) 105 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 106 3, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 107 gh . `boundywidth (),gh. `exghowidth (), 108 cag , sag , 109 gh . `ag (),gh. `uxag (), 110 bag , adbag , extghag ), 111 `ngth (0), `gdb (0), `bvue (0), 112 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 113 `func (0), `iofunc (0) 115 `GF_Compo (); 116 i( dagh . `chk_t (&& `checkpot ()) 117 `GF_CheckpotRet (); 118 } } 123 gme < ass gACE_GFTy > 124 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 125 cڡ  gt_ , 126 cڡ  gs_ , 127 gGridHrchy & ggh , 128 cڡ  gty , 129 cڡ  gign , 130 cڡ  gcag , 131 cڡ  gsag , 132 cڡ  gbag , 133 cڡ  gadbag , 134 cڡ  gextghag ) 135 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 136 3, me , gh . `numbems (), t_ , s_ ,gh, ign , 137 gh . `boundywidth (),gh. `exghowidth (), 138 cag , sag , 139 gh . `ag (),gh. `uxag (), 140 bag , adbag , extghag ), 141 `ngth (0), `gdb (0), `bvue (0), 142 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 143 `func (0), `iofunc (0) 145 `GF_Compo (); 146 i( dagh . `chk_t (&& `checkpot ()) 147 `GF_CheckpotRet (); 148 } } 150 gme < ass gACE_GFTy > 151 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 152 cڡ  gt_ , 153 cڡ * gs_ , 154 gGridHrchy & ggh , 155 cڡ  gty , 156 cڡ  gign , 157 cڡ  gcag , 158 cڡ  gsag , 159 cڡ  gbag , 160 cڡ  gadbag , 161 cڡ  gextghag ) 162 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 163 3, me , gh . `numbems (), t_ , s_ ,gh, ign , 164 gh . `boundywidth (),gh. `exghowidth (), 165 cag , sag , 166 gh . `ag (),gh. `uxag (), 167 bag , adbag , extghag ), 168 `ngth (0), `gdb (0), `bvue (0), 169 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 170 `func (0), `iofunc (0) 172 `GF_Compo (); 173 i( dagh . `chk_t (&& `checkpot ()) 174 `GF_CheckpotRet (); 175 } } 180 gme < ass gACE_GFTy > 181 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 182 cڡ  gt_ , 183 cڡ  gs_ , 184 cڡ  gtime , 185 cڡ  gv , 186 gGridHrchy & ggh , 187 cڡ  gty , 188 cڡ  gcag , 189 cڡ  gsag , 190 cڡ  gbag , 191 cڡ  gadbag , 192 cڡ  gextghag ) 193 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 194 3, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 195 gh . `boundywidth (),gh. `exghowidth (), 196 cag , sag , 197 gh . `ag (),gh. `uxag (), 198 bag , adbag , extghag ), 199 `ngth (0), `gdb (0), `bvue (0), 200 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 201 `func (0), `iofunc (0) 203 `GF_Compo ( time , v ); 204 i( dagh . `chk_t (&& `checkpot ()) 205 `GF_CheckpotRet (); 206 } } 208 gme < ass gACE_GFTy > 209 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 210 cڡ  gt_ , 211 cڡ * gs_ , 212 cڡ  gtime , 213 cڡ  gv , 214 gGridHrchy & ggh , 215 cڡ  gty , 216 cڡ  gcag , 217 cڡ  gsag , 218 cڡ  gbag , 219 cڡ  gadbag , 220 cڡ  gextghag ) 221 : GridFuniVoid ((( ty = ACENu ? gh . $dagh_ty (: ty ), 222 3, me , gh . `numbems (), t_ , s_ ,gh, ACE_A , 223 gh . `boundywidth (),gh. `exghowidth (), 224 cag , sag , 225 gh . `ag (),gh. `uxag (), 226 bag , adbag , extghag ), 227 `ngth (0), `gdb (0), `bvue (0), 228 `ifunc (0), `ufunc (0), `bfunc (0), `abfunc (0), `pfunc (0), `rfunc (0), `func (0), 229 `func (0), `iofunc (0) 231 `GF_Compo ( time , v ); 232 i( dagh . `chk_t (&& `checkpot ()) 233 `GF_CheckpotRet (); 234 } } 239 gme < ass gACE_GFTy > 240 GridFuni (3)< gACE_GFTy >::GridFuni(3)(cڡ  me [], 241 cڡ GridFuni (3)< gACE_GFTy >& ggf , 242 cڡ  gtime , 243 cڡ  gv , 244 cڡ  gcag , 245 cڡ  gsag , 246 cڡ  gbag , 247 cڡ  gadbag , 248 cڡ  gextghag ) 249 : GridFuniVoid ( me ,3, gf . GF_NIms (),gf, 250 cag , sag , 251 gf . _ag ,gf. ux_ag , 252 bag , adbag , extghag ), 253 ngth (0), gdb (0), bvue (0), 254 ifunc (0), ufunc (0), bfunc (0), abfunc (0), pfunc (0), rfunc (0), func (0), 255 func (0), iofunc (0) 257 GF_Compo ( gf , time , v ); 258 i( gdagh . chk_t (&& checkpot ()) 259 GF_CheckpotRet (); 265 gme < ass gACE_GFTy > 266 GridFuni (3)< gACE_GFTy >::~GridFunction(3)() 268 GF_DeGDBStage (); 274 gme < ass gACE_GFTy > 275  GridFuni (3)< gACE_GFTy >:: $GF_DeGDBStage () 277 cڡ  vs = dagh . `tٮvs (); 278 cڡ  times = 2* time__d +1; 280 i( gdb ) { 281  t = 0 ; < times ;++) { 282 i( gdb [ t ]) { 283  l = 0 ; < vs ;l++) { 284 i( gdb [ t ][ l ]) { 285  i = 0 ; i < ngth ; i++) 286 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 287  tmpi = i +1; 288 tmpi < ngth && gdb [ t ][ l ][tmpi] && gdb[t][l][tmpi]-> `dexme ( i ); 289 tmpi ++) 290 gdb [ t ][ l ][ tmpi ] = 0; 291 de gdb [ t ][ l ][ i ]; gdb[t][l][i] = 0; 293 de [] gdb [ t ][ l ]; gdb[t][l] = 0; 296 de [] gdb [ t ]; gdb[t] = 0; 299 de [] gdb ; gdb = 0; 301 } } 303 gme < ass gACE_GFTy > 304  GridFuni (3)< gACE_GFTy >:: $GF_DeGDBStage (cڡ  t ) 306 cڡ  vs = dagh . `tٮvs (); 308 i( gdb && gdb[ t ]) { 309  l = 0 ; < vs ;l++) { 310 i( gdb [ t ][ l ]) { 311  i = 0 ; i < ngth ; i++) 312 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 313  tmpi = i +1; 314 tmpi < ngth && gdb [ t ][ l ][tmpi] && gdb[t][l][tmpi]-> `dexme ( i ); 315 tmpi ++) 316 gdb [ t ][ l ][ tmpi ] = 0; 317 de gdb [ t ][ l ][ i ]; gdb[t][l][i] = 0; 319 de [] gdb [ t ][ l ]; gdb[t][l] = 0; 322 de [] gdb [ t ]; gdb[t] = 0; 324 } } 329 gme < ass gACE_GFTy > 330  GridFuni (3)< gACE_GFTy >:: $GF_SUpGDBPors () 332 cڡ  vs = dagh . `tٮvs (); 333 cڡ  times = 2* time__d +1; 335 `GridDaBlock (3)< ACE_GFTy >* tmpgdb = 0; 337  idx = -1; 338  t = 0 ; < times ;++i( gdb [t]) { 339  l = 0 ; < vs -1 ;l++i( gdb [ t ][l]) { 340 tmpgdb = 0; 341  i = 0 ; i < ngth ; i++) { 342 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 343 tmpgdb = gdb [ t ][ l ][ i ]; 345 i( gdb [ t ][ l ][ i ] =0 && tmpgdb ) { 346 gdb [ t ][ l ][ i ] = tmpgdb ; 351 } } 354 gme < ass gACE_GFTy > 355  GridFuni (3)< gACE_GFTy >:: $GF_Compo () 358 i( comm_ag > ACETemeComm ) { 359 me_ag = comm_ag - ACETemeComm ; 360 #ifde DEBUG_PRINT 361 `as ( dagh . gi [ me_ag ]); 363 comm_ag = dagh . gi [ me_ag ]-> `comm_ty (); 366 i( `compod ()) ; 368 is . `compu_is ( GhoIai :: `_ag ( comm_ag ), 369 GhoIai :: `cr_ag ( comm_ag ), 370 GhoIai :: `edge_ag ( comm_ag ), 371 GhoIai :: `sime_ag ( comm_ag )); 373 cڡ  me = comm_rvi :: `oc_me (); 374 cڡ  um = comm_rvi :: `oc_num (); 376 cڡ  vs = dagh . `tٮvs (); 378  t = 0, l = 0, i = 0; 381 cuime [0] = w [ vs ]; 382 cuime [1] = w [ vs ]; 383  i =0;i< vs ;i++) { 384 cuime [0][ i ] = curtime[1][i] = 0; 387 cڡ  ts = 2* time__d +1; 388 cڡ  mdex = dagh . `maxdex ()+1; 390 gt = w `GridTab ( gfid , vs , ts ); 392 GridBoxLi * lgbl = dagh . `lgbl (); 393 ngth = lgbl -> `maxdex ()+1; 395 #ifde DEBUG_PRINT_GF_GT 396 comm_rvi :: `log () << "\n************* Grid Table *************\n" 397 << "------ [" << game << "] ------" << "\n" 398 << * gt 400 ). `ush (); 404 `GF_DeGDBStage (); 407 gdb = w `GridDaBlock (3)< ACE_GFTy > ***[ ts ]; 408  t =0;t< ts ;t++) { 409 gdb [ t ] = ( `GridDaBlock (3)< ACE_GFTy > *** NULL ; 411  t =0;t< ts ;t++) { 412 i(! gdb [ time_s [ t ]]) { 413 gdb [ time_s [ t ]] = w `GridDaBlock (3)< ACE_GFTy > **[ vs ]; 415  l =0;l< vs ;l++) { 416 gdb [ time_s [ t ]][ l ] = w `GridDaBlock (3)< ACE_GFTy > *[ ngth ]; 417  i =0;i< ngth ;i++) 418 gdb [ time_s [ t ]][ l ][ i ] = ( `GridDaBlock (3)< ACE_GFTy > * NULL ; 423 cڡ  has_shadow = `shadow (); 425 `GridFuni (3)< ACE_GFTy >* geme = 0; 426 i( me_ag ! ACENu ) { 427 geme = ( `GridFuni (3)< ACE_GFTy >* dagh . gi [ me_ag ]; 428 i( geme && !geme-> `compod ()) gftemplate = 0; 430 cڡ `GridDaBlock (3)< ACE_GFTy >* gdbtm = 0; 432  GridBox * gb = 0; 433  gbi = 0; 434  gb = lgbl -> `f (); gb; gb =gbl-> `xt ()) { 435 cڡ  fe = gb -> `gbFeLev (); 436 cڡ  cr = gb -> `gbCrsLev (); 437 gbi = gb -> `gbIndex (); 438  l =0;l< vs ;l++) { 439 cڡ  v = dagh . `vnum ( l ); 440 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 441 cڡ  = dagh . `gCutTime ( l ); 442  tmi = ACENu ; 443 i( me_ag ! ACENu && 444 geme && 445 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 446 && geme -> gdb [ tmi ][ l ]) 447 gdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 448 gdbtm = 0; 449 i( v > cr &&ev < fe ) { 450  t =0;t< ts ;t++i( gdb [t] && gdb[t][ l ]) { 451 gdb [ t ][ l ][ gbi ] = w `GridDaBlock (3)< ACE_GFTy >( gfid , dagh , * gt , 452 is , 453 gbi , * gb , 454 nems , 455 t , 456 dagh . `vnum ( l ), 457 bwidth , 458 extghowidth , 459 ovp , 460 a__d , 461 ignmt , mdex , 462 `comm ( t , l ), 463 has_shadow , 464 _ag , 465 `uxes ( t , l ), 466 gdbtm ); 467 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 473 i( `comm ()) { 474 `GF_GhGhoCommInfo (); 475 `GF_SUpGhoCommSvs (); 477 i( ` ()) { 478 `GF_GhPtCommInfo (); 479 `GF_SUpPtCommSvs (); 481 i( `uxes ()) { 482 `GF_GhFluxCommInfo (); 483 `GF_SUpFluxCommSvs (); 485 `GF_SUpGDBPors (); 486 compo_ag = ACETrue ; 487 } } 492 gme < ass gACE_GFTy > 493  GridFuni (3)< gACE_GFTy >:: $GF_Compo (cڡ  T , cڡ  L ) 495 i( comm_ag > ACETemeComm ) { 496 me_ag = comm_ag - ACETemeComm ; 497 #ifde DEBUG_PRINT 498 `as ( dagh . gi [ me_ag ]); 500 comm_ag = dagh . gi [ me_ag ]-> `comm_ty (); 503 i( `compod ()) ; 505 is . `compu_is ( GhoIai :: `_ag ( comm_ag ), 506 GhoIai :: `cr_ag ( comm_ag ), 507 GhoIai :: `edge_ag ( comm_ag ), 508 GhoIai :: `sime_ag ( comm_ag )); 510 cڡ  me = comm_rvi :: `oc_me (); 511 cڡ  um = comm_rvi :: `oc_num (); 513 cڡ  vs = dagh . `tٮvs (); 514 cڡ  Lnum = dagh . `vnum ( L ); 516  t = 0, l = 0, i = 0; 519 cuime [0] = w [ vs ]; 520 cuime [1] = w [ vs ]; 521  i =0;i< vs ;i++) { 522 cuime [0][ i ] = curtime[1][i] = 0; 525 cڡ  ts = 2* time__d +1; 526 cڡ  ev = dagh . `fev (); 527 cڡ  = dagh . `fevdex (); 528 cڡ  mdex = dagh . `maxdex ()+1; 530 i( L = ACEALevs ) { 531 gt = w `GridTab ( gfid , vs , ts ); 533 i( L < ) { 534 gt = w `GridTab ( gfid , vs , ts ); 538 #ifde DEBUG_PRINT 539 `as (( L - ) == 1); 541 gt = w `GridTab ( gfid , vs , ts ); 544 #ifde DEBUG_PRINT_GF_GT 545 comm_rvi :: `log () << "\n************* Grid Table *************\n" 546 << "------ [" << game << "] ------" << "\n" 547 << * gt 549 ). `ush (); 552 GridBoxLi * lgbl = dagh . `lgbl (); 553 ngth = lgbl -> `maxdex ()+1; 556 `GF_DeGDBStage (); 559 gdb = w `GridDaBlock (3)< ACE_GFTy > ***[ ts ]; 560  t =0;t< ts ;t++) { 561 gdb [ t ] = ( `GridDaBlock (3)< ACE_GFTy > *** NULL ; 563  t =0;t< ts ;t++) { 564  l =0;l< vs ;l++) { 565 cڡ  th = ( l < ) ? : fl; 566 i( T ! ACEATimes && `dagh_timedex (T, th ! time_s [ t ]) ; 567 i(! gdb [ time_s [ t ]]) { 568 gdb [ time_s [ t ]] = w `GridDaBlock (3)< ACE_GFTy > **[ vs ]; 569  =0;< vs ;ll++) 570 gdb [ time_s [ t ]][ ] = ( `GridDaBlock (3)< ACE_GFTy > ** NULL ; 572 i(( L = ACEALevs || L = l && ! gdb [ time_s [ t ]][l]) { 573 gdb [ time_s [ t ]][ l ] = w `GridDaBlock (3)< ACE_GFTy > *[ ngth ]; 575  i =0;i< ngth ;i++) 576 gdb [ time_s [ t ]][ l ][ i ] = ( `GridDaBlock (3)< ACE_GFTy > * NULL ; 581 cڡ  has_shadow = `shadow (); 583 `GridFuni (3)< ACE_GFTy >* geme = 0; 584 i( me_ag ! ACENu ) { 585 geme = ( `GridFuni (3)< ACE_GFTy >* dagh . gi [ me_ag ]; 586 i( geme && !geme-> `compod ()) gftemplate = 0; 588 cڡ `GridDaBlock (3)< ACE_GFTy >* gdbtm = 0; 590  GridBox * gb = 0; 591  gbi = 0; 592  gb = lgbl -> `f (); gb; gb =gbl-> `xt ()) { 593 cڡ  fe = gb -> `gbFeLev (); 594 cڡ  cr = gb -> `gbCrsLev (); 595 gbi = gb -> `gbIndex (); 596  l =0;l< vs ;l++) { 597 i( L ! ACEALevs && L ! l ) ; 598 cڡ  v = ( l < ? dagh . `vnum : ev ; 599 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 600 cڡ  = dagh . `gCutTime ( l ); 601  tmi = ACENu ; 602 i( me_ag ! ACENu && 603 geme && 604 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 605 && geme -> gdb [ tmi ][ l ]) 606 gdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 607 gdbtm = 0; 608 i( v > cr &&ev < fe ) { 609  t =0;t< ts ;t++) { 610 i( T ! ACEATimes && `dagh_timedex (T, l ! t ) ; 611 i( gdb [ t ] && gdb[t][ l ]) { 612 gdb [ t ][ l ][ gbi ] = w `GridDaBlock (3)< ACE_GFTy >( gfid , dagh , * gt , 613 is , 614 gbi , * gb , 615 nems , 616 t , 617 dagh . `vnum ( l ), 618 bwidth , 619 extghowidth , 620 ovp , 621 a__d , 622 ignmt , mdex , 623 `comm ( t , l ), 624 has_shadow , 625 _ag , 626 `uxes ( t , l ), 627 gdbtm ); 628 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 635 i( `comm ()) { 636 `GF_GhGhoCommInfo (); 637 `GF_SUpGhoCommSvs (); 639 i( ` ()) { 640 `GF_GhPtCommInfo (); 641 `GF_SUpPtCommSvs (); 643 i( `uxes ()) { 644 `GF_GhFluxCommInfo (); 645 `GF_SUpFluxCommSvs (); 647 `GF_SUpGDBPors (); 648 compo_ag = ACETrue ; 649 } } 654 gme < ass gACE_GFTy > 655  GridFuni (3)< gACE_GFTy >:: GF_Compo ( 656 cڡ GridFuni (3)< ACE_GFTy >& gf , 657 cڡ  T , cڡ  L ) 659 i( gcomm_ag > ACETemeComm ) { 660 me_ag = comm_ag - ACETemeComm ; 661 #ifde DEBUG_PRINT 662 as ( dagh . gi [ me_ag ]); 664 gcomm_ag = dagh . gi [ me_ag ]-> comm_ty (); 667 i( compod ()) ; 669 #ifde ACEVeGridFuni 670 * gvgfag = w [ nems ]; 671  gvgfi =0;vgfi< gnems ;vgfi++) 672 gvgfag [ vgfi ] = ACETrue ; 676 gis . compu_is ( GhoIai :: _ag ( comm_ag ), 677 GhoIai :: cr_ag ( comm_ag ), 678 GhoIai :: edge_ag ( comm_ag ), 679 GhoIai :: sime_ag ( comm_ag )); 681 cڡ  gme = comm_rvi :: oc_me (); 682 cڡ  gum = comm_rvi :: oc_num (); 684 cڡ  gvs = dagh . tٮvs (); 685 cڡ  gLnum = dagh . vnum ( L ); 687  gt = 0, gl = 0, gi = 0; 690 gcuime [0] = w [ vs ]; 691 gcuime [1] = w [ vs ]; 692  gi =0;i< gvs ;i++) { 693 gcuime [0][ i ] = gf . cuime [0][i]; 694 gcuime [1][ i ] = gf . cuime [1][i]; 697 cڡ  gts = 2* time__d +1; 698 cڡ  gev = dagh . fev (); 699 cڡ  g = dagh . fevdex (); 700 cڡ  gmdex = dagh . maxdex ()+1; 702 i( gL = ACEALevs ) { 703 gt = w GridTab ( gfid , vs , ts ); 705 i( gL < ) { 706 gt = w GridTab ( gfid , vs , ts ); 710 #ifde DEBUG_PRINT 711 as (( L - ) == 1); 713 ggt = w GridTab ( gfid , vs , ts ); 716 gngth = gf . ngth ; 718 #ifde DEBUG_PRINT_GF_GT 719 gcomm_rvi :: log () << "\n************* Grid Table *************\n" 720 << "------ [" << game << "] ------" << "\n" 721 << * gt 723 ). ush (); 727 GF_DeGDBStage (); 730 ggdb = w GridDaBlock (3)< ACE_GFTy > ***[ ts ]; 731  gt =0;t< gts ;t++) { 732 ggdb [ t ] = ( GridDaBlock (3)< ACE_GFTy > *** NULL ; 734  gt =0;t< gts ;t++) { 735  gl =0;l< gvs ;l++) { 736 cڡ  gth = ( l < ) ? : fl; 737 i( gT ! ACEATimes && dagh_timedex ( T , th ! time_s [ t ]) ; 738 i(! ggdb [ time_s [ t ]]) { 739 ggdb [ time_s [ t ]] = w GridDaBlock (3)< ACE_GFTy > **[ vs ]; 740  g =0;< gvs ;ll++) 741 ggdb [ time_s [ t ]][ ] = ( GridDaBlock (3)< ACE_GFTy > ** NULL ; 743 i(( gL = ACEALevs || L = l && ! gdb [ time_s [ t ]][l]) { 744 gdb [ time_s [ t ]][ l ] = w GridDaBlock (3)< ACE_GFTy > *[ ngth ]; 746  gi =0;i< gngth ;i++) 747 ggdb [ time_s [ t ]][ l ][ i ] = ( GridDaBlock (3)< ACE_GFTy > * NULL ; 752 cڡ  ghas_shadow = shadow (); 753 cڡ  ghe_has_shadow = gf . shadow (); 755 GridFuni (3)< gACE_GFTy >* ggeme = 0; 756 i( gme_ag ! ACENu ) { 757 geme = ( GridFuni (3)< ACE_GFTy >* dagh . gi [ me_ag ]; 758 i( ggeme && !geme-> compod ()) gftemplate = 0; 760 cڡ GridDaBlock (3)< gACE_GFTy >* ggdbtm = 0; 762 GridBoxLi * glgbl = dagh . lgbl (); 763  GridBox * ggb = 0; 764  ggbi = 0; 766  ggb = lgbl -> f (); gb; gb =gbl-> xt ()) { 767 cڡ  fe = gb -> gbFeLev (); 768 cڡ  gcr = gb -> gbCrsLev (); 769 ggbi = gb -> gbIndex (); 771  gl =0;l< gvs ;l++) { 772 i( gL ! ACEALevs && L ! l ) ; 773 cڡ  gv = ( l < ? dagh . vnum : ev ; 774 i( gv < gcr ||ev > gfe ) ; 775 cڡ  gi = dagh_timedex ( dagh . gCutTime ( l ),l); 776 cڡ  g = dagh . gCutTime ( l ); 777  gtmi = ACENu ; 778 i( gme_ag ! ACENu && 779 geme && 780 geme -> gdb [( tmi =geme-> dagh_timedex ( , l ))] 781 && ggeme -> ggdb [ tmi ][ l ]) 782 ggdbtm = geme -> gdb [ tmi ][ l ][ gbi ]; 783 ggdbtm = 0; 785  gt =0;t< gts ;t++) { 786 i( gT ! ACEATimes && dagh_timedex ( T , l ! t ) ; 787 cڡ  g = ( l < ) ? : fl; 788 i( ggdb [ t ] && gdb[t][ l ] && 789 ggf . ggdb [ t ] && gf.gdb[t][ ] && 790 ggf . ggdb [ t ][ ][ gbi ] && gf.gdb[t][][gbi]-> dexme (gbi)) { 791 ggdb [ t ][ l ][ gbi ] = w GridDaBlock (3)< ACE_GFTy >( gfid , gdagh , * ggt , 792 gis , 793 ggbi , * ggb , 794 gnems , 795 gt , 796 gdagh . vnum ( l ), 797 gbwidth , gextghowidth , 798 govp , 799 ga__d , 800 gignmt , gmdex , 801 comm ( t , l ), ghas_shadow , 802 g_ag , 803 uxes ( t , l ), 804 ggdbtm ); 806 i( ggdbtm =0 || comm ( t , l )gdbtm = gdb [t][l][ gbi ]; 810 i( gACEInGFOnCi = ACETrue ) { 811 i( l > && pfunc && ( g (|| shadow_g ())) { 813  mygc = 0; ACE_GFTy gmygs [1]; 814 i( g ()) 815 (* gpfunc )( FORTRAN_ARGS ( gf . gdb [ t ][ ][ gbi ]-> mage . da ), 816 FORTRAN_ARGS ( gdb [ t ][ l ][ gbi ]-> mage . da ), 817 BOUNDING_BOX ( gdb [ t ][ l ][ gbi ]-> mage . da ), 818 #ifde ACEVeGridFuni 819 gvgfag , 821 gmygs ,& gmygc ); 822 i( ghas_shadow && ghe_has_shadow && shadow_g ()) { 824 (* gpfunc )( FORTRAN_ARGS ( gf . gdb [ t ][ ][ gbi ]-> shage -> da ), 825 FORTRAN_ARGS ( gdb [ t ][ l ][ gbi ]-> shage -> da ), 826 BOUNDING_BOX ( gdb [ t ][ l ][ gbi ]-> shage -> da ), 827 #ifde ACEVeGridFuni 828 gvgfag , 830 gmygs ,& gmygc ); 832 i( ghas_shadow ) { 833 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gdb [t][l][gbi]-> mage . da ); 837 ggdb [ t ][ l ][ gbi ]-> gmage . gda . cy ( gf . gdb [t][ ][gbi]-> mage . da ); 838 i( ghas_shadow && ghe_has_shadow ) 839 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gf . gdb [t][ ][gbi]-> shage -> da ); 840 i( ghas_shadow ) 841 ggdb [ t ][ l ][ gbi ]-> gshage -> gda . cy ( gdb [t][l][gbi]-> mage . da ); 849 #ifde ACEVeGridFuni 850 i( gvgfag gde [] vgfflag; 853 i( comm ()) { 854 GF_GhGhoCommInfo (); 855 GF_SUpGhoCommSvs (); 857 i( ()) { 858 GF_GhPtCommInfo (); 859 GF_SUpPtCommSvs (); 861 i( uxes ()) { 862 GF_GhFluxCommInfo (); 863 GF_SUpFluxCommSvs (); 865 GF_SUpGDBPors (); 866 gcompo_ag = ACETrue ; 872 gme < ass gACE_GFTy > 873  GridFuni (3)< gACE_GFTy >:: $GF_Recompo (cڡ  omdex , 874 GridBoxLi & li , 875 GridBoxLi & i , 876 GridBoxLi & i , 877 GridBoxLi & i ) 880 cڡ  me = comm_rvi :: `oc_me (); 881 cڡ  um = comm_rvi :: `oc_num (); 883 #ifde ACEVeGridFuni 884 * vgfag = w [ nems ]; 885  vgfi =0;vgfi< nems ;vgfi++) 886 vgfag [ vgfi ] = ACETrue ; 889  t =0, l =0, i =0, oi =0, p =0, m =0; 890  GridBox * tmpgb = 0; 892 `GridDaBlock (3)< ACE_GFTy > **** dgdb = gdb ; gdb = 0; 893 cڡ  dngth = ngth ;ength = 0; 895 gt -> `ab (); 897 cڡ  mdex = dagh . `maxdex ()+1; 898 cڡ  vs = dagh . `tٮvs (); 899 cڡ  times = 2* time__d +1; 901 GridBoxLi * lgbl = dagh . `lgbl (); 902 ngth = lgbl -> `maxdex ()+1; 908 cڡ  ev = dagh . `crv (); 909 cڡ  has_shadow = `shadow (); 910 cڡ  shadow = dagh . `daghshadow (); 912 gdb = w `GridDaBlock (3)< ACE_GFTy > ***[ times ]; 913  t =0;t< times ;t++) { 914 gdb [ t ] = ( `GridDaBlock (3)< ACE_GFTy > *** NULL ; 915 i( dgdb [ t ]) { 916 gdb [ t ] = w `GridDaBlock (3)< ACE_GFTy > **[ vs ]; 917  l =0;l< vs ;l++) { 918 gdb [ t ][ l ] = w `GridDaBlock (3)< ACE_GFTy > *[ ngth ]; 919  i =0;i< ngth ;i++) 920 gdb [ t ][ l ][ i ] = ( `GridDaBlock (3)< ACE_GFTy > * NULL ; 926 `GF_DeGhoCommInfo (); 927 `GF_DeDaCommInfo (); 928 `GF_DePtCommInfo (); 929 `GF_DeFluxCommInfo (); 931  v = 0; 932  idx = 0; 933  dowr = ACENoBody ; 936 i( comm_rvi :: `d (&& um > 1) { 937 i(! i . `imy ()) { 939 #ifde DEBUG_PRINT_GF_RG 940 comm_rvi :: `log () << "\n************* Recv List *************\n" 941 << i 943 ). `ush (); 946 tmpgb = i . `f (); 947 v = 0; 948 idx = 0; 949 dowr = ACENoBody ; 951 i( me_ag = ACENu ) { 953 i( rcvsize de []cvsize; 954 i( shrcvsize de [] shrcvsize; 956 rcvsize = w [ um ]; 957 shrcvsize = w [ um ]; 959  p =0;p< um ;p++) { 960 rcvsize [ p ] = shrcvsize [p] = 0; 963 BBox * rb = w BBox[ um * vs * omdex ]; 964 * oidx = w [ um * vs * omdex ]; 965  ridx = 0; 967 cڡ `GridDaBlock (3)< ACE_GFTy >* gdbtm = 0; 969 ; tmpgb ;tmpgb= i . `xt ()) { 970 dowr = tmpgb -> `gbOwr (); 973 #ifde DEBUG_PRINT_GF_RG 974 `as ( lgbl -> `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 975 tmpgb -> `gbCrsLev ()) == 1); 977 cڡ GridBox & mgb = lgbl -> `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 978 tmpgb -> `gbCrsLev ()); 979 idx = mgb . `gbIndex (); 980  l =0;l< vs ;l++) { 981 v = dagh . `vnum ( l ); 982 i! mgb . `gbCڏs ( v ) ) ; 983 gdbtm = 0; 984  t =0;t< times ;t++) { 985 i(! gdb [ t ] || !gdb[t][ l ]) ; 986 i(! gdb [ t ][ l ][ idx ]) { 987 gdb [ t ][ l ][ idx ] = w `GridDaBlock (3)< ACE_GFTy >( gfid , dagh , * gt , 988 is , 989 idx , mgb , 990 nems , 991 t , v , 992 bwidth , 993 extghowidth , 994 ovp , 995 a__d , 996 ignmt , mdex , 997 `comm ( t , l ), 998 has_shadow , 999 _ag , 1000 `uxes ( t , l ), 1001 gdbtm ); 1002 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1004 i( tmpgb -> `gbCڏs ( v )) { 1005 ridx = dowr * vs * omdex + l *omdex + tmpgb -> `gbIndex (); 1006 BBox `gb ( tmpgb -> `gbBBox ( v , ovp )); 1007 `gdbAlignBBox ( gk , gb , ignmt ); 1008 i( rb [ ridx ]. `emy (){b[ridx] = gb ; oidx [ridx] = idx ; } 1009 i( oidx [ ridx ] = idx && gb . `mgab ( rb [ridx], ovp )) { 1010 #ifde DEBUG_PRINT_GF_RG 1011 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1012 << "[Mgg: " << rb [ ridx ] << " & " << gb << " ]" 1013 << dl ). `ush (); 1015 rb [ ridx ] + gb ; 1018 rcvsize [ dowr ] + gdhdr :: `gdbsize ( nems *( ACE_GFTy )* rb [ ridx ]. `size ()); 1019 i( has_shadow = ACETrue shrcvsize [ dowr ] += 1020 gdhdr :: `gdbsize ( nems *( ACE_GFTy )* `crn ( rb [ ridx ], shadow ). `size ()); 1022 #ifde DEBUG_PRINT_GF_RG 1023 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1024 << "[From:" << dowr << "]" 1025 << "[BB:" << rb [ ridx ] << "]" 1026 << "[Si:" << tmpgb -> `gbIndex () << "]" 1027 << "[Ri:" << idx << "]" 1028 << "[Sl:" << l << "]" 1029 << dl ). `ush (); 1032 rb [ ridx ] = gb ; 1033 oidx [ ridx ] = idx ; 1038  p =0;p< um ;p++) { 1039  l =0;l< vs ;l++) { 1040  m =0;m< omdex ;m++) { 1041 ridx = p * vs * omdex + l *omdex + m ; 1042 i(! rb [ ridx ]. `emy ()) { 1044 #ifde DEBUG_PRINT_GF_RG 1045 comm_rvi :: `log () << "GF_Recompose::RecvInfo " 1046 << "[From:" << p << "]" 1047 << "[BB:" << rb [ ridx ] << "]" 1048 << "[Si:" << m << "]" 1049 << "[Ri:" << oidx [ ridx ] << "]" 1050 << "[Sl:" << l << "]" 1051 << dl ). `ush (); 1054 rcvsize [ p ] + gdhdr :: `gdbsize ( nems *( ACE_GFTy )* rb [ ridx ]. `size ()); 1055 i( has_shadow = ACETrue shrcvsize [ p ] += 1056 gdhdr :: `gdbsize ( nems *( ACE_GFTy )* `crn ( rb [ ridx ], shadow ). `size ()); 1057 rb [ ridx ]. `my (); 1062  t =0;t< times ;t++) { 1063 i(! gdb [ t ]) ; 1064  p =0;p< um ;p++) { 1065 i( me = p ) ; 1066 i( rcvsize [ p ] > 0 || shrcvsize [p] > 0) { 1067 i(! da_cv_rv [ p ]) { 1068 da_cv_rv [ p ] = w GridTabDaRcv *[ times ]; 1069  i =0; i< times ; i++ da_cv_rv [ p ][i] = 0; 1071 da_cv_rv [ p ][ t ] = 1072 w `GridTabDaRcv (* gt , ( ACEDaTag | t ), rcvsize [ p ]+ shrcvsize [p],); 1079 i( rb de []b; 1080 i( oidx de []toidx; 1084 `GridFuni (3)< ACE_GFTy >* geme = 1085 ( `GridFuni (3)< ACE_GFTy >* dagh . gi [ me_ag ]; 1087 rcvsize = geme ->rcvsize; 1088 shrcvsize = geme ->shrcvsize; 1090 cڡ `GridDaBlock (3)< ACE_GFTy >* gdbtm = 0; 1092 ; tmpgb ;tmpgb= i . `xt ()) { 1095 #ifde DEBUG_PRINT_GF_RG 1096 `as ( lgbl -> `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1097 tmpgb -> `gbCrsLev ()) == 1); 1099 cڡ GridBox & mgb = lgbl -> `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1100 tmpgb -> `gbCrsLev ()); 1102 idx = mgb . `gbIndex (); 1103  l =0;l< vs ;l++) { 1104 v = dagh . `vnum ( l ); 1105 i! mgb . `gbCڏs ( v ) ) ; 1106 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1107 cڡ  = dagh . `gCutTime ( l ); 1108  tmi = ACENu ; 1109 i( geme && 1110 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1111 && geme -> gdb [ tmi ][ l ]) 1112 gdbtm = geme -> gdb [ tmi ][ l ][ idx ]; 1113 gdbtm = 0; 1114  t =0;t< times ;t++) { 1115 i(! gdb [ t ] || !gdb[t][ l ]) ; 1116 i(! gdb [ t ][ l ][ idx ]) { 1117 gdb [ t ][ l ][ idx ] = w `GridDaBlock (3)< ACE_GFTy >( gfid , dagh , * gt , 1118 is , 1119 idx , mgb , 1120 nems , 1121 t , v , 1122 bwidth , 1123 extghowidth , 1124 ovp , 1125 a__d , 1126 ignmt , mdex , 1127 `comm ( t , l ), 1128 has_shadow , 1129 _ag , 1130 `uxes ( t , l ), 1131 gdbtm ); 1132 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1136  rsize = 0; 1137  t =0;t< times ;t++) { 1138 i(! gdb [ t ]) ; 1139  p =0;p< um ;p++) { 1140 i( me = p ) ; 1141 rsize = rcvsize [ p ]; 1142 i( has_shadow = ACETrue rsize + shrcvsize [ p ]; 1143 i( rsize > 0) { 1144 i(! da_cv_rv [ p ]) { 1145 da_cv_rv [ p ] = w GridTabDaRcv *[ times ]; 1146  i =0; i< times ; i++ da_cv_rv [ p ][i] = 0; 1148 da_cv_rv [ p ][ t ] = 1149 w `GridTabDaRcv (* gt , ( ACEDaTag | t ), rsize , p ); 1153 rcvsize = 0; 1154 shrcvsize = 0; 1160 i( comm_rvi :: `d (&& um > 1) { 1161  wowr = ACENoBody ; 1162 i(! i . `imy ()) { 1164 tmpgb = i . `f (); 1165 v = 0; 1166 idx = 0; 1168 i( me_ag = ACENu ) { 1170 = 2* i . `numb (); 1172 i( dsize de [] sndsize; 1173 i( dbbox de [] sndbbox; 1174 i( ddex de [] sndindex; 1175 i( rcvdex de []cvindex; 1176 i( dv de [] sndlevel; 1177 i( dt de [] sndcnt; 1179 dsize = w [ um * vs * ]; 1180 dbbox = w BBox [ um * vs * ]; 1181 ddex = w [ um * vs * ]; 1182 rcvdex = w [ um * vs * ]; 1183 dv = w [ um * vs * ]; 1185 dt = w [ um ]; 1187  p =0;p< um ;p++ dt [p] = 0; 1189 BBox * sb = w BBox[ um * vs * omdex ]; 1190 * oidx = w [ um * vs * omdex ]; 1192  nidx = 0; 1193  sidx = 0; 1194  tmpid = 0; 1196 ; tmpgb ;tmpgb= i . `xt ()) { 1199 #ifde DEBUG_PRINT_GF_RG 1200 `as ( li . `mches ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1201 tmpgb -> `gbCrsLev ()) == 1); 1203 cڡ GridBox & wgb = li . `fd ( tmpgb -> `gbBBox mpgb-> `gbCrsLev ()), 1204 tmpgb -> `gbCrsLev ()); 1205 idx = wgb . `gbIndex (); 1206 wowr = tmpgb -> `gbOwr (); 1207  l =0;l< vs ;l++) { 1208 v = dagh . `vnum ( l ); 1209 i(! wgb . `gbCڏs ( v )) ; 1210 i( tmpgb -> `gbCڏs ( v )) { 1211 sidx = wowr * vs * omdex + l *omdex + idx ; 1212 nidx = tmpgb -> `gbIndex (); 1213 BBox `gb ( tmpgb -> `gbBBox ( v , ovp )); 1214 `gdbAlignBBox ( gk , gb , ignmt ); 1215 i( sb [ sidx ]. `emy (){ sb[sidx] = gb ; oidx [sidx] = nidx ; } 1216 i( oidx [ sidx ] = nidx && gb . `mgab ( sb [sidx], ovp )) { 1217 #ifde DEBUG_PRINT_GF_RG 1218 comm_rvi :: `log () << "GF_Recompose::SendInfo " 1219 << "[Mgg: " << sb [ sidx ] << " & " << gb << " ]" 1220 << dl ). `ush (); 1222 sb [ sidx ] + gb ; 1225 tmpid = wowr * vs * + dt [newowner]; 1226 dbbox [ tmpid ] = sb [ sidx ]; 1227 dsize [ tmpid ] = nems *( ACE_GFTy )* sb [ sidx ]. `size (); 1228 ddex [ tmpid ] = idx ; 1229 rcvdex [ tmpid ] = oidx [ sidx ]; 1230 dv [ tmpid ] = l ; 1232 #ifde DEBUG_PRINT_GF_RG 1233 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ wowr ] << "]" 1234 << "[To:" << wowr << "]" 1235 << "[BB:" << dbbox [ tmpid ] << "]" 1236 << "[Sz:" << dsize [ tmpid ] << "]" 1237 << "[Si:" << ddex [ tmpid ] << "]" 1238 << "[Ri:" << rcvdex [ tmpid ] << "]" 1239 << "[Sl:" << dv [ tmpid ] << "]" 1240 << dl ). `ush (); 1243 dt [ wowr ]++; 1245 i( has_shadow = ACETrue ) { 1246 cڡ BBox sbb = `crn ( sb [ sidx ], shadow ); 1247 dbbox [ tmpid +1] = sbb ; 1248 dsize [ tmpid +1] = nems *( ACE_GFTy )* sbb . `size (); 1249 ddex [ tmpid +1] = idx ; 1250 rcvdex [ tmpid +1] = oidx [ sidx ]; 1251 dv [ tmpid +1] = l ; 1253 #ifde DEBUG_PRINT_GF_RG 1254 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ wowr ] << "]" 1255 << "[To:" << wowr << "]" 1256 << "[BB:" << dbbox [ tmpid +1] << "]" 1257 << "[Sz:" << dsize [ tmpid +1] << "]" 1258 << "[Si:" << ddex [ tmpid +1] << "]" 1259 << "[Ri:" << rcvdex [ tmpid +1] << "]" 1260 << "[Sl:" << dv [ tmpid +1] << "]" 1261 << dl ). `ush (); 1264 dt [ wowr ]++; 1266 sb [ sidx ] = gb ; 1267 oidx [ sidx ] = nidx ; 1272  p =0;p< um ;p++) { 1273  l =0;l< vs ;l++) { 1274  m =0;m< omdex ;m++) { 1275 sidx = p * vs * omdex + l *omdex + m ; 1276 i(! sb [ sidx ]. `emy ()) { 1277 tmpid = p * vs * + dt [p]; 1278 dbbox [ tmpid ] = sb [ sidx ]; 1279 dsize [ tmpid ] = nems *( ACE_GFTy )* sb [ sidx ]. `size (); 1280 ddex [ tmpid ] = m ; 1281 rcvdex [ tmpid ] = oidx [ sidx ]; 1282 dv [ tmpid ] = l ; 1284 #ifde DEBUG_PRINT_GF_RG 1285 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ p ] << "]" 1286 << "[To:" << p << "]" 1287 << "[BB:" << dbbox [ tmpid ] << "]" 1288 << "[Sz:" << dsize [ tmpid ] << "]" 1289 << "[Si:" << ddex [ tmpid ] << "]" 1290 << "[Ri:" << rcvdex [ tmpid ] << "]" 1291 << "[Sl:" << dv [ tmpid ] << "]" 1292 << dl ). `ush (); 1295 dt [ p ]++; 1296 i( has_shadow = ACETrue ) { 1297 cڡ BBox sbb = `crn ( sb [ sidx ], shadow ); 1298 dbbox [ tmpid +1] = sbb ; 1299 dsize [ tmpid +1] = nems *( ACE_GFTy )* sbb . `size (); 1300 ddex [ tmpid +1] = m ; 1301 rcvdex [ tmpid +1] = oidx [ sidx ]; 1302 dv [ tmpid +1] = l ; 1304 #ifde DEBUG_PRINT_GF_RG 1305 comm_rvi :: `log (<< "GF_Recompo::SdInf[" << dt [ p ] << "]" 1306 << "[To:" << p << "]" 1307 << "[BB:" << dbbox [ tmpid +1] << "]" 1308 << "[Sz:" << dsize [ tmpid +1] << "]" 1309 << "[Si:" << ddex [ tmpid +1] << "]" 1310 << "[Ri:" << rcvdex [ tmpid +1] << "]" 1311 << "[Sl:" << dv [ tmpid +1] << "]" 1312 << dl ). `ush (); 1315 dt [ p ]++; 1317 sb [ sidx ]. `my (); 1323  s = 0; 1324  off = 0; 1325  t =0;t< times ;t++) { 1326 i(! dgdb [ t ]) ; 1327  p =0;p< um ;p++) { 1328 i( p = me ) ; 1329 i( dt [ p ] == 0) ; 1330 off = p * vs * ; 1331 GridDaBuck < ACE_GFTy > * gdbkt = 1332 w GridDaBuck < ACE_GFTy >( dt [ p ],( dsize + off ), ACEPacked ); 1333 s = 0; 1334  s < dt [ p ]) { 1335 #ifde DEBUG_PRINT 1336 `as ( dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]); 1338 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1339 ACEA , ACE_Ma , ACENu , dbbox [ off + s ],* gdbkt ,s); 1340 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1342 #ifde DEBUG_PRINT_GF_RG 1343 comm_rvi :: `log () << "GF_Recompose::Sending" 1344 << * gdbkt -> `hd ( s ) 1345 << dl ). `ush (); 1348 s ++; 1349 i( has_shadow = ACETrue ) { 1350 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1351 ACEA , ACE_Shadow , ACENu , dbbox [ off + s ],* gdbkt ,s); 1352 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1354 #ifde DEBUG_PRINT_GF_RG 1355 comm_rvi :: `log () << "GF_Recompose::Sending" 1356 << * gdbkt -> `hd ( s ) 1357 << dl ). `ush (); 1360 s ++; 1363 gt -> `nd (( ACEDaTag | t ), gdbkt , p ); 1367 #ifde DEBUG_PRINT_GF_RG 1368 comm_rvi :: `log () << "\n************* Send List *************\n" 1369 << i 1371 ). `ush (); 1381 i( sb de [] sb; 1382 i( oidx de [] stoidx; 1386 `GridFuni (3)< ACE_GFTy >* geme = 1387 ( `GridFuni (3)< ACE_GFTy >* dagh . gi [ me_ag ]; 1389 = geme ->slen; 1390 dsize = geme ->sndsize; 1391 dbbox = geme ->sndbbox; 1392 ddex = geme ->sndindex; 1393 rcvdex = geme ->rcvindex; 1394 dv = geme ->sndlevel; 1395 dt = geme ->sndcnt; 1397  s = 0; 1398  off = 0; 1400  t =0;t< times ;t++) { 1401 i(! dgdb [ t ]) ; 1402  p =0;p< um ;p++) { 1403 i( p = me ) ; 1404 i( dt [ p ] == 0) ; 1405 off = p * vs * ; 1406 GridDaBuck < ACE_GFTy > * gdbkt = 1407 w GridDaBuck < ACE_GFTy >( dt [ p ],( dsize + off ), ACEPacked ); 1408 s = 0; 1409  s < dt [ p ]) { 1410 #ifde DEBUG_PRINT 1411 `as ( dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]); 1413 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1414 ACEA , ACE_Ma , ACENu , dbbox [ off + s ],* gdbkt ,s); 1415 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1417 #ifde DEBUG_PRINT_GF_RG 1418 comm_rvi :: `log () << "GF_Recompose::Sending" 1419 << * gdbkt -> `hd ( s ) 1420 << dl ). `ush (); 1423 s ++; 1424 i( has_shadow = ACETrue ) { 1425 dgdb [ t ][ dv [ off + s ]][ ddex [off+s]]-> `gdbWreDa ( 1426 ACEA , ACE_Shadow , ACENu , dbbox [ off + s ],* gdbkt ,s); 1427 ( gdbkt -> `hd ( s ))-> dex = rcvdex [ off +s]; 1429 #ifde DEBUG_PRINT_GF_RG 1430 comm_rvi :: `log () << "GF_Recompose::Sending" 1431 << * gdbkt -> `hd ( s ) 1432 << dl ). `ush (); 1435 s ++; 1438 gt -> `nd (( ACEDaTag | t ), gdbkt , p ); 1442 #ifde DEBUG_PRINT_GF_RG 1443 comm_rvi :: `log () << "\n************* Send List *************\n" 1444 << i 1446 ). `ush (); 1449 dsize = 0; 1450 dbbox = 0; 1451 ddex = 0; 1452 rcvdex = 0; 1453 dv = 0; 1454 dt = 0; 1461 `GridFuni (3)< ACE_GFTy >* geme = 0; 1462 i( me_ag ! ACENu ) { 1463 geme = ( `GridFuni (3)< ACE_GFTy >* dagh . gi [ me_ag ]; 1465 cڡ `GridDaBlock (3)< ACE_GFTy >* gdbtm = 0; 1467 `GridDaBlock (3)< ACE_GFTy >* gdbeu = 0; 1469  l =0;l< vs ;l++) { 1470 v = dagh . `vnum ( l ); 1471 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1472 cڡ  = dagh . `gCutTime ( l ); 1473  tmi = ACENu ; 1476  GridBox * mgb = lgbl -> `f ();mgb;mgbgbl-> `xt ()) { 1477 i(! mgb -> `gbCڏs ( v )) ; 1478 i = mgb -> `gbIndex (); 1479 i( me_ag ! ACENu && 1480 geme && 1481 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1482 && geme -> gdb [ tmi ][ l ]) 1483 gdbtm = geme -> gdb [ tmi ][ l ][ i ]; 1484 gdbtm = 0; 1486 #ide ACE_NO_REUSE_GDB 1487 #ifde DEBUG_PRINT_GF_RG 1488 `as ( li . `absmches ( mgb -> `gbBBox ( v ),lev) <= 1); 1490  ci = li . `absdex ( mgb -> `gbBBox ( v ),lev); 1493  t =0;t< times ;t++) { 1494 i(! gdb [ t ] || !gdb[t][ l ]) ; 1495 i(! gdb [ t ][ l ][ i ]) { 1497 #ide ACE_NO_REUSE_GDB 1498 i( ci ! ACENu && 1499 dgdb [ t ] && oldgdb[t][ l ] && oldgdb[t][l][ ci ]) 1500 gdbeu = dgdb [ t ][ l ][ ci ]; 1503 gdbeu = 0; 1505 gdb [ t ][ l ][ i ] = w `GridDaBlock (3)< ACE_GFTy >( gfid , dagh , * gt , 1506 is , 1507 i , * mgb , 1508 nems , 1509 t , v , 1510 bwidth , 1511 extghowidth , 1512 ovp , 1513 a__d , 1514 ignmt , mdex , 1515 `comm ( t , l ), 1516 has_shadow , 1517 _ag , 1518 `uxes ( t , l ), 1519 gdbtm , 1520 gdbeu ); 1521 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ i ]; 1529 i( `comm ()) { 1530 `GF_GhGhoCommInfo (); 1531 `GF_SUpGhoCommSvs (); 1533 i( ` ()) { 1534 `GF_GhPtCommInfo (); 1535 `GF_SUpPtCommSvs (); 1537 i( `uxes ()) { 1538 `GF_GhFluxCommInfo (); 1539 `GF_SUpFluxCommSvs (); 1541 `GF_SUpGDBPors (); 1548 #ifde DEBUG_PRINT_GF_RG 1549 comm_rvi :: `log () << "\n************* Overlap List *************\n" 1550 << i 1552 ). `ush (); 1555  l =0;l< vs ;l++) { 1556 cڡ  v = dagh . `vnum ( l ); 1558 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1559 cڡ  i = ( times ==1? ACENu : 1560 `dagh_timedex ( dagh . `gPviousTime ( l ),l); 1561 cڡ  i = ( times ==1? ACENu : 1562 `dagh_timedex ( dagh . `gNextTime ( l ),l); 1563 cڡ  t = dagh . `time ( l ); 1565  m =0;m< times ;mpt++) { 1566 i(! gdb [ m ] || !gdb[m][ l ]) ; 1568 i( m == 0) { 1569 t = i ; 1571 i( m < time__d ) { 1572 t = time__d - m ; 1575 t = m ; 1577 i( l > 0 i = 0 ; i < ngth ; i++) { 1578 i(! gdb [ t ] || 1579 ! gdb [ t ][ l ] || 1580 ! gdb [ t ][ l ][ i ] || 1581 ! gdb [ t ][ l ][ i ]-> `dexme (i) || 1582 gdb [ t ][ l ][ i ]-> `has_ud ()) ; 1585 i( l > 0 && gdb [ t ][l-1] && gdb[t][l-1][ i ]) { 1586 i( pfunc && ( `g (|| `shadow_g ())) { 1588  mygc = 0; ACE_GFTy mygs [1]; 1589 i( `g ()) { 1590 (* pfunc )( `FORTRAN_ARGS ( gdb [ t ][ l -1][ i ]-> mage . da ), 1591 `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> mage . da ), 1592 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> mage . da ), 1593 #ifde ACEVeGridFuni 1594 vgfag , 1596 mygs ,& mygc ); 1598 i( has_shadow = ACETrue && `shadow_g ()) { 1599 (* pfunc )( `FORTRAN_ARGS ( gdb [ t ][ l -1][ i ]-> shage -> da ), 1600 `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> shage -> da ), 1601 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> shage -> da ), 1602 #ifde ACEVeGridFuni 1603 vgfag , 1605 mygs ,& mygc ); 1608 i( `timeީe (|| `shadow_timeީe ()) { 1610 i( t = i &&t! ACENu && i >ti && 1611 gdb [ i ] && gdb[i][ l ][ i ]) { 1615 cڡ ac = 1.0/ dagh . `fe (); 1616 cڡ emac = 1.0- ac ; 1617 i( func ) { 1618 i( `timeީe ()) { 1619 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1620 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1621 & emac , 1622 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1623 & ac , 1624 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> mage . da ) 1625 #ifde ACEVeGridFuni 1626 , vgfag 1630 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1631 cڡ shac = 1.0/ dagh . `fe (); 1632 cڡ emshac = 1.0 - shac ; 1633 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1634 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1635 & emshac , 1636 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1637 & shac , 1638 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> shage -> da ) 1639 #ifde ACEVeGridFuni 1640 , vgfag 1646 i( `timeީe ()) { 1647 gdb [ i ][ l ][ i ]-> mage . da . `l_ ( 1648 gdb [ i ][ l ][ i ]-> mage . da ,(1.0- ac ), 1649 gdb [ i ][ l ][ i ]-> mage . da , ac ); 1651 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1652 cڡ shac = 1.0/ dagh . `fe (); 1653 gdb [ i ][ l ][ i ]-> shage -> da . `l_ ( 1654 gdb [ i ][ l ][ i ]-> shage -> da ,(1.0- shac ), 1655 gdb [ i ][ l ][ i ]-> shage -> da , shac ); 1661 i( i ! ACENu && t =&&t> i && 1662 gdb [ i ] && gdb[i][ l ][ i ]) { 1663 cڡ ac = 1.0/ dagh . `fe (); 1664 cڡ emac = 1.0 - ac ; 1665 i( func ) { 1666 i( `timeީe ()) { 1667 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1668 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1669 & emac , 1670 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> mage . da ), 1671 & ac , 1672 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> mage . da ) 1673 #ifde ACEVeGridFuni 1674 , vgfag 1678 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1679 cڡ shac = 1.0/ dagh . `fe (); 1680 cڡ emshac = 1.0 - shac ; 1681 (* func )( `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1682 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1683 & emshac , 1684 `FORTRAN_ARGS ( gdb [ i ][ l ][ i ]-> shage -> da ), 1685 & shac , 1686 `BOUNDING_BOX ( gdb [ i ][ l ][ i ]-> shage -> da ) 1687 #ifde ACEVeGridFuni 1688 , vgfag 1694 i( `timeީe ()) { 1695 gdb [ i ][ l ][ i ]-> mage . da . `l_ ( 1696 gdb [ i ][ l ][ i ]-> mage . da ,(1.0- ac ), 1697 gdb [ i ][ l ][ i ]-> mage . da , ac ); 1699 i( has_shadow = ACETrue && `shadow_timeީe ()) { 1700 cڡ shac = 1.0/ dagh . `fe (); 1701 gdb [ i ][ l ][ i ]-> shage -> da . `l_ ( 1702 gdb [ i ][ l ][ i ]-> shage -> da ,(1.0- shac ), 1703 gdb [ i ][ l ][ i ]-> shage -> da , shac ); 1709 i( l > 0 && !( gdb [ t ][l-1] && gdb[t][l-1][ i ])) { 1710 `as (0); 1715  tmpgb = i . `f (); 1716 tmpgb ;tmpgb= i . `xt ()) { 1717 #ifde DEBUG_PRINT 1718 `as ( tmpgb -> `gbOwr (= me ); 1720 i( tmpgb -> `gbCڏs ( v )) { 1721 oi = tmpgb -> `gbIndex (); 1723 #ifde DEBUG_PRINT_GF_RG 1724 comm_rvi :: `log () << "OVERLAP INDEX MATCHES : " 1725 << lgbl -> `mches ( tmpgb -> `gbBBox ( v ),v<< dl ). `ush (); 1727  ni = lgbl -> `dex ( tmpgb -> `gbBBox ( v ),lev); 1728 i( ni = ACENu || ! gdb [ t ][ l ][ni] || gdb[t][l][ni]-> `has_ud ()) 1730 #ifde DEBUG_PRINT 1731 `as ( dgdb [ t ][ l ][ oi ] && 1732 dgdb [ t ][ l ][ oi ]-> mage . da . `ok_to_dex ()); 1733 i( has_shadow = ACETrue ) 1734 `as ( dgdb [ t ][ l ][ oi ] && 1735 dgdb [ t ][ l ][ oi ]-> shage -> da . `ok_to_dex ()); 1737 gdb [ t ][ l ][ ni ]-> mage . da . `cy ( 1738 dgdb [ t ][ l ][ oi ]-> mage . da ); 1739 i( has_shadow = ACETrue ) 1740 gdb [ t ][ l ][ ni ]-> shage -> da . `cy ( 1741 dgdb [ t ][ l ][ oi ]-> shage -> da ); 1746 i( comm_rvi :: `d (&& um > 1) { 1747  p =0;< um ;++) { 1748 i( da_cv_rv [ p ] && da_cv_rv[p][ t ]) { 1749 i(! da_cv_rv [ p ][ t ]-> `ived ()) 1750 comm_rvi :: `rve (* da_cv_rv [ p ][ t ]-> `q ()); 1751 de da_cv_rv [ p ][ t ]; 1752 da_cv_rv [ p ][ t ] = 0; 1755 `GF_RdDa ( t , l ); 1773  t =0;t< times ;t++) { 1774 i(! gdb [ t ] || !gdb[t][ l ]) ; 1775 i( `comm ()) { 1776 cڡ  um = `dagh_timevue ( t , l ); 1777 `GF_Sync ( um , l , ACE_Ma ); 1778 i( has_shadow = ACETrue `GF_Sync ( um , l , ACE_Shadow ); 1783 gt -> `tdab (); 1786  p =0;p< um ;p++) { 1787 i( da_cv_rv [ p ]) { 1788 de [] da_cv_rv [ p ]; 1789 da_cv_rv [ p ] = 0; 1795 i( dgdb ) { 1796  t =0;t< times ;t++) { 1797 i( dgdb [ t ]) { 1798  l =0;l< vs ;l++) { 1799 i( dgdb [ t ][ l ]) { 1800  i =0;i< dngth ;i++) { 1801 i( dgdb [ t ][ l ][ i ] && oldgdb[t][l][i]-> `dexme (i)){ 1802  tmpi = i +1; 1803 tmpi < dngth && dgdb [ t ][ l ][tmpi] && oldgdb[t][l][tmpi]-> `dexme ( i ); 1804 tmpi ++) 1805 dgdb [ t ][ l ][ tmpi ] = 0; 1806 de dgdb [ t ][ l ][ i ]; oldgdb[t][l][i] = 0; 1809 de [] dgdb [ t ][ l ]; 1812 de [] dgdb [ t ]; 1815 de [] dgdb ; 1819 #ifde ACEVeGridFuni 1820 i( vgfag de [] vgfflag; 1822 } } 1827 gme < ass gACE_GFTy > 1828  GridFuni (3)< gACE_GFTy >:: $GF_CheckpotRecompo () 1831 cڡ  me = comm_rvi :: `oc_me (); 1832 cڡ  um = comm_rvi :: `oc_num (); 1834  t =0, l =0, i =0; 1836 `GridDaBlock (3)< ACE_GFTy > **** dgdb = gdb ; gdb = 0; 1837 cڡ  dngth = ngth ;ength = 0; 1839 gt -> `ab (); 1841 cڡ  mdex = dagh . `maxdex ()+1; 1842 cڡ  vs = dagh . `tٮvs (); 1843 cڡ  times = 2* time__d +1; 1845 GridBoxLi * lgbl = dagh . `lgbl (); 1846 ngth = lgbl -> `maxdex ()+1; 1848 cڡ  ev = dagh . `crv (); 1849 cڡ  has_shadow = `shadow (); 1850 cڡ  shadow = dagh . `daghshadow (); 1852 gdb = w `GridDaBlock (3)< ACE_GFTy > ***[ times ]; 1853  t =0;t< times ;t++) { 1854 gdb [ t ] = ( `GridDaBlock (3)< ACE_GFTy > *** NULL ; 1855 i( dgdb [ t ]) { 1856 gdb [ t ] = w `GridDaBlock (3)< ACE_GFTy > **[ vs ]; 1857  l =0;l< vs ;l++) { 1858 gdb [ t ][ l ] = w `GridDaBlock (3)< ACE_GFTy > *[ ngth ]; 1859  i =0;i< ngth ;i++) 1860 gdb [ t ][ l ][ i ] = ( `GridDaBlock (3)< ACE_GFTy > * NULL ; 1866 `GF_DeGhoCommInfo (); 1867 `GF_DeDaCommInfo (); 1868 `GF_DePtCommInfo (); 1869 `GF_DeFluxCommInfo (); 1872 i( dgdb ) { 1873  t =0;t< times ;t++) { 1874 i( dgdb [ t ]) { 1875  l =0;l< vs ;l++) { 1876 i( dgdb [ t ][ l ]) { 1877  i =0;i< dngth ;i++) 1878 i( dgdb [ t ][ l ][ i ] && oldgdb[t][l][i]-> `dexme (i)) { 1879  tmpi = i +1; 1882 tmpi < dngth && dgdb [ t ][ l ][tmpi] && oldgdb[t][l][tmpi]-> `dexme ( i ); 1883 tmpi ++) 1884 dgdb [ t ][ l ][ tmpi ] = 0; 1885 de dgdb [ t ][ l ][ i ]; oldgdb[t][l][i] = 0; 1887 de [] dgdb [ t ][ l ]; oldgdb[t][l] = 0; 1890 de [] dgdb [ t ]; oldgdb[t] = 0; 1893 de [] dgdb ; oldgdb = 0; 1898 `GridFuni (3)< ACE_GFTy >* geme = 0; 1899 i( me_ag ! ACENu ) { 1900 geme = ( `GridFuni (3)< ACE_GFTy >* dagh . gi [ me_ag ]; 1902 cڡ `GridDaBlock (3)< ACE_GFTy >* gdbtm = 0; 1904  GridBox * tmpgb = 0; 1905  idx = 0; 1906  l =0;l< vs ;l++) { 1907 cڡ  v = dagh . `vnum ( l ); 1908 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 1909 cڡ  = dagh . `gCutTime ( l ); 1910  tmi = ACENu ; 1912  tmpgb = lgbl -> `f ();tmpgb;tmpgbgbl-> `xt ()) { 1913 i(! tmpgb -> `gbCڏs ( v )) ; 1914 idx = tmpgb -> `gbIndex (); 1915 i( me_ag ! ACENu && 1916 geme && 1917 geme -> gdb [( tmi =geme-> `dagh_timedex ( , l ))] 1918 && geme -> gdb [ tmi ][ l ]) 1919 gdbtm = geme -> gdb [ tmi ][ l ][ idx ]; 1920 gdbtm = 0; 1921  t =0;t< times ;t++) { 1922 i(! gdb [ t ] || !gdb[t][ l ]) ; 1924 i(! gdb [ t ][ l ][ idx ]) { 1925 gdb [ t ][ l ][ idx ] = w `GridDaBlock (3)< ACE_GFTy >( gfid , dagh , * gt , 1926 is , 1927 idx , * tmpgb , 1928 nems , 1929 t , v , 1930 bwidth , 1931 extghowidth , 1932 ovp , 1933 a__d , 1934 ignmt , mdex , 1935 `comm ( t , l ), 1936 has_shadow , 1937 _ag , 1938 `uxes ( t , l ), 1939 gdbtm ); 1940 i( gdbtm =0 || `comm ( t , l )gdbtm = gdb [t][l][ idx ]; 1948 i( `comm ()) { 1949 `GF_GhGhoCommInfo (); 1950 `GF_SUpGhoCommSvs (); 1952 i( ` ()) { 1953 `GF_GhPtCommInfo (); 1954 `GF_SUpPtCommSvs (); 1956 i( `uxes ()) { 1957 `GF_GhFluxCommInfo (); 1958 `GF_SUpFluxCommSvs (); 1960 `GF_SUpGDBPors (); 1962 i( `checkpot () `GF_CheckpotRet (); 1964 } } 1970 gme < ass gACE_GFTy > 1971  GridFuni (3)< gACE_GFTy >:: $GF_SUpGhoCommSvs () 1973 i(! `comm ()) ; 1975 cڡ  um = comm_rvi :: `oc_num (); 1976 cڡ  me = comm_rvi :: `oc_me (); 1978 cڡ  vs = dagh . `tٮvs (); 1979 cڡ  t = vs * ACEMaxAxis * ACEMaxDs ; 1981  i =0;i< um ;i++) { 1982 i( i = me || ! gho_cv_fo [i]) ; 1983 i(! gho_cv_rv [ i ]) { 1984 gho_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 1985  c =0; c< t ; c++ gho_cv_rv [ i ][c] = 0; 1987  j =0;j< t ;j++) { 1988 i(! gho_cv_fo [ i ][ j ]) ; 1989 cڡ GF_Iai * gri = gho_cv_fo [ i ][ j ]; 1990 gho_cv_rv [ i ][ j ] = 1991 w `GridTabGhoRcv (* gt , ( ACEGhoTag | j ), gri -> tsize , i ); 1994 } } 1999 gme < ass gACE_GFTy > 2000  GridFuni (3)< gACE_GFTy >:: $GF_GhGhoCommInfo () 2002 i(! `comm ()) ; 2004 cڡ  me = comm_rvi :: `oc_me (); 2006  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2007  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2009 cڡ  um = comm_rvi :: `oc_num (); 2010 cڡ  vs = dagh . `tٮvs (); 2011 cڡ  t1 = vs * ACEMaxAxis * ACEMaxDs ; 2012 cڡ  t2 = ACEMaxAxis * ACEMaxDs ; 2013 cڡ  mdex = dagh . `maxdex ()+1; 2015 i( gho_cv_t de [] ghost_recv_cnt; 2016 gho_cv_t = w [ t1 ]; 2017  k =0;k< t1 ;k++ gho_cv_t [k] = 0; 2019 Li <> rsize ; 2020 Li <> wsize ; 2021  r =0, w =0; 2023 #ifde ACEVeGridFuni 2024 Li <> mrsize ; 2025 Li <> mwsize ; 2026  mr =0, mw =0; 2029 `GridDaBlock (3)< ACE_GFTy > * g = 0; 2030 GDB_Iai * gdbi = 0; 2032  p =0;p< um ;p++) { 2033  l =0;l< vs ;l++) { 2034  c =0;c< t2 ;c++) { 2035 cڡ  idx1 = l * t2 + c ; 2036 cڡ  idx2 = c * mdex ; 2037  i =0; i< ngth ; i++) { 2038 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2039 g = gdb [ t ][ l ][ i ]; 2040  m =0; m< mdex ; m++) { 2042 i( g -> gdb_wre_fo [ p ] && ( gdbi =g->gdb_wre_fo[p][ idx2 + m ])) { 2044 i(! gho_nd_fo [ p ]) { 2045 gho_nd_fo [ p ] = w GF_Iai * [ t1 ]; 2046  k =0;k< t1 ;k++ gho_nd_fo [ p ][k] = 0; 2048 i(! gho_nd_fo [ p ][ idx1 ]) 2049 gho_nd_fo [ p ][ idx1 ] = w GF_Iai ; 2051 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2052 gho_nd_fo [ p ][ idx1 ]-> tsize + gdhdr :: `gdbsize ( w ); 2053 #ifde ACEVeGridFuni 2054 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2055 gho_nd_fo [ p ][ idx1 ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2057 #ifde DEBUG_PRINT 2058 `as w != 0 ); 2060 wsize . `add ( w ); 2061 #ifde ACEVeGridFuni 2062 mwsize . `add ( mw ); 2066 i( g -> gdb_ad_fo [ p ] && ( gdbi =g->gdb_ad_fo[p][ idx2 + m ])) { 2068 i(! gho_cv_fo [ p ]) { 2069 gho_cv_fo [ p ] = w GF_Iai * [ t1 ]; 2070  k =0;k< t1 ;k++ gho_cv_fo [ p ][k] = 0; 2072 i(! gho_cv_fo [ p ][ idx1 ]) 2073 gho_cv_fo [ p ][ idx1 ] = w GF_Iai ; 2075 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2076 gho_cv_fo [ p ][ idx1 ]-> tsize + gdhdr :: `gdbsize ( r ); 2077 #ifde ACEVeGridFuni 2078 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2079 gho_cv_fo [ p ][ idx1 ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2081 #ifde DEBUG_PRINT 2082 `as r != 0 ); 2084 rsize . `add ( r ); 2085 #ifde ACEVeGridFuni 2086 mrsize . `add ( mr ); 2092 i( gho_nd_fo [ p ] && gho_nd_fo[p][ idx1 ]) { 2093 wsize . `y ( gho_nd_fo [ p ][ idx1 ]-> size ,gho_nd_fo[p][idx1]-> t ); 2094 #ifde ACEVeGridFuni 2095 mwsize . `y ( gho_nd_fo [ p ][ idx1 ]-> msize ,gho_nd_fo[p][idx1]-> t ); 2098 i( gho_cv_fo [ p ] && gho_cv_fo[p][ idx1 ]) { 2099 rsize . `y ( gho_cv_fo [ p ][ idx1 ]-> size ,gho_cv_fo[p][idx1]-> t ); 2100 i( p ! me gho_cv_t [ idx1 ] + gho_cv_fo [p][idx1]-> t ; 2101 #ifde ACEVeGridFuni 2102 mrsize . `y ( gho_cv_fo [ p ][ idx1 ]-> msize ,gho_cv_fo[p][idx1]-> t ); 2105 wsize . `emy (); rsize .empty(); 2106 #ifde ACEVeGridFuni 2107 mwsize . `emy (); mrsize .empty(); 2111 #ifde DEBUG_PRINT_GF_COMM 2112 comm_rvi :: `log (<< "[GF_Iai:[" << p << "]" << dl ). `ush (); 2113  k =0;k< t1 ;k++) { 2114 i( gho_cv_fo [ p ] && gho_cv_fo[p][ k ]) 2115 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2116 << * gho_cv_fo [ p ][ k ] << "]" 2117 << dl ). `ush (); 2119 comm_rvi :: `log (<< dl ). `ush (); 2120  k =0;k< t1 ;k++) { 2121 i( gho_nd_fo [ p ] && gho_nd_fo[p][ k ]) 2122 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2123 << * gho_nd_fo [ p ][ k ] << "]" 2124 << dl ). `ush (); 2126 comm_rvi :: `log (<< "]" << dl ). `ush (); 2129 } } 2134 gme < ass gACE_GFTy > 2135  GridFuni (3)< gACE_GFTy >:: $GF_SUpPtCommSvs () 2137 i(! ` ()) ; 2139 cڡ  um = comm_rvi :: `oc_num (); 2140 cڡ  me = comm_rvi :: `oc_me (); 2142 cڡ  t = dagh . `tٮvs (); 2144  i = 0; 2145  i =0;i< um ;i++) { 2146 i( i = me || ! g_cv_fo [i]) ; 2147 i(! g_cv_rv [ i ]) { 2148 g_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2149  c =0; c< t ; c++ g_cv_rv [ i ][c] = 0; 2151  j =0;j< t ;j++) { 2152 i(! g_cv_fo [ i ][ j ]) ; 2153 cڡ GF_Iai * gri = g_cv_fo [ i ][ j ]; 2154 g_cv_rv [ i ][ j ] = 2155 w `GridTabGhoRcv (* gt , ( ACEGPtTag | j ), gri -> tsize , i ); 2159  i =0;i< um ;i++) { 2160 i( i = me || ! t_cv_fo [i]) ; 2161 i(! t_cv_rv [ i ]) { 2162 t_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2163  c =0; c< t ; c++ t_cv_rv [ i ][c] = 0; 2165  j =0;j< t ;j++) { 2166 i(! t_cv_fo [ i ][ j ]) ; 2167 cڡ GF_Iai * gri = t_cv_fo [ i ][ j ]; 2168 t_cv_rv [ i ][ j ] = 2169 w `GridTabGhoRcv (* gt , ( ACESPtTag | j ), gri -> tsize , i ); 2172 } } 2177 gme < ass gACE_GFTy > 2178  GridFuni (3)< gACE_GFTy >:: $GF_GhGPtCommInfo () 2180 i(! ` ()) ; 2182 cڡ  me = comm_rvi :: `oc_me (); 2184  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2185  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2187 cڡ  um = comm_rvi :: `oc_num (); 2188 cڡ  vs = dagh . `tٮvs (); 2189 cڡ  mdex = dagh . `maxdex ()+1; 2191 Li <> rsize ; 2192 Li <> wsize ; 2193  r =0, w =0; 2195 #ifde ACEVeGridFuni 2196 Li <> mrsize ; 2197 Li <> mwsize ; 2198  mr =0, mw =0; 2201 `GridDaBlock (3)< ACE_GFTy >* g = 0; 2202 GDB_Iai * gdbi = 0; 2204  p =0;p< um ;p++) { 2205  l =0;l< vs ;l++) { 2206 cڡ  idx = p * mdex ; 2207  i =0; i< ngth ; i++) { 2208 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2209 g = gdb [ t ][ l ][ i ]; 2210  m =0; m< mdex ; m++) { 2212 i( g -> gdb_g_wre_fo && ( gdbi =g->gdb_g_wre_fo[ idx + m ])) { 2214 i(! g_nd_fo [ p ]) { 2215 g_nd_fo [ p ] = w GF_Iai * [ vs ]; 2216  k =0;k< vs ;k++ g_nd_fo [ p ][k] = 0; 2218 i(! g_nd_fo [ p ][ l ]) 2219 g_nd_fo [ p ][ l ] = w GF_Iai ; 2221 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2222 g_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2223 #ifde ACEVeGridFuni 2224 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2225 g_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2227 #ifde DEBUG_PRINT 2228 `as w != 0 ); 2230 wsize . `add ( w ); 2231 #ifde ACEVeGridFuni 2232 mwsize . `add ( mw ); 2236 i( g -> gdb_g_ad_fo && ( gdbi =g->gdb_g_ad_fo[ idx + m ])) { 2238 i(! g_cv_fo [ p ]) { 2239 g_cv_fo [ p ] = w GF_Iai * [ vs ]; 2240  k =0;k< vs ;k++ g_cv_fo [ p ][k] = 0; 2242 i(! g_cv_fo [ p ][ l ]) 2243 g_cv_fo [ p ][ l ] = w GF_Iai ; 2245 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2246 g_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2247 #ifde ACEVeGridFuni 2248 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2249 g_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2251 #ifde DEBUG_PRINT 2252 `as r != 0 ); 2254 rsize . `add ( r ); 2255 #ifde ACEVeGridFuni 2256 mrsize . `add ( mr ); 2262 i( g_nd_fo [ p ] && g_nd_fo[p][ l ]) { 2263 wsize . `y ( g_nd_fo [ p ][ l ]-> size ,g_nd_fo[p][l]-> t ); 2264 #ifde ACEVeGridFuni 2265 mwsize . `y ( g_nd_fo [ p ][ l ]-> msize ,g_nd_fo[p][l]-> t ); 2268 i( g_cv_fo [ p ] && g_cv_fo[p][ l ]) { 2269 rsize . `y ( g_cv_fo [ p ][ l ]-> size ,g_cv_fo[p][l]-> t ); 2270 #ifde ACEVeGridFuni 2271 mrsize . `y ( g_cv_fo [ p ][ l ]-> msize ,g_cv_fo[p][l]-> t ); 2274 wsize . `emy (); rsize .empty(); 2275 #ifde ACEVeGridFuni 2276 mwsize . `emy (); mrsize .empty(); 2279 #ifde DEBUG_PRINT_GF_COMM 2280 comm_rvi :: `log (<< "[GF_Iai(GhPt):[" << p << "]" << dl ). `ush (); 2281  k =0;k< vs ;k++) { 2282 i( g_cv_fo [ p ] && g_cv_fo[p][ k ]) 2283 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2284 << * g_cv_fo [ p ][ k ] << "]" 2285 << dl ). `ush (); 2287 comm_rvi :: `log (<< dl ). `ush (); 2288  k =0;k< vs ;k++) { 2289 i( g_nd_fo [ p ] && g_nd_fo[p][ k ]) 2290 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2291 << * g_nd_fo [ p ][ k ] << "]" 2292 << dl ). `ush (); 2294 comm_rvi :: `log (<< "]" << dl ). `ush (); 2297 } } 2299 gme < ass gACE_GFTy > 2300  GridFuni (3)< gACE_GFTy >:: $GF_GhSPtCommInfo () 2302 i(! ` ()) ; 2304 cڡ  me = comm_rvi :: `oc_me (); 2306  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2307  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2309 cڡ  um = comm_rvi :: `oc_num (); 2310 cڡ  vs = dagh . `tٮvs (); 2311 cڡ  mdex = dagh . `maxdex ()+1; 2313 Li <> rsize ; 2314 Li <> wsize ; 2315  r =0, w =0; 2317 #ifde ACEVeGridFuni 2318 Li <> mrsize ; 2319 Li <> mwsize ; 2320  mr =0, mw =0; 2323 `GridDaBlock (3)< ACE_GFTy >* g = 0; 2324 GDB_Iai * gdbi = 0; 2326  p =0;p< um ;p++) { 2327  l =0;l< vs ;l++) { 2328 cڡ  idx = p * mdex ; 2329  i =0; i< ngth ; i++) { 2330 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ i ]) { 2331 g = gdb [ t ][ l ][ i ]; 2332  m =0; m< mdex ; m++) { 2334 i( g -> gdb_t_wre_fo && ( gdbi =g->gdb_t_wre_fo[ idx + m ])) { 2336 i(! t_nd_fo [ p ]) { 2337 t_nd_fo [ p ] = w GF_Iai * [ vs ]; 2338  k =0;k< vs ;k++ t_nd_fo [ p ][k] = 0; 2340 i(! t_nd_fo [ p ][ l ]) 2341 t_nd_fo [ p ][ l ] = w GF_Iai ; 2343 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2344 t_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2345 #ifde ACEVeGridFuni 2346 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2347 t_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2349 #ifde DEBUG_PRINT 2350 `as w != 0 ); 2352 wsize . `add ( w ); 2353 #ifde ACEVeGridFuni 2354 mwsize . `add ( mw ); 2358 i( g -> gdb_t_ad_fo && ( gdbi =g->gdb_t_ad_fo[ idx + m ])) { 2360 i(! t_cv_fo [ p ]) { 2361 t_cv_fo [ p ] = w GF_Iai * [ vs ]; 2362  k =0;k< vs ;k++ t_cv_fo [ p ][k] = 0; 2364 i(! t_cv_fo [ p ][ l ]) 2365 t_cv_fo [ p ][ l ] = w GF_Iai ; 2367 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2368 t_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2369 #ifde ACEVeGridFuni 2370 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2371 t_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2373 #ifde DEBUG_PRINT 2374 `as r != 0 ); 2376 rsize . `add ( r ); 2377 #ifde ACEVeGridFuni 2378 mrsize . `add ( mr ); 2384 i( t_nd_fo [ p ] && s_nd_fo[p][ l ]) { 2385 wsize . `y ( t_nd_fo [ p ][ l ]-> size ,t_nd_fo[p][l]-> t ); 2386 #ifde ACEVeGridFuni 2387 mwsize . `y ( t_nd_fo [ p ][ l ]-> msize ,t_nd_fo[p][l]-> t ); 2390 i( t_cv_fo [ p ] && s_cv_fo[p][ l ]) { 2391 rsize . `y ( t_cv_fo [ p ][ l ]-> size ,t_cv_fo[p][l]-> t ); 2392 #ifde ACEVeGridFuni 2393 mrsize . `y ( t_cv_fo [ p ][ l ]-> msize ,t_cv_fo[p][l]-> t ); 2396 wsize . `emy (); rsize .empty(); 2397 #ifde ACEVeGridFuni 2398 mwsize . `emy (); mrsize .empty(); 2401 #ifde DEBUG_PRINT_GF_COMM 2402 comm_rvi :: `log (<< "[GF_Iai(SPt):[" << p << "]" << dl ). `ush (); 2403  k =0;k< vs ;k++) { 2404 i( t_cv_fo [ p ] && s_cv_fo[p][ k ]) 2405 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2406 << * t_cv_fo [ p ][ k ] << "]" 2407 << dl ). `ush (); 2409 comm_rvi :: `log (<< dl ). `ush (); 2410  k =0;k< vs ;k++) { 2411 i( t_nd_fo [ p ] && s_nd_fo[p][ k ]) 2412 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2413 << * t_nd_fo [ p ][ k ] << "]" 2414 << dl ). `ush (); 2416 comm_rvi :: `log (<< "]" << dl ). `ush (); 2419 } } 2425 gme < ass gACE_GFTy > 2426  GridFuni (3)< gACE_GFTy >:: $GF_SUpFluxCommSvs () 2428 i(! `uxes ()) ; 2430 cڡ  um = comm_rvi :: `oc_num (); 2431 cڡ  me = comm_rvi :: `oc_me (); 2433 cڡ  t = dagh . `tٮvs (); 2435  i =0;i< um ;i++) { 2436 i( i = me || ! ux_cv_fo [i]) ; 2437 i(! ux_cv_rv [ i ]) { 2438 ux_cv_rv [ i ] = w GridTabGhoRcv *[ t ]; 2439  c =0; c< t ; c++ ux_cv_rv [ i ][c] = 0; 2441  j =0;j< t ;j++) { 2442 i(! ux_cv_fo [ i ][ j ]) ; 2443 cڡ GF_Iai * gri = ux_cv_fo [ i ][ j ]; 2444 ux_cv_rv [ i ][ j ] = 2445 w `GridTabGhoRcv (* gt , ( ACEFluxTag | j ), gri -> tsize , i ); 2448 } } 2453 gme < ass gACE_GFTy > 2454  GridFuni (3)< gACE_GFTy >:: $GF_GhFluxCommInfo () 2456 i(! `uxes ()) ; 2458 cڡ  me = comm_rvi :: `oc_me (); 2460  t =0, l =0, c =0, i =0, p =0, m =0, k =0; 2461  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2463 cڡ  mynk = 3; 2464 cڡ  um = comm_rvi :: `oc_num (); 2465 cڡ  vs = dagh . `tٮvs (); 2466 cڡ  mdex = dagh . `maxdex ()+1; 2467 cڡ  t1 = 2* mynk ; 2468 cڡ  t2 = t1 * mdex ;; 2470 Li <> rsize ; 2471 Li <> wsize ; 2472  r =0, w =0; 2474 #ifde ACEVeGridFuni 2475 Li <> mrsize ; 2476 Li <> mwsize ; 2477  mr =0, mw =0; 2480 `GridDaBlock (3)< ACE_GFTy > * g = 0; 2481 GDB_Iai * gdbi = 0; 2483  idx = 0; 2484  p =0;p< um ;p++) { 2485  l =0;l< vs ;l++) { 2486  i =0; i< ngth ; i++i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][i]) { 2487 g = gdb [ t ][ l ][ i ]; 2488  c =0;c< mynk ;c++) { 2489  m =0; m< mdex ; m++) { 2491 idx = p * t2 + 2* c * mdex ; 2493 i( g -> gdb_ux_wre_fo && ( gdbi =g->gdb_ux_wre_fo[ idx + m ])) { 2495 i(! ux_nd_fo [ p ]) { 2496 ux_nd_fo [ p ] = w GF_Iai * [ vs ]; 2497  k =0;k< vs ;k++ ux_nd_fo [ p ][k] = 0; 2499 i(! ux_nd_fo [ p ][ l ]) 2500 ux_nd_fo [ p ][ l ] = w GF_Iai ; 2502 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2503 ux_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2504 #ifde ACEVeGridFuni 2505 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2506 ux_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2508 #ifde DEBUG_PRINT 2509 `as w != 0 ); 2511 wsize . `add ( w ); 2512 #ifde ACEVeGridFuni 2513 mwsize . `add ( mw ); 2517 i( g -> gdb_ux_ad_fo && ( gdbi =g->gdb_ux_ad_fo[ idx + m ])) { 2519 i(! ux_cv_fo [ p ]) { 2520 ux_cv_fo [ p ] = w GF_Iai * [ vs ]; 2521  k =0;k< vs ;k++ ux_cv_fo [ p ][k] = 0; 2523 i(! ux_cv_fo [ p ][ l ]) 2524 ux_cv_fo [ p ][ l ] = w GF_Iai ; 2526 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2527 ux_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2528 #ifde ACEVeGridFuni 2529 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2530 ux_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2532 #ifde DEBUG_PRINT 2533 `as r != 0 ); 2535 rsize . `add ( r ); 2536 #ifde ACEVeGridFuni 2537 mrsize . `add ( mr ); 2540 idx = p * t2 + (2* c +1)* mdex ; 2542 i( g -> gdb_ux_wre_fo && ( gdbi =g->gdb_ux_wre_fo[ idx + m ])) { 2544 i(! ux_nd_fo [ p ]) { 2545 ux_nd_fo [ p ] = w GF_Iai * [ vs ]; 2546  k =0;k< vs ;k++ ux_nd_fo [ p ][k] = 0; 2548 i(! ux_nd_fo [ p ][ l ]) 2549 ux_nd_fo [ p ][ l ] = w GF_Iai ; 2551 w = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2552 ux_nd_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( w ); 2553 #ifde ACEVeGridFuni 2554 mw = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2555 ux_nd_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mw ); 2557 #ifde DEBUG_PRINT 2558 `as w != 0 ); 2560 wsize . `add ( w ); 2561 #ifde ACEVeGridFuni 2562 mwsize . `add ( mw ); 2566 i( g -> gdb_ux_ad_fo && ( gdbi =g->gdb_ux_ad_fo[ idx + m ])) { 2568 i(! ux_cv_fo [ p ]) { 2569 ux_cv_fo [ p ] = w GF_Iai * [ vs ]; 2570  k =0;k< vs ;k++ ux_cv_fo [ p ][k] = 0; 2572 i(! ux_cv_fo [ p ][ l ]) 2573 ux_cv_fo [ p ][ l ] = w GF_Iai ; 2575 r = nems *( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2576 ux_cv_fo [ p ][ l ]-> tsize + gdhdr :: `gdbsize ( r ); 2577 #ifde ACEVeGridFuni 2578 mr = ( ACE_GFTy )* `max ( gdbi -> mbbox . `size (),gdbi-> shbbox .size()); 2579 ux_cv_fo [ p ][ l ]-> mtsize + gdhdr :: `gdbsize ( mr ); 2581 #ifde DEBUG_PRINT 2582 `as r != 0 ); 2584 rsize . `add ( r ); 2585 #ifde ACEVeGridFuni 2586 mrsize . `add ( mr ); 2592 i( ux_nd_fo [ p ] && flux_nd_fo[p][ l ]) { 2593 wsize . `y ( ux_nd_fo [ p ][ l ]-> size ,ux_nd_fo[p][l]-> t ); 2594 #ifde ACEVeGridFuni 2595 mwsize . `y ( ux_nd_fo [ p ][ l ]-> msize ,ux_nd_fo[p][l]-> t ); 2598 i( ux_cv_fo [ p ] && flux_cv_fo[p][ l ]) { 2599 rsize . `y ( ux_cv_fo [ p ][ l ]-> size ,ux_cv_fo[p][l]-> t ); 2600 #ifde ACEVeGridFuni 2601 mrsize . `y ( ux_cv_fo [ p ][ l ]-> msize ,ux_cv_fo[p][l]-> t ); 2604 wsize . `emy (); rsize .empty(); 2605 #ifde ACEVeGridFuni 2606 mwsize . `emy (); mrsize .empty(); 2609 #ifde DEBUG_PRINT_GF_COMM 2610 comm_rvi :: `log (<< "[GF_Iai(Flux):[" << p << "]" << dl ). `ush (); 2611  k =0;k< vs ;k++) { 2612 i( ux_cv_fo [ p ] && flux_cv_fo[p][ k ]) 2613 comm_rvi :: `log (<< "\[Rcv[" << k << "]" 2614 << * ux_cv_fo [ p ][ k ] << "]" 2615 << dl ). `ush (); 2617 comm_rvi :: `log (<< dl ). `ush (); 2618  k =0;k< vs ;k++) { 2619 i( ux_nd_fo [ p ] && flux_nd_fo[p][ k ]) 2620 comm_rvi :: `log (<< "\[Snd[" << k << "]" 2621 << * ux_nd_fo [ p ][ k ] << "]" 2622 << dl ). `ush (); 2624 comm_rvi :: `log (<< "]" << dl ). `ush (); 2627 } } 2633 gme < ass gACE_GFTy > 2634  GridFuni (3)< gACE_GFTy >:: $GF_SwTimeLevs (cڡ  l , 2635 cڡ  t1 , 2636 cڡ  t2 ) 2638 cڡ  ti1 = `dagh_timedex ( t1 , l ); 2639 cڡ  ti2 = `dagh_timedex ( t2 , l ); 2641 i( ti1 = ti2 ) ; 2643 #ifde DEBUG_PRINT 2644 `as ( gdb [ ti1 ] && gdb[ ti2 ]); 2647 `GridDaBlock (3)< ACE_GFTy >** gdb1 = gdb [ ti1 ][ l ]; 2648 `GridDaBlock (3)< ACE_GFTy >** gdb2 = gdb [ ti2 ][ l ]; 2650 i( gdb1 ) { 2651  i =0;i< ngth ;i++) 2652 i( gdb1 [ i ] && gdb1[i]-> `dexme (i)gdb1[i]-> timum = ti2 ; 2654 i( gdb2 ) { 2655  i =0;i< ngth ;i++) 2656 i( gdb2 [ i ] && gdb2[i]-> `dexme (i)gdb2[i]-> timum = ti1 ; 2658 gdb [ ti1 ][ l ] = gdb2 ; 2659 gdb [ ti2 ][ l ] = gdb1 ; 2660 } } 2663 gme < ass gACE_GFTy > 2664  GridFuni (3)< gACE_GFTy >:: $GF_CyeTimeLevs (cڡ  l ) 2666 i( time__d == 0) ; 2668 cڡ  i = `dagh_timedex ( dagh . `gCutTime ( l ),l); 2669 cڡ  i = `dagh_timedex ( dagh . `gPviousTime ( l ),l); 2670 cڡ  i = `dagh_timedex ( dagh . `gNextTime ( l ),l); 2672 #ifde DEBUG_PRINT 2673 `as ( gdb [ i ] && gdb[ i ] && gdb[ i ]); 2674 `as ( gdb [ i ][ l ] && gdb[ i ][l] && gdb[ i ][l]); 2677 `GridDaBlock (3)< ACE_GFTy >** cgdb = gdb [ i ][ l ]; 2678 `GridDaBlock (3)< ACE_GFTy >** pgdb = gdb [ i ][ l ]; 2679 `GridDaBlock (3)< ACE_GFTy >** ngdb = gdb [ i ][ l ]; 2681  i = 0; 2683 i( cgdb && ( i ! i )) { 2684  i =0;i< ngth ;i++) 2685 i( cgdb [ i ] && cgdb[i]-> `dexme (i)cgdb[i]-> timum = i ; 2687 i( pgdb && ( i ! i )) { 2688  i =0;i< ngth ;i++) 2689 i( pgdb [ i ] &&gdb[i]-> `dexme (i)pgdb[i]-> timum = i ; 2691 i( ngdb && ( i ! i )) { 2692  i =0;i< ngth ;i++) 2693 i( ngdb [ i ] &&gdb[i]-> `dexme (i)ngdb[i]-> timum = i ; 2695 i( i ! i gdb [i][ l ] = ngdb ; 2696 i( i ! i gdb [i][ l ] = cgdb ; 2697 i( i ! i gdb [i][ l ] = pgdb ; 2698 } } 2703 gme < ass gACE_GFTy > 2704  GridFuni (3)< gACE_GFTy >:: $tbboxli ( BBoxLi & bbl , 2705 cڡ  l , 2706 cڡ  idt ) 2708 i(! bbl . `imy ()bbl. `emy (); 2709  t = 0, i = 0; 2710  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2711  i =0; i< ngth ; i++) 2712 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2713 bbl . `add ( gdb [ t ][ l ][ i ]-> `ribox ( idt )); 2714 } } 2716 gme < ass gACE_GFTy > 2717  GridFuni (3)< gACE_GFTy >:: $tbboxli ( BBoxLi & bbl , 2718 cڡ  l , 2719 cڡ  mgl , 2720 cڡ  idt ) 2722 i(! bbl . `imy ()bbl. `emy (); 2723  t = 0, i = 0; 2724  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2725  i =0; i< ngth ; i++) 2726 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2727 bbl . `add ( gdb [ t ][ l ][ i ]-> `ribox ( idt , mgl )); 2728 } } 2730 gme < ass gACE_GFTy > 2731  GridFuni (3)< gACE_GFTy >:: $dabboxli ( BBoxLi & bbl , 2732 cڡ  l , 2733 cڡ  idt ) 2735 i(! bbl . `imy ()bbl. `emy (); 2736  t = 0, i = 0; 2737  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2738  i =0; i< ngth ; i++) 2739 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2740 bbl . `add ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt )); 2741 } } 2743 gme < ass gACE_GFTy > 2744  GridFuni (3)< gACE_GFTy >:: $dabboxli ( BBoxLi & bbl , 2745 cڡ  l , 2746 cڡ  mgl , 2747 cڡ  idt ) 2749 i(! bbl . `imy ()bbl. `emy (); 2750  t = 0, i = 0; 2751  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2752  i =0; i< ngth ; i++) 2753 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2754 bbl . `add ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt , mgl )); 2755 } } 2757 gme < ass gACE_GFTy > 2758  GridFuni (3)< gACE_GFTy >:: $mgedbboxli ( BBoxLi & bbl , 2759 cڡ  l , 2760 cڡ  idt ) 2762 i(! bbl . `imy ()bbl. `emy (); 2763  t = 0, i = 0; 2764  t =0;t<=2* time__d ;t++i( gdb [t]) ; 2765  i =0; i< ngth ; i++) 2766 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2767 bbl . `add ( gdb [ t ][ l ][ i ]-> `mgedbox ( idt )); 2768 } } 2773 gme < ass gACE_GFTy > 2774  GridFuni (3)< gACE_GFTy >:: $GF_SupShadow (cڡ  time , 2775 cڡ  v ) 2777 cڡ  t = `dagh_timedex ( time , v ); 2778 cڡ  l = v ; 2780  i =0; i< ngth ; i++) 2781 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2782 gdb [ t ][ l ][ i ]-> `gdbSUpShadow ( ovp , bwidth , extghowidth ); 2784 shadow_ag = ACEHasShadow ; 2785 } } 2787 gme < ass gACE_GFTy > 2788  GridFuni (3)< gACE_GFTy >:: $GF_RShadow (cڡ  time , 2789 cڡ  v ) 2791 cڡ  t = `dagh_timedex ( time , v ); 2792 cڡ  l = v ; 2793  i =0; i< ngth ; i++) 2794 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 2795 gdb [ t ][ l ][ i ]-> `gdbRShadow (); 2797 shadow_ag = ACENoShadow ; 2798 } } 2804 gme < ass gACE_GFTy > 2805  GridFuni (3)< gACE_GFTy >:: $GF_SupMuiGrid (cڡ  time , 2806 cڡ  v , 2807 cڡ  mglc , 2808 cڡ  mglf , 2809 cڡ  idt ) 2811 cڡ  t = `dagh_timedex ( time , v ); 2812 cڡ  l = v ; 2814 i( idt = ACE_Ma ) { 2815  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2816 gdb [ t ][ l ][ i ]-> `gdbSUpMuiGrid ( mglc , mglf , 2817 ovp , bwidth , extghowidth ); 2819 i( `shadow ()) { 2820  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2821 gdb [ t ][ l ][ i ]-> `gdbSUpShadowMuiGrid ( mglc , mglf , 2822 ovp , bwidth , extghowidth ); 2824 } } 2826 gme < ass gACE_GFTy > 2827  GridFuni (3)< gACE_GFTy >:: $GF_SupMuiGrid (cڡ  time , 2828 cڡ  v , 2829 cڡ  axis , 2830 cڡ  mglc , 2831 cڡ  mglf , 2832 cڡ  idt ) 2834 cڡ  t = `dagh_timedex ( time , v ); 2835 cڡ  l = v ; 2837 i( idt = ACE_Ma ) { 2838  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2839 gdb [ t ][ l ][ i ]-> `gdbSUpMuiGrid ( axis , mglc , mglf , 2840 ovp , bwidth , extghowidth ); 2842 i( `shadow ()) { 2843  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2844 gdb [ t ][ l ][ i ]-> `gdbSUpShadowMuiGrid ( axis , mglc , mglf , 2845 ovp , bwidth , extghowidth ); 2847 } } 2849 gme < ass gACE_GFTy > 2850  GridFuni (3)< gACE_GFTy >:: $GF_RMuiGrid (cڡ  time , 2851 cڡ  v , 2852 cڡ  idt ) 2854 cڡ  t = `dagh_timedex ( time , v ); 2855 cڡ  l = v ; 2857 i( idt = ACE_Ma ) { 2858  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2859 gdb [ t ][ l ][ i ]-> `gdbRMuiGrid (); 2861 i( `shadow ()) { 2862  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) 2863 gdb [ t ][ l ][ i ]-> `gdbRShadowMuiGrid (); 2865 } } 2871 gme < ass gACE_GFTy > 2872  GridFuni (3)< gACE_GFTy >:: $GF_Checkpot ( ofam & ofs ) 2874 #ifde DEBUG_PRINT 2875 `as ( dagh . `chk_t (&& `checkpot ()); 2878 cڡ  vs = dagh . `tٮvs (); 2879 cڡ  times = 2* time__d + 1; 2880 cڡ  dnum = vs * ngth * times ; 2881 ofs . `wre ((*)& vs ,()); 2882 ofs . `wre ((*)& ngth ,()); 2883 ofs . `wre ((*)& times ,()); 2885 ampos * chkd = w smpos[ dnum ]; 2886 ampos chkdpos = ofs . `p (); 2887 ofs . `wre ((*) chkd ,( ampos )* dnum ); 2889 ofs << *(( GridFuniVoid *) this ); 2891  c =0; c< ngth ; c++) { 2892  l =0;< vs ;++) { 2893  t =0;< times ;++) { 2894 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ c ] && gdb[t][l][c]-> `dexme (c)) { 2895 chkd [ c * vs * times + l *times+ t ] = ofs . `p (); 2896 ofs << * gdb [ t ][ l ][ c ]; 2899 chkd [ c * vs * times + l *times+ t ] = ACENu ; 2904 ampos cuos = ofs . `p (); 2905 ofs . `ekp ( chkdpos ); 2906 ofs . `wre ((*) chkd ,( ampos )* dnum ); 2907 ofs . `ekp ( cuos ); 2908 i( chkd de [] chkptdir; 2909 } } 2911 gme < ass gACE_GFTy > 2912  GridFuni (3)< gACE_GFTy >:: $GF_CheckpotRet () 2914 #ifde DEBUG_PRINT 2915 `as ( dagh . `chk_t (&& `checkpot ()); 2918 cڡ  num = comm_rvi :: `oc_num (); 2919 cڡ  me = comm_rvi :: `oc_me (); 2920 cڡ  dum = dagh . `chk_um (); 2921 cڡ  vs = dagh . `tٮvs (); 2922 cڡ  times = 2* time__d + 1; 2924  t =0, l =0, c =0; 2926 i( dum = num ) { 2927  ampos pos ; 2929 ifam ifs ; 2930  eag = dagh . `ACE_GGFChkISm ( me , game , gfid , ifs ); 2931 i( eag = ACEF ) ; 2933  hievs = 0, higth = 0, his = 0; 2934 ifs . `ad ((*)& hievs ,()); 2935 ifs . `ad ((*)& higth ,()); 2936 ifs . `ad ((*)& his ,()); 2938 #ifde DEBUG_PRINT 2939 `as ( hievs = vs ); 2940 `as ( higth = ngth ); 2943 cڡ  dnum = hievs * higth * his ; 2944 ampos * chkd = w smpos[ dnum ]; 2945 ifs . `ad ((*) chkd ,( ampos )* dnum ); 2946  c =0; c< ngth ; c++) { 2947  l =0;< vs ;++) { 2948  t =0;< times ;++) { 2949 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ c ] && gdb[t][l][c]-> `dexme (c) && 2950 t < his && 2952 ( pos = chkd [ c * hievs * his + l *his+ t ])!= `ampos ( ACENu )) { 2953 ifs . `ekg ( pos ); 2954 ifs >> * gdb [ t ][ l ][ c ]; 2959 i( chkd de [] chkptdir; 2960 dagh . `ACE_CloChkISm ( ifs ); 2963 GridBoxLi * lgbl = dagh . `lgbl (); 2964 GridBoxLi * dggbl = dagh . `dggbl (); 2965 cڡ  dmdex = dggbl -> `maxdex () + 1; 2967 cڡ  addnum = dum * dmdex ; 2969 * adom = w [ dum ]; 2970  =0;< dum ;++ adom [] = ACENu ; 2972 * add = w [ addnum ]; 2973 * adtodex = w [ addnum ]; 2974  i =0; i< addnum ;i++) 2975 { add [ i ] = ACENu ; adtodex [i] = ACENull; } 2977 GridBoxLi `myli (* dggbl ); 2978 myli ** lgbl ; 2980  GridBox * gb = myli . `f ();gb;gb=myli. `xt ()) { 2981 add [ gb -> `gbOwr ()* dmdex + gb-> `gbIndex ()] = ACETrue ; 2982 #ifde DEBUG_PRINT_GF_RG 2983 `as ( lgbl -> `mches ( gb -> `gbBBox (gb-> `gbCrsLev ()), 2984 gb -> `gbCrsLev ()) == 1); 2986 adtodex [ gb -> `gbOwr ()* dmdex + gb-> `gbIndex ()] = 2987 lgbl -> `dex ( gb -> `gbBBox (gb-> `gbCrsLev ()),gb->gbCrsLev()); 2989 adom [ gb -> `gbOwr ()] = ACETrue ; 2992  idx = ACENu ; 2993  ampos pos ; 2994  p =0;< dum ;++i( adom [p] = ACETrue ) { 2995 ifam ifs ; 2996  eag = dagh . `ACE_GGFChkISm ( p , game , gfid , ifs ); 2997 i( eag = ACEF ) ; 2999  hievs = 0, higth = 0, his = 0; 3000 ifs . `ad ((*)& hievs ,()); 3001 ifs . `ad ((*)& higth ,()); 3002 ifs . `ad ((*)& his ,()); 3004 #ifde DEBUG_PRINT 3005 `as ( hievs = vs ); 3006 `as ( higth < dmdex ); 3009 cڡ  dnum = hievs * higth * his ; 3010 ampos * chkd = w smpos[ dnum ]; 3011 ifs . `ad ((*) chkd ,( ampos )* dnum ); 3012  c =0; c< dmdex ; c++) { 3013  l =0;< vs ;++) { 3014 i( add [ p * dmdex + c ] = ACENu ) ; 3015 idx = adtodex [ p * dmdex + c ]; 3016  t =0;< times ;++) { 3017 i( gdb [ t ] && gdb[t][ l ] && gdb[t][l][ idx ] && < his && 3019 ( pos = chkd [ c * hievs * his + l *his+ t ])!= `ampos ( ACENu )) { 3020 ifs . `ekg ( pos ); 3021 ifs >> * gdb [ t ][ l ][ idx ]; 3026 i( chkd de [] chkptdir; 3027 dagh . `ACE_CloChkISm ( ifs ); 3029 i( adom de []eadfrom; 3030 i( add de []eaddir; 3031 i( adtodex de []eadtoindex; 3035 i( `comm ()) { 3036  l =0;< vs ;++) { 3037  t =0;< times ;++) { 3038 i( gdb [ t ] && gdb[t][ l ]) { 3039 cڡ  um = `dagh_timevue ( t , l ); 3040 `GF_Sync ( um , l , ACE_Ma ); 3041 i( `shadow (= ACETrue `GF_Sync ( um , l , ACE_Shadow ); 3046 } } 3051 gme < ass gACE_GFTy > 3052 goam & GridFuni (3)< gACE_GFTy >:: $GF_DebugPrtIDa ( oam & os , 3053 cڡ  time , 3054 cڡ  v , 3055 cڡ  idt ) 3057 os << * this ; 3058 os << "(" << time << ") "; 3059 os << "(" << v << ") "; 3060 os << "\n"; 3061 cڡ  t = `dagh_timedex ( time , v ); 3062 cڡ  l = v ; 3063  i =0; i< ngth ; i++) { 3064 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) { 3065 os << "Ii: " << gdb [ t ][ l ][ i ]-> `boundgbox ( idt ) << "\n"; 3066 `GridDa (3)< ACE_GFTy > `tmpgd ( gdb [ t ][ l ][ i ]-> `boundgbox ( idt )); 3067 tmpgd = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 3068 os << tmpgd ; 3069 os << "\n"; 3072  os ; 3073 } } 3075 gme < ass gACE_GFTy > 3076 goam & GridFuni (3)< gACE_GFTy >:: $GF_DebugPrtDa ( oam & os , 3077 cڡ  time , 3078 cڡ  v , 3079 cڡ  idt ) 3081 os << * this ; 3082 os << "(" << time << ") "; 3083 os << "(" << v << ") "; 3084 os << "\n"; 3085 cڡ  t = `dagh_timedex ( time , v ); 3086 cڡ  l = v ; 3087  i =0; i< ngth ; i++) 3088 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 3089 os << gdb [ t ][ l ][ i ]-> `gridda ( idt ); 3090  os ; 3091 } } 3093 gme < ass gACE_GFTy > 3094 goam & GridFuni (3)< gACE_GFTy >:: $GF_DebugPrtDaBlk ( oam & os , 3095 cڡ  time , 3096 cڡ  v ) 3098 os << * this ; 3099 os << "(" << time << ") "; 3100 os << "(" << v << ") "; 3101 os << "\n"; 3102 cڡ  t = `dagh_timedex ( time , v ); 3103 cڡ  l = v ; 3104  i =0; i< ngth ; i++) 3105 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 3106 os << * gdb [ t ][ l ][ i ] << "\n"; 3107  os ; 3108 } } 3114 gme < ass gACE_GFTy > 3115 goam & gݔ << (oam& gos , cڡ GridFuni (3)< gACE_GFTy >& ggf ) 3118 i(& ggf =( GridFuni (3)< ACE_GFTy > * NULL  os ; 3120 gos << "GridFuni: " << ggf . GF_Name (); 3122  gos ; 3126 gme < ass gACE_GFTy > 3127 goam & GridFuni (3)< gACE_GFTy >:: $GF_DebugPrtTheDa ( oam & os ) 3130 cڡ  vs = dagh . `tٮvs (); 3131 cڡ  times = 2* time__d +1; 3133 os << "******* THE DATA *********" << dl ; 3134 i( gdb ) { 3135  t =0;t< times ;t++) { 3136 i( gdb [ t ]) { 3137  l =0;l< vs ;l++) { 3138 i( gdb [ t ][ l ]) { 3139  i =0;i< ngth ;i++) { 3140 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)){ 3141 os << "gdb[ " << t << "][" 3142 << l << "][" << i << "]:" << dl ; 3143 os << * gdb [ t ][ l ][ i ] << dl ; 3151 os << "******* END THE DATA *********" << dl ; 3152  os ; 3153 } } 3155  ~"GridFuniComm3.h " 3156  ~"GridFuniFuncs3.h " 3157  ~"GridFuniOps3.h " 3158  ~"GridFuniOpsDi3.h " 3159  ~"GridFuniOpsRed3.h " 3160  ~"GridFuniBndry3.h " 3161  ~"GridFuniIO3.h " 3162  ~"GridFuniUCD3.h " 3163  ~"GridFuniViz3.h " 3164  ~"GridFuniDICE3.h " 3165  ~"GridFuniPts3.h " 3166  ~"GridFuniFluxes3.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunction3.h 1 #ide _uded_GridFuni3_h 2  #_uded_GridFuni3_h ) 14  ~"GridDa3.h " 15  ~"GridDaBlock3.h " 16  ~"ACEUCD.h " 19  ~"DICEInude.h " 21 #ide GridFuniName 22  #GridFuni ( dim `me2 ( GridFuni ,dim) ) 23  #GridFuniName ) 26  ~"GFIt.h " 28 #i defed ( __GNUG__ || defed( __GNUC__ ) 29 gme < ass gACE_GFTy > cs GridFuni (3); 31 gme < ass gACE_GFTy > 32 goam & gݔ <<(oam&, cڡ GridFuni (3)< gACE_GFTy >&); 35 gme < ass gACE_GFTy > 36 ass GridFuni (3: public GridFuniVoid 38 public : 39 GridDa (3)< ACE_GFTy >& ݔ ()( GDIt (3)& gfi , 40  gma__shadow ) { 41  ݔ ()( ggfi . time (),gfi. v (),gfi. compڒt (), 42 gma__shadow ); 44 give : 45 #i defed ( __GNUG__ || defed( __GNUC__ ) 46 nd oam & ݔ << <>(oam&, cڡ GridFuni (3)< gACE_GFTy >&); 48 nd goam & gݔ <<(oam&, cڡ GridFuni (3)< gACE_GFTy >&); 50 nd ass gGridHrchy ; 53  gngth ; 54 GridDaBlock (3)< gACE_GFTy > **** ggdb ; 57 ACE_GFTy gbvue ; 59  #GF_TYPE ACE_GFTy ) 60  ~"GridFuniI.h " 63 InFunc gifunc ; 66 UpdeFunc gufunc ; 69 BndryUpdeFunc gbfunc ; 70 AdBndryUpdeFunc gabfunc ; 73 PrgFunc gpfunc ; 74 ReriFunc grfunc ; 75 TimeIpFunc gfunc ; 78 FluxAddFunc gfunc ; 81 IOFunc giofunc ; 86 give : 87 GridFuni (3)(cڡ GridFuni(3)< ACE_GFTy >&); 88 cڡ GridFuni (3)< gACE_GFTy >& gݔ = 89 (cڡ GridFuni (3)< ACE_GFTy >&); 95 gpublic : 96 GridFuni (3)(cڡ me [], 97 gGridHrchy & ggh ); 100 GridFuni (3)(cڡ  gme [], 101 cڡ  gt_ , 102 cڡ  gs_ , 103 gGridHrchy & ggh , 104 cڡ  gcag = ACEComm , 105 cڡ  gsag = ACENoShadow , 106 cڡ  gextghag = ACENoExGho ); 108 GridFuni (3)(cڡ  gme [], 109 cڡ  gt_ , 110 cڡ  gs_ , 111 gGridHrchy & ggh , 112 cڡ  gty , 113 cڡ  gcag , 114 cڡ  gsag , 115 cڡ  gbag , 116 cڡ  gadbag , 117 cڡ  gextghag = ACENoExGho ); 119 GridFuni (3)(cڡ  gme [], 120 cڡ  gt_ , 121 cڡ * gs_ , 122 gGridHrchy & ggh , 123 cڡ  gty , 124 cڡ  gcag , 125 cڡ  gsag , 126 cڡ  gbag , 127 cڡ  gadbag , 128 cڡ  gextghag = ACENoExGho ); 131 GridFuni (3)(cڡ  gme [], 132 cڡ  gt_ , 133 cڡ  gs_ , 134 gGridHrchy & ggh , 135 cڡ  gty , 136 cڡ  gign , 137 cڡ  gcag , 138 cڡ  gsag , 139 cڡ  gbag , 140 cڡ  gadbag , 141 cڡ  gextghag ); 143 GridFuni (3)(cڡ  gme [], 144 cڡ  gt_ , 145 cڡ * gs_ , 146 gGridHrchy & ggh , 147 cڡ  gty , 148 cڡ  gign , 149 cڡ  gcag , 150 cڡ  gsag , 151 cڡ  gbag , 152 cڡ  gadbag , 153 cڡ  gextghag ); 156 GridFuni (3)(cڡ  gme [], 157 cڡ  gt_ , 158 cڡ  gs_ , 159 cڡ  gtime , 160 cڡ  gv , 161 gGridHrchy & ggh , 162 cڡ  gty , 163 cڡ  gcag , 164 cڡ  gsag , 165 cڡ  gbag , 166 cڡ  gadbag , 167 cڡ  gextghag = ACENoExGho ); 169 GridFuni (3)(cڡ  gme [], 170 cڡ  gt_ , 171 cڡ * gs_ , 172 cڡ  gtime , 173 cڡ  gv , 174 gGridHrchy & ggh , 175 cڡ  gty , 176 cڡ  gcag , 177 cڡ  gsag , 178 cڡ  gbag , 179 cڡ  gadbag , 180 cڡ  gextghag = ACENoExGho ); 183 GridFuni (3)(cڡ  gme [], 184 cڡ GridFuni (3)< gACE_GFTy >& ggf , 185 cڡ  gtime , 186 cڡ  gv , 187 cڡ  gcag , 188 cڡ  gsag , 189 cڡ  gbag , 190 cڡ  gadbag , 191 cڡ  gextghag = ACENoExGho ); 197 gpublic : 198 ~ GridFuni (3)(); 204 give : 205  GF_DeGDBStage (); 206  GF_DeGDBStage (cڡ  t ); 212 give : 213  GF_Compo (); 214  GF_Compo (cڡ  T , 215 cڡ  L ); 216  GF_Compo (cڡ GridFuni (3)< ACE_GFTy >& gf , 217 cڡ  T , 218 cڡ  L ); 220  GF_Recompo (cڡ  omdex , 221 GridBoxLi & li , 222 GridBoxLi & i , 223 GridBoxLi & i , 224 GridBoxLi & i ); 230  GF_CheckpotRecompo (); 231  GF_Checkpot ( ofam & ofs ); 232  GF_CheckpotRet (); 239 give : 240  GF_SUpGDBPors (); 246 give : 247  GF_SUpGhoCommSvs (); 248  GF_GhGhoCommInfo (); 250  GF_SUpPtCommSvs (); 251  GF_GhPtCommInfo () 253 GF_GhGPtCommInfo (); 254 GF_GhSPtCommInfo (); 256  GF_GhGPtCommInfo (); 257  GF_GhSPtCommInfo (); 259  GF_SUpFluxCommSvs (); 260  GF_GhFluxCommInfo (); 266 gpublic : 267 le  GF_SInFunc (* f ) 268 { ifunc = ( InFunc f ; } 269 le  GF_SUpdeFunc (* uf ) 270 { gufunc = ( UpdeFunc uf ; } 271 le  GF_SBndryUpdeFunc (* bf ) 272 { gbfunc = ( BndryUpdeFunc bf ; } 273 le  GF_SAdtiveBndryUpdeFunc (* abf ) 274 { gabfunc = ( AdBndryUpdeFunc abf ; } 275 le  GF_SPrgFunc (* pf ) 276 { gpfunc = ( PrgFunc pf ; } 277 le  GF_SReriFunc (* rf ) 278 { grfunc = ( ReriFunc rf ; } 279 le  GF_STimeIpީiFunc (* tif ) 280 { gfunc = ( TimeIpFunc tif ; } 281 le  GF_SFluxAddFuncFunc (* f ) 282 { gfunc = ( FluxAddFunc f ; } 284 le  GF_SIOFunc (* iof ) 285 { giofunc = ( IOFunc iof ; } 291 gpublic : 292 le  has_func () 293 {  ( ifunc !( InFunc ) 0); } 294 le  has_updefunc () 295 {  ( gufunc !( UpdeFunc ) 0); } 296 le  has_bndryupdefunc () 297 {  ( gbfunc !( BndryUpdeFunc ) 0); } 298 le  has_adtivebndryupdefunc () 299 {  ( gabfunc !( AdBndryUpdeFunc ) 0); } 300 le  has_gfunc () 301 {  ( gpfunc !( PrgFunc ) 0); } 302 le  has_rifunc () 303 {  ( grfunc !( ReriFunc ) 0); } 304 le  has_timefunc () 305 {  ( gfunc !( TimeIpFunc ) 0); } 306 le  has_uxaddfunc () 307 {  ( gfunc !( FluxAddFunc ) 0); } 308 le  has_iofunc () 309 {  ( giofunc !( IOFunc ) 0); } 315 gpublic : 316 le  GF_CutTime (cڡ  v , 317 cڡ  idt = ACE_Ma ) const 318 {  cuime [ GridHrchy :: daghdex ( idt )][ v ] ; } 320 le  GF_SCutTime (cڡ  ime , 321 cڡ  v , 322 cڡ  idt = ACE_Ma ) 323 { cuime [ GridHrchy :: daghdex ( idt )][ v ] = ime ; } 325 le  GF_InCutTime (cڡ  v , 326 cڡ  idt = ACE_Ma ) 327 { cuime [ GridHrchy :: daghdex ( idt )][ v ] + dagh . time (lev,ident); } 329 le  GF_PviousTime (cڡ  v , 330 cڡ  idt = ACE_Ma ) const 331 {  cuime [ GridHrchy :: daghdex ( idt )][ v ] - 332 dagh . time ( v , idt ); } 334 le  GF_NextTime (cڡ  v , 335 cڡ  idt = ACE_Ma ) const 336 {  cuime [ dagh . daghdex ( idt )][ v ] + 337 dagh . time ( v , idt ); } 339 give : 354 public : 355 le  dagh_timevue (cڡ  t , 356 cڡ  l , 357 cڡ  idt = ACE_Ma ) const 358 {  (( t - time__d )* dagh . time ( l , idt ) + 359 dagh . gCutTime ( l , idt )); } 361 le  dagh_timedex (cڡ  t , 362 cڡ  l , 363 cڡ  idt = ACE_Ma ) const 364 {  ( time_s [(( t - dagh . gCutTime ( l , idt ))/dagh. time (l,ident)) 365 + time__d ]); } 371 gpublic : 372 le  GF_SBoundyVue (cڡ ACE_GFTy vue ) 373 { bvue = vue ; } 379 gpublic : 380  GF_SwTimeLevs (cڡ  l , cڡ  t1 , cڡ  t2 ); 381  GF_CyeTimeLevs (cڡ  l ); 387 gpublic : 388 le  n (cڡ {  ( ngth ); } 389 le GridDaBlock (3)< gACE_GFTy >& mygdb (cڡ  t , 390 cڡ  l , 391 cڡ  c ) 392 {  (* ggdb [ dagh_timedex ( t , l )][l][ c ]); } 394 le  exis (cڡ  t , 395 cڡ  l , 396 cڡ  c ) const 397 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ] != 398 ( GridDaBlock (3)< ACE_GFTy > *) NULL && 399 gdb [ dagh_timedex ( t , l )][l][ c ]-> dexme (c)); } 401 le  comm () const 402 {  ( gcomm_ag ! ACENoComm ); } 403 le  comm (cڡ  t , 404 cڡ  l ) const 405 {  ( gcomm_ag != ACENoComm ) && 406 ( comm_ag != ACECommCutTimeOy || 407 t == dagh_timedex ( dagh . gCutTime ( l ),l)); } 409 le  () const 410 {  g_ag = ACETrue ; } 411 le  uxes () const 412 {  gux_ag = ACETrue ; } 413 le  uxes (cڡ  t , cڡ  l ) const 414 {  gux_ag = ACETrue ; } 422 give : 423  GF_RdDa (cڡ  time ); 424  GF_RdDa (cڡ  time , cڡ  v ); 425  GF_RdDa (cڡ  time , GridDa (3)< ACE_GFTy >& to ); 431 gpublic : 432 #ifde ACEVeGridFuni 433 le  GF_GhPt (cڡ  time , 434 cڡ  v , 435 cڡ  idt ) 437 GF_GWrePt ( time , v , ACEA , idt ); 438 GF_GRdPt ( time , v , ACEA , idt ); 440 le  GF_SPt (cڡ  time , 441 cڡ  v , 442 cڡ  idt ) 444 GF_SWrePt ( time , v , ACEA , idt ); 445 GF_SRdPt ( time , v , ACEA , idt ); 449 le  GF_GhPt (cڡ  time , 450 cڡ  v , 451 #ifde ACEVeGridFuni 452 cڡ  m , 454 cڡ  idt ) 456 #ifde ACEVeGridFuni 457 GF_GWrePt ( time , v , m , idt ); 458 GF_GRdPt ( time , v , m , idt ); 460 GF_GWrePt ( time , v , idt ); 461 GF_GRdPt ( time , v , idt ); 465  GF_GWrePt (cڡ  time , 466 cڡ  v , 467 #ifde ACEVeGridFuni 468 cڡ  m , 470 cڡ  idt ); 472  GF_GRdPt (cڡ  time , 473 cڡ  v , 474 #ifde ACEVeGridFuni 475 cڡ  m , 477 cڡ  idt ); 479 le  GF_SPt (cڡ  time , 480 cڡ  v , 481 #ifde ACEVeGridFuni 482 cڡ  m , 484 cڡ  idt ) 486 #ifde ACEVeGridFuni 487 GF_SWrePt ( time , v , m , idt ); 488 GF_SRdPt ( time , v , m , idt ); 490 GF_SWrePt ( time , v , idt ); 491 GF_SRdPt ( time , v , idt ); 495  GF_SWrePt (cڡ  time , 496 cڡ  v , 497 #ifde ACEVeGridFuni 498 cڡ  m , 500 cڡ  idt ); 502  GF_SRdPt (cڡ  time , 503 cڡ  v , 504 #ifde ACEVeGridFuni 505 cڡ  m , 507 cڡ  idt ); 513 gpublic : 514 #ifde ACEVeGridFuni 515 le  GF_GhFluxes (cڡ  time , 516 cڡ  v , 517 cڡ  idt ) 519 GF_WreFluxes ( time , v , ACEA , idt ); 520 GF_RdFluxes ( time , v , ACEA , idt ); 524 le  GF_GhFluxes (cڡ  time , 525 cڡ  v , 526 #ifde ACEVeGridFuni 527 cڡ  m , 529 cڡ  idt ) 531 #ifde ACEVeGridFuni 532 GF_WreFluxes ( time , v , m , idt ); 533 GF_RdFluxes ( time , v , m , idt ); 535 GF_WreFluxes ( time , v , idt ); 536 GF_RdFluxes ( time , v , idt ); 540  GF_WreFluxes (cڡ  time , 541 cڡ  v , 542 #ifde ACEVeGridFuni 543 cڡ  m , 545 cڡ  idt ); 547  GF_RdFluxes (cڡ  time , 548 cڡ  v , 549 #ifde ACEVeGridFuni 550 cڡ  m , 552 cڡ  idt ); 557 give : 558  GF_IpGhos (cڡ  time , 559 cڡ  v , 560 cڡ  m , 561 cڡ  mgl , 562 cڡ  idt ); 563  GF_IpGhos (cڡ  time , 564 cڡ  v , 565 cڡ  m , 566 cڡ  mgl , 567 cڡ  axis , 568 cڡ  d , 569 cڡ  idt ); 571 gpublic : 572  GF_WreGhos (cڡ  time , 573 cڡ  v , 574 #ifde ACEVeGridFuni 575 cڡ  m , 577 cڡ  idt ); 578  GF_WreGhos (cڡ  time , 579 cڡ  v , 580 #ifde ACEVeGridFuni 581 cڡ  m , 583 cڡ  mgl , 584 cڡ  idt ); 585  GF_WreGhos (cڡ  time , 586 cڡ  v , 587 #ifde ACEVeGridFuni 588 cڡ  m , 590 cڡ  axis , 591 cڡ  d , 592 cڡ  idt ); 593  GF_WreGhos (cڡ  time , 594 cڡ  v , 595 #ifde ACEVeGridFuni 596 cڡ  m , 598 cڡ  mgl , 599 cڡ  axis , 600 cڡ  d , 601 cڡ  idt ); 607  GF_RdGhos (cڡ  time , 608 cڡ  v , 609 #ifde ACEVeGridFuni 610 cڡ  m , 612 cڡ  idt ); 613  GF_RdGhos (cڡ  time , 614 cڡ  v , 615 #ifde ACEVeGridFuni 616 cڡ  m , 618 cڡ  mgl , 619 cڡ  idt ); 620  GF_RdGhos (cڡ  time , 621 cڡ  v , 622 #ifde ACEVeGridFuni 623 cڡ  m , 625 cڡ  axis , 626 cڡ  d , 627 cڡ  idt ); 628  GF_RdGhos (cڡ  time , 629 cڡ  v , 630 #ifde ACEVeGridFuni 631 cڡ  m , 633 cڡ  mgl , 634 cڡ  axis , 635 cڡ  d , 636 cڡ  idt ); 640 gpublic : 648 #ifde ACEVeGridFuni 649 le  GF_Sync (cڡ  time , 650 cڡ  v , 651 cڡ  idt ) 653 GF_WreGhos ( time , v , ACEA , idt ); 654 GF_RdGhos ( time , v , ACEA , idt ); 658 le  GF_Sync (cڡ  time , 659 cڡ  v , 660 #ifde ACEVeGridFuni 661 cڡ  m , 663 cڡ  idt ) 665 #ifde ACEVeGridFuni 666 GF_WreGhos ( time , v , m , idt ); 667 GF_RdGhos ( time , v , m , idt ); 669 GF_WreGhos ( time , v , idt ); 670 GF_RdGhos ( time , v , idt ); 674 le  GF_Sync (cڡ  time , 675 cڡ  v , 676 #ifde ACEVeGridFuni 677 cڡ  m , 679 cڡ  mgl , 680 cڡ  idt ) 682 #ifde ACEVeGridFuni 683 GF_WreGhos ( time , v , m , mgl , idt ); 684 GF_RdGhos ( time , v , m , mgl , idt ); 686 GF_WreGhos ( time , v , mgl , idt ); 687 GF_RdGhos ( time , v , mgl , idt ); 691 le  GF_Sync (cڡ  time , 692 cڡ  v , 693 #ifde ACEVeGridFuni 694 cڡ  m , 696 cڡ  axis , 697 cڡ  d , 698 cڡ  idt ) 700 #ifde ACEVeGridFuni 701 GF_WreGhos ( time , v , m , axis , d , idt ); 702 GF_RdGhos ( time , v , m , axis , d , idt ); 704 GF_WreGhos ( time , v , axis , d , idt ); 705 GF_RdGhos ( time , v , axis , d , idt ); 709 le  GF_Sync (cڡ  time , 710 cڡ  v , 711 #ifde ACEVeGridFuni 712 cڡ  m , 714 cڡ  mgl , 715 cڡ  axis , 716 cڡ  d , 717 cڡ  idt ) 719 #ifde ACEVeGridFuni 720 GF_WreGhos ( time , v , m , mgl , axis , d , idt ); 721 GF_RdGhos ( time , v , m , mgl , axis , d , idt ); 723 GF_WreGhos ( time , v , mgl , axis , d , idt ); 724 GF_RdGhos ( time , v , mgl , axis , d , idt ); 732 gpublic : 733  GF_In (cڡ  time , 734 cڡ  v , 735 GF_TYPE * gs =0, 736 cڡ  t =0, 737 cڡ  idt = ACE_Ma ); 738  GF_In (cڡ  time , 739 cڡ  v , 740 cڡ BBox & bb , 741 GF_TYPE * gs =0, 742 cڡ  t =0, 743 cڡ  idt = ACE_Ma ); 745  GF_Upde (cڡ  time_om , 746 cڡ  time_to , 747 cڡ  v , 748 GF_TYPE * gs =0, 749 cڡ  t =0, 750 cڡ  idt = ACE_Ma ); 751  GF_Upde (cڡ  time_om , 752 cڡ  time_to , 753 cڡ  v , 754 cڡ BBox & bb , 755 GF_TYPE * gs =0, 756 cڡ  t =0, 757 cڡ  idt = ACE_Ma ); 759  GF_Prg (cڡ  tf , 760 cڡ  lf , 761 cڡ  , 762 cڡ  , 763 #ifde ACEVeGridFuni 764 cڡ  m = ACEA , 766 GF_TYPE * gs =0, 767 cڡ  t =0, 768 cڡ  idt = ACE_Ma ); 769  GF_Prg (cڡ  tf , 770 cڡ  lf , 771 cڡ  , 772 cڡ  , 773 cڡ BBox & bb , 774 #ifde ACEVeGridFuni 775 cڡ  m = ACEA , 777 GF_TYPE * gs =0, 778 cڡ  t =0, 779 cڡ  idt = ACE_Ma ); 781  GF_Reri (cڡ  tf , 782 cڡ  lf , 783 cڡ  , 784 cڡ  , 785 #ifde ACEVeGridFuni 786 cڡ  m = ACEA , 788 GF_TYPE * gs =0, 789 cڡ  t =0, 790 cڡ  idt = ACE_Ma ); 791  GF_Reri (cڡ  tf , 792 cڡ  lf , 793 cڡ  , 794 cڡ  , 795 cڡ BBox & bb , 796 #ifde ACEVeGridFuni 797 cڡ  m = ACEA , 799 GF_TYPE * gs =0, 800 cڡ  t =0, 801 cڡ  idt = ACE_Ma ); 803  GF_IO (cڡ  time , 804 cڡ  v , 805 GF_TYPE * gs =0, 806 cڡ  t =0, 807 cڡ  idt = ACE_Ma ); 808  GF_IO (cڡ  time , 809 cڡ  v , 810 cڡ BBox & bb , 811 GF_TYPE * gs =0, 812 cڡ  t =0, 813 cڡ  idt = ACE_Ma ); 819  GF_BndryUpde (cڡ  t , 820 cڡ  l , 824 GF_TYPE * gs , 825 cڡ  t , 826 cڡ  idt ); 827  GF_BndryUpde (cڡ  t , 828 cڡ  l , 832 cڡ  mgl , 833 GF_TYPE * gs , 834 cڡ  t , 835 cڡ  idt ); 837  GF_DoAdtBndryUpde ( GridDaBlock (3)< ACE_GFTy > &, 838 GridDaBlock (3)< ACE_GFTy > &, 839 GridDaBlock (3)< ACE_GFTy > &, 840 cڡ  ac , 844 GF_TYPE * gs , 845 cڡ  t , 846 cڡ  idt ); 848  GF_DoAdtBndryUpde ( GridDaBlock (3)< ACE_GFTy > &, 849 GridDaBlock (3)< ACE_GFTy > &, 850 GridDaBlock (3)< ACE_GFTy > &, 851 cڡ  ac , 855 cڡ  mgl , 856 GF_TYPE * gs , 857 cڡ  t , 858 cڡ  idt ); 864  boundy_ag (cڡ  t , 865 cڡ  l , 866 cڡ  c , 867 cڡ  d ) const 868 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gbndryags [ d ]); } 870 cڡ * boundy_ag (cڡ  t , 871 cڡ  l , 872 cڡ  c ) const 873 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gbndryags ); } 879 le cڡ gBBox & dabbox (cڡ  t , 880 cڡ  l , 881 cڡ  c , 882 cڡ  idt = ACE_Ma ) const 883 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt )); } 884 le BBox dabbox (cڡ  t , 885 cڡ  l , 886 cڡ  c , 887 cڡ  idt = ACE_Ma ) 888 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt )); } 890 le cڡ gBBox & dabbox (cڡ  t , 891 cڡ  l , 892 cڡ  c , 893 cڡ  mgl , 894 cڡ  idt ) const 895 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt , mgl )); } 896 le BBox dabbox (cڡ  t , 897 cڡ  l , 898 cڡ  c , 899 cڡ  mgl , 900 cڡ  idt ) 901 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> boundgbox ( idt , mgl )); } 903 le cڡ gBBox & ribbox (cڡ  t , 904 cڡ  l , 905 cڡ  c , 906 cڡ  idt = ACE_Ma ) const 907 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt )); } 908 le BBox ribbox (cڡ  t , 909 cڡ  l , 910 cڡ  c , 911 cڡ  idt = ACE_Ma ) 912 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt )); } 914 le cڡ gBBox & ribbox (cڡ  t , 915 cڡ  l , 916 cڡ  c , 917 cڡ  mgl , 918 cڡ  idt ) const 919 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt , mgl )); } 920 le BBox ribbox (cڡ  t , 921 cڡ  l , 922 cڡ  c , 923 cڡ  mgl , 924 cڡ  idt ) 925 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> ribox ( idt , mgl )); } 927 le cڡ gBBox & bndrybbox (cڡ  t , 928 cڡ  l , 929 cڡ  c , 930 cڡ  d , 931 cڡ  idt = ACE_Ma ) const 932 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt )); } 933 le BBox bndrybbox (cڡ  t , 934 cڡ  l , 935 cڡ  c , 936 cڡ  d , 937 cڡ  idt = ACE_Ma ) 938 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt )); } 940 le cڡ gBBox & bndrybbox (cڡ  t , 941 cڡ  l , 942 cڡ  c , 943 cڡ  d , 944 cڡ  mgl , 945 cڡ  idt ) const 946 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt , mgl )); } 947 le BBox bndrybbox (cڡ  t , 948 cڡ  l , 949 cڡ  c , 950 cڡ  d , 951 cڡ  mgl , 952 cڡ  idt ) 953 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> bndrybox ( d , idt , mgl )); } 955 le cڡ gBBox & mgedbbox (cڡ  t , 956 cڡ  l , 957 cڡ  c , 958 cڡ  idt = ACE_Ma ) const 959 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> mgedbox ( idt )); } 960 le BBox mgedbbox (cڡ  t , 961 cڡ  l , 962 cڡ  c , 963 cڡ  idt = ACE_Ma ) 964 {  ( gdb [ dagh_timedex ( t , l )][l][ c ]-> mgedbox ( idt )); } 966  tbboxli ( BBoxLi & bbl , 967 cڡ  l , 968 cڡ  idt = ACE_Ma ); 969  tbboxli ( BBoxLi & bbl , 970 cڡ  l , 971 cڡ  mgl , 972 cڡ  idt ); 974  dabboxli ( BBoxLi & bbl , 975 cڡ  l , 976 cڡ  idt = ACE_Ma ); 977  dabboxli ( BBoxLi & bbl , 978 cڡ  l , 979 cڡ  mgl , 980 cڡ  idt ); 982  mgedbboxli ( BBoxLi & bbl , 983 cڡ  l , 984 cڡ  idt = ACE_Ma ); 990 le GridDa (3)< gACE_GFTy > cڡ & ݔ ((cڡ  gt , 991 cڡ  gl , 992 cڡ  gc , 993 cڡ  gidt ) const 994 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , ACENu )); } 996 le GridDa (3)< gACE_GFTy > & ݔ ((cڡ  gt , 997 cڡ  gl , 998 cڡ  gc , 999 cڡ  gidt ) 1000 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , ACENu )); } 1002 le GridDa (3)< gACE_GFTy > cڡ & ݔ ((cڡ  gt , 1003 cڡ  gl , 1004 cڡ  gc , 1005 cڡ  gmgl , 1006 cڡ  gidt ) const 1007 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , mgl )); } 1009 le GridDa (3)< gACE_GFTy > & ݔ ((cڡ  gt , 1010 cڡ  gl , 1011 cڡ  gc , 1012 cڡ  gmgl , 1013 cڡ  gidt ) 1014 {  ( ggdb [ dagh_timedex ( t , l )][l][ c ]-> gridda ( idt , mgl )); } 1020  GF_SupShadow (cڡ  time , cڡ  v ); 1021  GF_RShadow (cڡ  time , cڡ  v ); 1027  GF_SupMuiGrid (cڡ  time , 1028 cڡ  v , 1029 cڡ  mglc , 1030 cڡ  mglf , 1031 cڡ  idt ); 1032  GF_SupMuiGrid (cڡ  time , 1033 cڡ  v , 1034 cڡ  axis , 1035 cڡ  mglc , 1036 cڡ  mglf , 1037 cڡ  idt ); 1038  GF_RMuiGrid (cڡ  time , 1039 cڡ  v , 1040 cڡ  idt ); 1046  GF_Fl (cڡ ACE_GFTy & v , 1047 cڡ  time , 1048 cڡ  v , 1049 cڡ  idt = ACE_Ma ); 1050  GF_Fl (cڡ ACE_GFTy & v , 1051 cڡ  time , 1052 cڡ  v , 1053 cڡ  mgl , 1054 cڡ  idt ); 1056  GF_Cy (cڡ  t1 , 1057 cڡ  l1 , 1058 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1059 cڡ  t2 , 1060 cڡ  l2 , 1061 cڡ BBox & whe , 1062 cڡ  idt = ACE_Ma ); 1063  GF_Cy (cڡ  t1 , 1064 cڡ  l1 , 1065 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1066 cڡ  t2 , 1067 cڡ  l2 , 1068 cڡ  idt = ACE_Ma ); 1070  GF_equs (cڡ  t , 1071 cڡ  l , 1072 cڡ BBox & whe , 1073 cڡ ACE_GFTy & v , 1074 cڡ  idt = ACE_Ma ); 1075  GF_equs (cڡ  t , 1076 cڡ  l , 1077 cڡ ACE_GFTy & v , 1078 cڡ  idt = ACE_Ma ); 1079  GF_equs (cڡ  t1 , 1080 cڡ  l1 , 1081 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1082 cڡ  t2 , 1083 cڡ  l2 , 1084 cڡ BBox & whe , 1085 cڡ  idt = ACE_Ma ); 1086  GF_equs (cڡ  t1 , 1087 cڡ  l1 , 1088 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1089 cڡ  t2 , 1090 cڡ  l2 , 1091 cڡ  idt = ACE_Ma ); 1093  GF_us (cڡ  t , 1094 cڡ  l , 1095 cڡ BBox & whe , 1096 cڡ ACE_GFTy & v , 1097 cڡ  idt = ACE_Ma ); 1098  GF_us (cڡ  t , 1099 cڡ  l , 1100 cڡ ACE_GFTy & v , 1101 cڡ  idt = ACE_Ma ); 1102  GF_us (cڡ  t1 , 1103 cڡ  l1 , 1104 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1105 cڡ  t2 , 1106 cڡ  l2 , 1107 cڡ BBox & whe , 1108 cڡ  idt = ACE_Ma ); 1109  GF_us (cڡ  t1 , 1110 cڡ  l1 , 1111 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1112 cڡ  t2 , 1113 cڡ  l2 , 1114 cڡ  idt = ACE_Ma ); 1116  GF_mus (cڡ  t , 1117 cڡ  l , 1118 cڡ BBox & whe , 1119 cڡ ACE_GFTy & v , 1120 cڡ  idt = ACE_Ma ); 1121  GF_mus (cڡ  t , 1122 cڡ  l , 1123 cڡ ACE_GFTy & v , 1124 cڡ  idt = ACE_Ma ); 1125  GF_mus (cڡ  t1 , 1126 cڡ  l1 , 1127 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1128 cڡ  t2 , 1129 cڡ  l2 , 1130 cڡ BBox & whe , 1131 cڡ  idt = ACE_Ma ); 1132  GF_mus (cڡ  t1 , 1133 cڡ  l1 , 1134 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1135 cڡ  t2 , 1136 cڡ  l2 , 1137 cڡ  idt = ACE_Ma ); 1139  GF_muɝly (cڡ  t , 1140 cڡ  l , 1141 cڡ BBox & whe , 1142 cڡ ACE_GFTy & v , 1143 cڡ  idt = ACE_Ma ); 1144  GF_muɝly (cڡ  t , 1145 cڡ  l , 1146 cڡ ACE_GFTy & v , 1147 cڡ  idt = ACE_Ma ); 1148  GF_muɝly (cڡ  t1 , 1149 cڡ  l1 , 1150 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1151 cڡ  t2 , 1152 cڡ  l2 , 1153 cڡ BBox & whe , 1154 cڡ  idt = ACE_Ma ); 1155  GF_muɝly (cڡ  t1 , 1156 cڡ  l1 , 1157 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1158 cڡ  t2 , 1159 cڡ  l2 , 1160 cڡ  idt = ACE_Ma ); 1162  GF_divide (cڡ  t , 1163 cڡ  l , 1164 cڡ BBox & whe , 1165 cڡ ACE_GFTy & v , 1166 cڡ  idt = ACE_Ma ); 1167  GF_divide (cڡ  t , 1168 cڡ  l , 1169 cڡ ACE_GFTy & v , 1170 cڡ  idt = ACE_Ma ); 1171  GF_divide (cڡ  t1 , 1172 cڡ  l1 , 1173 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1174 cڡ  t2 , 1175 cڡ  l2 , 1176 cڡ BBox & whe , 1177 cڡ  idt = ACE_Ma ); 1178  GF_divide (cڡ  t1 , 1179 cڡ  l1 , 1180 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1181 cڡ  t2 , 1182 cڡ  l2 , 1183 cڡ  idt = ACE_Ma ); 1189  GF_gh_e (cڡ  t1 , 1190 cڡ  l1 , 1191 cڡ BBox & to , 1192 cڡ BBox & om , 1193 GridDa (3)< ACE_GFTy >& to , 1194 cڡ  , 1195 cڡ  idt = ACE_Ma , 1196 cڡ ACE_GFTy defv =(ACE_GFType)0); 1198  GF_Cy (cڡ  t1 , 1199 cڡ  l1 , 1200 cڡ GridFuni (3)< ACE_GFTy >& rhs , 1201 cڡ  t2 , 1202 cڡ  l2 , 1203 cڡ BBox & to , 1204 cڡ BBox & om , 1205 cڡ  idt = ACE_Ma ); 1243 ACE_GFTy GF_maxv (cڡ  t , 1244 cڡ  l , 1245 #ifde ACEVeGridFuni 1246 cڡ  m , 1248 cڡ  idt = ACE_Ma ); 1249 ACE_GFTy GF_maxv (cڡ  t , 1250 cڡ  l , 1251 #ifde ACEVeGridFuni 1252 cڡ  m , 1254 cڡ BBox & whe , 1255 cڡ  idt = ACE_Ma ); 1256 ACE_GFTy GF_maxv (cڡ  t , 1257 cڡ  l , 1258 #ifde ACEVeGridFuni 1259 cڡ  m , 1261 cڡ  lmg , 1262 cڡ  idt ); 1263 ACE_GFTy GF_maxv (cڡ  t , 1264 cڡ  l , 1265 #ifde ACEVeGridFuni 1266 cڡ  m , 1268 cڡ  lmg , 1269 cڡ BBox & whe , 1270 cڡ  idt ); 1272 ACE_GFTy GF_mv (cڡ  t , 1273 cڡ  l , 1274 #ifde ACEVeGridFuni 1275 cڡ  m , 1277 cڡ  idt = ACE_Ma ); 1278 ACE_GFTy GF_mv (cڡ  t , 1279 cڡ  l , 1280 #ifde ACEVeGridFuni 1281 cڡ  m , 1283 cڡ BBox & whe , 1284 cڡ  idt = ACE_Ma ); 1285 ACE_GFTy GF_mv (cڡ  t , 1286 cڡ  l , 1287 #ifde ACEVeGridFuni 1288 cڡ  m , 1290 cڡ  lmg , 1291 cڡ  idt ); 1292 ACE_GFTy GF_mv (cڡ  t , 1293 cڡ  l , 1294 #ifde ACEVeGridFuni 1295 cڡ  m , 1297 cڡ  lmg , 1298 cڡ BBox & whe , 1299 cڡ  idt ); 1301 ACE_GFTy GF_sum (cڡ  t , 1302 cڡ  l , 1303 #ifde ACEVeGridFuni 1304 cڡ  m , 1306 cڡ  idt = ACE_Ma ); 1307 ACE_GFTy GF_sum (cڡ  t , 1308 cڡ  l , 1309 #ifde ACEVeGridFuni 1310 cڡ  m , 1312 cڡ BBox & whe , 1313 cڡ  idt = ACE_Ma ); 1314 ACE_GFTy GF_sum (cڡ  t , 1315 cڡ  l , 1316 #ifde ACEVeGridFuni 1317 cڡ  m , 1319 cڡ  lmg , 1320 cڡ  idt ); 1321 ACE_GFTy GF_sum (cڡ  t , 1322 cڡ  l , 1323 #ifde ACEVeGridFuni 1324 cڡ  m , 1326 cڡ  lmg , 1327 cڡ BBox & whe , 1328 cڡ  idt ); 1330 ACE_GFTy GF_odu (cڡ  t , 1331 cڡ  l , 1332 #ifde ACEVeGridFuni 1333 cڡ  m , 1335 cڡ  idt = ACE_Ma ); 1336 ACE_GFTy GF_odu (cڡ  t , 1337 cڡ  l , 1338 #ifde ACEVeGridFuni 1339 cڡ  m , 1341 cڡ BBox & whe , 1342 cڡ  idt = ACE_Ma ); 1343 ACE_GFTy GF_odu (cڡ  t , 1344 cڡ  l , 1345 #ifde ACEVeGridFuni 1346 cڡ  m , 1348 cڡ  lmg , 1349 cڡ  idt ); 1350 ACE_GFTy GF_odu (cڡ  t , 1351 cڡ  l , 1352 #ifde ACEVeGridFuni 1353 cڡ  m , 1355 cڡ  lmg , 1356 cڡ BBox & whe , 1357 cڡ  idt ); 1359 ACE_GFTy GF_nm2 (cڡ  t , 1360 cڡ  l , 1361 #ifde ACEVeGridFuni 1362 cڡ  m , 1364 cڡ  idt = ACE_Ma ); 1365 ACE_GFTy GF_nm2 (cڡ  t , 1366 cڡ  l , 1367 #ifde ACEVeGridFuni 1368 cڡ  m , 1370 cڡ BBox & whe , 1371 cڡ  idt = ACE_Ma ); 1372 ACE_GFTy GF_nm2 (cڡ  t , 1373 cڡ  l , 1374 #ifde ACEVeGridFuni 1375 cڡ  m , 1377 cڡ  lmg , 1378 cڡ  idt ); 1379 ACE_GFTy GF_nm2 (cڡ  t , 1380 cڡ  l , 1381 #ifde ACEVeGridFuni 1382 cڡ  m , 1384 cڡ  lmg , 1385 cڡ BBox & whe , 1386 cڡ  idt ); 1392  GF_Wre (cڡ  t , 1393 cڡ  l , 1394 #ifde ACEVeGridFuni 1395 cڡ  m , 1397 cڡ  mgl , 1398 cڡ  idt , 1399 cڡ  gfdty ); 1400 le  GF_Wre (cڡ  t , 1401 cڡ  l , 1402 #ifde ACEVeGridFuni 1403 cڡ  m , 1405 cڡ  gfdty ) 1406 { GF_Wre ( t , l , 1407 #ifde ACEVeGridFuni 1408 m , 1410 ACENu , ACE_Ma , gfdty ); } 1411 le  GF_Wre (cڡ  t , 1412 cڡ  l , 1413 #ifde ACEVeGridFuni 1414 cڡ  m , 1416 cڡ  mgl , 1417 cڡ  gfdty ) 1418 {( gmgl >0? GF_Wre ( t , l , 1419 #ifde ACEVeGridFuni 1420 m , 1422 mgl , ACE_Ma , gfdty ) : 1423 GF_Wre ( t , l , 1424 #ifde ACEVeGridFuni 1425 m , 1427 ACENu , mgl , gfdty ); } 1429  GF_Wre (cڡ  t , 1430 cڡ  l , 1431 #ifde ACEVeGridFuni 1432 cڡ  m , 1434 cڡ  mgl , 1435 cڡ  idt , 1436 cڡ BBox & whe , 1437 cڡ  gfdty ); 1438 le  GF_Wre (cڡ  t , 1439 cڡ  l , 1440 #ifde ACEVeGridFuni 1441 cڡ  m , 1443 cڡ BBox & whe , 1444 cڡ  gfdty ) 1445 { GF_Wre ( t , l , 1446 #ifde ACEVeGridFuni 1447 m , 1449 ACENu , ACE_Ma , whe , gfdty ); } 1450 le  GF_Wre (cڡ  t , 1451 cڡ  l , 1452 #ifde ACEVeGridFuni 1453 cڡ  m , 1455 cڡ  mgl , 1456 cڡ BBox & whe , 1457 cڡ  gfdty ) 1458 {( gmgl >0? GF_Wre ( t , l , 1459 #ifde ACEVeGridFuni 1460 m , 1462 mgl , ACE_Ma , whe , gfdty ) : 1463 GF_Wre ( t , l , 1464 #ifde ACEVeGridFuni 1465 m , 1467 ACENu , 1468 mgl , 1469 whe , 1470 gfdty ); } 1472  GF_Rd (cڡ  t , 1473 cڡ  l , 1474 #ifde ACEVeGridFuni 1475 cڡ  m , 1477 cڡ  mgl , 1478 cڡ  idt , 1479 cڡ  gfdty ); 1480 le  GF_Rd (cڡ  t , 1481 cڡ  l , 1482 #ifde ACEVeGridFuni 1483 cڡ  m , 1485 cڡ  gfdty ) 1486 { GF_Rd ( t , l , 1487 #ifde ACEVeGridFuni 1488 m , 1490 ACENu , ACE_Ma , gfdty ); } 1491 le  GF_Rd (cڡ  t , 1492 cڡ  l , 1493 #ifde ACEVeGridFuni 1494 cڡ  m , 1496 cڡ  mgl , 1497 cڡ  gfdty ) 1498 {( gmgl >0? GF_Rd ( t , l , 1499 #ifde ACEVeGridFuni 1500 m , 1502 mgl , ACE_Ma , gfdty ) : 1503 GF_Rd ( t , l , ACENu , 1504 #ifde ACEVeGridFuni 1505 m , 1507 mgl , gfdty ); } 1509  GF_Rd (cڡ  t , 1510 cڡ  l , 1511 #ifde ACEVeGridFuni 1512 cڡ  m , 1514 cڡ  mgl , 1515 cڡ  idt , 1516 cڡ BBox & whe , 1517 cڡ  gfdty ); 1518 le  GF_Rd (cڡ  t , 1519 cڡ  l , 1520 #ifde ACEVeGridFuni 1521 cڡ  m , 1523 cڡ BBox & whe , 1524 cڡ  gfdty ) 1525 { GF_Rd ( t , l , 1526 #ifde ACEVeGridFuni 1527 m , 1529 ACENu , ACE_Ma , whe , gfdty ); } 1530 le  GF_Rd (cڡ  t , 1531 cڡ  l , 1532 #ifde ACEVeGridFuni 1533 cڡ  m , 1535 cڡ  mgl , 1536 cڡ BBox & whe , 1537 cڡ  gfdty ) 1538 {( gmgl >0? GF_Rd ( t , l , 1539 #ifde ACEVeGridFuni 1540 m , 1542 mgl , ACE_Ma , whe , gfdty ) : 1543 GF_Rd ( t , l , 1544 #ifde ACEVeGridFuni 1545 m , 1547 ACENu , mgl , whe , gfdty ); } 1553  GF_GUCDDa (cڡ ACEUCD (3)& daghucd , 1554 cڡ  t , 1555 ACE_GFTy *& ucdda , 1556 cڡ  ucdrv ); 1560  GF_Vw (cڡ  t , 1561 cڡ  l , 1562 #ifde ACEVeGridFuni 1563 cڡ  m , 1565 cڡ  axis , 1566 cڡ BBox & whe , 1567 cڡ  prv , 1568 cڡ  ty , 1569 cڡ * xg , 1570 cڡ * drv , 1571 cڡ  idt = ACE_Ma ); 1577 goam & GF_DebugPrtDa ( oam & os , 1578 cڡ  t , 1579 cڡ  l , 1580 cڡ  idt ); 1581 goam & GF_DebugPrtIDa ( oam & os , 1582 cڡ  t , 1583 cڡ  l , 1584 cڡ  idt ); 1585 goam & GF_DebugPrtDaBlk ( oam & os , 1586 cڡ  time , 1587 cڡ  v ); 1588 goam & GF_DebugPrtTheDa ( oam & os ); 1592 #ifde DICE 1594  SObjDesti (); 1595  SObjVws (); 1596  SObjCommds (); 1597  SFuniPors (); 1598  GF_GDaSli (cڡ  tim , 1599 cڡ  v , 1600 #ifde ACEVeGridFuni 1601 cڡ  m , 1603 cڡ BBox & whe , 1604 * bufr , 1605 cڡ  idim , 1606 cڡ  prv , 1607 cڡ  idt ); 1608  GF_GMaxV (cڡ  tim , 1609 cڡ  v , 1610 #ifde ACEVeGridFuni 1611 cڡ  m , 1613 * bufr , 1614 cڡ  idt ); 1615  GF_GMV (cڡ  tim , 1616 cڡ  v , 1617 #ifde ACEVeGridFuni 1618 cڡ  m , 1620 * bufr , 1621 cڡ  idt ); 1622  GF_GNm (cڡ  tim , 1623 cڡ  v , 1624 #ifde ACEVeGridFuni 1625 cڡ  m , 1627 * bufr , 1628 cڡ  idt ); 1632 #ifde DICE 1635 * GF3VwXSli ( DICEBaObje *); 1636 * GF3VwYSli ( DICEBaObje *); 1637 * GF3VwZSli ( DICEBaObje *); 1638 * GF3VwXYSli ( DICEBaObje *); 1639 * GF3VwYZSli ( DICEBaObje *); 1640 * GF3VwXZSli ( DICEBaObje *); 1641 * GF3VwMaxV ( DICEBaObje *); 1642 * GF3VwMV ( DICEBaObje *); 1643 * GF3VwNm ( DICEBaObje *); 1650 #i defed ( Wt_c_fes ) 1651  ~"GridFuni3.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionBndry1.h 1 #ide _uded_GridFuniBndry1_c 2  #_uded_GridFuniBndry1_c ) 18 gme < ass gACE_GFTy > 19  GridFuni (1)< gACE_GFTy >:: $GF_BndryUpde (cڡ  time , 20 cڡ  v , 21 GF_TYPE * gs , cڡ  t , 22 cڡ  idt ) 24 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 25 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 27 cڡ  m = ACEA ; 28 #ifde ACEVeGridFuni 29 * vgfag = w [ nems ]; 30  vgfi =0;vgfi< nems ;vgfi++) 31 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 34 cڡ  mygc = t ; 35 ACE_GFTy tmrgs [1]; 36 ACE_GFTy * mygs = 0; 37 i( gs =0 mygs = tmrgs ; 38 mygs = gs ; 40  bag = 0; 41  ri =0;i<2* gk ;i++ bag | bwidth [ri]; 43 i( bag == 0) ; 45 cڡ t = `dagh_timedex ( time , v ); 46 cڡ l = v ; 49 i( l > 0 && `adtiveboundy (&& `adtbndry_upde ()) { 51 cڡ  tf = dagh . `gCutTime ( l ); 52 cڡ  tc = dagh . `gCutTime ( l -1); 53 cڡ  sf = dagh . `time ( l ); 54 cڡ  sc = dagh . `time ( l -1); 56 i( t > 0) { 57  tim , timeb , timec ; 59 i( time < tc ) { 60 tim = tc ; 61 timeb = time - sf ; 62 timec = tc - sc ; 64 i( time = tc && upded = ACENextTime ) { 65 tim = tc + sc ; 66 timeb = time - sf ; 67 timec = tc ; 69 i( time = tc && upded = ACECutTime ) { 70 tim = tc ; 71 timeb = time - sf ; 72 timec = tc - sc ; 75 tim = tc + sc ; 76 timeb = time - sf ; 77 timec = tc ; 80 cڡ  ac = 1.0*( time - timeb )/( tim -timeb); 81 cڡ  emac = 1.0 - ac ; 82 cڡ  Cac = 1.0*( time - timec )/( sc ); 83 cڡ  OMusCac = 1.0 - Cac ; 84 cڡ  lm = `dagh_timedex ( tim , l -1); 85 cڡ  tb = `dagh_timedex ( timeb , l ); 86 cڡ  m = `dagh_timedex ( timec , l -1); 88  i ; 89  i =0; i< ngth ; i++) { 90 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && 91 gdb [ m ][ l -1][ i ] && gdb[ lm ][l-1][i] ) { 93 `GridDa (1)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt ); 94 `GridDa (1)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 95 `GridDa (1)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt ); 96 `GridDa (1)< ACE_GFTy > & m = gdb [ m ][ l -1][ i ]-> `gridda ( idt ); 99 i( ag && 100 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 101 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 102 i( pfunc ) { 104  b =0; b< gk ; b++) { 105 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 108 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 109 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 110 #ifde ACEVeGridFuni 111 vgfag , 113 mygs ,& mygc ); 114 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 117 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 118 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 119 #ifde ACEVeGridFuni 120 vgfag , 122 mygs ,& mygc ); 126 i( time > 0 && tiag ) { 128 `GridDa (1)< ACE_GFTy > `dup ( ); 130  b =0; b< gk ; b++) { 131  imes2 = 2* b ; 132 i( func ) { 133 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 134 (* func )( `FORTRAN_ARGS ( ), 135 `FORTRAN_ARGS ( pbl ),& emac , 136 `FORTRAN_ARGS ( dup ),& ac , 137 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt )) 138 #ifde ACEVeGridFuni 139 , vgfag 143 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 144 (* func )( `FORTRAN_ARGS ( ), 145 `FORTRAN_ARGS ( pbl ),& emac , 146 `FORTRAN_ARGS ( dup ),& ac , 147 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt )) 148 #ifde ACEVeGridFuni 149 , vgfag 155 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 156 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 157 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt ), m ); 159 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 160 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 161 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt ), m ); 169 i( abfunc && 170 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 171 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 173  b =0; b< gk ; b++) { 174 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 175 (* abfunc )( `FORTRAN_ARGS ( ), 176 `FORTRAN_ARGS ( lm ),& Cac , 177 `FORTRAN_ARGS ( m ),& OMusCac , 178 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 179 mygs ,& mygc ); 180 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 181 (* abfunc )( `FORTRAN_ARGS ( ), 182 `FORTRAN_ARGS ( lm ),& Cac , 183 `FORTRAN_ARGS ( m ),& OMusCac , 184 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 185 mygs ,& mygc ); 192  i =0; i< ngth ; i++) { 193 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i) && gdb[t][l-1][i]) { 195 `GridDa (1)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 196 `GridDa (1)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt ); 199 i( ag && 200 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 201 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 203 i( pfunc ) { 205  b =0; b< gk ; b++) { 206 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 209 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 210 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 211 #ifde ACEVeGridFuni 212 vgfag , 214 mygs ,& mygc ); 215 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 218 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 219 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 220 #ifde ACEVeGridFuni 221 vgfag , 223 mygs ,& mygc ); 229 i( abfunc && 230 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 231 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 233  Cac = 0.0; 234  lm = t ; 235 i( time__d > 0 && gdb [ t +1][ l -1][ i ]) { 236 Cac = 1.0*( time - `dagh_timevue ( t , l -1))/( sc ); 237 lm = t +1; 240 lm = t ; 242 `GridDa (1)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt ); 243 cڡ  OMusCac = 1.0 - Cac ; 246  b =0; b< gk ; b++) { 247 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 248 (* abfunc )( `FORTRAN_ARGS ( ), 249 `FORTRAN_ARGS ( lm ),& Cac , 250 `FORTRAN_ARGS ( m ),& OMusCac , 251 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 252 mygs ,& mygc ); 253 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 254 (* abfunc )( `FORTRAN_ARGS ( ), 255 `FORTRAN_ARGS ( lm ),& Cac , 256 `FORTRAN_ARGS ( m ),& OMusCac , 257 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 258 mygs ,& mygc ); 267 i( `exboundy (&& `bndry_upde ()) { 270 i( `boundy_ty (= ACEBoundyUrDef && bfunc ) { 271  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 272 `GridDa (1)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 274  b =0; b< gk ; b++) { 275 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 276 (* bfunc )( `FORTRAN_ARGS ( u ), 277 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu )), 278 mygs ,& mygc ); 279 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 280 (* bfunc )( `FORTRAN_ARGS ( u ), 281 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu )), 282 mygs ,& mygc ); 288 i( `boundy_ty (= ACEBoundyShi ) { 289  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 290 `GridDa (1)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 291  b =0; b< gk ; b++) { 292 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 293 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu ), 294 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu ),b,1)); 295 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 296 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu ), 297 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu ),b,-1)); 303 i( `boundy_ty (= ACEBoundyRegur ) { 304  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 305 `GridDa (1)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 306  b =0; b< gk ; b++) { 307 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 308 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu )); 309 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 310 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu )); 316 i( `boundy_ty (= ACEBoundyPiodic ) { 317 `as (0); 322 `as (0); 326 #ifde ACEVeGridFuni 327 i( vgfag de [] vgfflag; 329 } } 331 gme < ass gACE_GFTy > 332  GridFuni (1)< gACE_GFTy >:: $GF_BndryUpde (cڡ  time , 333 cڡ  v , 334 cڡ  mgl , 335 GF_TYPE * gs , cڡ  t , 336 cڡ  idt ) 338 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 339 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 341 cڡ  m = ACEA ; 342 #ifde ACEVeGridFuni 343 * vgfag = w [ nems ]; 344  vgfi =0;vgfi< nems ;vgfi++) 345 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 348 cڡ  mygc = t ; 349 ACE_GFTy tmrgs [1]; 350 ACE_GFTy * mygs = 0; 351 i( gs =0 mygs = tmrgs ; 352 mygs = gs ; 354  bag = 0; 355  ri =0;i<2* gk ;i++ bag | bwidth [ri]; 357 i( bag == 0) ; 359 cڡ t = `dagh_timedex ( time , v ); 360 cڡ l = v ; 363 i( l > 0 && `adtiveboundy (&& `adtbndry_upde ()) { 365 cڡ  tf = dagh . `gCutTime ( l ); 366 cڡ  tc = dagh . `gCutTime ( l -1); 367 cڡ  sf = dagh . `time ( l ); 368 cڡ  sc = dagh . `time ( l -1); 370 i( t > 0) { 371  tim , timeb , timec ; 373 i( time < tc ) { 374 tim = tc ; 375 timeb = time - sf ; 376 timec = tc - sc ; 378 i( time = tc && upded = ACENextTime ) { 379 tim = tc + sc ; 380 timeb = time - sf ; 381 timec = tc ; 383 i( time = tc && upded = ACECutTime ) { 384 tim = tc ; 385 timeb = time - sf ; 386 timec = tc - sc ; 389 tim = tc + sc ; 390 timeb = time - sf ; 391 timec = tc ; 394 cڡ  ac = 1.0*( time - timeb )/( tim -timeb); 395 cڡ  emac = 1.0 - ac ; 396 cڡ  Cac = 1.0*( time - timec )/( sc ); 397 cڡ  OMusCac = 1.0 - Cac ; 398 cڡ  lm = `dagh_timedex ( tim , l -1); 399 cڡ  tb = `dagh_timedex ( timeb , l ); 400 cڡ  m = `dagh_timedex ( timec , l -1); 402  i ; 403  i =0; i< ngth ; i++) { 404 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && 405 gdb [ m ][ l -1][ i ] && gdb[ lm ][l-1][i] ) { 407 `GridDa (1)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 408 `GridDa (1)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 409 `GridDa (1)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt , mgl ); 410 `GridDa (1)< ACE_GFTy > & m = gdb [ m ][ l -1][ i ]-> `gridda ( idt , mgl ); 413 i( ag && 414 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 415 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 416 i( pfunc ) { 418  b =0; b< gk ; b++) { 419 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 422 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 423 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 424 #ifde ACEVeGridFuni 425 vgfag , 427 mygs ,& mygc ); 428 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 431 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 432 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 433 #ifde ACEVeGridFuni 434 vgfag , 436 mygs ,& mygc ); 440 i( time > 0 && tiag ) { 442 `GridDa (1)< ACE_GFTy > `dup ( ); 444  b =0; b< gk ; b++) { 445  imes2 = 2* b ; 446 i( func ) { 447 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 448 (* func )( `FORTRAN_ARGS ( ), 449 `FORTRAN_ARGS ( pbl ),& emac , 450 `FORTRAN_ARGS ( dup ),& ac , 451 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt , mgl )) 452 #ifde ACEVeGridFuni 453 , vgfag 457 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 458 (* func )( `FORTRAN_ARGS ( ), 459 `FORTRAN_ARGS ( pbl ),& emac , 460 `FORTRAN_ARGS ( dup ),& ac , 461 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt , mgl )) 462 #ifde ACEVeGridFuni 463 , vgfag 469 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 470 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 471 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt , mgl ), m ); 473 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 474 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 475 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt , mgl ), m ); 483 i( abfunc && 484 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 485 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 487  b =0; b< gk ; b++) { 488 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 489 (* abfunc )( `FORTRAN_ARGS ( ), 490 `FORTRAN_ARGS ( lm ),& Cac , 491 `FORTRAN_ARGS ( m ),& OMusCac , 492 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 493 mygs ,& mygc ); 494 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 495 (* abfunc )( `FORTRAN_ARGS ( ), 496 `FORTRAN_ARGS ( lm ),& Cac , 497 `FORTRAN_ARGS ( m ),& OMusCac , 498 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 499 mygs ,& mygc ); 506  i =0; i< ngth ; i++) { 507 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i) && gdb[t][l-1][i]) { 509 `GridDa (1)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 510 `GridDa (1)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 513 i( ag && 514 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 515 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 517 i( pfunc ) { 519  b =0; b< gk ; b++) { 520 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 523 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 524 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 525 #ifde ACEVeGridFuni 526 vgfag , 528 mygs ,& mygc ); 529 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 532 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 533 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 534 #ifde ACEVeGridFuni 535 vgfag , 537 mygs ,& mygc ); 543 i( abfunc && 544 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 545 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 547  Cac = 0.0; 548  lm = t ; 549 i( time__d > 0 && gdb [ t +1][ l -1][ i ]) { 550 Cac = 1.0*( time - `dagh_timevue ( t , l -1))/( sc ); 551 lm = t +1; 554 lm = t ; 556 `GridDa (1)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt , mgl ); 557 cڡ  OMusCac = 1.0 - Cac ; 560  b =0; b< gk ; b++) { 561 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 562 (* abfunc )( `FORTRAN_ARGS ( ), 563 `FORTRAN_ARGS ( lm ),& Cac , 564 `FORTRAN_ARGS ( m ),& OMusCac , 565 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 566 mygs ,& mygc ); 567 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 568 (* abfunc )( `FORTRAN_ARGS ( ), 569 `FORTRAN_ARGS ( lm ),& Cac , 570 `FORTRAN_ARGS ( m ),& OMusCac , 571 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 572 mygs ,& mygc ); 581 i( `exboundy (&& `bndry_upde ()) { 584 i( `boundy_ty (= ACEBoundyUrDef && bfunc ) { 585  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 586 `GridDa (1)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 588  b =0; b< gk ; b++) { 589 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 590 (* bfunc )( `FORTRAN_ARGS ( u ), 591 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 592 mygs ,& mygc ); 593 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 594 (* bfunc )( `FORTRAN_ARGS ( u ), 595 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 596 mygs ,& mygc ); 602 i( `boundy_ty (= ACEBoundyShi ) { 603  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 604 `GridDa (1)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 605  b =0; b< gk ; b++) { 606 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 607 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl ), 608 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl ),b,1)); 609 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 610 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl ), 611 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl ),b,-1)); 617 i( `boundy_ty (= ACEBoundyRegur ) { 618  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 619 `GridDa (1)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 620  b =0; b< gk ; b++) { 621 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 622 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )); 623 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 624 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )); 630 i( `boundy_ty (= ACEBoundyPiodic ) { 631 `as (0); 636 `as (0); 639 #ifde ACEVeGridFuni 640 i( vgfag de [] vgfflag; 642 } } 644 gme < ass gACE_GFTy > 645  GridFuni (1)< gACE_GFTy >:: GF_DoAdtBndryUpde ( 646 GridDaBlock (1)< ACE_GFTy > & gdb_pbl , 647 GridDaBlock (1)< ACE_GFTy > & gdb_lm , 648 GridDaBlock (1)< ACE_GFTy > & gdb_ , 649 cڡ  ac , 650 GF_TYPE * gs , cڡ  t , 651 cڡ  idt ) 653 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 654 cڡ  gtiag = ( idt = ACE_Ma ? timeީe (: shadow_timeީe (); 656 cڡ  gm = ACEA ; 657 #ifde ACEVeGridFuni 658 * gvgfag = w [ nems ]; 659  gvgfi =0;vgfi< gnems ;vgfi++) 660 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 663 cڡ  gmygc = t ; 664 ACE_GFTy gtmrgs [1]; 665 ACE_GFTy * gmygs = 0; 666 i( ggs =0 mygs = tmrgs ; 667 gmygs = gs ; 669 cڡ  gemac = 1.0 - ac ; 671  gbag = 0; 672  gri =0;i<2* ggk ;i++ gbag | bwidth [ ri ]; 674 i( gbag =0 || ! adtbndry_upde (|| ! ag ) ; 676 GridDa (1)< gACE_GFTy > & gpbl = gdb_pbl . gridda ( idt , ACENu ); 677 GridDa (1)< gACE_GFTy > & glm = gdb_lm . gridda ( idt , ACENu ); 678 GridDa (1)< gACE_GFTy > & g = gdb_ . gridda ( idt , ACENu ); 680 i( gpfunc ) { 682  gb =0; b< ggk ; b++) { 683 i( ggdb_ . has_adtiveboundy (2* b ) 686 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 687 BOUNDING_BOX ( gdb_ . bndrybox (2* b , idt , ACENu )), 688 #ifde ACEVeGridFuni 689 gvgfag , 691 gmygs ,& gmygc ); 692 i( ggdb_ . has_adtiveboundy (2* b +1) 695 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 696 BOUNDING_BOX ( gdb_ . bndrybox (2* b +1, idt , ACENu )), 697 #ifde ACEVeGridFuni 698 gvgfag , 700 gmygs ,& gmygc ); 704 i( gtiag ) { 707 GridDa (1)< gACE_GFTy > dup ( ); 708  gb =0; b< ggk ; b++) { 709  gimes2 = 2* b ; 710 i( gfunc ) { 711 i( ggdb_ . has_adtiveboundy ( imes2 )) { 712 (* gfunc )( FORTRAN_ARGS ( ), 713 FORTRAN_ARGS ( pbl ),& gemac , 714 FORTRAN_ARGS ( dup ),& gac , 715 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 , idt , ACENu )) 716 #ifde ACEVeGridFuni 717 , gvgfag 721 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 722 (* gfunc )( FORTRAN_ARGS ( ), 723 FORTRAN_ARGS ( pbl ),& gemac , 724 FORTRAN_ARGS ( dup ),& gac , 725 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 +1, idt , ACENu )) 726 #ifde ACEVeGridFuni 727 , gvgfag 733 i( ggdb_ . has_adtiveboundy ( imes2 )) { 734 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 735 gdb_ . bndrybox ( imes2 , idt , ACENu ), m ); 737 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 738 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 739 gdb_ . bndrybox ( imes2 +1, idt , ACENu ), m ); 744 #ifde ACEVeGridFuni 745 i( gvgfag gde [] vgfflag; 749 gme < ass gACE_GFTy > 750  GridFuni (1)< gACE_GFTy >:: GF_DoAdtBndryUpde ( 751 GridDaBlock (1)< ACE_GFTy > & gdb_pbl , 752 GridDaBlock (1)< ACE_GFTy > & gdb_lm , 753 GridDaBlock (1)< ACE_GFTy > & gdb_ , 754 cڡ  ac , 755 cڡ  mgl , 756 GF_TYPE * gs , cڡ  t , 757 cڡ  idt ) 759 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 760 cڡ  gtiag = ( idt = ACE_Ma ? timeީe (: shadow_timeީe (); 762 cڡ  gm = ACEA ; 763 #ifde ACEVeGridFuni 764 * gvgfag = w [ nems ]; 765  gvgfi =0;vgfi< gnems ;vgfi++) 766 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 769 cڡ  gmygc = t ; 770 ACE_GFTy gtmrgs [1]; 771 ACE_GFTy * gmygs = 0; 772 i( ggs =0 mygs = tmrgs ; 773 gmygs = gs ; 775 cڡ  gemac = 1.0 - ac ; 777  gbag = 0; 778  gri =0;i<2* ggk ;i++ gbag | bwidth [ ri ]; 780 i( gbag =0 || ! adtbndry_upde (|| ! ag ) ; 782 GridDa (1)< gACE_GFTy > & gpbl = gdb_pbl . gridda ( idt , mgl ); 783 GridDa (1)< gACE_GFTy > & glm = gdb_lm . gridda ( idt , mgl ); 784 GridDa (1)< gACE_GFTy > & g = gdb_ . gridda ( idt , mgl ); 786 i( gpfunc ) { 788  gb =0; b< ggk ; b++) { 789 i( ggdb_ . has_adtiveboundy (2* b ) 792 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 793 BOUNDING_BOX ( gdb_ . bndrybox (2* b , idt , mgl )), 794 #ifde ACEVeGridFuni 795 gvgfag , 797 gmygs ,& gmygc ); 798 i( ggdb_ . has_adtiveboundy (2* b +1) 801 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 802 BOUNDING_BOX ( gdb_ . bndrybox (2* b +1, idt , mgl )), 803 #ifde ACEVeGridFuni 804 gvgfag , 806 gmygs ,& gmygc ); 810 i( gtiag ) { 813 GridDa (1)< gACE_GFTy > dup ( ); 814  gb =0; b< ggk ; b++) { 815  gimes2 = 2* b ; 817 i( gfunc ) { 818 i( ggdb_ . has_adtiveboundy ( imes2 )) { 819 (* gfunc )( FORTRAN_ARGS ( ), 820 FORTRAN_ARGS ( pbl ),& gemac , 821 FORTRAN_ARGS ( dup ),& gac , 822 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 , idt , mgl )) 823 #ifde ACEVeGridFuni 824 , gvgfag 828 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 829 (* gfunc )( FORTRAN_ARGS ( ), 830 FORTRAN_ARGS ( pbl ),& gemac , 831 FORTRAN_ARGS ( dup ),& gac , 832 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 +1, idt , mgl )) 833 #ifde ACEVeGridFuni 834 , gvgfag 840 i( ggdb_ . has_adtiveboundy ( imes2 )) { 841 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 842 gdb_ . bndrybox ( imes2 , idt , mgl ), m ); 844 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 845 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 846 gdb_ . bndrybox ( imes2 +1, idt , mgl ), m ); 851 #ifde ACEVeGridFuni 852 i( gvgfag gde [] vgfflag; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionBndry2.h 1 #ide _uded_GridFuniBndry2_c 2  #_uded_GridFuniBndry2_c ) 18 gme < ass gACE_GFTy > 19  GridFuni (2)< gACE_GFTy >:: $GF_BndryUpde (cڡ  time , 20 cڡ  v , 21 GF_TYPE * gs , cڡ  t , 22 cڡ  idt ) 24 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 25 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 27 cڡ  m = ACEA ; 28 #ifde ACEVeGridFuni 29 * vgfag = w [ nems ]; 30  vgfi =0;vgfi< nems ;vgfi++) 31 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 34 cڡ  mygc = t ; 35 ACE_GFTy tmrgs [1]; 36 ACE_GFTy * mygs = 0; 37 i( gs =0 mygs = tmrgs ; 38 mygs = gs ; 40  bag = 0; 41  ri =0;i<2* gk ;i++ bag | bwidth [ri]; 43 i( bag == 0) ; 45 cڡ t = `dagh_timedex ( time , v ); 46 cڡ l = v ; 49 i( l > 0 && `adtiveboundy (&& `adtbndry_upde ()) { 51 cڡ  tf = dagh . `gCutTime ( l ); 52 cڡ  tc = dagh . `gCutTime ( l -1); 53 cڡ  sf = dagh . `time ( l ); 54 cڡ  sc = dagh . `time ( l -1); 56 i( t > 0) { 57  tim , timeb , timec ; 59 i( time < tc ) { 60 tim = tc ; 61 timeb = time - sf ; 62 timec = tc - sc ; 64 i( time = tc && upded = ACENextTime ) { 65 tim = tc + sc ; 66 timeb = time - sf ; 67 timec = tc ; 69 i( time = tc && upded = ACECutTime ) { 70 tim = tc ; 71 timeb = time - sf ; 72 timec = tc - sc ; 75 tim = tc + sc ; 76 timeb = time - sf ; 77 timec = tc ; 80 cڡ  ac = 1.0*( time - timeb )/( tim -timeb); 81 cڡ  emac = 1.0 - ac ; 82 cڡ  Cac = 1.0*( time - timec )/( sc ); 83 cڡ  OMusCac = 1.0 - Cac ; 84 cڡ  lm = `dagh_timedex ( tim , l -1); 85 cڡ  tb = `dagh_timedex ( timeb , l ); 86 cڡ  m = `dagh_timedex ( timec , l -1); 88  i ; 89  i =0; i< ngth ; i++) { 90 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && 91 gdb [ m ][ l -1][ i ] && gdb[ lm ][l-1][i] ) { 93 `GridDa (2)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt ); 94 `GridDa (2)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 95 `GridDa (2)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt ); 96 `GridDa (2)< ACE_GFTy > & m = gdb [ m ][ l -1][ i ]-> `gridda ( idt ); 99 i( ag && 100 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 101 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 102 i( pfunc ) { 104  b =0; b< gk ; b++) { 105 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 108 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 109 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 110 #ifde ACEVeGridFuni 111 vgfag , 113 mygs ,& mygc ); 114 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 117 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 118 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 119 #ifde ACEVeGridFuni 120 vgfag , 122 mygs ,& mygc ); 126 i( time > 0 && tiag ) { 128 `GridDa (2)< ACE_GFTy > `dup ( ); 130  b =0; b< gk ; b++) { 131  imes2 = 2* b ; 132 i( func ) { 133 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 134 (* func )( `FORTRAN_ARGS ( ), 135 `FORTRAN_ARGS ( pbl ),& emac , 136 `FORTRAN_ARGS ( dup ),& ac , 137 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt )) 138 #ifde ACEVeGridFuni 139 , vgfag 143 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 144 (* func )( `FORTRAN_ARGS ( ), 145 `FORTRAN_ARGS ( pbl ),& emac , 146 `FORTRAN_ARGS ( dup ),& ac , 147 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt )) 148 #ifde ACEVeGridFuni 149 , vgfag 155 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 156 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 157 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt ), m ); 159 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 160 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 161 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt ), m ); 169 i( abfunc && 170 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 171 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 173  b =0; b< gk ; b++) { 174 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 175 (* abfunc )( `FORTRAN_ARGS ( ), 176 `FORTRAN_ARGS ( lm ),& Cac , 177 `FORTRAN_ARGS ( m ),& OMusCac , 178 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 179 mygs ,& mygc ); 180 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 181 (* abfunc )( `FORTRAN_ARGS ( ), 182 `FORTRAN_ARGS ( lm ),& Cac , 183 `FORTRAN_ARGS ( m ),& OMusCac , 184 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 185 mygs ,& mygc ); 192  i =0; i< ngth ; i++) { 193 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i) && gdb[t][l-1][i]) { 195 `GridDa (2)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 196 `GridDa (2)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt ); 199 i( ag && 200 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 201 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 203 i( pfunc ) { 205  b =0; b< gk ; b++) { 206 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 209 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 210 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 211 #ifde ACEVeGridFuni 212 vgfag , 214 mygs ,& mygc ); 215 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 218 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 219 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 220 #ifde ACEVeGridFuni 221 vgfag , 223 mygs ,& mygc ); 229 i( abfunc && 230 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 231 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 233  Cac = 0.0; 234  lm = t ; 235 i( time__d > 0 && gdb [ t +1][ l -1][ i ]) { 236 Cac = 1.0*( time - `dagh_timevue ( t , l -1))/( sc ); 237 lm = t +1; 240 lm = t ; 242 `GridDa (2)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt ); 243 cڡ  OMusCac = 1.0 - Cac ; 246  b =0; b< gk ; b++) { 247 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 248 (* abfunc )( `FORTRAN_ARGS ( ), 249 `FORTRAN_ARGS ( lm ),& Cac , 250 `FORTRAN_ARGS ( m ),& OMusCac , 251 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 252 mygs ,& mygc ); 253 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 254 (* abfunc )( `FORTRAN_ARGS ( ), 255 `FORTRAN_ARGS ( lm ),& Cac , 256 `FORTRAN_ARGS ( m ),& OMusCac , 257 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 258 mygs ,& mygc ); 267 i( `exboundy (&& `bndry_upde ()) { 270 i( `boundy_ty (= ACEBoundyUrDef && bfunc ) { 271  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 272 `GridDa (2)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 274  b =0; b< gk ; b++) { 275 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 276 (* bfunc )( `FORTRAN_ARGS ( u ), 277 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu )), 278 mygs ,& mygc ); 279 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 280 (* bfunc )( `FORTRAN_ARGS ( u ), 281 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu )), 282 mygs ,& mygc ); 288 i( `boundy_ty (= ACEBoundyShi ) { 289  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 290 `GridDa (2)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 291  b =0; b< gk ; b++) { 292 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 293 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu ), 294 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu ),b,1)); 295 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 296 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu ), 297 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu ),b,-1)); 303 i( `boundy_ty (= ACEBoundyRegur ) { 304  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 305 `GridDa (2)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 306  b =0; b< gk ; b++) { 307 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 308 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu )); 309 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 310 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu )); 316 i( `boundy_ty (= ACEBoundyPiodic ) { 317 `as (0); 322 `as (0); 326 #ifde ACEVeGridFuni 327 i( vgfag de [] vgfflag; 329 } } 331 gme < ass gACE_GFTy > 332  GridFuni (2)< gACE_GFTy >:: $GF_BndryUpde (cڡ  time , 333 cڡ  v , 334 cڡ  mgl , 335 GF_TYPE * gs , cڡ  t , 336 cڡ  idt ) 338 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 339 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 341 cڡ  m = ACEA ; 342 #ifde ACEVeGridFuni 343 * vgfag = w [ nems ]; 344  vgfi =0;vgfi< nems ;vgfi++) 345 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 348 cڡ  mygc = t ; 349 ACE_GFTy tmrgs [1]; 350 ACE_GFTy * mygs = 0; 351 i( gs =0 mygs = tmrgs ; 352 mygs = gs ; 354  bag = 0; 355  ri =0;i<2* gk ;i++ bag | bwidth [ri]; 357 i( bag == 0) ; 359 cڡ t = `dagh_timedex ( time , v ); 360 cڡ l = v ; 363 i( l > 0 && `adtiveboundy (&& `adtbndry_upde ()) { 365 cڡ  tf = dagh . `gCutTime ( l ); 366 cڡ  tc = dagh . `gCutTime ( l -1); 367 cڡ  sf = dagh . `time ( l ); 368 cڡ  sc = dagh . `time ( l -1); 370 i( t > 0) { 371  tim , timeb , timec ; 373 i( time < tc ) { 374 tim = tc ; 375 timeb = time - sf ; 376 timec = tc - sc ; 378 i( time = tc && upded = ACENextTime ) { 379 tim = tc + sc ; 380 timeb = time - sf ; 381 timec = tc ; 383 i( time = tc && upded = ACECutTime ) { 384 tim = tc ; 385 timeb = time - sf ; 386 timec = tc - sc ; 389 tim = tc + sc ; 390 timeb = time - sf ; 391 timec = tc ; 394 cڡ  ac = 1.0*( time - timeb )/( tim -timeb); 395 cڡ  emac = 1.0 - ac ; 396 cڡ  Cac = 1.0*( time - timec )/( sc ); 397 cڡ  OMusCac = 1.0 - Cac ; 398 cڡ  lm = `dagh_timedex ( tim , l -1); 399 cڡ  tb = `dagh_timedex ( timeb , l ); 400 cڡ  m = `dagh_timedex ( timec , l -1); 402  i ; 403  i =0; i< ngth ; i++) { 404 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && 405 gdb [ m ][ l -1][ i ] && gdb[ lm ][l-1][i] ) { 407 `GridDa (2)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 408 `GridDa (2)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 409 `GridDa (2)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt , mgl ); 410 `GridDa (2)< ACE_GFTy > & m = gdb [ m ][ l -1][ i ]-> `gridda ( idt , mgl ); 413 i( ag && 414 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 415 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 416 i( pfunc ) { 418  b =0; b< gk ; b++) { 419 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 422 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 423 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 424 #ifde ACEVeGridFuni 425 vgfag , 427 mygs ,& mygc ); 428 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 431 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 432 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 433 #ifde ACEVeGridFuni 434 vgfag , 436 mygs ,& mygc ); 440 i( time > 0 && tiag ) { 442 `GridDa (2)< ACE_GFTy > `dup ( ); 444  b =0; b< gk ; b++) { 445  imes2 = 2* b ; 446 i( func ) { 447 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 448 (* func )( `FORTRAN_ARGS ( ), 449 `FORTRAN_ARGS ( pbl ),& emac , 450 `FORTRAN_ARGS ( dup ),& ac , 451 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt , mgl )) 452 #ifde ACEVeGridFuni 453 , vgfag 457 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 458 (* func )( `FORTRAN_ARGS ( ), 459 `FORTRAN_ARGS ( pbl ),& emac , 460 `FORTRAN_ARGS ( dup ),& ac , 461 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt , mgl )) 462 #ifde ACEVeGridFuni 463 , vgfag 469 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 470 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 471 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt , mgl ), m ); 473 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 474 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 475 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt , mgl ), m ); 483 i( abfunc && 484 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 485 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 487  b =0; b< gk ; b++) { 488 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 489 (* abfunc )( `FORTRAN_ARGS ( ), 490 `FORTRAN_ARGS ( lm ),& Cac , 491 `FORTRAN_ARGS ( m ),& OMusCac , 492 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 493 mygs ,& mygc ); 494 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 495 (* abfunc )( `FORTRAN_ARGS ( ), 496 `FORTRAN_ARGS ( lm ),& Cac , 497 `FORTRAN_ARGS ( m ),& OMusCac , 498 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 499 mygs ,& mygc ); 506  i =0; i< ngth ; i++) { 507 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i) && gdb[t][l-1][i]) { 509 `GridDa (2)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 510 `GridDa (2)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 513 i( ag && 514 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 515 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 517 i( pfunc ) { 519  b =0; b< gk ; b++) { 520 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 523 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 524 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 525 #ifde ACEVeGridFuni 526 vgfag , 528 mygs ,& mygc ); 529 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 532 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 533 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 534 #ifde ACEVeGridFuni 535 vgfag , 537 mygs ,& mygc ); 543 i( abfunc && 544 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 545 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 547  Cac = 0.0; 548  lm = t ; 549 i( time__d > 0 && gdb [ t +1][ l -1][ i ]) { 550 Cac = 1.0*( time - `dagh_timevue ( t , l -1))/( sc ); 551 lm = t +1; 554 lm = t ; 556 `GridDa (2)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt , mgl ); 557 cڡ  OMusCac = 1.0 - Cac ; 560  b =0; b< gk ; b++) { 561 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 562 (* abfunc )( `FORTRAN_ARGS ( ), 563 `FORTRAN_ARGS ( lm ),& Cac , 564 `FORTRAN_ARGS ( m ),& OMusCac , 565 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 566 mygs ,& mygc ); 567 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 568 (* abfunc )( `FORTRAN_ARGS ( ), 569 `FORTRAN_ARGS ( lm ),& Cac , 570 `FORTRAN_ARGS ( m ),& OMusCac , 571 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 572 mygs ,& mygc ); 581 i( `exboundy (&& `bndry_upde ()) { 584 i( `boundy_ty (= ACEBoundyUrDef && bfunc ) { 585  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 586 `GridDa (2)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 588  b =0; b< gk ; b++) { 589 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 590 (* bfunc )( `FORTRAN_ARGS ( u ), 591 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 592 mygs ,& mygc ); 593 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 594 (* bfunc )( `FORTRAN_ARGS ( u ), 595 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 596 mygs ,& mygc ); 602 i( `boundy_ty (= ACEBoundyShi ) { 603  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 604 `GridDa (2)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 605  b =0; b< gk ; b++) { 606 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 607 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl ), 608 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl ),b,1)); 609 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 610 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl ), 611 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl ),b,-1)); 617 i( `boundy_ty (= ACEBoundyRegur ) { 618  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 619 `GridDa (2)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 620  b =0; b< gk ; b++) { 621 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 622 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )); 623 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 624 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )); 630 i( `boundy_ty (= ACEBoundyPiodic ) { 631 `as (0); 636 `as (0); 639 #ifde ACEVeGridFuni 640 i( vgfag de [] vgfflag; 642 } } 644 gme < ass gACE_GFTy > 645  GridFuni (2)< gACE_GFTy >:: GF_DoAdtBndryUpde ( 646 GridDaBlock (2)< ACE_GFTy > & gdb_pbl , 647 GridDaBlock (2)< ACE_GFTy > & gdb_lm , 648 GridDaBlock (2)< ACE_GFTy > & gdb_ , 649 cڡ  ac , 650 GF_TYPE * gs , cڡ  t , 651 cڡ  idt ) 653 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 654 cڡ  gtiag = ( idt = ACE_Ma ? timeީe (: shadow_timeީe (); 656 cڡ  gm = ACEA ; 657 #ifde ACEVeGridFuni 658 * gvgfag = w [ nems ]; 659  gvgfi =0;vgfi< gnems ;vgfi++) 660 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 663 cڡ  gmygc = t ; 664 ACE_GFTy gtmrgs [1]; 665 ACE_GFTy * gmygs = 0; 666 i( ggs =0 mygs = tmrgs ; 667 gmygs = gs ; 669 cڡ  gemac = 1.0 - ac ; 671  gbag = 0; 672  gri =0;i<2* ggk ;i++ gbag | bwidth [ ri ]; 674 i( gbag =0 || ! adtbndry_upde (|| ! ag ) ; 676 GridDa (2)< gACE_GFTy > & gpbl = gdb_pbl . gridda ( idt , ACENu ); 677 GridDa (2)< gACE_GFTy > & glm = gdb_lm . gridda ( idt , ACENu ); 678 GridDa (2)< gACE_GFTy > & g = gdb_ . gridda ( idt , ACENu ); 680 i( gpfunc ) { 682  gb =0; b< ggk ; b++) { 683 i( ggdb_ . has_adtiveboundy (2* b ) 686 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 687 BOUNDING_BOX ( gdb_ . bndrybox (2* b , idt , ACENu )), 688 #ifde ACEVeGridFuni 689 gvgfag , 691 gmygs ,& gmygc ); 692 i( ggdb_ . has_adtiveboundy (2* b +1) 695 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 696 BOUNDING_BOX ( gdb_ . bndrybox (2* b +1, idt , ACENu )), 697 #ifde ACEVeGridFuni 698 gvgfag , 700 gmygs ,& gmygc ); 704 i( gtiag ) { 707 GridDa (2)< gACE_GFTy > dup ( ); 708  gb =0; b< ggk ; b++) { 709  gimes2 = 2* b ; 710 i( gfunc ) { 711 i( ggdb_ . has_adtiveboundy ( imes2 )) { 712 (* gfunc )( FORTRAN_ARGS ( ), 713 FORTRAN_ARGS ( pbl ),& gemac , 714 FORTRAN_ARGS ( dup ),& gac , 715 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 , idt , ACENu )) 716 #ifde ACEVeGridFuni 717 , gvgfag 721 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 722 (* gfunc )( FORTRAN_ARGS ( ), 723 FORTRAN_ARGS ( pbl ),& gemac , 724 FORTRAN_ARGS ( dup ),& gac , 725 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 +1, idt , ACENu )) 726 #ifde ACEVeGridFuni 727 , gvgfag 733 i( ggdb_ . has_adtiveboundy ( imes2 )) { 734 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 735 gdb_ . bndrybox ( imes2 , idt , ACENu ), m ); 737 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 738 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 739 gdb_ . bndrybox ( imes2 +1, idt , ACENu ), m ); 744 #ifde ACEVeGridFuni 745 i( gvgfag gde [] vgfflag; 749 gme < ass gACE_GFTy > 750  GridFuni (2)< gACE_GFTy >:: GF_DoAdtBndryUpde ( 751 GridDaBlock (2)< ACE_GFTy > & gdb_pbl , 752 GridDaBlock (2)< ACE_GFTy > & gdb_lm , 753 GridDaBlock (2)< ACE_GFTy > & gdb_ , 754 cڡ  ac , 755 cڡ  mgl , 756 GF_TYPE * gs , cڡ  t , 757 cڡ  idt ) 759 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 760 cڡ  gtiag = ( idt = ACE_Ma ? timeީe (: shadow_timeީe (); 762 cڡ  gm = ACEA ; 763 #ifde ACEVeGridFuni 764 * gvgfag = w [ nems ]; 765  gvgfi =0;vgfi< gnems ;vgfi++) 766 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 769 cڡ  gmygc = t ; 770 ACE_GFTy gtmrgs [1]; 771 ACE_GFTy * gmygs = 0; 772 i( ggs =0 mygs = tmrgs ; 773 gmygs = gs ; 775 cڡ  gemac = 1.0 - ac ; 777  gbag = 0; 778  gri =0;i<2* ggk ;i++ gbag | bwidth [ ri ]; 780 i( gbag =0 || ! adtbndry_upde (|| ! ag ) ; 782 GridDa (2)< gACE_GFTy > & gpbl = gdb_pbl . gridda ( idt , mgl ); 783 GridDa (2)< gACE_GFTy > & glm = gdb_lm . gridda ( idt , mgl ); 784 GridDa (2)< gACE_GFTy > & g = gdb_ . gridda ( idt , mgl ); 786 i( gpfunc ) { 788  gb =0; b< ggk ; b++) { 789 i( ggdb_ . has_adtiveboundy (2* b ) 792 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 793 BOUNDING_BOX ( gdb_ . bndrybox (2* b , idt , mgl )), 794 #ifde ACEVeGridFuni 795 gvgfag , 797 gmygs ,& gmygc ); 798 i( ggdb_ . has_adtiveboundy (2* b +1) 801 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 802 BOUNDING_BOX ( gdb_ . bndrybox (2* b +1, idt , mgl )), 803 #ifde ACEVeGridFuni 804 gvgfag , 806 gmygs ,& gmygc ); 810 i( gtiag ) { 813 GridDa (2)< gACE_GFTy > dup ( ); 814  gb =0; b< ggk ; b++) { 815  gimes2 = 2* b ; 817 i( gfunc ) { 818 i( ggdb_ . has_adtiveboundy ( imes2 )) { 819 (* gfunc )( FORTRAN_ARGS ( ), 820 FORTRAN_ARGS ( pbl ),& gemac , 821 FORTRAN_ARGS ( dup ),& gac , 822 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 , idt , mgl )) 823 #ifde ACEVeGridFuni 824 , gvgfag 828 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 829 (* gfunc )( FORTRAN_ARGS ( ), 830 FORTRAN_ARGS ( pbl ),& gemac , 831 FORTRAN_ARGS ( dup ),& gac , 832 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 +1, idt , mgl )) 833 #ifde ACEVeGridFuni 834 , gvgfag 840 i( ggdb_ . has_adtiveboundy ( imes2 )) { 841 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 842 gdb_ . bndrybox ( imes2 , idt , mgl ), m ); 844 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 845 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 846 gdb_ . bndrybox ( imes2 +1, idt , mgl ), m ); 851 #ifde ACEVeGridFuni 852 i( gvgfag gde [] vgfflag; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionBndry3.h 1 #ide _uded_GridFuniBndry3_c 2  #_uded_GridFuniBndry3_c ) 18 gme < ass gACE_GFTy > 19  GridFuni (3)< gACE_GFTy >:: $GF_BndryUpde (cڡ  time , 20 cڡ  v , 21 GF_TYPE * gs , cڡ  t , 22 cڡ  idt ) 24 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 25 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 27 cڡ  m = ACEA ; 28 #ifde ACEVeGridFuni 29 * vgfag = w [ nems ]; 30  vgfi =0;vgfi< nems ;vgfi++) 31 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 34 cڡ  mygc = t ; 35 ACE_GFTy tmrgs [1]; 36 ACE_GFTy * mygs = 0; 37 i( gs =0 mygs = tmrgs ; 38 mygs = gs ; 40  bag = 0; 41  ri =0;i<2* gk ;i++ bag | bwidth [ri]; 43 i( bag == 0) ; 45 cڡ t = `dagh_timedex ( time , v ); 46 cڡ l = v ; 49 i( l > 0 && `adtiveboundy (&& `adtbndry_upde ()) { 51 cڡ  tf = dagh . `gCutTime ( l ); 52 cڡ  tc = dagh . `gCutTime ( l -1); 53 cڡ  sf = dagh . `time ( l ); 54 cڡ  sc = dagh . `time ( l -1); 56 i( t > 0) { 57  tim , timeb , timec ; 59 i( time < tc ) { 60 tim = tc ; 61 timeb = time - sf ; 62 timec = tc - sc ; 64 i( time = tc && upded = ACENextTime ) { 65 tim = tc + sc ; 66 timeb = time - sf ; 67 timec = tc ; 69 i( time = tc && upded = ACECutTime ) { 70 tim = tc ; 71 timeb = time - sf ; 72 timec = tc - sc ; 75 tim = tc + sc ; 76 timeb = time - sf ; 77 timec = tc ; 80 cڡ  ac = 1.0*( time - timeb )/( tim -timeb); 81 cڡ  emac = 1.0 - ac ; 82 cڡ  Cac = 1.0*( time - timec )/( sc ); 83 cڡ  OMusCac = 1.0 - Cac ; 84 cڡ  lm = `dagh_timedex ( tim , l -1); 85 cڡ  tb = `dagh_timedex ( timeb , l ); 86 cڡ  m = `dagh_timedex ( timec , l -1); 88  i ; 89  i =0; i< ngth ; i++) { 90 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && 91 gdb [ m ][ l -1][ i ] && gdb[ lm ][l-1][i] ) { 93 `GridDa (3)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt ); 94 `GridDa (3)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 95 `GridDa (3)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt ); 96 `GridDa (3)< ACE_GFTy > & m = gdb [ m ][ l -1][ i ]-> `gridda ( idt ); 99 i( ag && 100 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 101 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 102 i( pfunc ) { 104  b =0; b< gk ; b++) { 105 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 108 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 109 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 110 #ifde ACEVeGridFuni 111 vgfag , 113 mygs ,& mygc ); 114 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 117 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 118 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 119 #ifde ACEVeGridFuni 120 vgfag , 122 mygs ,& mygc ); 126 i( time > 0 && tiag ) { 128 `GridDa (3)< ACE_GFTy > `dup ( ); 130  b =0; b< gk ; b++) { 131  imes2 = 2* b ; 132 i( func ) { 133 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 134 (* func )( `FORTRAN_ARGS ( ), 135 `FORTRAN_ARGS ( pbl ),& emac , 136 `FORTRAN_ARGS ( dup ),& ac , 137 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt )) 138 #ifde ACEVeGridFuni 139 , vgfag 143 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 144 (* func )( `FORTRAN_ARGS ( ), 145 `FORTRAN_ARGS ( pbl ),& emac , 146 `FORTRAN_ARGS ( dup ),& ac , 147 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt )) 148 #ifde ACEVeGridFuni 149 , vgfag 155 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 156 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 157 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt ), m ); 159 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 160 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 161 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt ), m ); 169 i( abfunc && 170 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 171 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 173  b =0; b< gk ; b++) { 174 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 175 (* abfunc )( `FORTRAN_ARGS ( ), 176 `FORTRAN_ARGS ( lm ),& Cac , 177 `FORTRAN_ARGS ( m ),& OMusCac , 178 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 179 mygs ,& mygc ); 180 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 181 (* abfunc )( `FORTRAN_ARGS ( ), 182 `FORTRAN_ARGS ( lm ),& Cac , 183 `FORTRAN_ARGS ( m ),& OMusCac , 184 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 185 mygs ,& mygc ); 192  i =0; i< ngth ; i++) { 193 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i) && gdb[t][l-1][i]) { 195 `GridDa (3)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt ); 196 `GridDa (3)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt ); 199 i( ag && 200 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 201 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 203 i( pfunc ) { 205  b =0; b< gk ; b++) { 206 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 209 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 210 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 211 #ifde ACEVeGridFuni 212 vgfag , 214 mygs ,& mygc ); 215 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 218 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 219 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 220 #ifde ACEVeGridFuni 221 vgfag , 223 mygs ,& mygc ); 229 i( abfunc && 230 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 231 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 233  Cac = 0.0; 234  lm = t ; 235 i( time__d > 0 && gdb [ t +1][ l -1][ i ]) { 236 Cac = 1.0*( time - `dagh_timevue ( t , l -1))/( sc ); 237 lm = t +1; 240 lm = t ; 242 `GridDa (3)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt ); 243 cڡ  OMusCac = 1.0 - Cac ; 246  b =0; b< gk ; b++) { 247 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 248 (* abfunc )( `FORTRAN_ARGS ( ), 249 `FORTRAN_ARGS ( lm ),& Cac , 250 `FORTRAN_ARGS ( m ),& OMusCac , 251 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt )), 252 mygs ,& mygc ); 253 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 254 (* abfunc )( `FORTRAN_ARGS ( ), 255 `FORTRAN_ARGS ( lm ),& Cac , 256 `FORTRAN_ARGS ( m ),& OMusCac , 257 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt )), 258 mygs ,& mygc ); 267 i( `exboundy (&& `bndry_upde ()) { 270 i( `boundy_ty (= ACEBoundyUrDef && bfunc ) { 271  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 272 `GridDa (3)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 274  b =0; b< gk ; b++) { 275 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 276 (* bfunc )( `FORTRAN_ARGS ( u ), 277 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu )), 278 mygs ,& mygc ); 279 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 280 (* bfunc )( `FORTRAN_ARGS ( u ), 281 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu )), 282 mygs ,& mygc ); 288 i( `boundy_ty (= ACEBoundyShi ) { 289  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 290 `GridDa (3)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 291  b =0; b< gk ; b++) { 292 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 293 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu ), 294 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu ),b,1)); 295 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 296 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu ), 297 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu ),b,-1)); 303 i( `boundy_ty (= ACEBoundyRegur ) { 304  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 305 `GridDa (3)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , ACENu ); 306  b =0; b< gk ; b++) { 307 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 308 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , ACENu )); 309 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 310 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , ACENu )); 316 i( `boundy_ty (= ACEBoundyPiodic ) { 317 `as (0); 322 `as (0); 326 #ifde ACEVeGridFuni 327 i( vgfag de [] vgfflag; 329 } } 331 gme < ass gACE_GFTy > 332  GridFuni (3)< gACE_GFTy >:: $GF_BndryUpde (cڡ  time , 333 cڡ  v , 334 cڡ  mgl , 335 GF_TYPE * gs , cڡ  t , 336 cڡ  idt ) 338 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 339 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 341 cڡ  m = ACEA ; 342 #ifde ACEVeGridFuni 343 * vgfag = w [ nems ]; 344  vgfi =0;vgfi< nems ;vgfi++) 345 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 348 cڡ  mygc = t ; 349 ACE_GFTy tmrgs [1]; 350 ACE_GFTy * mygs = 0; 351 i( gs =0 mygs = tmrgs ; 352 mygs = gs ; 354  bag = 0; 355  ri =0;i<2* gk ;i++ bag | bwidth [ri]; 357 i( bag == 0) ; 359 cڡ t = `dagh_timedex ( time , v ); 360 cڡ l = v ; 363 i( l > 0 && `adtiveboundy (&& `adtbndry_upde ()) { 365 cڡ  tf = dagh . `gCutTime ( l ); 366 cڡ  tc = dagh . `gCutTime ( l -1); 367 cڡ  sf = dagh . `time ( l ); 368 cڡ  sc = dagh . `time ( l -1); 370 i( t > 0) { 371  tim , timeb , timec ; 373 i( time < tc ) { 374 tim = tc ; 375 timeb = time - sf ; 376 timec = tc - sc ; 378 i( time = tc && upded = ACENextTime ) { 379 tim = tc + sc ; 380 timeb = time - sf ; 381 timec = tc ; 383 i( time = tc && upded = ACECutTime ) { 384 tim = tc ; 385 timeb = time - sf ; 386 timec = tc - sc ; 389 tim = tc + sc ; 390 timeb = time - sf ; 391 timec = tc ; 394 cڡ  ac = 1.0*( time - timeb )/( tim -timeb); 395 cڡ  emac = 1.0 - ac ; 396 cڡ  Cac = 1.0*( time - timec )/( sc ); 397 cڡ  OMusCac = 1.0 - Cac ; 398 cڡ  lm = `dagh_timedex ( tim , l -1); 399 cڡ  tb = `dagh_timedex ( timeb , l ); 400 cڡ  m = `dagh_timedex ( timec , l -1); 402  i ; 403  i =0; i< ngth ; i++) { 404 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && 405 gdb [ m ][ l -1][ i ] && gdb[ lm ][l-1][i] ) { 407 `GridDa (3)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 408 `GridDa (3)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 409 `GridDa (3)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt , mgl ); 410 `GridDa (3)< ACE_GFTy > & m = gdb [ m ][ l -1][ i ]-> `gridda ( idt , mgl ); 413 i( ag && 414 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 415 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 416 i( pfunc ) { 418  b =0; b< gk ; b++) { 419 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 422 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 423 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 424 #ifde ACEVeGridFuni 425 vgfag , 427 mygs ,& mygc ); 428 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 431 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 432 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 433 #ifde ACEVeGridFuni 434 vgfag , 436 mygs ,& mygc ); 440 i( time > 0 && tiag ) { 442 `GridDa (3)< ACE_GFTy > `dup ( ); 444  b =0; b< gk ; b++) { 445  imes2 = 2* b ; 446 i( func ) { 447 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 448 (* func )( `FORTRAN_ARGS ( ), 449 `FORTRAN_ARGS ( pbl ),& emac , 450 `FORTRAN_ARGS ( dup ),& ac , 451 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt , mgl )) 452 #ifde ACEVeGridFuni 453 , vgfag 457 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 458 (* func )( `FORTRAN_ARGS ( ), 459 `FORTRAN_ARGS ( pbl ),& emac , 460 `FORTRAN_ARGS ( dup ),& ac , 461 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt , mgl )) 462 #ifde ACEVeGridFuni 463 , vgfag 469 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 )) { 470 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 471 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 , idt , mgl ), m ); 473 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy ( imes2 +1)) { 474 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 475 gdb [ t ][ l ][ i ]-> `bndrybox ( imes2 +1, idt , mgl ), m ); 483 i( abfunc && 484 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 485 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 487  b =0; b< gk ; b++) { 488 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 489 (* abfunc )( `FORTRAN_ARGS ( ), 490 `FORTRAN_ARGS ( lm ),& Cac , 491 `FORTRAN_ARGS ( m ),& OMusCac , 492 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 493 mygs ,& mygc ); 494 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 495 (* abfunc )( `FORTRAN_ARGS ( ), 496 `FORTRAN_ARGS ( lm ),& Cac , 497 `FORTRAN_ARGS ( m ),& OMusCac , 498 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 499 mygs ,& mygc ); 506  i =0; i< ngth ; i++) { 507 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i) && gdb[t][l-1][i]) { 509 `GridDa (3)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 510 `GridDa (3)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 513 i( ag && 514 ( `adtiveboundy_ty (= ACEAdtBoundyIp || 515 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 517 i( pfunc ) { 519  b =0; b< gk ; b++) { 520 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b ) 523 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 524 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 525 #ifde ACEVeGridFuni 526 vgfag , 528 mygs ,& mygc ); 529 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1) 532 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 533 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 534 #ifde ACEVeGridFuni 535 vgfag , 537 mygs ,& mygc ); 543 i( abfunc && 544 ( `adtiveboundy_ty (= ACEAdtBoundyUrDef || 545 `adtiveboundy_ty (= ACEAdtBoundyBh )) { 547  Cac = 0.0; 548  lm = t ; 549 i( time__d > 0 && gdb [ t +1][ l -1][ i ]) { 550 Cac = 1.0*( time - `dagh_timevue ( t , l -1))/( sc ); 551 lm = t +1; 554 lm = t ; 556 `GridDa (3)< ACE_GFTy > & lm = gdb [ lm ][ l -1][ i ]-> `gridda ( idt , mgl ); 557 cڡ  OMusCac = 1.0 - Cac ; 560  b =0; b< gk ; b++) { 561 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b )) 562 (* abfunc )( `FORTRAN_ARGS ( ), 563 `FORTRAN_ARGS ( lm ),& Cac , 564 `FORTRAN_ARGS ( m ),& OMusCac , 565 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 566 mygs ,& mygc ); 567 i( gdb [ t ][ l ][ i ]-> `has_adtiveboundy (2* b +1)) 568 (* abfunc )( `FORTRAN_ARGS ( ), 569 `FORTRAN_ARGS ( lm ),& Cac , 570 `FORTRAN_ARGS ( m ),& OMusCac , 571 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 572 mygs ,& mygc ); 581 i( `exboundy (&& `bndry_upde ()) { 584 i( `boundy_ty (= ACEBoundyUrDef && bfunc ) { 585  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 586 `GridDa (3)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 588  b =0; b< gk ; b++) { 589 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 590 (* bfunc )( `FORTRAN_ARGS ( u ), 591 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )), 592 mygs ,& mygc ); 593 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 594 (* bfunc )( `FORTRAN_ARGS ( u ), 595 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )), 596 mygs ,& mygc ); 602 i( `boundy_ty (= ACEBoundyShi ) { 603  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 604 `GridDa (3)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 605  b =0; b< gk ; b++) { 606 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 607 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl ), 608 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl ),b,1)); 609 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 610 u . `equs (u, gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl ), 611 `shi ( gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl ),b,-1)); 617 i( `boundy_ty (= ACEBoundyRegur ) { 618  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 619 `GridDa (3)< ACE_GFTy > & u = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 620  b =0; b< gk ; b++) { 621 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b )) 622 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b , idt , mgl )); 623 i( gdb [ t ][ l ][ i ]-> `has_exboundy (2* b +1)) 624 u . `equs ( bvue , gdb [ t ][ l ][ i ]-> `bndrybox (2* b +1, idt , mgl )); 630 i( `boundy_ty (= ACEBoundyPiodic ) { 631 `as (0); 636 `as (0); 639 #ifde ACEVeGridFuni 640 i( vgfag de [] vgfflag; 642 } } 644 gme < ass gACE_GFTy > 645  GridFuni (3)< gACE_GFTy >:: GF_DoAdtBndryUpde ( 646 GridDaBlock (3)< ACE_GFTy > & gdb_pbl , 647 GridDaBlock (3)< ACE_GFTy > & gdb_lm , 648 GridDaBlock (3)< ACE_GFTy > & gdb_ , 649 cڡ  ac , 650 GF_TYPE * gs , cڡ  t , 651 cڡ  idt ) 653 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 654 cڡ  gtiag = ( idt = ACE_Ma ? timeީe (: shadow_timeީe (); 656 cڡ  gm = ACEA ; 657 #ifde ACEVeGridFuni 658 * gvgfag = w [ nems ]; 659  gvgfi =0;vgfi< gnems ;vgfi++) 660 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 663 cڡ  gmygc = t ; 664 ACE_GFTy gtmrgs [1]; 665 ACE_GFTy * gmygs = 0; 666 i( ggs =0 mygs = tmrgs ; 667 gmygs = gs ; 669 cڡ  gemac = 1.0 - ac ; 671  gbag = 0; 672  gri =0;i<2* ggk ;i++ gbag | bwidth [ ri ]; 674 i( gbag =0 || ! adtbndry_upde (|| ! ag ) ; 676 GridDa (3)< gACE_GFTy > & gpbl = gdb_pbl . gridda ( idt , ACENu ); 677 GridDa (3)< gACE_GFTy > & glm = gdb_lm . gridda ( idt , ACENu ); 678 GridDa (3)< gACE_GFTy > & g = gdb_ . gridda ( idt , ACENu ); 680 i( gpfunc ) { 682  gb =0; b< ggk ; b++) { 683 i( ggdb_ . has_adtiveboundy (2* b ) 686 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 687 BOUNDING_BOX ( gdb_ . bndrybox (2* b , idt , ACENu )), 688 #ifde ACEVeGridFuni 689 gvgfag , 691 gmygs ,& gmygc ); 692 i( ggdb_ . has_adtiveboundy (2* b +1) 695 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 696 BOUNDING_BOX ( gdb_ . bndrybox (2* b +1, idt , ACENu )), 697 #ifde ACEVeGridFuni 698 gvgfag , 700 gmygs ,& gmygc ); 704 i( gtiag ) { 707 GridDa (3)< gACE_GFTy > dup ( ); 708  gb =0; b< ggk ; b++) { 709  gimes2 = 2* b ; 710 i( gfunc ) { 711 i( ggdb_ . has_adtiveboundy ( imes2 )) { 712 (* gfunc )( FORTRAN_ARGS ( ), 713 FORTRAN_ARGS ( pbl ),& gemac , 714 FORTRAN_ARGS ( dup ),& gac , 715 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 , idt , ACENu )) 716 #ifde ACEVeGridFuni 717 , gvgfag 721 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 722 (* gfunc )( FORTRAN_ARGS ( ), 723 FORTRAN_ARGS ( pbl ),& gemac , 724 FORTRAN_ARGS ( dup ),& gac , 725 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 +1, idt , ACENu )) 726 #ifde ACEVeGridFuni 727 , gvgfag 733 i( ggdb_ . has_adtiveboundy ( imes2 )) { 734 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 735 gdb_ . bndrybox ( imes2 , idt , ACENu ), m ); 737 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 738 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 739 gdb_ . bndrybox ( imes2 +1, idt , ACENu ), m ); 744 #ifde ACEVeGridFuni 745 i( gvgfag gde [] vgfflag; 749 gme < ass gACE_GFTy > 750  GridFuni (3)< gACE_GFTy >:: GF_DoAdtBndryUpde ( 751 GridDaBlock (3)< ACE_GFTy > & gdb_pbl , 752 GridDaBlock (3)< ACE_GFTy > & gdb_lm , 753 GridDaBlock (3)< ACE_GFTy > & gdb_ , 754 cڡ  ac , 755 cڡ  mgl , 756 GF_TYPE * gs , cڡ  t , 757 cڡ  idt ) 759 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 760 cڡ  gtiag = ( idt = ACE_Ma ? timeީe (: shadow_timeީe (); 762 cڡ  gm = ACEA ; 763 #ifde ACEVeGridFuni 764 * gvgfag = w [ nems ]; 765  gvgfi =0;vgfi< gnems ;vgfi++) 766 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 769 cڡ  gmygc = t ; 770 ACE_GFTy gtmrgs [1]; 771 ACE_GFTy * gmygs = 0; 772 i( ggs =0 mygs = tmrgs ; 773 gmygs = gs ; 775 cڡ  gemac = 1.0 - ac ; 777  gbag = 0; 778  gri =0;i<2* ggk ;i++ gbag | bwidth [ ri ]; 780 i( gbag =0 || ! adtbndry_upde (|| ! ag ) ; 782 GridDa (3)< gACE_GFTy > & gpbl = gdb_pbl . gridda ( idt , mgl ); 783 GridDa (3)< gACE_GFTy > & glm = gdb_lm . gridda ( idt , mgl ); 784 GridDa (3)< gACE_GFTy > & g = gdb_ . gridda ( idt , mgl ); 786 i( gpfunc ) { 788  gb =0; b< ggk ; b++) { 789 i( ggdb_ . has_adtiveboundy (2* b ) 792 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 793 BOUNDING_BOX ( gdb_ . bndrybox (2* b , idt , mgl )), 794 #ifde ACEVeGridFuni 795 gvgfag , 797 gmygs ,& gmygc ); 798 i( ggdb_ . has_adtiveboundy (2* b +1) 801 (* gpfunc )( FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 802 BOUNDING_BOX ( gdb_ . bndrybox (2* b +1, idt , mgl )), 803 #ifde ACEVeGridFuni 804 gvgfag , 806 gmygs ,& gmygc ); 810 i( gtiag ) { 813 GridDa (3)< gACE_GFTy > dup ( ); 814  gb =0; b< ggk ; b++) { 815  gimes2 = 2* b ; 817 i( gfunc ) { 818 i( ggdb_ . has_adtiveboundy ( imes2 )) { 819 (* gfunc )( FORTRAN_ARGS ( ), 820 FORTRAN_ARGS ( pbl ),& gemac , 821 FORTRAN_ARGS ( dup ),& gac , 822 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 , idt , mgl )) 823 #ifde ACEVeGridFuni 824 , gvgfag 828 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 829 (* gfunc )( FORTRAN_ARGS ( ), 830 FORTRAN_ARGS ( pbl ),& gemac , 831 FORTRAN_ARGS ( dup ),& gac , 832 BOUNDING_BOX ( gdb_ . bndrybox ( imes2 +1, idt , mgl )) 833 #ifde ACEVeGridFuni 834 , gvgfag 840 i( ggdb_ . has_adtiveboundy ( imes2 )) { 841 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 842 gdb_ . bndrybox ( imes2 , idt , mgl ), m ); 844 i( ggdb_ . has_adtiveboundy ( imes2 +1)) { 845 g . l_ ( pbl ,(1.0- ac ), dup ,frac, 846 gdb_ . bndrybox ( imes2 +1, idt , mgl ), m ); 851 #ifde ACEVeGridFuni 852 i( gvgfag gde [] vgfflag; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionCalls.h 1 #ide _uded_GridFuniCls_h 2  #_uded_GridFuniCls_h ) 14  ~"GridFuniCls1.h " 15  ~"GridFuniCls2.h " 16  ~"GridFuniCls3.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionCalls1.h 1 #ide _uded_GridFuniCls1_h 2  #_uded_GridFuniCls1_h ) 17 gme < ass gTy > 18 le  CutTime ( GridFuni (1)< Ty >& GF , 19 cڡ  l , 20 cڡ  idt ) 21 { gGF . GF_CutTime ( l , idt ); } 23 gme < ass gTy > 24 le  InCutTime ( GridFuni (1)< Ty >& GF , 25 cڡ  l , 26 cڡ  idt ) 27 { gGF . GF_InCutTime ( l , idt ); } 29 gme < ass gTy > 30 le  SCutTime ( GridFuni (1)< Ty >& GF , 31 cڡ  t , cڡ  l , 32 cڡ  idt ) 33 { gGF . GF_SCutTime ( t , l , idt ); } 35 gme < ass gTy > 36 le  PviousTime ( GridFuni (1)< Ty >& GF , 37 cڡ  l , 38 cڡ  idt ) 39 { gGF . GF_PviousTime ( l , idt ); } 41 gme < ass gTy > 42 le  NextTime ( GridFuni (1)< Ty >& GF , 43 cڡ  l , 44 cڡ  idt ) 45 { gGF . GF_NextTime ( l , idt ); } 51 gme < ass gTy > 52 le  SInFuni ( GridFuni (1)< Ty >& GF , 53 * f ) 54 { gGF . GF_SInFunc ( f ); } 56 gme < ass gTy > 57 le  SUpdeFuni ( GridFuni (1)< Ty >& GF , 58 * uf ) 59 { gGF . GF_SUpdeFunc ( uf ); } 61 gme < ass gTy > 62 le  SBndryUpdeFuni ( GridFuni (1)< Ty >& GF , 63 * buf ) 64 { gGF . GF_SBndryUpdeFunc ( buf ); } 66 gme < ass gTy > 67 le  SAdtiveBndryUpdeFuni ( GridFuni (1)< Ty >& GF , 68 * abuf ) 69 { gGF . GF_SAdtiveBndryUpdeFunc ( abuf ); } 71 gme < ass gTy > 72 le  SPrgFuni ( GridFuni (1)< Ty >& GF , 73 * pf ) 74 { gGF . GF_SPrgFunc ( pf ); } 76 gme < ass gTy > 77 le  SReriFuni ( GridFuni (1)< Ty >& GF , 78 * rf ) 79 { gGF . GF_SReriFunc ( rf ); } 81 gme < ass gTy > 82 le  STimeIpFuni ( GridFuni (1)< Ty >& GF , 83 * f ) 84 { gGF . GF_STimeIpFunc ( f ); } 86 gme < ass gTy > 87 le  SFluxAddFuni ( GridFuni (1)< Ty >& GF , 88 * f ) 89 { gGF . GF_SFluxAddFunc ( f ); } 91 gme < ass gTy > 92 le  SIOFuni ( GridFuni (1)< Ty >& GF , 93 * iof ) 94 { gGF . GF_SIOFunc ( iof ); } 100 gme < ass gTy > 101 le  SBoundyVue ( GridFuni (1)< Ty >& GF , 102 cڡ Ty v ) 103 { gGF . GF_SBoundyVue ( v ); } 109 gme < ass gTy > 110 le  SwTimeLevs ( GridFuni (1)< Ty >& GF , 111 cڡ  l , 112 cڡ  t1 , 113 cڡ  t2 ) 114 { gGF . GF_SwTimeLevs ( l , t1 , t2 ); } 116 gme < ass gTy > 117 le  CyeTimeLevs ( GridFuni (1)< Ty >& GF , 118 cڡ  l ) 119 { gGF . GF_CyeTimeLevs ( l ); } 125 #ifde ACEVeGridFuni 126 gme < ass gTy > 127 le  GhPt ( GridFuni (1)< Ty >& GF , 128 cڡ  t , 129 cڡ  l , 130 cڡ  idt ) 132 gGF . GF_GhPt ( t , l , idt ); 136 gme < ass gTy > 137 le  GhPt ( GridFuni (1)< Ty >& GF , 138 cڡ  t , 139 cڡ  l , 140 #ifde ACEVeGridFuni 141 cڡ  m , 143 cڡ  idt ) 145 #ifde ACEVeGridFuni 146 gGF . GF_GhPt ( t , l , m , idt ); 148 gGF . GF_GhPt ( t , l , idt ); 152 #ifde ACEVeGridFuni 153 gme < ass gTy > 154 le  SPt ( GridFuni (1)< Ty >& GF , 155 cڡ  t , 156 cڡ  l , 157 cڡ  idt ) 159 gGF . GF_SPt ( t , l , idt ); 163 gme < ass gTy > 164 le  SPt ( GridFuni (1)< Ty >& GF , 165 cڡ  t , 166 cڡ  l , 167 #ifde ACEVeGridFuni 168 cڡ  m , 170 cڡ  idt ) 172 #ifde ACEVeGridFuni 173 gGF . GF_SPt ( t , l , m , idt ); 175 gGF . GF_SPt ( t , l , idt ); 181 #ifde ACEVeGridFuni 182 gme < ass gTy > 183 le  GhFluxes ( GridFuni (1)< Ty >& GF , 184 cڡ  t , 185 cڡ  l , 186 cڡ  idt ) 188 gGF . GF_GhFluxes ( t , l , idt ); 192 gme < ass gTy > 193 le  GhFluxes ( GridFuni (1)< Ty >& GF , 194 cڡ  t , 195 cڡ  l , 196 #ifde ACEVeGridFuni 197 cڡ  m , 199 cڡ  idt ) 201 #ifde ACEVeGridFuni 202 gGF . GF_GhFluxes ( t , l , m , idt ); 204 gGF . GF_GhFluxes ( t , l , idt ); 211 #ifde ACEVeGridFuni 212 gme < ass gTy > 213 le  Sync ( GridFuni (1)< Ty >& GF , 214 cڡ  t , 215 cڡ  l , 216 cڡ  idt ) 218 gGF . GF_Sync ( t , l , idt ); 222 gme < ass gTy > 223 le  Sync ( GridFuni (1)< Ty >& GF , 224 cڡ  t , 225 cڡ  l , 226 #ifde ACEVeGridFuni 227 cڡ  m , 229 cڡ  idt ) 231 #ifde ACEVeGridFuni 232 gGF . GF_Sync ( t , l , m , idt ); 234 gGF . GF_Sync ( t , l , idt ); 238 gme < ass gTy > 239 le  Sync ( GridFuni (1)< Ty >& GF , 240 cڡ  t , 241 cڡ  l , 242 #ifde ACEVeGridFuni 243 cڡ  m , 245 cڡ  mgl , 246 cڡ  idt ) 248 #ifde ACEVeGridFuni 249 gGF . GF_Sync ( t , l , m , mgl , idt ); 251 gGF . GF_Sync ( t , l , mgl , idt ); 255 gme < ass gTy > 256 le  Sync ( GridFuni (1)< Ty >& GF , 257 cڡ  t , 258 cڡ  l , 259 #ifde ACEVeGridFuni 260 cڡ  m , 262 cڡ  axis , 263 cڡ  d , 264 cڡ  idt ) 266 #ifde ACEVeGridFuni 267 gGF . GF_Sync ( t , l , m , axis , d , idt ); 269 gGF . GF_Sync ( t , l , axis , d , idt ); 273 gme < ass gTy > 274 le  Sync ( GridFuni (1)< Ty >& GF , 275 cڡ  t , 276 cڡ  l , 277 #ifde ACEVeGridFuni 278 cڡ  m , 280 cڡ  mgl , 281 cڡ  axis , 282 cڡ  d , 283 cڡ  idt ) 285 #ifde ACEVeGridFuni 286 gGF . GF_Sync ( t , l , m , mgl , axis , d , idt ); 288 gGF . GF_Sync ( t , l , mgl , axis , d , idt ); 296 gme < ass gTy > 297 le  Inlize ( GridFuni (1)< Ty >& GF , 298 cڡ  t , 299 cڡ  l , 300 cڡ Ty & v , 301 cڡ  idt ) 302 { gGF . GF_Fl ( v , t , l , idt ); } 303 gme < ass gTy > 304 le  Inlize ( GridFuni (1)< Ty >& GF , 305 cڡ  t , 306 cڡ  l , 307 cڡ  mgl , 308 cڡ Ty & v , 309 cڡ  idt ) 310 { gGF . GF_Fl ( v , t , l , mgl , idt ); } 316 gme < ass gTy > 317 le  Inlize ( GridFuni (1)< Ty >& GF , 318 cڡ  t , 319 cڡ  l , 320 Ty * gs , 321 cڡ  t , 322 cڡ  idt ) 323 { gGF . GF_In ( t , l , gs , t , idt ); } 324 gme < ass gTy > 325 le  Inlize ( GridFuni (1)< Ty >& GF , 326 cڡ  t , 327 cڡ  l , 328 cڡ BBox & bb , 329 Ty * gs , 330 cڡ  t , 331 cڡ  idt ) 332 { gGF . GF_In ( t , l , bb , gs , t , idt ); } 334 gme < ass gTy > 335 le  Upde ( GridFuni (1)< Ty >& GF , 336 cڡ  tf , 337 cڡ  , 338 cڡ  l , 339 Ty * gs , 340 cڡ  t , 341 cڡ  idt ) 342 { gGF . GF_Upde ( tf , , l , gs , t , idt ); } 343 gme < ass gTy > 344 le  Upde ( GridFuni (1)< Ty >& GF , 345 cڡ  tf , 346 cڡ  , 347 cڡ  l , 348 cڡ BBox & bb , 349 Ty * gs , 350 cڡ  t , 351 cڡ  idt ) 352 { gGF . GF_Upde ( tf , , l , bb , gs , t , idt ); } 354 gme < ass gTy > 355 le  Prg ( GridFuni (1)< Ty >& GF , 356 cڡ  tf , 357 cڡ  lf , 358 cڡ  , 359 cڡ  , 360 #ifde ACEVeGridFuni 361 cڡ  m , 363 Ty * gs , 364 cڡ  t , 365 cڡ  idt ) 366 { gGF . GF_Prg ( tf , lf , , , 367 #ifde ACEVeGridFuni 368 m , 370 gs , t , idt ); } 371 gme < ass gTy > 372 le  Prg ( GridFuni (1)< Ty >& GF , 373 cڡ  tf , 374 cڡ  lf , 375 cڡ  , 376 cڡ  , 377 cڡ BBox & bb , 378 #ifde ACEVeGridFuni 379 cڡ  m , 381 Ty * gs , 382 cڡ  t , 383 cڡ  idt ) 384 { gGF . GF_Prg ( tf , lf , , , bb , 385 #ifde ACEVeGridFuni 386 m , 388 gs , t , idt ); } 390 gme < ass gTy > 391 le  Reri ( GridFuni (1)< Ty >& GF , 392 cڡ  tf , 393 cڡ  lf , 394 cڡ  , 395 cڡ  , 396 #ifde ACEVeGridFuni 397 cڡ  m , 399 Ty * gs , 400 cڡ  t , 401 cڡ  idt ) 402 { gGF . GF_Reri ( tf , lf , , , 403 #ifde ACEVeGridFuni 404 m , 406 gs , t , idt ); } 407 gme < ass gTy > 408 le  Reri ( GridFuni (1)< Ty >& GF , 409 cڡ  tf , 410 cڡ  lf , 411 cڡ  , 412 cڡ  , 413 cڡ BBox & bb , 414 #ifde ACEVeGridFuni 415 cڡ  m , 418 Ty * gs , 419 cڡ  t , 420 cڡ  idt ) 421 { gGF . GF_Reri ( tf , lf , , , bb , 422 #ifde ACEVeGridFuni 423 m , 425 gs , t , idt ); } 427 gme < ass gTy > 428 le  IO ( GridFuni (1)< Ty >& GF , 429 cڡ  t , 430 cڡ  l , 431 Ty * gs , 432 cڡ  t , 433 cڡ  idt ) 434 { gGF . GF_IO ( t , l , gs , t , idt ); } 435 gme < ass gTy > 436 le  IO ( GridFuni (1)< Ty >& GF , 437 cڡ  t , 438 cڡ  l , 439 cڡ BBox & bb , 440 Ty * gs , 441 cڡ  t , 442 cڡ  idt ) 443 { gGF . GF_IO ( t , l , bb , gs , t , idt ); } 449 gme < ass gTy > 450 le  BoundyUpde ( GridFuni (1)< Ty >& GF , 451 cڡ  t , 452 cڡ  l , 453 cڡ  idt ) 454 { gGF . GF_BndryUpde ( t , l , 0, 0, idt ); } 455 gme < ass gTy > 456 le  BoundyUpde ( GridFuni (1)< Ty >& GF , 457 cڡ  t , 458 cڡ  l , 459 Ty * gs , 460 cڡ  at , 461 cڡ  idt ) 462 { gGF . GF_BndryUpde ( t , l , gs , at , idt ); } 463 gme < ass gTy > 464 le  BoundyUpde ( GridFuni (1)< Ty >& GF , 465 cڡ  t , 466 cڡ  l , 467 cڡ  mgl , 468 Ty * gs , 469 cڡ  at , 470 cڡ  idt ) 471 { gGF . GF_BndryUpde ( t , l , mgl , gs , at , idt ); } 477 gme < ass gTy > 478 le Ty MaxV ( GridFuni (1)& GF , 479 cڡ  t , 480 cڡ  l , 481 #ifde ACEVeGridFuni 482 cڡ  m , 484 cڡ  idt ) 485 {  ( gGF . GF_maxv ( t , l , 486 #ifde ACEVeGridFuni 487 m , 489 idt )); } 490 gme < ass gTy > 491 le Ty MaxV ( GridFuni (1)& GF , 492 cڡ  t , 493 cڡ  l , 494 #ifde ACEVeGridFuni 495 cڡ  m , 497 cڡ BBox & whe , 498 cڡ  idt ) 499 {  ( gGF . GF_maxv ( t , l , 500 #ifde ACEVeGridFuni 501 m , 503 whe , idt )); } 504 gme < ass gTy > 505 le Ty MaxV ( GridFuni (1)& GF , 506 cڡ  t , 507 cڡ  l , 508 #ifde ACEVeGridFuni 509 cڡ  m , 511 cڡ  mgl , 512 cڡ  idt ) 513 {  ( gGF . GF_maxv ( t , l , 514 #ifde ACEVeGridFuni 515 m , 517 mgl , idt )); } 518 gme < ass gTy > 519 le Ty MaxV ( GridFuni (1)& GF , 520 cڡ  t , 521 cڡ  l , 522 #ifde ACEVeGridFuni 523 cڡ  m , 525 cڡ  mgl , 526 cڡ BBox & whe , 527 cڡ  idt ) 528 {  ( gGF . GF_maxv ( t , l , 529 #ifde ACEVeGridFuni 530 m , 532 mgl , whe , idt )); } 534 gme < ass gTy > 535 le Ty MV ( GridFuni (1)& GF , 536 cڡ  t , 537 cڡ  l , 538 #ifde ACEVeGridFuni 539 cڡ  m , 541 cڡ  idt ) 542 {  ( gGF . GF_mv ( t , l , 543 #ifde ACEVeGridFuni 544 m , 546 idt )); } 547 gme < ass gTy > 548 le Ty MV ( GridFuni (1)& GF , 549 cڡ  t , 550 cڡ  l , 551 #ifde ACEVeGridFuni 552 cڡ  m , 554 cڡ BBox & whe , 555 cڡ  idt ) 556 {  ( gGF . GF_mv ( t , l , 557 #ifde ACEVeGridFuni 558 m , 560 whe , idt )); } 561 gme < ass gTy > 562 le Ty MV ( GridFuni (1)& GF , 563 cڡ  t , 564 cڡ  l , 565 #ifde ACEVeGridFuni 566 cڡ  m , 568 cڡ  mgl , 569 cڡ  idt ) 570 {  ( gGF . GF_mv ( t , l , 571 #ifde ACEVeGridFuni 572 m , 574 mgl , idt )); } 575 gme < ass gTy > 576 le Ty MV ( GridFuni (1)& GF , 577 cڡ  t , 578 cڡ  l , 579 #ifde ACEVeGridFuni 580 cڡ  m , 582 cڡ  mgl , 583 cڡ BBox & whe , 584 cڡ  idt ) 585 {  ( gGF . GF_mv ( t , l , 586 #ifde ACEVeGridFuni 587 m , 589 mgl , whe , idt )); } 591 gme < ass gTy > 592 le Ty Sum ( GridFuni (1)& GF , 593 cڡ  t , 594 cڡ  l , 595 #ifde ACEVeGridFuni 596 cڡ  m , 598 cڡ  idt ) 599 {  ( gGF . GF_sum ( t , l , 600 #ifde ACEVeGridFuni 601 m , 603 idt )); } 604 gme < ass gTy > 605 le Ty Sum ( GridFuni (1)& GF , 606 cڡ  t , 607 cڡ  l , 608 #ifde ACEVeGridFuni 609 cڡ  m , 611 cڡ BBox & whe , 612 cڡ  idt ) 613 {  ( gGF . GF_sum ( t , l , 614 #ifde ACEVeGridFuni 615 m , 617 whe , idt )); } 618 gme < ass gTy > 619 le Ty Sum ( GridFuni (1)& GF , 620 cڡ  t , 621 cڡ  l , 622 #ifde ACEVeGridFuni 623 cڡ  m , 625 cڡ  mgl , 626 cڡ  idt ) 627 {  ( gGF . GF_sum ( t , l , 628 #ifde ACEVeGridFuni 629 m , 631 mgl , idt )); } 632 gme < ass gTy > 633 le Ty Sum ( GridFuni (1)& GF , 634 cڡ  t , 635 cڡ  l , 636 #ifde ACEVeGridFuni 637 cڡ  m , 639 cڡ  mgl , 640 cڡ BBox & whe , 641 cڡ  idt ) 642 {  ( gGF . GF_sum ( t , l , 643 #ifde ACEVeGridFuni 644 m , 646 mgl , whe , idt )); } 648 gme < ass gTy > 649 le Ty Produ ( GridFuni (1)& GF , 650 cڡ  t , 651 cڡ  l , 652 #ifde ACEVeGridFuni 653 cڡ  m , 655 cڡ  idt ) 656 {  ( gGF . GF_odu ( t , l , 657 #ifde ACEVeGridFuni 658 m , 660 idt )); } 661 gme < ass gTy > 662 le Ty Produ ( GridFuni (1)& GF , 663 cڡ  t , 664 cڡ  l , 665 #ifde ACEVeGridFuni 666 cڡ  m , 668 cڡ BBox & whe , 669 cڡ  idt ) 670 {  ( gGF . GF_odu ( t , l , 671 #ifde ACEVeGridFuni 672 m , 674 whe , idt )); } 675 gme < ass gTy > 676 le Ty Produ ( GridFuni (1)& GF , 677 cڡ  t , 678 cڡ  l , 679 #ifde ACEVeGridFuni 680 cڡ  m , 682 cڡ  mgl , 683 cڡ  idt ) 684 {  ( gGF . GF_odu ( t , l , 685 #ifde ACEVeGridFuni 686 m , 688 mgl , idt )); } 689 gme < ass gTy > 690 le Ty Produ ( GridFuni (1)& GF , 691 cڡ  t , 692 cڡ  l , 693 #ifde ACEVeGridFuni 694 cڡ  m , 696 cڡ  mgl , 697 cڡ BBox & whe , 698 cڡ  idt ) 699 {  ( gGF . GF_odu ( t , l , 700 #ifde ACEVeGridFuni 701 m , 703 mgl , whe , idt )); } 705 gme < ass gTy > 706 le Ty Nm2 ( GridFuni (1)& GF , 707 cڡ  t , 708 cڡ  l , 709 #ifde ACEVeGridFuni 710 cڡ  m , 712 cڡ  idt ) 713 {  ( gGF . GF_nm2 ( t , l , 714 #ifde ACEVeGridFuni 715 m , 717 idt )); } 718 gme < ass gTy > 719 le Ty Nm2 ( GridFuni (1)& GF , 720 cڡ  t , 721 cڡ  l , 722 #ifde ACEVeGridFuni 723 cڡ  m , 725 cڡ BBox & whe , 726 cڡ  idt ) 727 {  ( gGF . GF_nm2 ( t , l , 728 #ifde ACEVeGridFuni 729 m , 731 whe , idt )); } 732 gme < ass gTy > 733 le Ty Nm2 ( GridFuni (1)& GF , 734 cڡ  t , 735 cڡ  l , 736 #ifde ACEVeGridFuni 737 cڡ  m , 739 cڡ  mgl , 740 cڡ  idt ) 741 {  ( gGF . GF_nm2 ( t , l , 742 #ifde ACEVeGridFuni 743 m , 745 mgl , idt )); } 746 gme < ass gTy > 747 le Ty Nm2 ( GridFuni (1)& GF , 748 cڡ  t , 749 cڡ  l , 750 #ifde ACEVeGridFuni 751 cڡ  m , 753 cڡ  mgl , 754 cڡ BBox & whe , 755 cڡ  idt ) 756 {  ( gGF . GF_nm2 ( t , l , 757 #ifde ACEVeGridFuni 758 m , 760 mgl , whe , idt )); } 766 gme < ass gTy > 767 le  SupShadow ( GridFuni (1)< Ty >& GF , 768 cڡ  t , 769 cڡ  l ) 770 { gGF . GF_SupShadow ( t , l ); } 772 gme < ass gTy > 773 le  RShadow ( GridFuni (1)< Ty >& GF , 774 cڡ  t , 775 cڡ  l ) 776 { gGF . GF_RShadow ( t , l ); } 782 gme < ass gTy > 783 le  SupMuiGrid ( GridFuni (1)< Ty >& GF , 784 cڡ  t , 785 cڡ  l , 786 cڡ  mglc , 787 cڡ  mglf , 788 cڡ  idt ) 789 { gGF . GF_SupMuiGrid ( t , l , mglc , mglf , idt ); } 790 gme < ass gTy > 791 le  SupMuiGrid ( GridFuni (1)< Ty >& GF , 792 cڡ  t , 793 cڡ  l , 794 cڡ  axis , 795 cڡ  mglc , 796 cڡ  mglf , 797 cڡ  idt ) 798 { gGF . GF_SupMuiGrid ( t , l , axis , mglc , mglf , idt ); } 800 gme < ass gTy > 801 le  RMuiGrid ( GridFuni (1)< Ty >& GF , 802 cڡ  t , 803 cڡ  l , 804 cڡ  idt ) 805 { gGF . GF_RMuiGrid ( t , l , idt ); } 811 gme < ass gTy > 812 le  Cy ( GridFuni (1)< Ty >& gff , 813 cڡ  tf , 814 cڡ  lf , 815 cڡ BBox & om , 816 GridFuni (1)< Ty >& g , 817 cڡ  , 818 cڡ  , 819 cڡ BBox & to , 820 cڡ  idt ) 821 { gg . GF_Cy ( , , gff , tf , lf , to , om , idt ); } 827 gme < ass gTy > 828 le  Wre ( GridFuni (1)< Ty >& GF , 829 cڡ  t , 830 cڡ  l , 831 #ifde ACEVeGridFuni 832 cڡ  m , 834 cڡ  gfdty ) 835 { gGF . GF_Wre ( t , l , 836 #ifde ACEVeGridFuni 837 m , 839 gfdty ); } 840 gme < ass gTy > 841 le  Wre ( GridFuni (1)< Ty >& GF , 842 cڡ  t , 843 cڡ  l , 844 #ifde ACEVeGridFuni 845 cڡ  m , 847 cڡ  mgl , 848 cڡ  gfdty ) 849 { gGF . GF_Wre ( t , l , 850 #ifde ACEVeGridFuni 851 m , 853 mgl , gfdty ); } 854 gme < ass gTy > 855 le  Wre ( GridFuni (1)< Ty >& GF , 856 cڡ  t , 857 cڡ  l , 858 #ifde ACEVeGridFuni 859 cڡ  m , 861 cڡ  mgl , 862 cڡ  idt , 863 cڡ  gfdty ) 864 { gGF . GF_Wre ( t , l , 865 #ifde ACEVeGridFuni 866 m , 868 mgl , idt , gfdty ); } 870 gme < ass gTy > 871 le  Wre ( GridFuni (1)< Ty >& GF , 872 cڡ  t , 873 cڡ  l , 874 #ifde ACEVeGridFuni 875 cڡ  m , 877 cڡ BBox & whe , 878 cڡ  gfdty ) 879 { gGF . GF_Wre ( t , l , 880 #ifde ACEVeGridFuni 881 m , 883 whe , gfdty ); } 884 gme < ass gTy > 885 le  Wre ( GridFuni (1)< Ty >& GF , 886 cڡ  t , 887 cڡ  l , 888 #ifde ACEVeGridFuni 889 cڡ  m , 891 cڡ  mgl , 892 cڡ BBox & whe , 893 cڡ  gfdty ) 894 { gGF . GF_Wre ( t , l , 895 #ifde ACEVeGridFuni 896 m , 898 mgl , whe , gfdty ); } 899 gme < ass gTy > 900 le  Wre ( GridFuni (1)< Ty >& GF , 901 cڡ  t , 902 cڡ  l , 903 #ifde ACEVeGridFuni 904 cڡ  m , 906 cڡ  mgl , 907 cڡ  idt , 908 cڡ BBox & whe , 909 cڡ  gfdty ) 910 { gGF . GF_Wre ( t , l , 911 #ifde ACEVeGridFuni 912 m , 914 mgl , idt , whe , gfdty ); } 916 gme < ass gTy > 917 le  Rd ( GridFuni (1)< Ty >& GF , 918 cڡ  t , 919 cڡ  l , 920 #ifde ACEVeGridFuni 921 cڡ  m , 923 cڡ  gfdty ) 924 { gGF . GF_Rd ( t , l , 925 #ifde ACEVeGridFuni 926 m , 928 gfdty ); } 929 gme < ass gTy > 930 le  Rd ( GridFuni (1)< Ty >& GF , 931 cڡ  t , 932 cڡ  l , 933 #ifde ACEVeGridFuni 934 cڡ  m , 936 cڡ  mgl , 937 cڡ  gfdty ) 938 { gGF . GF_Rd ( t , l , 939 #ifde ACEVeGridFuni 940 m , 942 mgl , gfdty ); } 943 gme < ass gTy > 944 le  Rd ( GridFuni (1)< Ty >& GF , 945 cڡ  t , 946 cڡ  l , 947 #ifde ACEVeGridFuni 948 cڡ  m , 950 cڡ  mgl , 951 cڡ  idt , 952 cڡ  gfdty ) 953 { gGF . GF_Rd ( t , l , 954 #ifde ACEVeGridFuni 955 m , 957 mgl , idt , gfdty ); } 959 gme < ass gTy > 960 le  Rd ( GridFuni (1)< Ty >& GF , 961 cڡ  t , 962 cڡ  l , 963 #ifde ACEVeGridFuni 964 cڡ  m , 966 cڡ BBox & whe , 967 cڡ  gfdty ) 968 { gGF . GF_Rd ( t , l , 969 #ifde ACEVeGridFuni 970 m , 972 whe , gfdty ); } 973 gme < ass gTy > 974 le  Rd ( GridFuni (1)< Ty >& GF , 975 cڡ  t , 976 cڡ  l , 977 #ifde ACEVeGridFuni 978 cڡ  m , 980 cڡ  mgl , 981 cڡ BBox & whe , 982 cڡ  gfdty ) 983 { gGF . GF_Rd ( t , l , 984 #ifde ACEVeGridFuni 985 m , 987 mgl , whe , gfdty ); } 988 gme < ass gTy > 989 le  Rd ( GridFuni (1)< Ty >& GF , 990 cڡ  t , 991 cڡ  l , 992 #ifde ACEVeGridFuni 993 cڡ  m , 995 cڡ  mgl , 996 cڡ  idt , 997 cڡ BBox & whe , 998 cڡ  gfdty ) 999 { gGF . GF_Rd ( t , l , 1000 #ifde ACEVeGridFuni 1001 m , 1003 mgl , idt , whe , gfdty ); } 1009 gme < ass gTy > 1010 le  GUCDDa ( GridFuni (1)< Ty >& GF , 1011 cڡ ACEUCD (1)& daghucd , 1012 cڡ  t , 1013 Ty *& ucdda , 1014 cڡ  ucdrv ) 1015 { gGF . GF_GUCDDa ( daghucd , t , ucdda , ucdrv ); } 1021 gme < ass gTy > 1022 le  Vw ( GridFuni (1)< Ty >& GF , 1023 cڡ  t , 1024 cڡ  l , 1025 #ifde ACEVeGridFuni 1026 cڡ  m , 1028 cڡ  axis , 1029 cڡ BBox & whe , 1030 cڡ  prv , 1031 cڡ  ty , 1032 cڡ* xg , 1033 cڡ* drv , 1034 cڡ  idt ) 1035 { gGF . GF_Vw ( t , l , 1036 #ifde ACEVeGridFuni 1037 m , 1039 axis , whe , prv , ty , xg , drv , idt ); } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionCalls2.h 1 #ide _uded_GridFuniCls2_h 2  #_uded_GridFuniCls2_h ) 17 gme < ass gTy > 18 le  CutTime ( GridFuni (2)< Ty >& GF , 19 cڡ  l , 20 cڡ  idt ) 21 { gGF . GF_CutTime ( l , idt ); } 23 gme < ass gTy > 24 le  InCutTime ( GridFuni (2)< Ty >& GF , 25 cڡ  l , 26 cڡ  idt ) 27 { gGF . GF_InCutTime ( l , idt ); } 29 gme < ass gTy > 30 le  SCutTime ( GridFuni (2)< Ty >& GF , 31 cڡ  t , cڡ  l , 32 cڡ  idt ) 33 { gGF . GF_SCutTime ( t , l , idt ); } 35 gme < ass gTy > 36 le  PviousTime ( GridFuni (2)< Ty >& GF , 37 cڡ  l , 38 cڡ  idt ) 39 { gGF . GF_PviousTime ( l , idt ); } 41 gme < ass gTy > 42 le  NextTime ( GridFuni (2)< Ty >& GF , 43 cڡ  l , 44 cڡ  idt ) 45 { gGF . GF_NextTime ( l , idt ); } 51 gme < ass gTy > 52 le  SInFuni ( GridFuni (2)< Ty >& GF , 53 * f ) 54 { gGF . GF_SInFunc ( f ); } 56 gme < ass gTy > 57 le  SUpdeFuni ( GridFuni (2)< Ty >& GF , 58 * uf ) 59 { gGF . GF_SUpdeFunc ( uf ); } 61 gme < ass gTy > 62 le  SBndryUpdeFuni ( GridFuni (2)< Ty >& GF , 63 * buf ) 64 { gGF . GF_SBndryUpdeFunc ( buf ); } 66 gme < ass gTy > 67 le  SAdtiveBndryUpdeFuni ( GridFuni (2)< Ty >& GF , 68 * abuf ) 69 { gGF . GF_SAdtiveBndryUpdeFunc ( abuf ); } 71 gme < ass gTy > 72 le  SPrgFuni ( GridFuni (2)< Ty >& GF , 73 * pf ) 74 { gGF . GF_SPrgFunc ( pf ); } 76 gme < ass gTy > 77 le  SReriFuni ( GridFuni (2)< Ty >& GF , 78 * rf ) 79 { gGF . GF_SReriFunc ( rf ); } 81 gme < ass gTy > 82 le  STimeIpFuni ( GridFuni (2)< Ty >& GF , 83 * f ) 84 { gGF . GF_STimeIpFunc ( f ); } 86 gme < ass gTy > 87 le  SFluxAddFuni ( GridFuni (2)< Ty >& GF , 88 * f ) 89 { gGF . GF_SFluxAddFunc ( f ); } 91 gme < ass gTy > 92 le  SIOFuni ( GridFuni (2)< Ty >& GF , 93 * iof ) 94 { gGF . GF_SIOFunc ( iof ); } 100 gme < ass gTy > 101 le  SBoundyVue ( GridFuni (2)< Ty >& GF , 102 cڡ Ty v ) 103 { gGF . GF_SBoundyVue ( v ); } 109 gme < ass gTy > 110 le  SwTimeLevs ( GridFuni (2)< Ty >& GF , 111 cڡ  l , 112 cڡ  t1 , 113 cڡ  t2 ) 114 { gGF . GF_SwTimeLevs ( l , t1 , t2 ); } 116 gme < ass gTy > 117 le  CyeTimeLevs ( GridFuni (2)< Ty >& GF , 118 cڡ  l ) 119 { gGF . GF_CyeTimeLevs ( l ); } 125 #ifde ACEVeGridFuni 126 gme < ass gTy > 127 le  GhPt ( GridFuni (2)< Ty >& GF , 128 cڡ  t , 129 cڡ  l , 130 cڡ  idt ) 132 gGF . GF_GhPt ( t , l , idt ); 136 gme < ass gTy > 137 le  GhPt ( GridFuni (2)< Ty >& GF , 138 cڡ  t , 139 cڡ  l , 140 #ifde ACEVeGridFuni 141 cڡ  m , 143 cڡ  idt ) 145 #ifde ACEVeGridFuni 146 gGF . GF_GhPt ( t , l , m , idt ); 148 gGF . GF_GhPt ( t , l , idt ); 152 #ifde ACEVeGridFuni 153 gme < ass gTy > 154 le  SPt ( GridFuni (2)< Ty >& GF , 155 cڡ  t , 156 cڡ  l , 157 cڡ  idt ) 159 gGF . GF_SPt ( t , l , idt ); 163 gme < ass gTy > 164 le  SPt ( GridFuni (2)< Ty >& GF , 165 cڡ  t , 166 cڡ  l , 167 #ifde ACEVeGridFuni 168 cڡ  m , 170 cڡ  idt ) 172 #ifde ACEVeGridFuni 173 gGF . GF_SPt ( t , l , m , idt ); 175 gGF . GF_SPt ( t , l , idt ); 181 #ifde ACEVeGridFuni 182 gme < ass gTy > 183 le  GhFluxes ( GridFuni (2)< Ty >& GF , 184 cڡ  t , 185 cڡ  l , 186 cڡ  idt ) 188 gGF . GF_GhFluxes ( t , l , idt ); 192 gme < ass gTy > 193 le  GhFluxes ( GridFuni (2)< Ty >& GF , 194 cڡ  t , 195 cڡ  l , 196 #ifde ACEVeGridFuni 197 cڡ  m , 199 cڡ  idt ) 201 #ifde ACEVeGridFuni 202 gGF . GF_GhFluxes ( t , l , m , idt ); 204 gGF . GF_GhFluxes ( t , l , idt ); 211 #ifde ACEVeGridFuni 212 gme < ass gTy > 213 le  Sync ( GridFuni (2)< Ty >& GF , 214 cڡ  t , 215 cڡ  l , 216 cڡ  idt ) 218 gGF . GF_Sync ( t , l , idt ); 222 gme < ass gTy > 223 le  Sync ( GridFuni (2)< Ty >& GF , 224 cڡ  t , 225 cڡ  l , 226 #ifde ACEVeGridFuni 227 cڡ  m , 229 cڡ  idt ) 231 #ifde ACEVeGridFuni 232 gGF . GF_Sync ( t , l , m , idt ); 234 gGF . GF_Sync ( t , l , idt ); 238 gme < ass gTy > 239 le  Sync ( GridFuni (2)< Ty >& GF , 240 cڡ  t , 241 cڡ  l , 242 #ifde ACEVeGridFuni 243 cڡ  m , 245 cڡ  mgl , 246 cڡ  idt ) 248 #ifde ACEVeGridFuni 249 gGF . GF_Sync ( t , l , m , mgl , idt ); 251 gGF . GF_Sync ( t , l , mgl , idt ); 255 gme < ass gTy > 256 le  Sync ( GridFuni (2)< Ty >& GF , 257 cڡ  t , 258 cڡ  l , 259 #ifde ACEVeGridFuni 260 cڡ  m , 262 cڡ  axis , 263 cڡ  d , 264 cڡ  idt ) 266 #ifde ACEVeGridFuni 267 gGF . GF_Sync ( t , l , m , axis , d , idt ); 269 gGF . GF_Sync ( t , l , axis , d , idt ); 273 gme < ass gTy > 274 le  Sync ( GridFuni (2)< Ty >& GF , 275 cڡ  t , 276 cڡ  l , 277 #ifde ACEVeGridFuni 278 cڡ  m , 280 cڡ  mgl , 281 cڡ  axis , 282 cڡ  d , 283 cڡ  idt ) 285 #ifde ACEVeGridFuni 286 gGF . GF_Sync ( t , l , m , mgl , axis , d , idt ); 288 gGF . GF_Sync ( t , l , mgl , axis , d , idt ); 296 gme < ass gTy > 297 le  Inlize ( GridFuni (2)< Ty >& GF , 298 cڡ  t , 299 cڡ  l , 300 cڡ Ty & v , 301 cڡ  idt ) 302 { gGF . GF_Fl ( v , t , l , idt ); } 303 gme < ass gTy > 304 le  Inlize ( GridFuni (2)< Ty >& GF , 305 cڡ  t , 306 cڡ  l , 307 cڡ  mgl , 308 cڡ Ty & v , 309 cڡ  idt ) 310 { gGF . GF_Fl ( v , t , l , mgl , idt ); } 316 gme < ass gTy > 317 le  Inlize ( GridFuni (2)< Ty >& GF , 318 cڡ  t , 319 cڡ  l , 320 Ty * gs , 321 cڡ  t , 322 cڡ  idt ) 323 { gGF . GF_In ( t , l , gs , t , idt ); } 324 gme < ass gTy > 325 le  Inlize ( GridFuni (2)< Ty >& GF , 326 cڡ  t , 327 cڡ  l , 328 cڡ BBox & bb , 329 Ty * gs , 330 cڡ  t , 331 cڡ  idt ) 332 { gGF . GF_In ( t , l , bb , gs , t , idt ); } 334 gme < ass gTy > 335 le  Upde ( GridFuni (2)< Ty >& GF , 336 cڡ  tf , 337 cڡ  , 338 cڡ  l , 339 Ty * gs , 340 cڡ  t , 341 cڡ  idt ) 342 { gGF . GF_Upde ( tf , , l , gs , t , idt ); } 343 gme < ass gTy > 344 le  Upde ( GridFuni (2)< Ty >& GF , 345 cڡ  tf , 346 cڡ  , 347 cڡ  l , 348 cڡ BBox & bb , 349 Ty * gs , 350 cڡ  t , 351 cڡ  idt ) 352 { gGF . GF_Upde ( tf , , l , bb , gs , t , idt ); } 354 gme < ass gTy > 355 le  Prg ( GridFuni (2)< Ty >& GF , 356 cڡ  tf , 357 cڡ  lf , 358 cڡ  , 359 cڡ  , 360 #ifde ACEVeGridFuni 361 cڡ  m , 363 Ty * gs , 364 cڡ  t , 365 cڡ  idt ) 366 { gGF . GF_Prg ( tf , lf , , , 367 #ifde ACEVeGridFuni 368 m , 370 gs , t , idt ); } 371 gme < ass gTy > 372 le  Prg ( GridFuni (2)< Ty >& GF , 373 cڡ  tf , 374 cڡ  lf , 375 cڡ  , 376 cڡ  , 377 cڡ BBox & bb , 378 #ifde ACEVeGridFuni 379 cڡ  m , 381 Ty * gs , 382 cڡ  t , 383 cڡ  idt ) 384 { gGF . GF_Prg ( tf , lf , , , bb , 385 #ifde ACEVeGridFuni 386 m , 388 gs , t , idt ); } 390 gme < ass gTy > 391 le  Reri ( GridFuni (2)< Ty >& GF , 392 cڡ  tf , 393 cڡ  lf , 394 cڡ  , 395 cڡ  , 396 #ifde ACEVeGridFuni 397 cڡ  m , 399 Ty * gs , 400 cڡ  t , 401 cڡ  idt ) 402 { gGF . GF_Reri ( tf , lf , , , 403 #ifde ACEVeGridFuni 404 m , 406 gs , t , idt ); } 407 gme < ass gTy > 408 le  Reri ( GridFuni (2)< Ty >& GF , 409 cڡ  tf , 410 cڡ  lf , 411 cڡ  , 412 cڡ  , 413 cڡ BBox & bb , 414 #ifde ACEVeGridFuni 415 cڡ  m , 418 Ty * gs , 419 cڡ  t , 420 cڡ  idt ) 421 { gGF . GF_Reri ( tf , lf , , , bb , 422 #ifde ACEVeGridFuni 423 m , 425 gs , t , idt ); } 427 gme < ass gTy > 428 le  IO ( GridFuni (2)< Ty >& GF , 429 cڡ  t , 430 cڡ  l , 431 Ty * gs , 432 cڡ  t , 433 cڡ  idt ) 434 { gGF . GF_IO ( t , l , gs , t , idt ); } 435 gme < ass gTy > 436 le  IO ( GridFuni (2)< Ty >& GF , 437 cڡ  t , 438 cڡ  l , 439 cڡ BBox & bb , 440 Ty * gs , 441 cڡ  t , 442 cڡ  idt ) 443 { gGF . GF_IO ( t , l , bb , gs , t , idt ); } 449 gme < ass gTy > 450 le  BoundyUpde ( GridFuni (2)< Ty >& GF , 451 cڡ  t , 452 cڡ  l , 453 cڡ  idt ) 454 { gGF . GF_BndryUpde ( t , l , 0, 0, idt ); } 455 gme < ass gTy > 456 le  BoundyUpde ( GridFuni (2)< Ty >& GF , 457 cڡ  t , 458 cڡ  l , 459 Ty * gs , 460 cڡ  at , 461 cڡ  idt ) 462 { gGF . GF_BndryUpde ( t , l , gs , at , idt ); } 463 gme < ass gTy > 464 le  BoundyUpde ( GridFuni (2)< Ty >& GF , 465 cڡ  t , 466 cڡ  l , 467 cڡ  mgl , 468 Ty * gs , 469 cڡ  at , 470 cڡ  idt ) 471 { gGF . GF_BndryUpde ( t , l , mgl , gs , at , idt ); } 477 gme < ass gTy > 478 le Ty MaxV ( GridFuni (2)& GF , 479 cڡ  t , 480 cڡ  l , 481 #ifde ACEVeGridFuni 482 cڡ  m , 484 cڡ  idt ) 485 {  ( gGF . GF_maxv ( t , l , 486 #ifde ACEVeGridFuni 487 m , 489 idt )); } 490 gme < ass gTy > 491 le Ty MaxV ( GridFuni (2)& GF , 492 cڡ  t , 493 cڡ  l , 494 #ifde ACEVeGridFuni 495 cڡ  m , 497 cڡ BBox & whe , 498 cڡ  idt ) 499 {  ( gGF . GF_maxv ( t , l , 500 #ifde ACEVeGridFuni 501 m , 503 whe , idt )); } 504 gme < ass gTy > 505 le Ty MaxV ( GridFuni (2)& GF , 506 cڡ  t , 507 cڡ  l , 508 #ifde ACEVeGridFuni 509 cڡ  m , 511 cڡ  mgl , 512 cڡ  idt ) 513 {  ( gGF . GF_maxv ( t , l , 514 #ifde ACEVeGridFuni 515 m , 517 mgl , idt )); } 518 gme < ass gTy > 519 le Ty MaxV ( GridFuni (2)& GF , 520 cڡ  t , 521 cڡ  l , 522 #ifde ACEVeGridFuni 523 cڡ  m , 525 cڡ  mgl , 526 cڡ BBox & whe , 527 cڡ  idt ) 528 {  ( gGF . GF_maxv ( t , l , 529 #ifde ACEVeGridFuni 530 m , 532 mgl , whe , idt )); } 534 gme < ass gTy > 535 le Ty MV ( GridFuni (2)& GF , 536 cڡ  t , 537 cڡ  l , 538 #ifde ACEVeGridFuni 539 cڡ  m , 541 cڡ  idt ) 542 {  ( gGF . GF_mv ( t , l , 543 #ifde ACEVeGridFuni 544 m , 546 idt )); } 547 gme < ass gTy > 548 le Ty MV ( GridFuni (2)& GF , 549 cڡ  t , 550 cڡ  l , 551 #ifde ACEVeGridFuni 552 cڡ  m , 554 cڡ BBox & whe , 555 cڡ  idt ) 556 {  ( gGF . GF_mv ( t , l , 557 #ifde ACEVeGridFuni 558 m , 560 whe , idt )); } 561 gme < ass gTy > 562 le Ty MV ( GridFuni (2)& GF , 563 cڡ  t , 564 cڡ  l , 565 #ifde ACEVeGridFuni 566 cڡ  m , 568 cڡ  mgl , 569 cڡ  idt ) 570 {  ( gGF . GF_mv ( t , l , 571 #ifde ACEVeGridFuni 572 m , 574 mgl , idt )); } 575 gme < ass gTy > 576 le Ty MV ( GridFuni (2)& GF , 577 cڡ  t , 578 cڡ  l , 579 #ifde ACEVeGridFuni 580 cڡ  m , 582 cڡ  mgl , 583 cڡ BBox & whe , 584 cڡ  idt ) 585 {  ( gGF . GF_mv ( t , l , 586 #ifde ACEVeGridFuni 587 m , 589 mgl , whe , idt )); } 591 gme < ass gTy > 592 le Ty Sum ( GridFuni (2)& GF , 593 cڡ  t , 594 cڡ  l , 595 #ifde ACEVeGridFuni 596 cڡ  m , 598 cڡ  idt ) 599 {  ( gGF . GF_sum ( t , l , 600 #ifde ACEVeGridFuni 601 m , 603 idt )); } 604 gme < ass gTy > 605 le Ty Sum ( GridFuni (2)& GF , 606 cڡ  t , 607 cڡ  l , 608 #ifde ACEVeGridFuni 609 cڡ  m , 611 cڡ BBox & whe , 612 cڡ  idt ) 613 {  ( gGF . GF_sum ( t , l , 614 #ifde ACEVeGridFuni 615 m , 617 whe , idt )); } 618 gme < ass gTy > 619 le Ty Sum ( GridFuni (2)& GF , 620 cڡ  t , 621 cڡ  l , 622 #ifde ACEVeGridFuni 623 cڡ  m , 625 cڡ  mgl , 626 cڡ  idt ) 627 {  ( gGF . GF_sum ( t , l , 628 #ifde ACEVeGridFuni 629 m , 631 mgl , idt )); } 632 gme < ass gTy > 633 le Ty Sum ( GridFuni (2)& GF , 634 cڡ  t , 635 cڡ  l , 636 #ifde ACEVeGridFuni 637 cڡ  m , 639 cڡ  mgl , 640 cڡ BBox & whe , 641 cڡ  idt ) 642 {  ( gGF . GF_sum ( t , l , 643 #ifde ACEVeGridFuni 644 m , 646 mgl , whe , idt )); } 648 gme < ass gTy > 649 le Ty Produ ( GridFuni (2)& GF , 650 cڡ  t , 651 cڡ  l , 652 #ifde ACEVeGridFuni 653 cڡ  m , 655 cڡ  idt ) 656 {  ( gGF . GF_odu ( t , l , 657 #ifde ACEVeGridFuni 658 m , 660 idt )); } 661 gme < ass gTy > 662 le Ty Produ ( GridFuni (2)& GF , 663 cڡ  t , 664 cڡ  l , 665 #ifde ACEVeGridFuni 666 cڡ  m , 668 cڡ BBox & whe , 669 cڡ  idt ) 670 {  ( gGF . GF_odu ( t , l , 671 #ifde ACEVeGridFuni 672 m , 674 whe , idt )); } 675 gme < ass gTy > 676 le Ty Produ ( GridFuni (2)& GF , 677 cڡ  t , 678 cڡ  l , 679 #ifde ACEVeGridFuni 680 cڡ  m , 682 cڡ  mgl , 683 cڡ  idt ) 684 {  ( gGF . GF_odu ( t , l , 685 #ifde ACEVeGridFuni 686 m , 688 mgl , idt )); } 689 gme < ass gTy > 690 le Ty Produ ( GridFuni (2)& GF , 691 cڡ  t , 692 cڡ  l , 693 #ifde ACEVeGridFuni 694 cڡ  m , 696 cڡ  mgl , 697 cڡ BBox & whe , 698 cڡ  idt ) 699 {  ( gGF . GF_odu ( t , l , 700 #ifde ACEVeGridFuni 701 m , 703 mgl , whe , idt )); } 705 gme < ass gTy > 706 le Ty Nm2 ( GridFuni (2)& GF , 707 cڡ  t , 708 cڡ  l , 709 #ifde ACEVeGridFuni 710 cڡ  m , 712 cڡ  idt ) 713 {  ( gGF . GF_nm2 ( t , l , 714 #ifde ACEVeGridFuni 715 m , 717 idt )); } 718 gme < ass gTy > 719 le Ty Nm2 ( GridFuni (2)& GF , 720 cڡ  t , 721 cڡ  l , 722 #ifde ACEVeGridFuni 723 cڡ  m , 725 cڡ BBox & whe , 726 cڡ  idt ) 727 {  ( gGF . GF_nm2 ( t , l , 728 #ifde ACEVeGridFuni 729 m , 731 whe , idt )); } 732 gme < ass gTy > 733 le Ty Nm2 ( GridFuni (2)& GF , 734 cڡ  t , 735 cڡ  l , 736 #ifde ACEVeGridFuni 737 cڡ  m , 739 cڡ  mgl , 740 cڡ  idt ) 741 {  ( gGF . GF_nm2 ( t , l , 742 #ifde ACEVeGridFuni 743 m , 745 mgl , idt )); } 746 gme < ass gTy > 747 le Ty Nm2 ( GridFuni (2)& GF , 748 cڡ  t , 749 cڡ  l , 750 #ifde ACEVeGridFuni 751 cڡ  m , 753 cڡ  mgl , 754 cڡ BBox & whe , 755 cڡ  idt ) 756 {  ( gGF . GF_nm2 ( t , l , 757 #ifde ACEVeGridFuni 758 m , 760 mgl , whe , idt )); } 766 gme < ass gTy > 767 le  SupShadow ( GridFuni (2)< Ty >& GF , 768 cڡ  t , 769 cڡ  l ) 770 { gGF . GF_SupShadow ( t , l ); } 772 gme < ass gTy > 773 le  RShadow ( GridFuni (2)< Ty >& GF , 774 cڡ  t , 775 cڡ  l ) 776 { gGF . GF_RShadow ( t , l ); } 782 gme < ass gTy > 783 le  SupMuiGrid ( GridFuni (2)< Ty >& GF , 784 cڡ  t , 785 cڡ  l , 786 cڡ  mglc , 787 cڡ  mglf , 788 cڡ  idt ) 789 { gGF . GF_SupMuiGrid ( t , l , mglc , mglf , idt ); } 790 gme < ass gTy > 791 le  SupMuiGrid ( GridFuni (2)< Ty >& GF , 792 cڡ  t , 793 cڡ  l , 794 cڡ  axis , 795 cڡ  mglc , 796 cڡ  mglf , 797 cڡ  idt ) 798 { gGF . GF_SupMuiGrid ( t , l , axis , mglc , mglf , idt ); } 800 gme < ass gTy > 801 le  RMuiGrid ( GridFuni (2)< Ty >& GF , 802 cڡ  t , 803 cڡ  l , 804 cڡ  idt ) 805 { gGF . GF_RMuiGrid ( t , l , idt ); } 811 gme < ass gTy > 812 le  Cy ( GridFuni (2)< Ty >& gff , 813 cڡ  tf , 814 cڡ  lf , 815 cڡ BBox & om , 816 GridFuni (2)< Ty >& g , 817 cڡ  , 818 cڡ  , 819 cڡ BBox & to , 820 cڡ  idt ) 821 { gg . GF_Cy ( , , gff , tf , lf , to , om , idt ); } 827 gme < ass gTy > 828 le  Wre ( GridFuni (2)< Ty >& GF , 829 cڡ  t , 830 cڡ  l , 831 #ifde ACEVeGridFuni 832 cڡ  m , 834 cڡ  gfdty ) 835 { gGF . GF_Wre ( t , l , 836 #ifde ACEVeGridFuni 837 m , 839 gfdty ); } 840 gme < ass gTy > 841 le  Wre ( GridFuni (2)< Ty >& GF , 842 cڡ  t , 843 cڡ  l , 844 #ifde ACEVeGridFuni 845 cڡ  m , 847 cڡ  mgl , 848 cڡ  gfdty ) 849 { gGF . GF_Wre ( t , l , 850 #ifde ACEVeGridFuni 851 m , 853 mgl , gfdty ); } 854 gme < ass gTy > 855 le  Wre ( GridFuni (2)< Ty >& GF , 856 cڡ  t , 857 cڡ  l , 858 #ifde ACEVeGridFuni 859 cڡ  m , 861 cڡ  mgl , 862 cڡ  idt , 863 cڡ  gfdty ) 864 { gGF . GF_Wre ( t , l , 865 #ifde ACEVeGridFuni 866 m , 868 mgl , idt , gfdty ); } 870 gme < ass gTy > 871 le  Wre ( GridFuni (2)< Ty >& GF , 872 cڡ  t , 873 cڡ  l , 874 #ifde ACEVeGridFuni 875 cڡ  m , 877 cڡ BBox & whe , 878 cڡ  gfdty ) 879 { gGF . GF_Wre ( t , l , 880 #ifde ACEVeGridFuni 881 m , 883 whe , gfdty ); } 884 gme < ass gTy > 885 le  Wre ( GridFuni (2)< Ty >& GF , 886 cڡ  t , 887 cڡ  l , 888 #ifde ACEVeGridFuni 889 cڡ  m , 891 cڡ  mgl , 892 cڡ BBox & whe , 893 cڡ  gfdty ) 894 { gGF . GF_Wre ( t , l , 895 #ifde ACEVeGridFuni 896 m , 898 mgl , whe , gfdty ); } 899 gme < ass gTy > 900 le  Wre ( GridFuni (2)< Ty >& GF , 901 cڡ  t , 902 cڡ  l , 903 #ifde ACEVeGridFuni 904 cڡ  m , 906 cڡ  mgl , 907 cڡ  idt , 908 cڡ BBox & whe , 909 cڡ  gfdty ) 910 { gGF . GF_Wre ( t , l , 911 #ifde ACEVeGridFuni 912 m , 914 mgl , idt , whe , gfdty ); } 916 gme < ass gTy > 917 le  Rd ( GridFuni (2)< Ty >& GF , 918 cڡ  t , 919 cڡ  l , 920 #ifde ACEVeGridFuni 921 cڡ  m , 923 cڡ  gfdty ) 924 { gGF . GF_Rd ( t , l , 925 #ifde ACEVeGridFuni 926 m , 928 gfdty ); } 929 gme < ass gTy > 930 le  Rd ( GridFuni (2)< Ty >& GF , 931 cڡ  t , 932 cڡ  l , 933 #ifde ACEVeGridFuni 934 cڡ  m , 936 cڡ  mgl , 937 cڡ  gfdty ) 938 { gGF . GF_Rd ( t , l , 939 #ifde ACEVeGridFuni 940 m , 942 mgl , gfdty ); } 943 gme < ass gTy > 944 le  Rd ( GridFuni (2)< Ty >& GF , 945 cڡ  t , 946 cڡ  l , 947 #ifde ACEVeGridFuni 948 cڡ  m , 950 cڡ  mgl , 951 cڡ  idt , 952 cڡ  gfdty ) 953 { gGF . GF_Rd ( t , l , 954 #ifde ACEVeGridFuni 955 m , 957 mgl , idt , gfdty ); } 959 gme < ass gTy > 960 le  Rd ( GridFuni (2)< Ty >& GF , 961 cڡ  t , 962 cڡ  l , 963 #ifde ACEVeGridFuni 964 cڡ  m , 966 cڡ BBox & whe , 967 cڡ  gfdty ) 968 { gGF . GF_Rd ( t , l , 969 #ifde ACEVeGridFuni 970 m , 972 whe , gfdty ); } 973 gme < ass gTy > 974 le  Rd ( GridFuni (2)< Ty >& GF , 975 cڡ  t , 976 cڡ  l , 977 #ifde ACEVeGridFuni 978 cڡ  m , 980 cڡ  mgl , 981 cڡ BBox & whe , 982 cڡ  gfdty ) 983 { gGF . GF_Rd ( t , l , 984 #ifde ACEVeGridFuni 985 m , 987 mgl , whe , gfdty ); } 988 gme < ass gTy > 989 le  Rd ( GridFuni (2)< Ty >& GF , 990 cڡ  t , 991 cڡ  l , 992 #ifde ACEVeGridFuni 993 cڡ  m , 995 cڡ  mgl , 996 cڡ  idt , 997 cڡ BBox & whe , 998 cڡ  gfdty ) 999 { gGF . GF_Rd ( t , l , 1000 #ifde ACEVeGridFuni 1001 m , 1003 mgl , idt , whe , gfdty ); } 1009 gme < ass gTy > 1010 le  GUCDDa ( GridFuni (2)< Ty >& GF , 1011 cڡ ACEUCD (2)& daghucd , 1012 cڡ  t , 1013 Ty *& ucdda , 1014 cڡ  ucdrv ) 1015 { gGF . GF_GUCDDa ( daghucd , t , ucdda , ucdrv ); } 1021 gme < ass gTy > 1022 le  Vw ( GridFuni (2)< Ty >& GF , 1023 cڡ  t , 1024 cڡ  l , 1025 #ifde ACEVeGridFuni 1026 cڡ  m , 1028 cڡ  axis , 1029 cڡ BBox & whe , 1030 cڡ  prv , 1031 cڡ  ty , 1032 cڡ* xg , 1033 cڡ* drv , 1034 cڡ  idt ) 1035 { gGF . GF_Vw ( t , l , 1036 #ifde ACEVeGridFuni 1037 m , 1039 axis , whe , prv , ty , xg , drv , idt ); } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionCalls3.h 1 #ide _uded_GridFuniCls3_h 2  #_uded_GridFuniCls3_h ) 17 gme < ass gTy > 18 le  CutTime ( GridFuni (3)< Ty >& GF , 19 cڡ  l , 20 cڡ  idt ) 21 { gGF . GF_CutTime ( l , idt ); } 23 gme < ass gTy > 24 le  InCutTime ( GridFuni (3)< Ty >& GF , 25 cڡ  l , 26 cڡ  idt ) 27 { gGF . GF_InCutTime ( l , idt ); } 29 gme < ass gTy > 30 le  SCutTime ( GridFuni (3)< Ty >& GF , 31 cڡ  t , cڡ  l , 32 cڡ  idt ) 33 { gGF . GF_SCutTime ( t , l , idt ); } 35 gme < ass gTy > 36 le  PviousTime ( GridFuni (3)< Ty >& GF , 37 cڡ  l , 38 cڡ  idt ) 39 { gGF . GF_PviousTime ( l , idt ); } 41 gme < ass gTy > 42 le  NextTime ( GridFuni (3)< Ty >& GF , 43 cڡ  l , 44 cڡ  idt ) 45 { gGF . GF_NextTime ( l , idt ); } 51 gme < ass gTy > 52 le  SInFuni ( GridFuni (3)< Ty >& GF , 53 * f ) 54 { gGF . GF_SInFunc ( f ); } 56 gme < ass gTy > 57 le  SUpdeFuni ( GridFuni (3)< Ty >& GF , 58 * uf ) 59 { gGF . GF_SUpdeFunc ( uf ); } 61 gme < ass gTy > 62 le  SBndryUpdeFuni ( GridFuni (3)< Ty >& GF , 63 * buf ) 64 { gGF . GF_SBndryUpdeFunc ( buf ); } 66 gme < ass gTy > 67 le  SAdtiveBndryUpdeFuni ( GridFuni (3)< Ty >& GF , 68 * abuf ) 69 { gGF . GF_SAdtiveBndryUpdeFunc ( abuf ); } 71 gme < ass gTy > 72 le  SPrgFuni ( GridFuni (3)< Ty >& GF , 73 * pf ) 74 { gGF . GF_SPrgFunc ( pf ); } 76 gme < ass gTy > 77 le  SReriFuni ( GridFuni (3)< Ty >& GF , 78 * rf ) 79 { gGF . GF_SReriFunc ( rf ); } 81 gme < ass gTy > 82 le  STimeIpFuni ( GridFuni (3)< Ty >& GF , 83 * f ) 84 { gGF . GF_STimeIpFunc ( f ); } 86 gme < ass gTy > 87 le  SFluxAddFuni ( GridFuni (3)< Ty >& GF , 88 * f ) 89 { gGF . GF_SFluxAddFunc ( f ); } 91 gme < ass gTy > 92 le  SIOFuni ( GridFuni (3)< Ty >& GF , 93 * iof ) 94 { gGF . GF_SIOFunc ( iof ); } 100 gme < ass gTy > 101 le  SBoundyVue ( GridFuni (3)< Ty >& GF , 102 cڡ Ty v ) 103 { gGF . GF_SBoundyVue ( v ); } 109 gme < ass gTy > 110 le  SwTimeLevs ( GridFuni (3)< Ty >& GF , 111 cڡ  l , 112 cڡ  t1 , 113 cڡ  t2 ) 114 { gGF . GF_SwTimeLevs ( l , t1 , t2 ); } 116 gme < ass gTy > 117 le  CyeTimeLevs ( GridFuni (3)< Ty >& GF , 118 cڡ  l ) 119 { gGF . GF_CyeTimeLevs ( l ); } 125 #ifde ACEVeGridFuni 126 gme < ass gTy > 127 le  GhPt ( GridFuni (3)< Ty >& GF , 128 cڡ  t , 129 cڡ  l , 130 cڡ  idt ) 132 gGF . GF_GhPt ( t , l , idt ); 136 gme < ass gTy > 137 le  GhPt ( GridFuni (3)< Ty >& GF , 138 cڡ  t , 139 cڡ  l , 140 #ifde ACEVeGridFuni 141 cڡ  m , 143 cڡ  idt ) 145 #ifde ACEVeGridFuni 146 gGF . GF_GhPt ( t , l , m , idt ); 148 gGF . GF_GhPt ( t , l , idt ); 152 #ifde ACEVeGridFuni 153 gme < ass gTy > 154 le  SPt ( GridFuni (3)< Ty >& GF , 155 cڡ  t , 156 cڡ  l , 157 cڡ  idt ) 159 gGF . GF_SPt ( t , l , idt ); 163 gme < ass gTy > 164 le  SPt ( GridFuni (3)< Ty >& GF , 165 cڡ  t , 166 cڡ  l , 167 #ifde ACEVeGridFuni 168 cڡ  m , 170 cڡ  idt ) 172 #ifde ACEVeGridFuni 173 gGF . GF_SPt ( t , l , m , idt ); 175 gGF . GF_SPt ( t , l , idt ); 181 #ifde ACEVeGridFuni 182 gme < ass gTy > 183 le  GhFluxes ( GridFuni (3)< Ty >& GF , 184 cڡ  t , 185 cڡ  l , 186 cڡ  idt ) 188 gGF . GF_GhFluxes ( t , l , idt ); 192 gme < ass gTy > 193 le  GhFluxes ( GridFuni (3)< Ty >& GF , 194 cڡ  t , 195 cڡ  l , 196 #ifde ACEVeGridFuni 197 cڡ  m , 199 cڡ  idt ) 201 #ifde ACEVeGridFuni 202 gGF . GF_GhFluxes ( t , l , m , idt ); 204 gGF . GF_GhFluxes ( t , l , idt ); 211 #ifde ACEVeGridFuni 212 gme < ass gTy > 213 le  Sync ( GridFuni (3)< Ty >& GF , 214 cڡ  t , 215 cڡ  l , 216 cڡ  idt ) 218 gGF . GF_Sync ( t , l , idt ); 222 gme < ass gTy > 223 le  Sync ( GridFuni (3)< Ty >& GF , 224 cڡ  t , 225 cڡ  l , 226 #ifde ACEVeGridFuni 227 cڡ  m , 229 cڡ  idt ) 231 #ifde ACEVeGridFuni 232 gGF . GF_Sync ( t , l , m , idt ); 234 gGF . GF_Sync ( t , l , idt ); 238 gme < ass gTy > 239 le  Sync ( GridFuni (3)< Ty >& GF , 240 cڡ  t , 241 cڡ  l , 242 #ifde ACEVeGridFuni 243 cڡ  m , 245 cڡ  mgl , 246 cڡ  idt ) 248 #ifde ACEVeGridFuni 249 gGF . GF_Sync ( t , l , m , mgl , idt ); 251 gGF . GF_Sync ( t , l , mgl , idt ); 255 gme < ass gTy > 256 le  Sync ( GridFuni (3)< Ty >& GF , 257 cڡ  t , 258 cڡ  l , 259 #ifde ACEVeGridFuni 260 cڡ  m , 262 cڡ  axis , 263 cڡ  d , 264 cڡ  idt ) 266 #ifde ACEVeGridFuni 267 gGF . GF_Sync ( t , l , m , axis , d , idt ); 269 gGF . GF_Sync ( t , l , axis , d , idt ); 273 gme < ass gTy > 274 le  Sync ( GridFuni (3)< Ty >& GF , 275 cڡ  t , 276 cڡ  l , 277 #ifde ACEVeGridFuni 278 cڡ  m , 280 cڡ  mgl , 281 cڡ  axis , 282 cڡ  d , 283 cڡ  idt ) 285 #ifde ACEVeGridFuni 286 gGF . GF_Sync ( t , l , m , mgl , axis , d , idt ); 288 gGF . GF_Sync ( t , l , mgl , axis , d , idt ); 296 gme < ass gTy > 297 le  Inlize ( GridFuni (3)< Ty >& GF , 298 cڡ  t , 299 cڡ  l , 300 cڡ Ty & v , 301 cڡ  idt ) 302 { gGF . GF_Fl ( v , t , l , idt ); } 303 gme < ass gTy > 304 le  Inlize ( GridFuni (3)< Ty >& GF , 305 cڡ  t , 306 cڡ  l , 307 cڡ  mgl , 308 cڡ Ty & v , 309 cڡ  idt ) 310 { gGF . GF_Fl ( v , t , l , mgl , idt ); } 316 gme < ass gTy > 317 le  Inlize ( GridFuni (3)< Ty >& GF , 318 cڡ  t , 319 cڡ  l , 320 Ty * gs , 321 cڡ  t , 322 cڡ  idt ) 323 { gGF . GF_In ( t , l , gs , t , idt ); } 324 gme < ass gTy > 325 le  Inlize ( GridFuni (3)< Ty >& GF , 326 cڡ  t , 327 cڡ  l , 328 cڡ BBox & bb , 329 Ty * gs , 330 cڡ  t , 331 cڡ  idt ) 332 { gGF . GF_In ( t , l , bb , gs , t , idt ); } 334 gme < ass gTy > 335 le  Upde ( GridFuni (3)< Ty >& GF , 336 cڡ  tf , 337 cڡ  , 338 cڡ  l , 339 Ty * gs , 340 cڡ  t , 341 cڡ  idt ) 342 { gGF . GF_Upde ( tf , , l , gs , t , idt ); } 343 gme < ass gTy > 344 le  Upde ( GridFuni (3)< Ty >& GF , 345 cڡ  tf , 346 cڡ  , 347 cڡ  l , 348 cڡ BBox & bb , 349 Ty * gs , 350 cڡ  t , 351 cڡ  idt ) 352 { gGF . GF_Upde ( tf , , l , bb , gs , t , idt ); } 354 gme < ass gTy > 355 le  Prg ( GridFuni (3)< Ty >& GF , 356 cڡ  tf , 357 cڡ  lf , 358 cڡ  , 359 cڡ  , 360 #ifde ACEVeGridFuni 361 cڡ  m , 363 Ty * gs , 364 cڡ  t , 365 cڡ  idt ) 366 { gGF . GF_Prg ( tf , lf , , , 367 #ifde ACEVeGridFuni 368 m , 370 gs , t , idt ); } 371 gme < ass gTy > 372 le  Prg ( GridFuni (3)< Ty >& GF , 373 cڡ  tf , 374 cڡ  lf , 375 cڡ  , 376 cڡ  , 377 cڡ BBox & bb , 378 #ifde ACEVeGridFuni 379 cڡ  m , 381 Ty * gs , 382 cڡ  t , 383 cڡ  idt ) 384 { gGF . GF_Prg ( tf , lf , , , bb , 385 #ifde ACEVeGridFuni 386 m , 388 gs , t , idt ); } 390 gme < ass gTy > 391 le  Reri ( GridFuni (3)< Ty >& GF , 392 cڡ  tf , 393 cڡ  lf , 394 cڡ  , 395 cڡ  , 396 #ifde ACEVeGridFuni 397 cڡ  m , 399 Ty * gs , 400 cڡ  t , 401 cڡ  idt ) 402 { gGF . GF_Reri ( tf , lf , , , 403 #ifde ACEVeGridFuni 404 m , 406 gs , t , idt ); } 407 gme < ass gTy > 408 le  Reri ( GridFuni (3)< Ty >& GF , 409 cڡ  tf , 410 cڡ  lf , 411 cڡ  , 412 cڡ  , 413 cڡ BBox & bb , 414 #ifde ACEVeGridFuni 415 cڡ  m , 418 Ty * gs , 419 cڡ  t , 420 cڡ  idt ) 421 { gGF . GF_Reri ( tf , lf , , , bb , 422 #ifde ACEVeGridFuni 423 m , 425 gs , t , idt ); } 427 gme < ass gTy > 428 le  IO ( GridFuni (3)< Ty >& GF , 429 cڡ  t , 430 cڡ  l , 431 Ty * gs , 432 cڡ  t , 433 cڡ  idt ) 434 { gGF . GF_IO ( t , l , gs , t , idt ); } 435 gme < ass gTy > 436 le  IO ( GridFuni (3)< Ty >& GF , 437 cڡ  t , 438 cڡ  l , 439 cڡ BBox & bb , 440 Ty * gs , 441 cڡ  t , 442 cڡ  idt ) 443 { gGF . GF_IO ( t , l , bb , gs , t , idt ); } 449 gme < ass gTy > 450 le  BoundyUpde ( GridFuni (3)< Ty >& GF , 451 cڡ  t , 452 cڡ  l , 453 cڡ  idt ) 454 { gGF . GF_BndryUpde ( t , l , 0, 0, idt ); } 455 gme < ass gTy > 456 le  BoundyUpde ( GridFuni (3)< Ty >& GF , 457 cڡ  t , 458 cڡ  l , 459 Ty * gs , 460 cڡ  at , 461 cڡ  idt ) 462 { gGF . GF_BndryUpde ( t , l , gs , at , idt ); } 463 gme < ass gTy > 464 le  BoundyUpde ( GridFuni (3)< Ty >& GF , 465 cڡ  t , 466 cڡ  l , 467 cڡ  mgl , 468 Ty * gs , 469 cڡ  at , 470 cڡ  idt ) 471 { gGF . GF_BndryUpde ( t , l , mgl , gs , at , idt ); } 477 gme < ass gTy > 478 le Ty MaxV ( GridFuni (3)& GF , 479 cڡ  t , 480 cڡ  l , 481 #ifde ACEVeGridFuni 482 cڡ  m , 484 cڡ  idt ) 485 {  ( gGF . GF_maxv ( t , l , 486 #ifde ACEVeGridFuni 487 m , 489 idt )); } 490 gme < ass gTy > 491 le Ty MaxV ( GridFuni (3)& GF , 492 cڡ  t , 493 cڡ  l , 494 #ifde ACEVeGridFuni 495 cڡ  m , 497 cڡ BBox & whe , 498 cڡ  idt ) 499 {  ( gGF . GF_maxv ( t , l , 500 #ifde ACEVeGridFuni 501 m , 503 whe , idt )); } 504 gme < ass gTy > 505 le Ty MaxV ( GridFuni (3)& GF , 506 cڡ  t , 507 cڡ  l , 508 #ifde ACEVeGridFuni 509 cڡ  m , 511 cڡ  mgl , 512 cڡ  idt ) 513 {  ( gGF . GF_maxv ( t , l , 514 #ifde ACEVeGridFuni 515 m , 517 mgl , idt )); } 518 gme < ass gTy > 519 le Ty MaxV ( GridFuni (3)& GF , 520 cڡ  t , 521 cڡ  l , 522 #ifde ACEVeGridFuni 523 cڡ  m , 525 cڡ  mgl , 526 cڡ BBox & whe , 527 cڡ  idt ) 528 {  ( gGF . GF_maxv ( t , l , 529 #ifde ACEVeGridFuni 530 m , 532 mgl , whe , idt )); } 534 gme < ass gTy > 535 le Ty MV ( GridFuni (3)& GF , 536 cڡ  t , 537 cڡ  l , 538 #ifde ACEVeGridFuni 539 cڡ  m , 541 cڡ  idt ) 542 {  ( gGF . GF_mv ( t , l , 543 #ifde ACEVeGridFuni 544 m , 546 idt )); } 547 gme < ass gTy > 548 le Ty MV ( GridFuni (3)& GF , 549 cڡ  t , 550 cڡ  l , 551 #ifde ACEVeGridFuni 552 cڡ  m , 554 cڡ BBox & whe , 555 cڡ  idt ) 556 {  ( gGF . GF_mv ( t , l , 557 #ifde ACEVeGridFuni 558 m , 560 whe , idt )); } 561 gme < ass gTy > 562 le Ty MV ( GridFuni (3)& GF , 563 cڡ  t , 564 cڡ  l , 565 #ifde ACEVeGridFuni 566 cڡ  m , 568 cڡ  mgl , 569 cڡ  idt ) 570 {  ( gGF . GF_mv ( t , l , 571 #ifde ACEVeGridFuni 572 m , 574 mgl , idt )); } 575 gme < ass gTy > 576 le Ty MV ( GridFuni (3)& GF , 577 cڡ  t , 578 cڡ  l , 579 #ifde ACEVeGridFuni 580 cڡ  m , 582 cڡ  mgl , 583 cڡ BBox & whe , 584 cڡ  idt ) 585 {  ( gGF . GF_mv ( t , l , 586 #ifde ACEVeGridFuni 587 m , 589 mgl , whe , idt )); } 591 gme < ass gTy > 592 le Ty Sum ( GridFuni (3)& GF , 593 cڡ  t , 594 cڡ  l , 595 #ifde ACEVeGridFuni 596 cڡ  m , 598 cڡ  idt ) 599 {  ( gGF . GF_sum ( t , l , 600 #ifde ACEVeGridFuni 601 m , 603 idt )); } 604 gme < ass gTy > 605 le Ty Sum ( GridFuni (3)& GF , 606 cڡ  t , 607 cڡ  l , 608 #ifde ACEVeGridFuni 609 cڡ  m , 611 cڡ BBox & whe , 612 cڡ  idt ) 613 {  ( gGF . GF_sum ( t , l , 614 #ifde ACEVeGridFuni 615 m , 617 whe , idt )); } 618 gme < ass gTy > 619 le Ty Sum ( GridFuni (3)& GF , 620 cڡ  t , 621 cڡ  l , 622 #ifde ACEVeGridFuni 623 cڡ  m , 625 cڡ  mgl , 626 cڡ  idt ) 627 {  ( gGF . GF_sum ( t , l , 628 #ifde ACEVeGridFuni 629 m , 631 mgl , idt )); } 632 gme < ass gTy > 633 le Ty Sum ( GridFuni (3)& GF , 634 cڡ  t , 635 cڡ  l , 636 #ifde ACEVeGridFuni 637 cڡ  m , 639 cڡ  mgl , 640 cڡ BBox & whe , 641 cڡ  idt ) 642 {  ( gGF . GF_sum ( t , l , 643 #ifde ACEVeGridFuni 644 m , 646 mgl , whe , idt )); } 648 gme < ass gTy > 649 le Ty Produ ( GridFuni (3)& GF , 650 cڡ  t , 651 cڡ  l , 652 #ifde ACEVeGridFuni 653 cڡ  m , 655 cڡ  idt ) 656 {  ( gGF . GF_odu ( t , l , 657 #ifde ACEVeGridFuni 658 m , 660 idt )); } 661 gme < ass gTy > 662 le Ty Produ ( GridFuni (3)& GF , 663 cڡ  t , 664 cڡ  l , 665 #ifde ACEVeGridFuni 666 cڡ  m , 668 cڡ BBox & whe , 669 cڡ  idt ) 670 {  ( gGF . GF_odu ( t , l , 671 #ifde ACEVeGridFuni 672 m , 674 whe , idt )); } 675 gme < ass gTy > 676 le Ty Produ ( GridFuni (3)& GF , 677 cڡ  t , 678 cڡ  l , 679 #ifde ACEVeGridFuni 680 cڡ  m , 682 cڡ  mgl , 683 cڡ  idt ) 684 {  ( gGF . GF_odu ( t , l , 685 #ifde ACEVeGridFuni 686 m , 688 mgl , idt )); } 689 gme < ass gTy > 690 le Ty Produ ( GridFuni (3)& GF , 691 cڡ  t , 692 cڡ  l , 693 #ifde ACEVeGridFuni 694 cڡ  m , 696 cڡ  mgl , 697 cڡ BBox & whe , 698 cڡ  idt ) 699 {  ( gGF . GF_odu ( t , l , 700 #ifde ACEVeGridFuni 701 m , 703 mgl , whe , idt )); } 705 gme < ass gTy > 706 le Ty Nm2 ( GridFuni (3)& GF , 707 cڡ  t , 708 cڡ  l , 709 #ifde ACEVeGridFuni 710 cڡ  m , 712 cڡ  idt ) 713 {  ( gGF . GF_nm2 ( t , l , 714 #ifde ACEVeGridFuni 715 m , 717 idt )); } 718 gme < ass gTy > 719 le Ty Nm2 ( GridFuni (3)& GF , 720 cڡ  t , 721 cڡ  l , 722 #ifde ACEVeGridFuni 723 cڡ  m , 725 cڡ BBox & whe , 726 cڡ  idt ) 727 {  ( gGF . GF_nm2 ( t , l , 728 #ifde ACEVeGridFuni 729 m , 731 whe , idt )); } 732 gme < ass gTy > 733 le Ty Nm2 ( GridFuni (3)& GF , 734 cڡ  t , 735 cڡ  l , 736 #ifde ACEVeGridFuni 737 cڡ  m , 739 cڡ  mgl , 740 cڡ  idt ) 741 {  ( gGF . GF_nm2 ( t , l , 742 #ifde ACEVeGridFuni 743 m , 745 mgl , idt )); } 746 gme < ass gTy > 747 le Ty Nm2 ( GridFuni (3)& GF , 748 cڡ  t , 749 cڡ  l , 750 #ifde ACEVeGridFuni 751 cڡ  m , 753 cڡ  mgl , 754 cڡ BBox & whe , 755 cڡ  idt ) 756 {  ( gGF . GF_nm2 ( t , l , 757 #ifde ACEVeGridFuni 758 m , 760 mgl , whe , idt )); } 766 gme < ass gTy > 767 le  SupShadow ( GridFuni (3)< Ty >& GF , 768 cڡ  t , 769 cڡ  l ) 770 { gGF . GF_SupShadow ( t , l ); } 772 gme < ass gTy > 773 le  RShadow ( GridFuni (3)< Ty >& GF , 774 cڡ  t , 775 cڡ  l ) 776 { gGF . GF_RShadow ( t , l ); } 782 gme < ass gTy > 783 le  SupMuiGrid ( GridFuni (3)< Ty >& GF , 784 cڡ  t , 785 cڡ  l , 786 cڡ  mglc , 787 cڡ  mglf , 788 cڡ  idt ) 789 { gGF . GF_SupMuiGrid ( t , l , mglc , mglf , idt ); } 790 gme < ass gTy > 791 le  SupMuiGrid ( GridFuni (3)< Ty >& GF , 792 cڡ  t , 793 cڡ  l , 794 cڡ  axis , 795 cڡ  mglc , 796 cڡ  mglf , 797 cڡ  idt ) 798 { gGF . GF_SupMuiGrid ( t , l , axis , mglc , mglf , idt ); } 800 gme < ass gTy > 801 le  RMuiGrid ( GridFuni (3)< Ty >& GF , 802 cڡ  t , 803 cڡ  l , 804 cڡ  idt ) 805 { gGF . GF_RMuiGrid ( t , l , idt ); } 811 gme < ass gTy > 812 le  Cy ( GridFuni (3)< Ty >& gff , 813 cڡ  tf , 814 cڡ  lf , 815 cڡ BBox & om , 816 GridFuni (3)< Ty >& g , 817 cڡ  , 818 cڡ  , 819 cڡ BBox & to , 820 cڡ  idt ) 821 { gg . GF_Cy ( , , gff , tf , lf , to , om , idt ); } 827 gme < ass gTy > 828 le  Wre ( GridFuni (3)< Ty >& GF , 829 cڡ  t , 830 cڡ  l , 831 #ifde ACEVeGridFuni 832 cڡ  m , 834 cڡ  gfdty ) 835 { gGF . GF_Wre ( t , l , 836 #ifde ACEVeGridFuni 837 m , 839 gfdty ); } 840 gme < ass gTy > 841 le  Wre ( GridFuni (3)< Ty >& GF , 842 cڡ  t , 843 cڡ  l , 844 #ifde ACEVeGridFuni 845 cڡ  m , 847 cڡ  mgl , 848 cڡ  gfdty ) 849 { gGF . GF_Wre ( t , l , 850 #ifde ACEVeGridFuni 851 m , 853 mgl , gfdty ); } 854 gme < ass gTy > 855 le  Wre ( GridFuni (3)< Ty >& GF , 856 cڡ  t , 857 cڡ  l , 858 #ifde ACEVeGridFuni 859 cڡ  m , 861 cڡ  mgl , 862 cڡ  idt , 863 cڡ  gfdty ) 864 { gGF . GF_Wre ( t , l , 865 #ifde ACEVeGridFuni 866 m , 868 mgl , idt , gfdty ); } 870 gme < ass gTy > 871 le  Wre ( GridFuni (3)< Ty >& GF , 872 cڡ  t , 873 cڡ  l , 874 #ifde ACEVeGridFuni 875 cڡ  m , 877 cڡ BBox & whe , 878 cڡ  gfdty ) 879 { gGF . GF_Wre ( t , l , 880 #ifde ACEVeGridFuni 881 m , 883 whe , gfdty ); } 884 gme < ass gTy > 885 le  Wre ( GridFuni (3)< Ty >& GF , 886 cڡ  t , 887 cڡ  l , 888 #ifde ACEVeGridFuni 889 cڡ  m , 891 cڡ  mgl , 892 cڡ BBox & whe , 893 cڡ  gfdty ) 894 { gGF . GF_Wre ( t , l , 895 #ifde ACEVeGridFuni 896 m , 898 mgl , whe , gfdty ); } 899 gme < ass gTy > 900 le  Wre ( GridFuni (3)< Ty >& GF , 901 cڡ  t , 902 cڡ  l , 903 #ifde ACEVeGridFuni 904 cڡ  m , 906 cڡ  mgl , 907 cڡ  idt , 908 cڡ BBox & whe , 909 cڡ  gfdty ) 910 { gGF . GF_Wre ( t , l , 911 #ifde ACEVeGridFuni 912 m , 914 mgl , idt , whe , gfdty ); } 916 gme < ass gTy > 917 le  Rd ( GridFuni (3)< Ty >& GF , 918 cڡ  t , 919 cڡ  l , 920 #ifde ACEVeGridFuni 921 cڡ  m , 923 cڡ  gfdty ) 924 { gGF . GF_Rd ( t , l , 925 #ifde ACEVeGridFuni 926 m , 928 gfdty ); } 929 gme < ass gTy > 930 le  Rd ( GridFuni (3)< Ty >& GF , 931 cڡ  t , 932 cڡ  l , 933 #ifde ACEVeGridFuni 934 cڡ  m , 936 cڡ  mgl , 937 cڡ  gfdty ) 938 { gGF . GF_Rd ( t , l , 939 #ifde ACEVeGridFuni 940 m , 942 mgl , gfdty ); } 943 gme < ass gTy > 944 le  Rd ( GridFuni (3)< Ty >& GF , 945 cڡ  t , 946 cڡ  l , 947 #ifde ACEVeGridFuni 948 cڡ  m , 950 cڡ  mgl , 951 cڡ  idt , 952 cڡ  gfdty ) 953 { gGF . GF_Rd ( t , l , 954 #ifde ACEVeGridFuni 955 m , 957 mgl , idt , gfdty ); } 959 gme < ass gTy > 960 le  Rd ( GridFuni (3)< Ty >& GF , 961 cڡ  t , 962 cڡ  l , 963 #ifde ACEVeGridFuni 964 cڡ  m , 966 cڡ BBox & whe , 967 cڡ  gfdty ) 968 { gGF . GF_Rd ( t , l , 969 #ifde ACEVeGridFuni 970 m , 972 whe , gfdty ); } 973 gme < ass gTy > 974 le  Rd ( GridFuni (3)< Ty >& GF , 975 cڡ  t , 976 cڡ  l , 977 #ifde ACEVeGridFuni 978 cڡ  m , 980 cڡ  mgl , 981 cڡ BBox & whe , 982 cڡ  gfdty ) 983 { gGF . GF_Rd ( t , l , 984 #ifde ACEVeGridFuni 985 m , 987 mgl , whe , gfdty ); } 988 gme < ass gTy > 989 le  Rd ( GridFuni (3)< Ty >& GF , 990 cڡ  t , 991 cڡ  l , 992 #ifde ACEVeGridFuni 993 cڡ  m , 995 cڡ  mgl , 996 cڡ  idt , 997 cڡ BBox & whe , 998 cڡ  gfdty ) 999 { gGF . GF_Rd ( t , l , 1000 #ifde ACEVeGridFuni 1001 m , 1003 mgl , idt , whe , gfdty ); } 1009 gme < ass gTy > 1010 le  GUCDDa ( GridFuni (3)< Ty >& GF , 1011 cڡ ACEUCD (3)& daghucd , 1012 cڡ  t , 1013 Ty *& ucdda , 1014 cڡ  ucdrv ) 1015 { gGF . GF_GUCDDa ( daghucd , t , ucdda , ucdrv ); } 1021 gme < ass gTy > 1022 le  Vw ( GridFuni (3)< Ty >& GF , 1023 cڡ  t , 1024 cڡ  l , 1025 #ifde ACEVeGridFuni 1026 cڡ  m , 1028 cڡ  axis , 1029 cڡ BBox & whe , 1030 cڡ  prv , 1031 cڡ  ty , 1032 cڡ* xg , 1033 cڡ* drv , 1034 cڡ  idt ) 1035 { gGF . GF_Vw ( t , l , 1036 #ifde ACEVeGridFuni 1037 m , 1039 axis , whe , prv , ty , xg , drv , idt ); } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionComm1.h 1 #ide _uded_GridFuniComm3_h 2  #_uded_GridFuniComm1_h ) 19 gme < ass gACE_GFTy > 20  GridFuni (1)< gACE_GFTy >:: $GF_RdDa (cڡ  time ) 22 Li < GridDaBuckVoid *>& lgdbkt = gt -> `da ( time ); 23 GridDaBuckVoid ** gdbkt = 0; 24 `ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 25 GridDaBuck < ACE_GFTy >* rcvbkt = 26 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 28 i( rcvbkt == 0) ; 30 cڡ  num = rcvbkt -> `num (); 31  i =0;i< num ;i++) { 32  gdhdr * gdh = rcvbkt -> `hd ( i ); 34 #ifde DEBUG_PRINT_GF_COMM 35 comm_rvi :: `log () << "[GF_ReadData: Extracting" 36 << * gdh 37 << "]" << dl ). `ush (); 40 #ifde DEBUG_PRINT 41 `as ( gdh -> time ==ime); 44 cڡ  t = gdh -> time ; 45 cڡ  l = gdh -> v ; 46 cڡ  idx = gdh -> dex ; 47 cڡ  idt = gdh ->ident; 48 #ifde DEBUG_PRINT 49 `as ( gdb [ t ]); 51 ( gdb [ t ][ l ][ idx ]-> `gridda ( idt )). `cy (* rcvbkt , i , ACEA ); 53 de rcvbkt ;cvbkt = 0; 54 `ACELiD (); 55 } ACEEndLo 56 lgdbkt . `emy (); 57 } } 61 gme < ass gACE_GFTy > 62  GridFuni (1)< gACE_GFTy >:: $GF_RdDa (cڡ  time , 63 cڡ  v ) 65 Li < GridDaBuckVoid *>& lgdbkt = gt -> `da ( time ); 66 GridDaBuckVoid ** gdbkt = 0; 67 `ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 68 GridDaBuck < ACE_GFTy >* rcvbkt = 69 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 71 i( rcvbkt == 0) ; 73 cڡ  num = rcvbkt -> `num (); 74  i =0;i< num ;i++) { 75  gdhdr * gdh = rcvbkt -> `hd ( i ); 76 i( v ! gdh ->level) ; 78 #ifde DEBUG_PRINT_GF_COMM 79 comm_rvi :: `log () << "[GF_ReadData: Extracting" 80 << * gdh 81 << "]" << dl ). `ush (); 84 #ifde DEBUG_PRINT 85 `as ( gdh -> time ==ime); 86 `as ( gdh -> v ==evel); 89 cڡ  t = gdh -> time ; 90 cڡ  idx = gdh -> dex ; 91 cڡ  idt = gdh ->ident; 92 #ifde DEBUG_PRINT 93 `as ( gdb [ t ]); 95 ( gdb [ t ][ v ][ idx ]-> `gridda ( idt )). `cy (* rcvbkt , i , ACEA ); 97 de rcvbkt ;cvbkt = 0; 98 `ACELiD (); 99 } ACEEndLo 101 } } 105 gme < ass gACE_GFTy > 106  GridFuni (1)< gACE_GFTy >:: GF_RdDa (cڡ  time , 107 GridDa (1)< ACE_GFTy >& to ) 109 as ( to . ok_to_dex ()); 110 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> da ( time ); 111 GridDaBuckVoid ** ggdbkt = 0; 112 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 113 gGridDaBuck < gACE_GFTy >* grcvbkt = 114 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 116 i( grcvbkt == 0) ; 118 cڡ  gnum = rcvbkt -> num (); 119  gi =0;i< gnum ;i++) { 121 #ifde DEBUG_PRINT_GF_COMM 122 gcomm_rvi :: log () << "[GF_ReadData: Extracting" 123 << * rcvbkt -> hd ( i ) 124 << "]" << dl ). ush (); 127 gto . cy (* rcvbkt , i , ACEA ); 129 de grcvbkt ;cvbkt = 0; 130 ACELiD (); 131 } ACEEndLo 132 glgdbkt . emy (); 141 gme < ass gACE_GFTy > 142  GridFuni (1)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 143 cڡ  v , 144 #ifde ACEVeGridFuni 145 cڡ  m , 147 cڡ  idt ) 149 #ide ACEVeGridFuni 150 cڡ  gm = ACEA ; 152 cڡ  gum = comm_rvi :: oc_num (); 153 cڡ  gme = comm_rvi :: oc_me (); 154 i( gum == 1) ; 156 cڡ  gt = dagh_timedex ( time , v ); 157 cڡ  gl = v ; 158 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 159 cڡ  gvs = dagh . tٮvs (); 160 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 161 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 162 ( ACE_A * ACEMaxDs + ACE_Bh ; 164  gp =0;p< gum ;p++) { 165 i( gp = me ) ; 166 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 167 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 168 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 169 ggho_nd_fo [ p ][ idx ]-> gsize , 170 gACEPacked ) 172 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 173 ggho_nd_fo [ p ][ idx ]-> gmsize , 174 gACEPacked ); 175  gs = 0; 176  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 177 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , ACE_A , ACE_Bh , 178 idt , ACENu , * gdbkt , s ); 179 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 186 gme < ass gACE_GFTy > 187  GridFuni (1)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 188 cڡ  v , 189 #ifde ACEVeGridFuni 190 cڡ  m , 192 cڡ  mgl , 193 cڡ  idt ) 195 #ide ACEVeGridFuni 196 cڡ  gm = ACEA ; 198 cڡ  gum = comm_rvi :: oc_num (); 199 cڡ  gme = comm_rvi :: oc_me (); 200 i( gum == 1) ; 202 cڡ gt = dagh_timedex ( time , v ); 203 cڡ gl = v ; 204 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 205 cڡ  gvs = dagh . tٮvs (); 206 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 207 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 208 ( ACE_A * ACEMaxDs + ACE_Bh ; 210  gp =0;p< gum ;p++) { 211 i( gp = me ) ; 212 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 213 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 214 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 215 ggho_nd_fo [ p ][ idx ]-> gsize , 216 gACEPacked ) 218 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 219 ggho_nd_fo [ p ][ idx ]-> gmsize , 220 gACEPacked ); 221  gs = 0; 222  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 223 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , ACE_A , ACE_Bh , 224 idt , mgl , * gdbkt , s ); 225 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 232 gme < ass gACE_GFTy > 233  GridFuni (1)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 234 cڡ  v , 235 #ifde ACEVeGridFuni 236 cڡ  m , 238 cڡ  axis , 239 cڡ  d , 240 cڡ  idt ) 242 #ifde DEBUG_PRINT 243 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 246 #ide ACEVeGridFuni 247 cڡ  gm = ACEA ; 249 cڡ  gme = comm_rvi :: oc_me (); 250 cڡ  gum = comm_rvi :: oc_num (); 251 i( gum == 1 ) ; 253 cڡ gt = dagh_timedex ( time , v ); 254 cڡ gl = v ; 255 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 256 cڡ  gvs = dagh . tٮvs (); 257 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 258 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 259 ( axis * ACEMaxDs + d ; 261  gp =0;p< gum ;p++) { 262 i( gp = me ) ; 263 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 264 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 265 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 266 ggho_nd_fo [ p ][ idx ]-> gsize , 267 gACEPacked ) 269 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 270 ggho_nd_fo [ p ][ idx ]-> gmsize , 271 gACEPacked ); 272  gs = 0; 273  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 274 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , axis , d , 275 idt , ACENu , * gdbkt , s ); 276 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 283 gme < ass gACE_GFTy > 284  GridFuni (1)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 285 cڡ  v , 286 #ifde ACEVeGridFuni 287 cڡ  m , 289 cڡ  mgl , 290 cڡ  axis , 291 cڡ  d , 292 cڡ  idt ) 294 #ifde DEBUG_PRINT 295 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 298 #ide ACEVeGridFuni 299 cڡ  gm = ACEA ; 301 cڡ  gum = comm_rvi :: oc_num (); 302 cڡ  gme = comm_rvi :: oc_me (); 303 i( gum == 1) ; 305 cڡ gt = dagh_timedex ( time , v ); 306 cڡ gl = v ; 307 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 308 cڡ  gvs = dagh . tٮvs (); 309 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 310 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 311 ( axis * ACEMaxDs + d ; 313  gp =0;p< gum ;p++) { 314 i( gp = me ) ; 315 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 316 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 317 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 318 ggho_nd_fo [ p ][ idx ]-> gsize , 319 gACEPacked ) 321 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 322 ggho_nd_fo [ p ][ idx ]-> gmsize , 323 gACEPacked ); 324  gs = 0; 325  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 326 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , axis , d , 327 idt , mgl , * gdbkt , s ); 328 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 339 gme < ass gACE_GFTy > 340  GridFuni (1)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 341 cڡ  v , 342 #ifde ACEVeGridFuni 343 cڡ  m , 345 cڡ  idt ) 347 #ide ACEVeGridFuni 348 cڡ  gm = ACEA ; 350 cڡ gt = dagh_timedex ( time , v ); 351 cڡ gl = v ; 352 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 354 cڡ  gvs = dagh . tٮvs (); 355 cڡ  gum = comm_rvi :: oc_num (); 356 cڡ  gme = comm_rvi :: oc_me (); 357 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 358 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 359 ( ACE_A * ACEMaxDs + ACE_Bh ; 362 i( gl > 0 GF_IpGhos ( time , v , m , ACENu , idt ); 365 cڡ  gmdex = dagh . maxdex ()+1; 366 cڡ  glcdex = ACEMaxDs * mdex * ACE_A + mdex* ACE_Bh ; 367 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 368 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 369  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 370 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 371 i( ggdbi !0 m =0; gm < gmdex ; m++) { 372 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 373 #ifde DEBUG_PRINT_GF_COMM 374 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 375 << "[" << i << "<-" << m << "]" 376 << * gdbi [ lcdex + m ] 377 << "]" << dl ). ush (); 381 ggdb [ t ][ l ][ i ]-> gridda ( idt ). cy ( gdb [t][l][ m ]->griddata(ident), 382 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 383 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 384 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 385 m ); 391 i( gum > 1) { 392  gp ; 393  gp =0;p< gum ;p++) { 394 i( gp = me ) ; 395 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 396 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 397 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 400  grcvt = 0; 401 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 402 GridDaBuckVoid ** ggdbkt = 0; 403 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 404 gGridDaBuck < gACE_GFTy >* grcvbkt = 405 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 407 i( grcvbkt == 0) ; 409 cڡ  gnum = rcvbkt -> num (); 411 #ifde DEBUG_PRINT 412 as ( num > 0); 415  gdhdr * ggdh = rcvbkt -> hd (); 416 i( gidt ! gdh -> idt || 417 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 422 #ifde DEBUG_PRINT 423 gcomm_rvi :: log (<< "MISMATCH [" << idx << "] " 424 << num << "eceived " 425 << gho_cv_t [ idx ] << "xpected " 426 << dl ). ush (); 428  gi =0;i< gnum ;i++) { 429  gdhdr * ggdh = rcvbkt -> hd ( i ); 431 #ifde DEBUG_PRINT_GF_COMM 432 gcomm_rvi :: log (<< "[GF_RdGho: Exag[" << i <<"]" 433 << * gdh 434 << "]" << dl ). ush (); 437 cڡ  g = gdh -> time ; 438 cڡ  g = gdh -> v ; 439 cڡ  glidt = gdh -> idt ; 441 cڡ  glidx = gdh -> dex % mdex ; 442 cڡ  gldex = gdh -> dex - lidx ; 444 #ifde DEBUG_PRINT 445 as ( = t ); 446 as ( = l ); 447 as ( lidt = idt ); 450 #ifde DEBUG_PRINT 451 as ( gdb [ ]); 454 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 455 rcvbkt -> bbox ( i ), 456 rcvbkt -> bbox ( i ), 457 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 458 m ); 459 grcvt ++; 461 de grcvbkt ;cvbkt = 0; 462 ACELiD (); 463 } gACEEndLo 464 #ifde DEBUG_PRINT 465 as ( rcvt < gho_cv_t [ idx ]); 468  gp =0;p< gum ;p++) { 469 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 470 gho_cv_rv [ p ][ idx ]-> porcv (); 477 gme < ass gACE_GFTy > 478  GridFuni (1)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 479 cڡ  v , 480 #ifde ACEVeGridFuni 481 cڡ  m , 483 cڡ  mgl , 484 cڡ  idt ) 486 #ide ACEVeGridFuni 487 cڡ  gm = ACEA ; 489 cڡ gt = dagh_timedex ( time , v ); 490 cڡ gl = v ; 491 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 493 cڡ  gvs = dagh . tٮvs (); 494 cڡ  gum = comm_rvi :: oc_num (); 495 cڡ  gme = comm_rvi :: oc_me (); 496 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 497 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 498 ( ACE_A * ACEMaxDs + ACE_Bh ; 501 i( gl > 0 GF_IpGhos ( time , v , m , mgl , idt ); 504 cڡ  gmdex = dagh . maxdex ()+1; 505 cڡ  glcdex = ACEMaxDs * mdex * ACE_A + mdex* ACE_Bh ; 506 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 507 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 508  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 509 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 510 i( ggdbi !0 m =0; gm < gmdex ; m++) { 511 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 512 #ifde DEBUG_PRINT_GF_COMM 513 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 514 << "[" << i << "<-" << m << "]" 515 << * gdbi [ lcdex + m ] 516 << "]" << dl ). ush (); 520 ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl ). cy ( gdb [t][l][ m ]->griddata(ident,mgl), 521 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 522 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 523 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 524 m ); 530 i( gum > 1) { 531  gp ; 532  gp =0;p< gum ;p++) { 533 i( gp = me ) ; 534 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 535 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 536 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 539  grcvt = 0; 540 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 541 GridDaBuckVoid ** ggdbkt = 0; 542 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 543 gGridDaBuck < gACE_GFTy >* grcvbkt = 544 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 546 i( grcvbkt == 0) ; 548 cڡ  gnum = rcvbkt -> num (); 550 #ifde DEBUG_PRINT 551 as ( num > 0); 554  gdhdr * ggdh = rcvbkt -> hd (); 555 i( gidt ! gdh -> idt || 556 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 561  gi =0;i< gnum ;i++) { 562  gdhdr * ggdh = rcvbkt -> hd ( i ); 564 #ifde DEBUG_PRINT_GF_COMM 565 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 566 << * gdh 567 << "]" << dl ). ush (); 570 cڡ  g = gdh -> time ; 571 cڡ  g = gdh -> v ; 572 cڡ  glidt = gdh -> idt ; 574 cڡ  glidx = gdh -> dex % mdex ; 575 cڡ  gldex = gdh -> dex - lidx ; 577 #ifde DEBUG_PRINT 578 as ( = t ); 579 as ( = l ); 580 as ( lidt = idt ); 583 #ifde DEBUG_PRINT 584 as ( gdb [ ]); 587 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 588 rcvbkt -> bbox ( i ), 589 rcvbkt -> bbox ( i ), 590 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 591 m ); 592 grcvt ++; 594 de grcvbkt ;cvbkt = 0; 595 ACELiD (); 596 } gACEEndLo 597 #ifde DEBUG_PRINT 598 as ( rcvt < gho_cv_t [ idx ]); 601  gp =0;p< gum ;p++) { 602 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 603 gho_cv_rv [ p ][ idx ]-> porcv (); 610 gme < ass gACE_GFTy > 611  GridFuni (1)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 612 cڡ  v , 613 #ifde ACEVeGridFuni 614 cڡ  m , 616 cڡ  axis , 617 cڡ  d , 618 cڡ  idt ) 620 #ifde DEBUG_PRINT 621 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 623 #ide ACEVeGridFuni 624 cڡ  gm = ACEA ; 626 cڡ gt = dagh_timedex ( time , v ); 627 cڡ gl = v ; 628 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 630 cڡ  gvs = dagh . tٮvs (); 631 cڡ  gum = comm_rvi :: oc_num (); 632 cڡ  gme = comm_rvi :: oc_me (); 633 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 634 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 635 ( axis * ACEMaxDs + d ; 638 i( gl > 0 GF_IpGhos ( time , v , m , ACENu , axis , d , idt ); 641 cڡ  gmdex = dagh . maxdex ()+1; 642 cڡ  glcdex = ACEMaxDs * mdex * axis + mdex* d ; 643 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 644 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 645  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 646 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 647 i( ggdbi !0 m =0; gm < gmdex ; m++) { 648 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 649 #ifde DEBUG_PRINT_GF_COMM 650 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 651 << "[" << i << "<-" << m << "]" 652 << * gdbi [ lcdex + m ] 653 << "]" << dl ). ush (); 657 ggdb [ t ][ l ][ i ]-> gridda ( idt ). cy ( gdb [t][l][ m ]->griddata(ident), 658 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 659 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 660 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 661 m ); 667 i( gum > 1) { 668  gp ; 669  gp =0;p< gum ;p++) { 670 i( gp = me ) ; 671 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 672 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 673 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 676  grcvt = 0; 677 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 678 GridDaBuckVoid ** ggdbkt = 0; 679 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 680 gGridDaBuck < gACE_GFTy >* grcvbkt = 681 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 683 i( grcvbkt == 0) ; 685 cڡ  gnum = rcvbkt -> num (); 687 #ifde DEBUG_PRINT 688 as ( num > 0); 691  gdhdr * ggdh = rcvbkt -> hd (); 692 i( gidt ! gdh -> idt || 693 lcdex !( gdh -> dex - (gdh->dex% mdex ))) { 698  gi =0;i< gnum ;i++) { 699  gdhdr * ggdh = rcvbkt -> hd ( i ); 701 #ifde DEBUG_PRINT_GF_COMM 702 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 703 << * gdh 704 << "]" << dl ). ush (); 707 cڡ  g = gdh -> time ; 708 cڡ  g = gdh -> v ; 709 cڡ  glidt = gdh -> idt ; 711 cڡ  glidx = gdh -> dex % mdex ; 712 cڡ  gldex = gdh -> dex - lidx ; 714 #ifde DEBUG_PRINT 715 as ( = t ); 716 as ( = l ); 717 as ( lidt = idt ); 720 #ifde DEBUG_PRINT 721 as ( gdb [ ]); 724 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 725 rcvbkt -> bbox ( i ), 726 rcvbkt -> bbox ( i ), 727 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 728 m ); 730 grcvt ++; 732 de grcvbkt ;cvbkt = 0; 733 ACELiD (); 734 } gACEEndLo 735 #ifde DEBUG_PRINT 736 as ( rcvt < gho_cv_t [ idx ]); 739  gp =0;p< gum ;p++) { 740 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 741 gho_cv_rv [ p ][ idx ]-> porcv (); 748 gme < ass gACE_GFTy > 749  GridFuni (1)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 750 cڡ  v , 751 #ifde ACEVeGridFuni 752 cڡ  m , 754 cڡ  mgl , 755 cڡ  axis , 756 cڡ  d , 757 cڡ  idt ) 759 #ifde DEBUG_PRINT 760 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 762 #ide ACEVeGridFuni 763 cڡ  gm = ACEA ; 765 cڡ gt = dagh_timedex ( time , v ); 766 cڡ gl = v ; 767 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 769 cڡ  gvs = dagh . tٮvs (); 770 cڡ  gum = comm_rvi :: oc_num (); 771 cڡ  gme = comm_rvi :: oc_me (); 772 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 773 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 774 ( axis * ACEMaxDs + d ; 777 i( gl > 0 GF_IpGhos ( time , v , m , mgl , axis , d , idt ); 780 cڡ  gmdex = dagh . maxdex ()+1; 781 cڡ  glcdex = ACEMaxDs * mdex * axis + mdex* d ; 782 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 783 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 784  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 785 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 786 i( ggdbi !0 m =0; gm < gmdex ; m++) { 787 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 788 #ifde DEBUG_PRINT_GF_COMM 789 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 790 << "[" << i << "<-" << m << "]" 791 << * gdbi [ lcdex + m ] 792 << "]" << dl ). ush (); 796 ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl ). cy ( gdb [t][l][ m ]->griddata(ident,mgl), 797 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 798 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 799 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 800 m ); 806 i( gum > 1) { 807  gp ; 808  gp =0;p< gum ;p++) { 809 i( gp = me ) ; 810 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 811 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 812 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 815  grcvt = 0; 816 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 817 GridDaBuckVoid ** ggdbkt = 0; 818 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 819 gGridDaBuck < gACE_GFTy >* grcvbkt = 820 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 822 i( grcvbkt == 0) ; 824 cڡ  gnum = rcvbkt -> num (); 826 #ifde DEBUG_PRINT 827 as ( num > 0); 830  gdhdr * ggdh = rcvbkt -> hd (); 831 i( gidt ! gdh -> idt || 832 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 837  gi =0;i< gnum ;i++) { 838  gdhdr * ggdh = rcvbkt -> hd ( i ); 840 #ifde DEBUG_PRINT_GF_COMM 841 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 842 << * gdh 843 << "]" << dl ). ush (); 846 cڡ  g = gdh -> time ; 847 cڡ  g = gdh -> v ; 848 cڡ  glidt = gdh -> idt ; 850 cڡ  glidx = gdh -> dex % mdex ; 851 cڡ  gldex = gdh -> dex - lidx ; 853 #ifde DEBUG_PRINT 854 as ( = t ); 855 as ( = l ); 856 as ( lidt = idt ); 859 #ifde DEBUG_PRINT 860 as ( gdb [ ]); 863 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 864 rcvbkt -> bbox ( i ), 865 rcvbkt -> bbox ( i ), 866 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 867 m ); 868 grcvt ++; 870 de grcvbkt ;cvbkt = 0; 871 ACELiD (); 872 } gACEEndLo 873 #ifde DEBUG_PRINT 874 as ( rcvt < gho_cv_t [ idx ]); 877  gp =0;p< gum ;p++) { 878 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 879 gho_cv_rv [ p ][ idx ]-> porcv (); 888 gme < ass gACE_GFTy > 889  GridFuni (1)< gACE_GFTy >:: $GF_IpGhos (cڡ  time , 890 cڡ  v , 891 cڡ  m , 892 cڡ  mgl , 893 cڡ  idt ) 895 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 896 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 898 i( v =0 || (! ag && ! tiag )) ; 900 #ifde ACEVeGridFuni 901 * vgfag = w [ nems ]; 902  vgfi =0;vgfi< nems ;vgfi++) 903 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 906 cڡ t = `dagh_timedex ( time , v ); 907 cڡ l = v ; 909 i( t > 0) { 910  tf = dagh . `gCutTime ( l ); 911  tc = dagh . `gCutTime ( l -1); 912  sf = dagh . `time ( l ); 913  sc = dagh . `time ( l -1); 914  tim , timeb ; 916 i( time < tc ) { 917 tim = tc ; 918 timeb = time - sf ; 920 i( time = tc && upded = ACENextTime ) { 921 tim = tc + sc ; 922 timeb = time - sf ; 924 i( time = tc && upded = ACECutTime ) { 925 tim = tc ; 926 timeb = time - sf ; 929 tim = tc + sc ; 930 timeb = time - sf ; 933 cڡ ac = 1.0*( time - timeb )/( tim -timeb); 934 cڡ emac = 1.0 - ac ; 935  = `dagh_timedex ( tim , l -1); 936  tb = `dagh_timedex ( timeb , l ); 938  i ; 939  i =0; i< ngth ; i++) { 940 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && gdb[ ][l-1][i]) { 941 `GridDa (1)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 942 `GridDa (1)< ACE_GFTy > & lm = gdb [ ][ l -1][ i ]-> `gridda ( idt , mgl ); 943 `GridDa (1)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 945 i( pfunc ) { 946  mygc = 0; ACE_GFTy mygs [1]; 947  b =0; b< gk ; b++) { 948 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 949 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 950 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 951 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 952 #ifde ACEVeGridFuni 953 vgfag , 955 mygs ,& mygc ); 956 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 957 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 958 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 959 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 960 #ifde ACEVeGridFuni 961 vgfag , 963 mygs ,& mygc ); 967 i( tiag ) { 970 `GridDa (1)< ACE_GFTy > `dup ( ); 971  b =0; b< gk ; b++) { 972 i( func ) { 973 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 974 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 975 (* func )( `FORTRAN_ARGS ( ), 976 `FORTRAN_ARGS ( pbl ),& emac , 977 `FORTRAN_ARGS ( dup ),& ac , 978 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )) 979 #ifde ACEVeGridFuni 980 , vgfag 983 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 984 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 985 (* func )( `FORTRAN_ARGS ( ), 986 `FORTRAN_ARGS ( pbl ),& emac , 987 `FORTRAN_ARGS ( dup ),& ac , 988 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )) 989 #ifde ACEVeGridFuni 990 , vgfag 995 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 996 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 997 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 998 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl ), m ); 999 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1000 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1001 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1002 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl ), m ); 1010  i ; 1011  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 1012 `GridDa (1)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1013 `GridDa (1)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 1015 i( pfunc ) { 1016  mygc = 0; ACE_GFTy mygs [1]; 1017  b =0; b< gk ; b++) { 1018 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1019 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1020 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1021 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1022 #ifde ACEVeGridFuni 1023 vgfag , 1025 mygs ,& mygc ); 1026 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1027 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1028 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1029 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1030 #ifde ACEVeGridFuni 1031 vgfag , 1033 mygs ,& mygc ); 1038 #ifde ACEVeGridFuni 1039 i( vgfag de [] vgfflag; 1041 } } 1045 gme < ass gACE_GFTy > 1046  GridFuni (1)< gACE_GFTy >:: $GF_IpGhos (cڡ  time , 1047 cڡ  v , 1048 cڡ  m , 1049 cڡ  mgl , 1050 cڡ  axis , 1051 cڡ  d , 1052 cڡ  idt ) 1054 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 1055 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 1057 i( v =0 || (! ag && ! tiag )) ; 1059 #ifde ACEVeGridFuni 1060 * vgfag = w [ nems ]; 1061  vgfi =0;vgfi< nems ;vgfi++) 1062 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 1065 cڡ t = `dagh_timedex ( time , v ); 1066 cڡ l = v ; 1068 i( t > 0) { 1069  tf = dagh . `gCutTime ( l ); 1070  tc = dagh . `gCutTime ( l -1); 1071  sf = dagh . `time ( l ); 1072  sc = dagh . `time ( l -1); 1073  tim , timeb ; 1075 i( time < tc ) { 1076 tim = tc ; 1077 timeb = time - sf ; 1079 i( time = tc && upded = ACENextTime ) { 1080 tim = tc + sc ; 1081 timeb = time - sf ; 1083 i( time = tc && upded = ACECutTime ) { 1084 tim = tc ; 1085 timeb = time - sf ; 1088 tim = tc + sc ; 1089 timeb = time - sf ; 1092 cڡ ac = 1.0*( time - timeb )/( tim -timeb); 1093 cڡ emac = 1.0 - ac ; 1094  = `dagh_timedex ( tim , l -1); 1095  tb = `dagh_timedex ( timeb , l ); 1097  i ; 1098  i =0; i< ngth ; i++) { 1099 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && gdb[ ][l-1][i]) { 1101 `GridDa (1)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 1102 `GridDa (1)< ACE_GFTy > & lm = gdb [ ][ l -1][ i ]-> `gridda ( idt , mgl ); 1103 `GridDa (1)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1108 i( pfunc ) { 1109  mygc = 0; ACE_GFTy mygs [1]; 1110  b =0; b< gk ; b++) { 1111 i( b ! axis &&xi! ACE_A ) ; 1112 i(( d = ACE_Fwd || d = ACE_Bh ) && 1113 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1114 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1115 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 1116 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1117 #ifde ACEVeGridFuni 1118 vgfag , 1120 mygs ,& mygc ); 1121 i(( d = ACE_Backwd || d = ACE_Bh ) && 1122 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1123 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1124 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 1125 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1126 #ifde ACEVeGridFuni 1127 vgfag , 1129 mygs ,& mygc ); 1133 i( tiag ) { 1136 `GridDa (1)< ACE_GFTy > `dup ( ); 1137  b =0; b< gk ; b++) { 1138 i( b ! axis &&xi! ACE_A ) ; 1139 i( func ) { 1140 i(( d = ACE_Fwd || d = ACE_Bh ) && 1141 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1142 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1143 (* func )( `FORTRAN_ARGS ( ), 1144 `FORTRAN_ARGS ( pbl ),& emac , 1145 `FORTRAN_ARGS ( dup ),& ac , 1146 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )) 1147 #ifde ACEVeGridFuni 1148 , vgfag 1151 i(( d = ACE_Backwd || d = ACE_Bh ) && 1152 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1153 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1154 (* func )( `FORTRAN_ARGS ( ), 1155 `FORTRAN_ARGS ( pbl ),& emac , 1156 `FORTRAN_ARGS ( dup ),& ac , 1157 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )) 1158 #ifde ACEVeGridFuni 1159 , vgfag 1164 i(( d = ACE_Fwd || d = ACE_Bh ) && 1165 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1166 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1167 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1168 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl ), m ); 1169 i(( d = ACE_Backwd || d = ACE_Bh ) && 1170 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1171 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1172 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1173 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl ), m ); 1181  i ; 1182  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 1183 `GridDa (1)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1184 `GridDa (1)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 1186 i( pfunc ) { 1187  mygc = 0; ACE_GFTy mygs [1]; 1188  b =0; b< gk ; b++) { 1189 i( b ! axis &&xi! ACE_A ) ; 1190 i(( d = ACE_Fwd || d = ACE_Bh ) && 1191 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1192 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1193 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1194 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1195 #ifde ACEVeGridFuni 1196 vgfag , 1198 mygs ,& mygc ); 1199 i(( d = ACE_Backwd || d = ACE_Bh ) && 1200 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1201 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1202 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1203 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1204 #ifde ACEVeGridFuni 1205 vgfag , 1207 mygs ,& mygc ); 1212 #ifde ACEVeGridFuni 1213 i( vgfag de [] vgfflag; 1215 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionComm2.h 1 #ide _uded_GridFuniComm3_h 2  #_uded_GridFuniComm2_h ) 19 gme < ass gACE_GFTy > 20  GridFuni (2)< gACE_GFTy >:: $GF_RdDa (cڡ  time ) 22 Li < GridDaBuckVoid *>& lgdbkt = gt -> `da ( time ); 23 GridDaBuckVoid ** gdbkt = 0; 24 `ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 25 GridDaBuck < ACE_GFTy >* rcvbkt = 26 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 28 i( rcvbkt == 0) ; 30 cڡ  num = rcvbkt -> `num (); 31  i =0;i< num ;i++) { 32  gdhdr * gdh = rcvbkt -> `hd ( i ); 34 #ifde DEBUG_PRINT_GF_COMM 35 comm_rvi :: `log () << "[GF_ReadData: Extracting" 36 << * gdh 37 << "]" << dl ). `ush (); 40 #ifde DEBUG_PRINT 41 `as ( gdh -> time ==ime); 44 cڡ  t = gdh -> time ; 45 cڡ  l = gdh -> v ; 46 cڡ  idx = gdh -> dex ; 47 cڡ  idt = gdh ->ident; 48 #ifde DEBUG_PRINT 49 `as ( gdb [ t ]); 51 ( gdb [ t ][ l ][ idx ]-> `gridda ( idt )). `cy (* rcvbkt , i , ACEA ); 53 de rcvbkt ;cvbkt = 0; 54 `ACELiD (); 55 } ACEEndLo 56 lgdbkt . `emy (); 57 } } 61 gme < ass gACE_GFTy > 62  GridFuni (2)< gACE_GFTy >:: $GF_RdDa (cڡ  time , 63 cڡ  v ) 65 Li < GridDaBuckVoid *>& lgdbkt = gt -> `da ( time ); 66 GridDaBuckVoid ** gdbkt = 0; 67 `ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 68 GridDaBuck < ACE_GFTy >* rcvbkt = 69 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 71 i( rcvbkt == 0) ; 73 cڡ  num = rcvbkt -> `num (); 74  i =0;i< num ;i++) { 75  gdhdr * gdh = rcvbkt -> `hd ( i ); 76 i( v ! gdh ->level) ; 78 #ifde DEBUG_PRINT_GF_COMM 79 comm_rvi :: `log () << "[GF_ReadData: Extracting" 80 << * gdh 81 << "]" << dl ). `ush (); 84 #ifde DEBUG_PRINT 85 `as ( gdh -> time ==ime); 86 `as ( gdh -> v ==evel); 89 cڡ  t = gdh -> time ; 90 cڡ  idx = gdh -> dex ; 91 cڡ  idt = gdh ->ident; 92 #ifde DEBUG_PRINT 93 `as ( gdb [ t ]); 95 ( gdb [ t ][ v ][ idx ]-> `gridda ( idt )). `cy (* rcvbkt , i , ACEA ); 97 de rcvbkt ;cvbkt = 0; 98 `ACELiD (); 99 } ACEEndLo 101 } } 105 gme < ass gACE_GFTy > 106  GridFuni (2)< gACE_GFTy >:: GF_RdDa (cڡ  time , 107 GridDa (2)< ACE_GFTy >& to ) 109 as ( to . ok_to_dex ()); 110 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> da ( time ); 111 GridDaBuckVoid ** ggdbkt = 0; 112 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 113 gGridDaBuck < gACE_GFTy >* grcvbkt = 114 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 116 i( grcvbkt == 0) ; 118 cڡ  gnum = rcvbkt -> num (); 119  gi =0;i< gnum ;i++) { 121 #ifde DEBUG_PRINT_GF_COMM 122 gcomm_rvi :: log () << "[GF_ReadData: Extracting" 123 << * rcvbkt -> hd ( i ) 124 << "]" << dl ). ush (); 127 gto . cy (* rcvbkt , i , ACEA ); 129 de grcvbkt ;cvbkt = 0; 130 ACELiD (); 131 } ACEEndLo 132 glgdbkt . emy (); 141 gme < ass gACE_GFTy > 142  GridFuni (2)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 143 cڡ  v , 144 #ifde ACEVeGridFuni 145 cڡ  m , 147 cڡ  idt ) 149 #ide ACEVeGridFuni 150 cڡ  gm = ACEA ; 152 cڡ  gum = comm_rvi :: oc_num (); 153 cڡ  gme = comm_rvi :: oc_me (); 154 i( gum == 1) ; 156 cڡ  gt = dagh_timedex ( time , v ); 157 cڡ  gl = v ; 158 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 159 cڡ  gvs = dagh . tٮvs (); 160 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 161 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 162 ( ACE_A * ACEMaxDs + ACE_Bh ; 164  gp =0;p< gum ;p++) { 165 i( gp = me ) ; 166 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 167 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 168 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 169 ggho_nd_fo [ p ][ idx ]-> gsize , 170 gACEPacked ) 172 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 173 ggho_nd_fo [ p ][ idx ]-> gmsize , 174 gACEPacked ); 175  gs = 0; 176  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 177 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , ACE_A , ACE_Bh , 178 idt , ACENu , * gdbkt , s ); 179 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 186 gme < ass gACE_GFTy > 187  GridFuni (2)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 188 cڡ  v , 189 #ifde ACEVeGridFuni 190 cڡ  m , 192 cڡ  mgl , 193 cڡ  idt ) 195 #ide ACEVeGridFuni 196 cڡ  gm = ACEA ; 198 cڡ  gum = comm_rvi :: oc_num (); 199 cڡ  gme = comm_rvi :: oc_me (); 200 i( gum == 1) ; 202 cڡ gt = dagh_timedex ( time , v ); 203 cڡ gl = v ; 204 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 205 cڡ  gvs = dagh . tٮvs (); 206 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 207 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 208 ( ACE_A * ACEMaxDs + ACE_Bh ; 210  gp =0;p< gum ;p++) { 211 i( gp = me ) ; 212 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 213 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 214 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 215 ggho_nd_fo [ p ][ idx ]-> gsize , 216 gACEPacked ) 218 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 219 ggho_nd_fo [ p ][ idx ]-> gmsize , 220 gACEPacked ); 221  gs = 0; 222  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 223 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , ACE_A , ACE_Bh , 224 idt , mgl , * gdbkt , s ); 225 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 232 gme < ass gACE_GFTy > 233  GridFuni (2)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 234 cڡ  v , 235 #ifde ACEVeGridFuni 236 cڡ  m , 238 cڡ  axis , 239 cڡ  d , 240 cڡ  idt ) 242 #ifde DEBUG_PRINT 243 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 246 #ide ACEVeGridFuni 247 cڡ  gm = ACEA ; 249 cڡ  gme = comm_rvi :: oc_me (); 250 cڡ  gum = comm_rvi :: oc_num (); 251 i( gum == 1 ) ; 253 cڡ gt = dagh_timedex ( time , v ); 254 cڡ gl = v ; 255 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 256 cڡ  gvs = dagh . tٮvs (); 257 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 258 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 259 ( axis * ACEMaxDs + d ; 261  gp =0;p< gum ;p++) { 262 i( gp = me ) ; 263 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 264 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 265 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 266 ggho_nd_fo [ p ][ idx ]-> gsize , 267 gACEPacked ) 269 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 270 ggho_nd_fo [ p ][ idx ]-> gmsize , 271 gACEPacked ); 272  gs = 0; 273  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 274 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , axis , d , 275 idt , ACENu , * gdbkt , s ); 276 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 283 gme < ass gACE_GFTy > 284  GridFuni (2)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 285 cڡ  v , 286 #ifde ACEVeGridFuni 287 cڡ  m , 289 cڡ  mgl , 290 cڡ  axis , 291 cڡ  d , 292 cڡ  idt ) 294 #ifde DEBUG_PRINT 295 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 298 #ide ACEVeGridFuni 299 cڡ  gm = ACEA ; 301 cڡ  gum = comm_rvi :: oc_num (); 302 cڡ  gme = comm_rvi :: oc_me (); 303 i( gum == 1) ; 305 cڡ gt = dagh_timedex ( time , v ); 306 cڡ gl = v ; 307 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 308 cڡ  gvs = dagh . tٮvs (); 309 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 310 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 311 ( axis * ACEMaxDs + d ; 313  gp =0;p< gum ;p++) { 314 i( gp = me ) ; 315 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 316 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 317 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 318 ggho_nd_fo [ p ][ idx ]-> gsize , 319 gACEPacked ) 321 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 322 ggho_nd_fo [ p ][ idx ]-> gmsize , 323 gACEPacked ); 324  gs = 0; 325  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 326 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , axis , d , 327 idt , mgl , * gdbkt , s ); 328 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 339 gme < ass gACE_GFTy > 340  GridFuni (2)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 341 cڡ  v , 342 #ifde ACEVeGridFuni 343 cڡ  m , 345 cڡ  idt ) 347 #ide ACEVeGridFuni 348 cڡ  gm = ACEA ; 350 cڡ gt = dagh_timedex ( time , v ); 351 cڡ gl = v ; 352 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 354 cڡ  gvs = dagh . tٮvs (); 355 cڡ  gum = comm_rvi :: oc_num (); 356 cڡ  gme = comm_rvi :: oc_me (); 357 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 358 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 359 ( ACE_A * ACEMaxDs + ACE_Bh ; 362 i( gl > 0 GF_IpGhos ( time , v , m , ACENu , idt ); 365 cڡ  gmdex = dagh . maxdex ()+1; 366 cڡ  glcdex = ACEMaxDs * mdex * ACE_A + mdex* ACE_Bh ; 367 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 368 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 369  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 370 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 371 i( ggdbi !0 m =0; gm < gmdex ; m++) { 372 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 373 #ifde DEBUG_PRINT_GF_COMM 374 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 375 << "[" << i << "<-" << m << "]" 376 << * gdbi [ lcdex + m ] 377 << "]" << dl ). ush (); 381 ggdb [ t ][ l ][ i ]-> gridda ( idt ). cy ( gdb [t][l][ m ]->griddata(ident), 382 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 383 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 384 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 385 m ); 391 i( gum > 1) { 392  gp ; 393  gp =0;p< gum ;p++) { 394 i( gp = me ) ; 395 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 396 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 397 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 400  grcvt = 0; 401 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 402 GridDaBuckVoid ** ggdbkt = 0; 403 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 404 gGridDaBuck < gACE_GFTy >* grcvbkt = 405 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 407 i( grcvbkt == 0) ; 409 cڡ  gnum = rcvbkt -> num (); 411 #ifde DEBUG_PRINT 412 as ( num > 0); 415  gdhdr * ggdh = rcvbkt -> hd (); 416 i( gidt ! gdh -> idt || 417 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 422 #ifde DEBUG_PRINT 423 gcomm_rvi :: log (<< "MISMATCH [" << idx << "] " 424 << num << "eceived " 425 << gho_cv_t [ idx ] << "xpected " 426 << dl ). ush (); 428  gi =0;i< gnum ;i++) { 429  gdhdr * ggdh = rcvbkt -> hd ( i ); 431 #ifde DEBUG_PRINT_GF_COMM 432 gcomm_rvi :: log (<< "[GF_RdGho: Exag[" << i <<"]" 433 << * gdh 434 << "]" << dl ). ush (); 437 cڡ  g = gdh -> time ; 438 cڡ  g = gdh -> v ; 439 cڡ  glidt = gdh -> idt ; 441 cڡ  glidx = gdh -> dex % mdex ; 442 cڡ  gldex = gdh -> dex - lidx ; 444 #ifde DEBUG_PRINT 445 as ( = t ); 446 as ( = l ); 447 as ( lidt = idt ); 450 #ifde DEBUG_PRINT 451 as ( gdb [ ]); 454 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 455 rcvbkt -> bbox ( i ), 456 rcvbkt -> bbox ( i ), 457 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 458 m ); 459 grcvt ++; 461 de grcvbkt ;cvbkt = 0; 462 ACELiD (); 463 } gACEEndLo 464 #ifde DEBUG_PRINT 465 as ( rcvt < gho_cv_t [ idx ]); 468  gp =0;p< gum ;p++) { 469 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 470 gho_cv_rv [ p ][ idx ]-> porcv (); 477 gme < ass gACE_GFTy > 478  GridFuni (2)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 479 cڡ  v , 480 #ifde ACEVeGridFuni 481 cڡ  m , 483 cڡ  mgl , 484 cڡ  idt ) 486 #ide ACEVeGridFuni 487 cڡ  gm = ACEA ; 489 cڡ gt = dagh_timedex ( time , v ); 490 cڡ gl = v ; 491 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 493 cڡ  gvs = dagh . tٮvs (); 494 cڡ  gum = comm_rvi :: oc_num (); 495 cڡ  gme = comm_rvi :: oc_me (); 496 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 497 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 498 ( ACE_A * ACEMaxDs + ACE_Bh ; 501 i( gl > 0 GF_IpGhos ( time , v , m , mgl , idt ); 504 cڡ  gmdex = dagh . maxdex ()+1; 505 cڡ  glcdex = ACEMaxDs * mdex * ACE_A + mdex* ACE_Bh ; 506 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 507 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 508  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 509 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 510 i( ggdbi !0 m =0; gm < gmdex ; m++) { 511 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 512 #ifde DEBUG_PRINT_GF_COMM 513 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 514 << "[" << i << "<-" << m << "]" 515 << * gdbi [ lcdex + m ] 516 << "]" << dl ). ush (); 520 ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl ). cy ( gdb [t][l][ m ]->griddata(ident,mgl), 521 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 522 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 523 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 524 m ); 530 i( gum > 1) { 531  gp ; 532  gp =0;p< gum ;p++) { 533 i( gp = me ) ; 534 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 535 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 536 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 539  grcvt = 0; 540 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 541 GridDaBuckVoid ** ggdbkt = 0; 542 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 543 gGridDaBuck < gACE_GFTy >* grcvbkt = 544 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 546 i( grcvbkt == 0) ; 548 cڡ  gnum = rcvbkt -> num (); 550 #ifde DEBUG_PRINT 551 as ( num > 0); 554  gdhdr * ggdh = rcvbkt -> hd (); 555 i( gidt ! gdh -> idt || 556 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 561  gi =0;i< gnum ;i++) { 562  gdhdr * ggdh = rcvbkt -> hd ( i ); 564 #ifde DEBUG_PRINT_GF_COMM 565 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 566 << * gdh 567 << "]" << dl ). ush (); 570 cڡ  g = gdh -> time ; 571 cڡ  g = gdh -> v ; 572 cڡ  glidt = gdh -> idt ; 574 cڡ  glidx = gdh -> dex % mdex ; 575 cڡ  gldex = gdh -> dex - lidx ; 577 #ifde DEBUG_PRINT 578 as ( = t ); 579 as ( = l ); 580 as ( lidt = idt ); 583 #ifde DEBUG_PRINT 584 as ( gdb [ ]); 587 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 588 rcvbkt -> bbox ( i ), 589 rcvbkt -> bbox ( i ), 590 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 591 m ); 592 grcvt ++; 594 de grcvbkt ;cvbkt = 0; 595 ACELiD (); 596 } gACEEndLo 597 #ifde DEBUG_PRINT 598 as ( rcvt < gho_cv_t [ idx ]); 601  gp =0;p< gum ;p++) { 602 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 603 gho_cv_rv [ p ][ idx ]-> porcv (); 610 gme < ass gACE_GFTy > 611  GridFuni (2)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 612 cڡ  v , 613 #ifde ACEVeGridFuni 614 cڡ  m , 616 cڡ  axis , 617 cڡ  d , 618 cڡ  idt ) 620 #ifde DEBUG_PRINT 621 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 623 #ide ACEVeGridFuni 624 cڡ  gm = ACEA ; 626 cڡ gt = dagh_timedex ( time , v ); 627 cڡ gl = v ; 628 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 630 cڡ  gvs = dagh . tٮvs (); 631 cڡ  gum = comm_rvi :: oc_num (); 632 cڡ  gme = comm_rvi :: oc_me (); 633 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 634 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 635 ( axis * ACEMaxDs + d ; 638 i( gl > 0 GF_IpGhos ( time , v , m , ACENu , axis , d , idt ); 641 cڡ  gmdex = dagh . maxdex ()+1; 642 cڡ  glcdex = ACEMaxDs * mdex * axis + mdex* d ; 643 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 644 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 645  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 646 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 647 i( ggdbi !0 m =0; gm < gmdex ; m++) { 648 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 649 #ifde DEBUG_PRINT_GF_COMM 650 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 651 << "[" << i << "<-" << m << "]" 652 << * gdbi [ lcdex + m ] 653 << "]" << dl ). ush (); 657 ggdb [ t ][ l ][ i ]-> gridda ( idt ). cy ( gdb [t][l][ m ]->griddata(ident), 658 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 659 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 660 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 661 m ); 667 i( gum > 1) { 668  gp ; 669  gp =0;p< gum ;p++) { 670 i( gp = me ) ; 671 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 672 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 673 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 676  grcvt = 0; 677 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 678 GridDaBuckVoid ** ggdbkt = 0; 679 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 680 gGridDaBuck < gACE_GFTy >* grcvbkt = 681 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 683 i( grcvbkt == 0) ; 685 cڡ  gnum = rcvbkt -> num (); 687 #ifde DEBUG_PRINT 688 as ( num > 0); 691  gdhdr * ggdh = rcvbkt -> hd (); 692 i( gidt ! gdh -> idt || 693 lcdex !( gdh -> dex - (gdh->dex% mdex ))) { 698  gi =0;i< gnum ;i++) { 699  gdhdr * ggdh = rcvbkt -> hd ( i ); 701 #ifde DEBUG_PRINT_GF_COMM 702 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 703 << * gdh 704 << "]" << dl ). ush (); 707 cڡ  g = gdh -> time ; 708 cڡ  g = gdh -> v ; 709 cڡ  glidt = gdh -> idt ; 711 cڡ  glidx = gdh -> dex % mdex ; 712 cڡ  gldex = gdh -> dex - lidx ; 714 #ifde DEBUG_PRINT 715 as ( = t ); 716 as ( = l ); 717 as ( lidt = idt ); 720 #ifde DEBUG_PRINT 721 as ( gdb [ ]); 724 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 725 rcvbkt -> bbox ( i ), 726 rcvbkt -> bbox ( i ), 727 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 728 m ); 730 grcvt ++; 732 de grcvbkt ;cvbkt = 0; 733 ACELiD (); 734 } gACEEndLo 735 #ifde DEBUG_PRINT 736 as ( rcvt < gho_cv_t [ idx ]); 739  gp =0;p< gum ;p++) { 740 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 741 gho_cv_rv [ p ][ idx ]-> porcv (); 748 gme < ass gACE_GFTy > 749  GridFuni (2)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 750 cڡ  v , 751 #ifde ACEVeGridFuni 752 cڡ  m , 754 cڡ  mgl , 755 cڡ  axis , 756 cڡ  d , 757 cڡ  idt ) 759 #ifde DEBUG_PRINT 760 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 762 #ide ACEVeGridFuni 763 cڡ  gm = ACEA ; 765 cڡ gt = dagh_timedex ( time , v ); 766 cڡ gl = v ; 767 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 769 cڡ  gvs = dagh . tٮvs (); 770 cڡ  gum = comm_rvi :: oc_num (); 771 cڡ  gme = comm_rvi :: oc_me (); 772 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 773 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 774 ( axis * ACEMaxDs + d ; 777 i( gl > 0 GF_IpGhos ( time , v , m , mgl , axis , d , idt ); 780 cڡ  gmdex = dagh . maxdex ()+1; 781 cڡ  glcdex = ACEMaxDs * mdex * axis + mdex* d ; 782 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 783 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 784  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 785 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 786 i( ggdbi !0 m =0; gm < gmdex ; m++) { 787 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 788 #ifde DEBUG_PRINT_GF_COMM 789 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 790 << "[" << i << "<-" << m << "]" 791 << * gdbi [ lcdex + m ] 792 << "]" << dl ). ush (); 796 ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl ). cy ( gdb [t][l][ m ]->griddata(ident,mgl), 797 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 798 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 799 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 800 m ); 806 i( gum > 1) { 807  gp ; 808  gp =0;p< gum ;p++) { 809 i( gp = me ) ; 810 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 811 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 812 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 815  grcvt = 0; 816 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 817 GridDaBuckVoid ** ggdbkt = 0; 818 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 819 gGridDaBuck < gACE_GFTy >* grcvbkt = 820 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 822 i( grcvbkt == 0) ; 824 cڡ  gnum = rcvbkt -> num (); 826 #ifde DEBUG_PRINT 827 as ( num > 0); 830  gdhdr * ggdh = rcvbkt -> hd (); 831 i( gidt ! gdh -> idt || 832 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 837  gi =0;i< gnum ;i++) { 838  gdhdr * ggdh = rcvbkt -> hd ( i ); 840 #ifde DEBUG_PRINT_GF_COMM 841 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 842 << * gdh 843 << "]" << dl ). ush (); 846 cڡ  g = gdh -> time ; 847 cڡ  g = gdh -> v ; 848 cڡ  glidt = gdh -> idt ; 850 cڡ  glidx = gdh -> dex % mdex ; 851 cڡ  gldex = gdh -> dex - lidx ; 853 #ifde DEBUG_PRINT 854 as ( = t ); 855 as ( = l ); 856 as ( lidt = idt ); 859 #ifde DEBUG_PRINT 860 as ( gdb [ ]); 863 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 864 rcvbkt -> bbox ( i ), 865 rcvbkt -> bbox ( i ), 866 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 867 m ); 868 grcvt ++; 870 de grcvbkt ;cvbkt = 0; 871 ACELiD (); 872 } gACEEndLo 873 #ifde DEBUG_PRINT 874 as ( rcvt < gho_cv_t [ idx ]); 877  gp =0;p< gum ;p++) { 878 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 879 gho_cv_rv [ p ][ idx ]-> porcv (); 888 gme < ass gACE_GFTy > 889  GridFuni (2)< gACE_GFTy >:: $GF_IpGhos (cڡ  time , 890 cڡ  v , 891 cڡ  m , 892 cڡ  mgl , 893 cڡ  idt ) 895 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 896 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 898 i( v =0 || (! ag && ! tiag )) ; 900 #ifde ACEVeGridFuni 901 * vgfag = w [ nems ]; 902  vgfi =0;vgfi< nems ;vgfi++) 903 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 906 cڡ t = `dagh_timedex ( time , v ); 907 cڡ l = v ; 909 i( t > 0) { 910  tf = dagh . `gCutTime ( l ); 911  tc = dagh . `gCutTime ( l -1); 912  sf = dagh . `time ( l ); 913  sc = dagh . `time ( l -1); 914  tim , timeb ; 916 i( time < tc ) { 917 tim = tc ; 918 timeb = time - sf ; 920 i( time = tc && upded = ACENextTime ) { 921 tim = tc + sc ; 922 timeb = time - sf ; 924 i( time = tc && upded = ACECutTime ) { 925 tim = tc ; 926 timeb = time - sf ; 929 tim = tc + sc ; 930 timeb = time - sf ; 933 cڡ ac = 1.0*( time - timeb )/( tim -timeb); 934 cڡ emac = 1.0 - ac ; 935  = `dagh_timedex ( tim , l -1); 936  tb = `dagh_timedex ( timeb , l ); 938  i ; 939  i =0; i< ngth ; i++) { 940 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && gdb[ ][l-1][i]) { 941 `GridDa (2)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 942 `GridDa (2)< ACE_GFTy > & lm = gdb [ ][ l -1][ i ]-> `gridda ( idt , mgl ); 943 `GridDa (2)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 945 i( pfunc ) { 946  mygc = 0; ACE_GFTy mygs [1]; 947  b =0; b< gk ; b++) { 948 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 949 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 950 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 951 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 952 #ifde ACEVeGridFuni 953 vgfag , 955 mygs ,& mygc ); 956 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 957 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 958 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 959 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 960 #ifde ACEVeGridFuni 961 vgfag , 963 mygs ,& mygc ); 967 i( tiag ) { 970 `GridDa (2)< ACE_GFTy > `dup ( ); 971  b =0; b< gk ; b++) { 972 i( func ) { 973 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 974 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 975 (* func )( `FORTRAN_ARGS ( ), 976 `FORTRAN_ARGS ( pbl ),& emac , 977 `FORTRAN_ARGS ( dup ),& ac , 978 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )) 979 #ifde ACEVeGridFuni 980 , vgfag 983 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 984 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 985 (* func )( `FORTRAN_ARGS ( ), 986 `FORTRAN_ARGS ( pbl ),& emac , 987 `FORTRAN_ARGS ( dup ),& ac , 988 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )) 989 #ifde ACEVeGridFuni 990 , vgfag 995 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 996 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 997 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 998 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl ), m ); 999 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1000 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1001 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1002 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl ), m ); 1010  i ; 1011  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 1012 `GridDa (2)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1013 `GridDa (2)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 1015 i( pfunc ) { 1016  mygc = 0; ACE_GFTy mygs [1]; 1017  b =0; b< gk ; b++) { 1018 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1019 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1020 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1021 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1022 #ifde ACEVeGridFuni 1023 vgfag , 1025 mygs ,& mygc ); 1026 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1027 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1028 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1029 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1030 #ifde ACEVeGridFuni 1031 vgfag , 1033 mygs ,& mygc ); 1038 #ifde ACEVeGridFuni 1039 i( vgfag de [] vgfflag; 1041 } } 1045 gme < ass gACE_GFTy > 1046  GridFuni (2)< gACE_GFTy >:: $GF_IpGhos (cڡ  time , 1047 cڡ  v , 1048 cڡ  m , 1049 cڡ  mgl , 1050 cڡ  axis , 1051 cڡ  d , 1052 cڡ  idt ) 1054 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 1055 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 1057 i( v =0 || (! ag && ! tiag )) ; 1059 #ifde ACEVeGridFuni 1060 * vgfag = w [ nems ]; 1061  vgfi =0;vgfi< nems ;vgfi++) 1062 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 1065 cڡ t = `dagh_timedex ( time , v ); 1066 cڡ l = v ; 1068 i( t > 0) { 1069  tf = dagh . `gCutTime ( l ); 1070  tc = dagh . `gCutTime ( l -1); 1071  sf = dagh . `time ( l ); 1072  sc = dagh . `time ( l -1); 1073  tim , timeb ; 1075 i( time < tc ) { 1076 tim = tc ; 1077 timeb = time - sf ; 1079 i( time = tc && upded = ACENextTime ) { 1080 tim = tc + sc ; 1081 timeb = time - sf ; 1083 i( time = tc && upded = ACECutTime ) { 1084 tim = tc ; 1085 timeb = time - sf ; 1088 tim = tc + sc ; 1089 timeb = time - sf ; 1092 cڡ ac = 1.0*( time - timeb )/( tim -timeb); 1093 cڡ emac = 1.0 - ac ; 1094  = `dagh_timedex ( tim , l -1); 1095  tb = `dagh_timedex ( timeb , l ); 1097  i ; 1098  i =0; i< ngth ; i++) { 1099 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && gdb[ ][l-1][i]) { 1101 `GridDa (2)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 1102 `GridDa (2)< ACE_GFTy > & lm = gdb [ ][ l -1][ i ]-> `gridda ( idt , mgl ); 1103 `GridDa (2)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1108 i( pfunc ) { 1109  mygc = 0; ACE_GFTy mygs [1]; 1110  b =0; b< gk ; b++) { 1111 i( b ! axis &&xi! ACE_A ) ; 1112 i(( d = ACE_Fwd || d = ACE_Bh ) && 1113 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1114 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1115 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 1116 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1117 #ifde ACEVeGridFuni 1118 vgfag , 1120 mygs ,& mygc ); 1121 i(( d = ACE_Backwd || d = ACE_Bh ) && 1122 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1123 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1124 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 1125 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1126 #ifde ACEVeGridFuni 1127 vgfag , 1129 mygs ,& mygc ); 1133 i( tiag ) { 1136 `GridDa (2)< ACE_GFTy > `dup ( ); 1137  b =0; b< gk ; b++) { 1138 i( b ! axis &&xi! ACE_A ) ; 1139 i( func ) { 1140 i(( d = ACE_Fwd || d = ACE_Bh ) && 1141 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1142 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1143 (* func )( `FORTRAN_ARGS ( ), 1144 `FORTRAN_ARGS ( pbl ),& emac , 1145 `FORTRAN_ARGS ( dup ),& ac , 1146 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )) 1147 #ifde ACEVeGridFuni 1148 , vgfag 1151 i(( d = ACE_Backwd || d = ACE_Bh ) && 1152 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1153 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1154 (* func )( `FORTRAN_ARGS ( ), 1155 `FORTRAN_ARGS ( pbl ),& emac , 1156 `FORTRAN_ARGS ( dup ),& ac , 1157 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )) 1158 #ifde ACEVeGridFuni 1159 , vgfag 1164 i(( d = ACE_Fwd || d = ACE_Bh ) && 1165 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1166 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1167 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1168 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl ), m ); 1169 i(( d = ACE_Backwd || d = ACE_Bh ) && 1170 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1171 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1172 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1173 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl ), m ); 1181  i ; 1182  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 1183 `GridDa (2)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1184 `GridDa (2)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 1186 i( pfunc ) { 1187  mygc = 0; ACE_GFTy mygs [1]; 1188  b =0; b< gk ; b++) { 1189 i( b ! axis &&xi! ACE_A ) ; 1190 i(( d = ACE_Fwd || d = ACE_Bh ) && 1191 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1192 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1193 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1194 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1195 #ifde ACEVeGridFuni 1196 vgfag , 1198 mygs ,& mygc ); 1199 i(( d = ACE_Backwd || d = ACE_Bh ) && 1200 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1201 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1202 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1203 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1204 #ifde ACEVeGridFuni 1205 vgfag , 1207 mygs ,& mygc ); 1212 #ifde ACEVeGridFuni 1213 i( vgfag de [] vgfflag; 1215 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionComm3.h 1 #ide _uded_GridFuniComm3_h 2  #_uded_GridFuniComm3_h ) 19 gme < ass gACE_GFTy > 20  GridFuni (3)< gACE_GFTy >:: $GF_RdDa (cڡ  time ) 22 Li < GridDaBuckVoid *>& lgdbkt = gt -> `da ( time ); 23 GridDaBuckVoid ** gdbkt = 0; 24 `ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 25 GridDaBuck < ACE_GFTy >* rcvbkt = 26 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 28 i( rcvbkt == 0) ; 30 cڡ  num = rcvbkt -> `num (); 31  i =0;i< num ;i++) { 32  gdhdr * gdh = rcvbkt -> `hd ( i ); 34 #ifde DEBUG_PRINT_GF_COMM 35 comm_rvi :: `log () << "[GF_ReadData: Extracting" 36 << * gdh 37 << "]" << dl ). `ush (); 40 #ifde DEBUG_PRINT 41 `as ( gdh -> time ==ime); 44 cڡ  t = gdh -> time ; 45 cڡ  l = gdh -> v ; 46 cڡ  idx = gdh -> dex ; 47 cڡ  idt = gdh ->ident; 48 #ifde DEBUG_PRINT 49 `as ( gdb [ t ]); 51 ( gdb [ t ][ l ][ idx ]-> `gridda ( idt )). `cy (* rcvbkt , i , ACEA ); 53 de rcvbkt ;cvbkt = 0; 54 `ACELiD (); 55 } ACEEndLo 56 lgdbkt . `emy (); 57 } } 61 gme < ass gACE_GFTy > 62  GridFuni (3)< gACE_GFTy >:: $GF_RdDa (cڡ  time , 63 cڡ  v ) 65 Li < GridDaBuckVoid *>& lgdbkt = gt -> `da ( time ); 66 GridDaBuckVoid ** gdbkt = 0; 67 `ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 68 GridDaBuck < ACE_GFTy >* rcvbkt = 69 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 71 i( rcvbkt == 0) ; 73 cڡ  num = rcvbkt -> `num (); 74  i =0;i< num ;i++) { 75  gdhdr * gdh = rcvbkt -> `hd ( i ); 76 i( v ! gdh ->level) ; 78 #ifde DEBUG_PRINT_GF_COMM 79 comm_rvi :: `log () << "[GF_ReadData: Extracting" 80 << * gdh 81 << "]" << dl ). `ush (); 84 #ifde DEBUG_PRINT 85 `as ( gdh -> time ==ime); 86 `as ( gdh -> v ==evel); 89 cڡ  t = gdh -> time ; 90 cڡ  idx = gdh -> dex ; 91 cڡ  idt = gdh ->ident; 92 #ifde DEBUG_PRINT 93 `as ( gdb [ t ]); 95 ( gdb [ t ][ v ][ idx ]-> `gridda ( idt )). `cy (* rcvbkt , i , ACEA ); 97 de rcvbkt ;cvbkt = 0; 98 `ACELiD (); 99 } ACEEndLo 101 } } 105 gme < ass gACE_GFTy > 106  GridFuni (3)< gACE_GFTy >:: GF_RdDa (cڡ  time , 107 GridDa (3)< ACE_GFTy >& to ) 109 as ( to . ok_to_dex ()); 110 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> da ( time ); 111 GridDaBuckVoid ** ggdbkt = 0; 112 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 113 gGridDaBuck < gACE_GFTy >* grcvbkt = 114 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 116 i( grcvbkt == 0) ; 118 cڡ  gnum = rcvbkt -> num (); 119  gi =0;i< gnum ;i++) { 121 #ifde DEBUG_PRINT_GF_COMM 122 gcomm_rvi :: log () << "[GF_ReadData: Extracting" 123 << * rcvbkt -> hd ( i ) 124 << "]" << dl ). ush (); 127 gto . cy (* rcvbkt , i , ACEA ); 129 de grcvbkt ;cvbkt = 0; 130 ACELiD (); 131 } ACEEndLo 132 glgdbkt . emy (); 141 gme < ass gACE_GFTy > 142  GridFuni (3)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 143 cڡ  v , 144 #ifde ACEVeGridFuni 145 cڡ  m , 147 cڡ  idt ) 149 #ide ACEVeGridFuni 150 cڡ  gm = ACEA ; 152 cڡ  gum = comm_rvi :: oc_num (); 153 cڡ  gme = comm_rvi :: oc_me (); 154 i( gum == 1) ; 156 cڡ  gt = dagh_timedex ( time , v ); 157 cڡ  gl = v ; 158 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 159 cڡ  gvs = dagh . tٮvs (); 160 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 161 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 162 ( ACE_A * ACEMaxDs + ACE_Bh ; 164  gp =0;p< gum ;p++) { 165 i( gp = me ) ; 166 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 167 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 168 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 169 ggho_nd_fo [ p ][ idx ]-> gsize , 170 gACEPacked ) 172 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 173 ggho_nd_fo [ p ][ idx ]-> gmsize , 174 gACEPacked ); 175  gs = 0; 176  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 177 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , ACE_A , ACE_Bh , 178 idt , ACENu , * gdbkt , s ); 179 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 186 gme < ass gACE_GFTy > 187  GridFuni (3)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 188 cڡ  v , 189 #ifde ACEVeGridFuni 190 cڡ  m , 192 cڡ  mgl , 193 cڡ  idt ) 195 #ide ACEVeGridFuni 196 cڡ  gm = ACEA ; 198 cڡ  gum = comm_rvi :: oc_num (); 199 cڡ  gme = comm_rvi :: oc_me (); 200 i( gum == 1) ; 202 cڡ gt = dagh_timedex ( time , v ); 203 cڡ gl = v ; 204 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 205 cڡ  gvs = dagh . tٮvs (); 206 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 207 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 208 ( ACE_A * ACEMaxDs + ACE_Bh ; 210  gp =0;p< gum ;p++) { 211 i( gp = me ) ; 212 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 213 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 214 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 215 ggho_nd_fo [ p ][ idx ]-> gsize , 216 gACEPacked ) 218 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 219 ggho_nd_fo [ p ][ idx ]-> gmsize , 220 gACEPacked ); 221  gs = 0; 222  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 223 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , ACE_A , ACE_Bh , 224 idt , mgl , * gdbkt , s ); 225 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 232 gme < ass gACE_GFTy > 233  GridFuni (3)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 234 cڡ  v , 235 #ifde ACEVeGridFuni 236 cڡ  m , 238 cڡ  axis , 239 cڡ  d , 240 cڡ  idt ) 242 #ifde DEBUG_PRINT 243 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 246 #ide ACEVeGridFuni 247 cڡ  gm = ACEA ; 249 cڡ  gme = comm_rvi :: oc_me (); 250 cڡ  gum = comm_rvi :: oc_num (); 251 i( gum == 1 ) ; 253 cڡ gt = dagh_timedex ( time , v ); 254 cڡ gl = v ; 255 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 256 cڡ  gvs = dagh . tٮvs (); 257 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 258 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 259 ( axis * ACEMaxDs + d ; 261  gp =0;p< gum ;p++) { 262 i( gp = me ) ; 263 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 264 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 265 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 266 ggho_nd_fo [ p ][ idx ]-> gsize , 267 gACEPacked ) 269 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 270 ggho_nd_fo [ p ][ idx ]-> gmsize , 271 gACEPacked ); 272  gs = 0; 273  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 274 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , axis , d , 275 idt , ACENu , * gdbkt , s ); 276 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 283 gme < ass gACE_GFTy > 284  GridFuni (3)< gACE_GFTy >:: GF_WreGhos (cڡ  time , 285 cڡ  v , 286 #ifde ACEVeGridFuni 287 cڡ  m , 289 cڡ  mgl , 290 cڡ  axis , 291 cڡ  d , 292 cڡ  idt ) 294 #ifde DEBUG_PRINT 295 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 298 #ide ACEVeGridFuni 299 cڡ  gm = ACEA ; 301 cڡ  gum = comm_rvi :: oc_num (); 302 cڡ  gme = comm_rvi :: oc_me (); 303 i( gum == 1) ; 305 cڡ gt = dagh_timedex ( time , v ); 306 cڡ gl = v ; 307 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 308 cڡ  gvs = dagh . tٮvs (); 309 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 310 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 311 ( axis * ACEMaxDs + d ; 313  gp =0;p< gum ;p++) { 314 i( gp = me ) ; 315 i( ggho_nd_fo [ p ] && gho_nd_fo[p][ idx ]) { 316 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 317 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 318 ggho_nd_fo [ p ][ idx ]-> gsize , 319 gACEPacked ) 321 w GridDaBuck < ACE_GFTy >( gho_nd_fo [ p ][ idx ]-> t , 322 ggho_nd_fo [ p ][ idx ]-> gmsize , 323 gACEPacked ); 324  gs = 0; 325  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 326 gs + gdb [ t ][ l ][ i ]-> gdbWreGhos ( p , m , axis , d , 327 idt , mgl , * gdbkt , s ); 328 ggt -> nd (( ACEGhoTag | idx ), gdbkt , p ); 339 gme < ass gACE_GFTy > 340  GridFuni (3)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 341 cڡ  v , 342 #ifde ACEVeGridFuni 343 cڡ  m , 345 cڡ  idt ) 347 #ide ACEVeGridFuni 348 cڡ  gm = ACEA ; 350 cڡ gt = dagh_timedex ( time , v ); 351 cڡ gl = v ; 352 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 354 cڡ  gvs = dagh . tٮvs (); 355 cڡ  gum = comm_rvi :: oc_num (); 356 cڡ  gme = comm_rvi :: oc_me (); 357 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 358 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 359 ( ACE_A * ACEMaxDs + ACE_Bh ; 362 i( gl > 0 GF_IpGhos ( time , v , m , ACENu , idt ); 365 cڡ  gmdex = dagh . maxdex ()+1; 366 cڡ  glcdex = ACEMaxDs * mdex * ACE_A + mdex* ACE_Bh ; 367 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 368 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 369  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 370 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 371 i( ggdbi !0 m =0; gm < gmdex ; m++) { 372 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 373 #ifde DEBUG_PRINT_GF_COMM 374 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 375 << "[" << i << "<-" << m << "]" 376 << * gdbi [ lcdex + m ] 377 << "]" << dl ). ush (); 381 ggdb [ t ][ l ][ i ]-> gridda ( idt ). cy ( gdb [t][l][ m ]->griddata(ident), 382 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 383 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 384 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 385 m ); 391 i( gum > 1) { 392  gp ; 393  gp =0;p< gum ;p++) { 394 i( gp = me ) ; 395 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 396 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 397 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 400  grcvt = 0; 401 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 402 GridDaBuckVoid ** ggdbkt = 0; 403 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 404 gGridDaBuck < gACE_GFTy >* grcvbkt = 405 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 407 i( grcvbkt == 0) ; 409 cڡ  gnum = rcvbkt -> num (); 411 #ifde DEBUG_PRINT 412 as ( num > 0); 415  gdhdr * ggdh = rcvbkt -> hd (); 416 i( gidt ! gdh -> idt || 417 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 422 #ifde DEBUG_PRINT 423 gcomm_rvi :: log (<< "MISMATCH [" << idx << "] " 424 << num << "eceived " 425 << gho_cv_t [ idx ] << "xpected " 426 << dl ). ush (); 428  gi =0;i< gnum ;i++) { 429  gdhdr * ggdh = rcvbkt -> hd ( i ); 431 #ifde DEBUG_PRINT_GF_COMM 432 gcomm_rvi :: log (<< "[GF_RdGho: Exag[" << i <<"]" 433 << * gdh 434 << "]" << dl ). ush (); 437 cڡ  g = gdh -> time ; 438 cڡ  g = gdh -> v ; 439 cڡ  glidt = gdh -> idt ; 441 cڡ  glidx = gdh -> dex % mdex ; 442 cڡ  gldex = gdh -> dex - lidx ; 444 #ifde DEBUG_PRINT 445 as ( = t ); 446 as ( = l ); 447 as ( lidt = idt ); 450 #ifde DEBUG_PRINT 451 as ( gdb [ ]); 454 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 455 rcvbkt -> bbox ( i ), 456 rcvbkt -> bbox ( i ), 457 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 458 m ); 459 grcvt ++; 461 de grcvbkt ;cvbkt = 0; 462 ACELiD (); 463 } gACEEndLo 464 #ifde DEBUG_PRINT 465 as ( rcvt < gho_cv_t [ idx ]); 468  gp =0;p< gum ;p++) { 469 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 470 gho_cv_rv [ p ][ idx ]-> porcv (); 477 gme < ass gACE_GFTy > 478  GridFuni (3)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 479 cڡ  v , 480 #ifde ACEVeGridFuni 481 cڡ  m , 483 cڡ  mgl , 484 cڡ  idt ) 486 #ide ACEVeGridFuni 487 cڡ  gm = ACEA ; 489 cڡ gt = dagh_timedex ( time , v ); 490 cڡ gl = v ; 491 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 493 cڡ  gvs = dagh . tٮvs (); 494 cڡ  gum = comm_rvi :: oc_num (); 495 cڡ  gme = comm_rvi :: oc_me (); 496 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 497 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 498 ( ACE_A * ACEMaxDs + ACE_Bh ; 501 i( gl > 0 GF_IpGhos ( time , v , m , mgl , idt ); 504 cڡ  gmdex = dagh . maxdex ()+1; 505 cڡ  glcdex = ACEMaxDs * mdex * ACE_A + mdex* ACE_Bh ; 506 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 507 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 508  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 509 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 510 i( ggdbi !0 m =0; gm < gmdex ; m++) { 511 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 512 #ifde DEBUG_PRINT_GF_COMM 513 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 514 << "[" << i << "<-" << m << "]" 515 << * gdbi [ lcdex + m ] 516 << "]" << dl ). ush (); 520 ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl ). cy ( gdb [t][l][ m ]->griddata(ident,mgl), 521 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 522 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 523 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 524 m ); 530 i( gum > 1) { 531  gp ; 532  gp =0;p< gum ;p++) { 533 i( gp = me ) ; 534 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 535 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 536 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 539  grcvt = 0; 540 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 541 GridDaBuckVoid ** ggdbkt = 0; 542 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 543 gGridDaBuck < gACE_GFTy >* grcvbkt = 544 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 546 i( grcvbkt == 0) ; 548 cڡ  gnum = rcvbkt -> num (); 550 #ifde DEBUG_PRINT 551 as ( num > 0); 554  gdhdr * ggdh = rcvbkt -> hd (); 555 i( gidt ! gdh -> idt || 556 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 561  gi =0;i< gnum ;i++) { 562  gdhdr * ggdh = rcvbkt -> hd ( i ); 564 #ifde DEBUG_PRINT_GF_COMM 565 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 566 << * gdh 567 << "]" << dl ). ush (); 570 cڡ  g = gdh -> time ; 571 cڡ  g = gdh -> v ; 572 cڡ  glidt = gdh -> idt ; 574 cڡ  glidx = gdh -> dex % mdex ; 575 cڡ  gldex = gdh -> dex - lidx ; 577 #ifde DEBUG_PRINT 578 as ( = t ); 579 as ( = l ); 580 as ( lidt = idt ); 583 #ifde DEBUG_PRINT 584 as ( gdb [ ]); 587 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 588 rcvbkt -> bbox ( i ), 589 rcvbkt -> bbox ( i ), 590 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 591 m ); 592 grcvt ++; 594 de grcvbkt ;cvbkt = 0; 595 ACELiD (); 596 } gACEEndLo 597 #ifde DEBUG_PRINT 598 as ( rcvt < gho_cv_t [ idx ]); 601  gp =0;p< gum ;p++) { 602 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 603 gho_cv_rv [ p ][ idx ]-> porcv (); 610 gme < ass gACE_GFTy > 611  GridFuni (3)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 612 cڡ  v , 613 #ifde ACEVeGridFuni 614 cڡ  m , 616 cڡ  axis , 617 cڡ  d , 618 cڡ  idt ) 620 #ifde DEBUG_PRINT 621 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 623 #ide ACEVeGridFuni 624 cڡ  gm = ACEA ; 626 cڡ gt = dagh_timedex ( time , v ); 627 cڡ gl = v ; 628 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 630 cڡ  gvs = dagh . tٮvs (); 631 cڡ  gum = comm_rvi :: oc_num (); 632 cڡ  gme = comm_rvi :: oc_me (); 633 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 634 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 635 ( axis * ACEMaxDs + d ; 638 i( gl > 0 GF_IpGhos ( time , v , m , ACENu , axis , d , idt ); 641 cڡ  gmdex = dagh . maxdex ()+1; 642 cڡ  glcdex = ACEMaxDs * mdex * axis + mdex* d ; 643 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 644 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 645  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 646 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 647 i( ggdbi !0 m =0; gm < gmdex ; m++) { 648 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 649 #ifde DEBUG_PRINT_GF_COMM 650 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 651 << "[" << i << "<-" << m << "]" 652 << * gdbi [ lcdex + m ] 653 << "]" << dl ). ush (); 657 ggdb [ t ][ l ][ i ]-> gridda ( idt ). cy ( gdb [t][l][ m ]->griddata(ident), 658 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 659 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 660 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 661 m ); 667 i( gum > 1) { 668  gp ; 669  gp =0;p< gum ;p++) { 670 i( gp = me ) ; 671 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 672 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 673 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 676  grcvt = 0; 677 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 678 GridDaBuckVoid ** ggdbkt = 0; 679 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 680 gGridDaBuck < gACE_GFTy >* grcvbkt = 681 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 683 i( grcvbkt == 0) ; 685 cڡ  gnum = rcvbkt -> num (); 687 #ifde DEBUG_PRINT 688 as ( num > 0); 691  gdhdr * ggdh = rcvbkt -> hd (); 692 i( gidt ! gdh -> idt || 693 lcdex !( gdh -> dex - (gdh->dex% mdex ))) { 698  gi =0;i< gnum ;i++) { 699  gdhdr * ggdh = rcvbkt -> hd ( i ); 701 #ifde DEBUG_PRINT_GF_COMM 702 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 703 << * gdh 704 << "]" << dl ). ush (); 707 cڡ  g = gdh -> time ; 708 cڡ  g = gdh -> v ; 709 cڡ  glidt = gdh -> idt ; 711 cڡ  glidx = gdh -> dex % mdex ; 712 cڡ  gldex = gdh -> dex - lidx ; 714 #ifde DEBUG_PRINT 715 as ( = t ); 716 as ( = l ); 717 as ( lidt = idt ); 720 #ifde DEBUG_PRINT 721 as ( gdb [ ]); 724 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 725 rcvbkt -> bbox ( i ), 726 rcvbkt -> bbox ( i ), 727 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 728 m ); 730 grcvt ++; 732 de grcvbkt ;cvbkt = 0; 733 ACELiD (); 734 } gACEEndLo 735 #ifde DEBUG_PRINT 736 as ( rcvt < gho_cv_t [ idx ]); 739  gp =0;p< gum ;p++) { 740 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 741 gho_cv_rv [ p ][ idx ]-> porcv (); 748 gme < ass gACE_GFTy > 749  GridFuni (3)< gACE_GFTy >:: GF_RdGhos (cڡ  time , 750 cڡ  v , 751 #ifde ACEVeGridFuni 752 cڡ  m , 754 cڡ  mgl , 755 cڡ  axis , 756 cڡ  d , 757 cڡ  idt ) 759 #ifde DEBUG_PRINT 760 as ( d == ACE_Fwd || d== ACE_Backwd || axis == ACE_A ); 762 #ide ACEVeGridFuni 763 cڡ  gm = ACEA ; 765 cڡ gt = dagh_timedex ( time , v ); 766 cڡ gl = v ; 767 i(! comm ( t , l || gt > 2* gtime__d || ! ggdb [t]) ; 769 cڡ  gvs = dagh . tٮvs (); 770 cڡ  gum = comm_rvi :: oc_num (); 771 cڡ  gme = comm_rvi :: oc_me (); 772 cڡ  gt1 = vs * ACEMaxAxis * ACEMaxDs ; 773 cڡ  gidx = ( l * ACEMaxAxis * ACEMaxDs ) + 774 ( axis * ACEMaxDs + d ; 777 i( gl > 0 GF_IpGhos ( time , v , m , mgl , axis , d , idt ); 780 cڡ  gmdex = dagh . maxdex ()+1; 781 cڡ  glcdex = ACEMaxDs * mdex * axis + mdex* d ; 782 i( ggho_cv_fo [ me ] && gho_cv_fo[me][ idx ] 783 && ggho_cv_fo [ me ][ idx ]-> gt > 0) { 784  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 785 GDB_Iai ** ggdbi = gdb [ t ][ l ][ i ]-> gdbRdInfo ( me ); 786 i( ggdbi !0 m =0; gm < gmdex ; m++) { 787 i( gm ! i && ( gdbi [ lcdex + m ]&& ( gdb [ t ][ l ][m])) { 788 #ifde DEBUG_PRINT_GF_COMM 789 comm_rvi :: log () << "[GF_ReadGhosts::LocalCopy " 790 << "[" << i << "<-" << m << "]" 791 << * gdbi [ lcdex + m ] 792 << "]" << dl ). ush (); 796 ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl ). cy ( gdb [t][l][ m ]->griddata(ident,mgl), 797 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 798 gdb [ t ][ l ][ i ]-> ibox (* gdbi [ lcdex + m ], idt , mgl ), 799 gdb [ t ][ l ][ i ]-> mgedbox ( idt ), 800 m ); 806 i( gum > 1) { 807  gp ; 808  gp =0;p< gum ;p++) { 809 i( gp = me ) ; 810 i( ggho_cv_rv [ p ] && gho_cv_rv[p][ idx ] 811 && ! ggho_cv_rv [ p ][ idx ]-> ived ()) 812 gcomm_rvi :: rve (* gho_cv_rv [ p ][ idx ]-> q ()); 815  grcvt = 0; 816 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , l ); 817 GridDaBuckVoid ** ggdbkt = 0; 818 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 819 gGridDaBuck < gACE_GFTy >* grcvbkt = 820 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 822 i( grcvbkt == 0) ; 824 cڡ  gnum = rcvbkt -> num (); 826 #ifde DEBUG_PRINT 827 as ( num > 0); 830  gdhdr * ggdh = rcvbkt -> hd (); 831 i( gidt ! gdh -> idt || 832 lcdex !( gdh -> dex -(gdh->dex% mdex ))) { 837  gi =0;i< gnum ;i++) { 838  gdhdr * ggdh = rcvbkt -> hd ( i ); 840 #ifde DEBUG_PRINT_GF_COMM 841 gcomm_rvi :: log () << "[GF_ReadGhost: Extracting" 842 << * gdh 843 << "]" << dl ). ush (); 846 cڡ  g = gdh -> time ; 847 cڡ  g = gdh -> v ; 848 cڡ  glidt = gdh -> idt ; 850 cڡ  glidx = gdh -> dex % mdex ; 851 cڡ  gldex = gdh -> dex - lidx ; 853 #ifde DEBUG_PRINT 854 as ( = t ); 855 as ( = l ); 856 as ( lidt = idt ); 859 #ifde DEBUG_PRINT 860 as ( gdb [ ]); 863 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 864 rcvbkt -> bbox ( i ), 865 rcvbkt -> bbox ( i ), 866 gdb [ ][ ][ lidx ]-> mgedbox ( lidt ), 867 m ); 868 grcvt ++; 870 de grcvbkt ;cvbkt = 0; 871 ACELiD (); 872 } gACEEndLo 873 #ifde DEBUG_PRINT 874 as ( rcvt < gho_cv_t [ idx ]); 877  gp =0;p< gum ;p++) { 878 i( gp ! me && gho_cv_rv [ p ] && gho_cv_rv[p][ idx ]) 879 gho_cv_rv [ p ][ idx ]-> porcv (); 888 gme < ass gACE_GFTy > 889  GridFuni (3)< gACE_GFTy >:: $GF_IpGhos (cڡ  time , 890 cڡ  v , 891 cڡ  m , 892 cڡ  mgl , 893 cڡ  idt ) 895 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 896 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 898 i( v =0 || (! ag && ! tiag )) ; 900 #ifde ACEVeGridFuni 901 * vgfag = w [ nems ]; 902  vgfi =0;vgfi< nems ;vgfi++) 903 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 906 cڡ t = `dagh_timedex ( time , v ); 907 cڡ l = v ; 909 i( t > 0) { 910  tf = dagh . `gCutTime ( l ); 911  tc = dagh . `gCutTime ( l -1); 912  sf = dagh . `time ( l ); 913  sc = dagh . `time ( l -1); 914  tim , timeb ; 916 i( time < tc ) { 917 tim = tc ; 918 timeb = time - sf ; 920 i( time = tc && upded = ACENextTime ) { 921 tim = tc + sc ; 922 timeb = time - sf ; 924 i( time = tc && upded = ACECutTime ) { 925 tim = tc ; 926 timeb = time - sf ; 929 tim = tc + sc ; 930 timeb = time - sf ; 933 cڡ ac = 1.0*( time - timeb )/( tim -timeb); 934 cڡ emac = 1.0 - ac ; 935  = `dagh_timedex ( tim , l -1); 936  tb = `dagh_timedex ( timeb , l ); 938  i ; 939  i =0; i< ngth ; i++) { 940 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && gdb[ ][l-1][i]) { 941 `GridDa (3)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 942 `GridDa (3)< ACE_GFTy > & lm = gdb [ ][ l -1][ i ]-> `gridda ( idt , mgl ); 943 `GridDa (3)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 945 i( pfunc ) { 946  mygc = 0; ACE_GFTy mygs [1]; 947  b =0; b< gk ; b++) { 948 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 949 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 950 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 951 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 952 #ifde ACEVeGridFuni 953 vgfag , 955 mygs ,& mygc ); 956 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 957 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 958 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 959 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 960 #ifde ACEVeGridFuni 961 vgfag , 963 mygs ,& mygc ); 967 i( tiag ) { 970 `GridDa (3)< ACE_GFTy > `dup ( ); 971  b =0; b< gk ; b++) { 972 i( func ) { 973 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 974 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 975 (* func )( `FORTRAN_ARGS ( ), 976 `FORTRAN_ARGS ( pbl ),& emac , 977 `FORTRAN_ARGS ( dup ),& ac , 978 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )) 979 #ifde ACEVeGridFuni 980 , vgfag 983 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 984 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 985 (* func )( `FORTRAN_ARGS ( ), 986 `FORTRAN_ARGS ( pbl ),& emac , 987 `FORTRAN_ARGS ( dup ),& ac , 988 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )) 989 #ifde ACEVeGridFuni 990 , vgfag 995 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 996 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 997 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 998 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl ), m ); 999 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1000 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1001 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1002 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl ), m ); 1010  i ; 1011  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 1012 `GridDa (3)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1013 `GridDa (3)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 1015 i( pfunc ) { 1016  mygc = 0; ACE_GFTy mygs [1]; 1017  b =0; b< gk ; b++) { 1018 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1019 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1020 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1021 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1022 #ifde ACEVeGridFuni 1023 vgfag , 1025 mygs ,& mygc ); 1026 i( gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1027 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1028 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1029 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1030 #ifde ACEVeGridFuni 1031 vgfag , 1033 mygs ,& mygc ); 1038 #ifde ACEVeGridFuni 1039 i( vgfag de [] vgfflag; 1041 } } 1045 gme < ass gACE_GFTy > 1046  GridFuni (3)< gACE_GFTy >:: $GF_IpGhos (cڡ  time , 1047 cڡ  v , 1048 cڡ  m , 1049 cڡ  mgl , 1050 cڡ  axis , 1051 cڡ  d , 1052 cڡ  idt ) 1054 cڡ  ag = ( idt = ACE_Ma ? `g (: `shadow_g (); 1055 cڡ  tiag = ( idt = ACE_Ma ? `timeީe (: `shadow_timeީe (); 1057 i( v =0 || (! ag && ! tiag )) ; 1059 #ifde ACEVeGridFuni 1060 * vgfag = w [ nems ]; 1061  vgfi =0;vgfi< nems ;vgfi++) 1062 vgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 1065 cڡ t = `dagh_timedex ( time , v ); 1066 cڡ l = v ; 1068 i( t > 0) { 1069  tf = dagh . `gCutTime ( l ); 1070  tc = dagh . `gCutTime ( l -1); 1071  sf = dagh . `time ( l ); 1072  sc = dagh . `time ( l -1); 1073  tim , timeb ; 1075 i( time < tc ) { 1076 tim = tc ; 1077 timeb = time - sf ; 1079 i( time = tc && upded = ACENextTime ) { 1080 tim = tc + sc ; 1081 timeb = time - sf ; 1083 i( time = tc && upded = ACECutTime ) { 1084 tim = tc ; 1085 timeb = time - sf ; 1088 tim = tc + sc ; 1089 timeb = time - sf ; 1092 cڡ ac = 1.0*( time - timeb )/( tim -timeb); 1093 cڡ emac = 1.0 - ac ; 1094  = `dagh_timedex ( tim , l -1); 1095  tb = `dagh_timedex ( timeb , l ); 1097  i ; 1098  i =0; i< ngth ; i++) { 1099 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i&& gdb[ tb ][l][i] && gdb[ ][l-1][i]) { 1101 `GridDa (3)< ACE_GFTy > & pbl = gdb [ tb ][ l ][ i ]-> `gridda ( idt , mgl ); 1102 `GridDa (3)< ACE_GFTy > & lm = gdb [ ][ l -1][ i ]-> `gridda ( idt , mgl ); 1103 `GridDa (3)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1108 i( pfunc ) { 1109  mygc = 0; ACE_GFTy mygs [1]; 1110  b =0; b< gk ; b++) { 1111 i( b ! axis &&xi! ACE_A ) ; 1112 i(( d = ACE_Fwd || d = ACE_Bh ) && 1113 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1114 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1115 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 1116 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1117 #ifde ACEVeGridFuni 1118 vgfag , 1120 mygs ,& mygc ); 1121 i(( d = ACE_Backwd || d = ACE_Bh ) && 1122 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1123 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1124 (* pfunc )( `FORTRAN_ARGS ( lm ),FORTRAN_ARGS( ), 1125 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1126 #ifde ACEVeGridFuni 1127 vgfag , 1129 mygs ,& mygc ); 1133 i( tiag ) { 1136 `GridDa (3)< ACE_GFTy > `dup ( ); 1137  b =0; b< gk ; b++) { 1138 i( b ! axis &&xi! ACE_A ) ; 1139 i( func ) { 1140 i(( d = ACE_Fwd || d = ACE_Bh ) && 1141 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1142 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1143 (* func )( `FORTRAN_ARGS ( ), 1144 `FORTRAN_ARGS ( pbl ),& emac , 1145 `FORTRAN_ARGS ( dup ),& ac , 1146 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )) 1147 #ifde ACEVeGridFuni 1148 , vgfag 1151 i(( d = ACE_Backwd || d = ACE_Bh ) && 1152 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1153 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1154 (* func )( `FORTRAN_ARGS ( ), 1155 `FORTRAN_ARGS ( pbl ),& emac , 1156 `FORTRAN_ARGS ( dup ),& ac , 1157 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )) 1158 #ifde ACEVeGridFuni 1159 , vgfag 1164 i(( d = ACE_Fwd || d = ACE_Bh ) && 1165 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1166 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1167 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1168 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl ), m ); 1169 i(( d = ACE_Backwd || d = ACE_Bh ) && 1170 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1171 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1172 . `l_ ( pbl ,(1.0- ac ), dup ,frac, 1173 gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl ), m ); 1181  i ; 1182  i =0; i< ngth ; i++i( gdb [ t ][ l ][i] && gdb[t][l][i]-> `dexme (i)) { 1183 `GridDa (3)< ACE_GFTy > & = gdb [ t ][ l ][ i ]-> `gridda ( idt , mgl ); 1184 `GridDa (3)< ACE_GFTy > & m = gdb [ t ][ l -1][ i ]-> `gridda ( idt , mgl ); 1186 i( pfunc ) { 1187  mygc = 0; ACE_GFTy mygs [1]; 1188  b =0; b< gk ; b++) { 1189 i( b ! axis &&xi! ACE_A ) ; 1190 i(( d = ACE_Fwd || d = ACE_Bh ) && 1191 gdb [ t ][ l ][ i ]-> `g_gho (2* b ) && 1192 gdb [ t ][ l ][ i ]-> `has_ighb (2* b )) 1193 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1194 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b , idt , mgl )), 1195 #ifde ACEVeGridFuni 1196 vgfag , 1198 mygs ,& mygc ); 1199 i(( d = ACE_Backwd || d = ACE_Bh ) && 1200 gdb [ t ][ l ][ i ]-> `g_gho (2* b +1) && 1201 gdb [ t ][ l ][ i ]-> `has_ighb (2* b +1)) 1202 (* pfunc )( `FORTRAN_ARGS ( m ),FORTRAN_ARGS( ), 1203 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `g_ghobox (2* b +1, idt , mgl )), 1204 #ifde ACEVeGridFuni 1205 vgfag , 1207 mygs ,& mygc ); 1212 #ifde ACEVeGridFuni 1213 i( vgfag de [] vgfflag; 1215 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionDICE1.h 1 #ide _uded_GridFuniDICE1_h 2  #_uded_GridFuniDICE1_h ) 14 #ifde DICE 25 gme < ass gTy > 26  GridFuni (1)< gTy >:: $SObjDesti () 28 `rtf ( m_rObjeDesti , 30 m_nObjeID , m_nObjeTy , game , gk ); 31 } } 33 gme < ass gTy > 34  GridFuni (1)< gTy >:: $SObjVws () 37 `rtf ( m_rObjeVws ,"START_VIEWS 4 "); 39 `rt ( m_rObjeVws ,"MaxVal TEXTDISPLAY "); 40 `rt ( m_rObjeVws ,"MinVal TEXTDISPLAY "); 41 `rt ( m_rObjeVws ,"Norm TEXTDISPLAY "); 42 `rt ( m_rObjeVws ,"XSlice 1DPLOT "); 45 `rt ( m_rObjeVws ,"END_VIEWS"); 46 } } 48 gme < ass gTy > 49  GridFuni (1)< gTy >:: $SObjCommds () 51 `rtf ( m_rObjeCommds ,"START_COMMANDS 0 "); 52 `rt ( m_rObjeCommds ,"END_COMMANDS"); 53 } } 55 gme < ass gTy > 56  GridFuni (1)< gTy >:: $SFuniPors () 64 VwAay [0] = & GF1VwMaxV ; 65 VwAay [1] = & GF1VwMV ; 66 VwAay [2] = & GF1VwNm ; 67 VwAay [3] = & GF1VwXSli ; 69 } } 71  #IVIZDEFVAL (9999) ) 73 gme < ass gTy > 74  GridFuni (1)< gTy >:: GF_GDaSli (cڡ  tim , 75 cڡ  v , 76 #ifde ACEVeGridFuni 77 cڡ  m , 79 cڡ BBox & whe , 80 * bufr , 81 cڡ  idim , 82 cڡ  prv , 83 cڡ  idt ) 85 #ifde ACEVeGridFuni 86 as ( m < nems && itm >= 0); 89 i( gwhe . emy ()) ; 91 cڡ  gme = comm_rvi :: oc_me (); 92 cڡ  gevs = dagh . tٮvs (); 94 GridDa (1)< gTy >* ggdy = w GridDa(1)< Ty >[ evs ]; 96 cڡ  g = ( v = ACEALevs ) ? 0 :ev; 97 cڡ  gdl = ( v = ACEALevs ? dagh . fevdex () :ev; 99  gtm = 0; 101  gtm = ;tm<= dl ;tmpl++) { 102 GF_gh_e ( tim , tm , whe ,whe, gdy [tm], prv , idt , IVIZDEFVAL ); 105 i( gme = prv ) { 106  tmpr [128]; 108 rtf ( tmpr ," START_DATA \n"); 109 rt ( bufr , tmpr ); 111 rtf ( tmpr ,"START_PARAMETER GridFuni: %END_PARAMETER\n", game ); 112 rt ( bufr , tmpr ); 114  gtm = ;tm<= dl ;tmpl++) { 115 rtf ( tmpr ,"START_PARAMETER Lev: %d END_PARAMETER\n", tm ); 116 rt ( bufr , tmpr ); 118 GridDa (1)< gTy >& ggd = gdy [ tm ]; 120 cڡ gCods & glb = gd . bbox (). low (); 121 cڡ gCods & gub = gd . bbox (). u (); 122 cڡ gCods & g = gd . bbox (). size (); 124  gwlb [1], gwub [1], gw [1]; 125 gdagh . wldCods ( lb , , wlb ); 126 gdagh . wldCods ( ub , , wub ); 127 gdagh . wldSp ( , w ); 129 Ty gda ; 131  gd0 , gd1 , gd2 ; 132  gi0 , gi1 , gi2 ; 135  gi0 = lb (0), gd0 = wlb [0]; i0 < ub (0); i0 + (0), d0 + w [0]) { 136 #ifde ACEVeGridFuni 137 da = gd ( i0 , m ); 139 gda = gd ( i0 ); 141 i( gda ! IVIZDEFVAL ) { 142  idim ) { 144 rtf ( tmpr ,"%%f\n", d0 , da ); 147 rtf ( tmpr ,"%%f\n", d0 , da ); 150 rt ( bufr , tmpr ); 154 rtf ( tmpr ,"\nEND_DATA\n"); 155 rt ( bufr , tmpr ); 157 rtf ( tmpr ," END_DATA \n"); 158 rt ( bufr , tmpr ); 160 i( ggdy gde [] gdarray; 163 gme < ass gTy > 164  GridFuni (1)< gTy >:: GF_GMaxV (cڡ  tim , 165 cڡ  v , 166 #ifde ACEVeGridFuni 167 cڡ  m , 169 * bufr , 170 cڡ  idt ) 172 Ty gmaxv = GF_maxv ( tim , 173 v , 174 #ifde ACEVeGridFuni 175 m , 177 idt ); 179  gtmpbuf [128]; 181 rtf ( tmpbuf ,"MaxV = %", maxv ); 182 rt ( bufr , tmpbuf ); 185 gme < ass gTy > 186  GridFuni (1)< gTy >:: GF_GMV (cڡ  tim , 187 cڡ  v , 188 #ifde ACEVeGridFuni 189 cڡ  m , 191 * bufr , 192 cڡ  idt ) 194 Ty gmv = GF_mv ( tim , 195 v , 196 #ifde ACEVeGridFuni 197 m , 199 idt ); 201  gtmpbuf [128]; 203 rtf ( tmpbuf ,"MV = %", mv ); 204 rt ( bufr , tmpbuf ); 207 gme < ass gTy > 208  GridFuni (1)< gTy >:: GF_GNm (cڡ  tim , 209 cڡ  v , 210 #ifde ACEVeGridFuni 211 cڡ  m , 213 * bufr , 214 cڡ  idt ) 216 Ty gnm = GF_nm2 ( tim , 217 v , 218 #ifde ACEVeGridFuni 219 m , 221 idt ); 223  gtmpbuf [128]; 225 rtf ( tmpbuf ,"Nm = %", nm ); 226 rt ( bufr , tmpbuf ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionDICE2.h 1 #ide _uded_GridFuniDICE2_h 2  #_uded_GridFuniDICE2_h ) 14 #ifde DICE 25 gme < ass gTy > 26  GridFuni (2)< gTy >:: $SObjDesti () 28 `rtf ( m_rObjeDesti , 30 m_nObjeID , m_nObjeTy , game , gk ); 31 } } 33 gme < ass gTy > 34  GridFuni (2)< gTy >:: $SObjVws () 37 `rtf ( m_rObjeVws ,"START_VIEWS 6 "); 39 `rt ( m_rObjeVws ,"MaxVal TEXTDISPLAY "); 40 `rt ( m_rObjeVws ,"MinVal TEXTDISPLAY "); 41 `rt ( m_rObjeVws ,"Norm TEXTDISPLAY "); 42 `rt ( m_rObjeVws ,"XYSlice 2DPLOT "); 43 `rt ( m_rObjeVws ,"XSlice 1DPLOT "); 44 `rt ( m_rObjeVws ,"YSlice 1DPLOT "); 47 `rt ( m_rObjeVws ,"END_VIEWS"); 48 } } 50 gme < ass gTy > 51  GridFuni (2)< gTy >:: $SObjCommds () 53 `rtf ( m_rObjeCommds ,"START_COMMANDS 0 "); 54 `rt ( m_rObjeCommds ,"END_COMMANDS"); 55 } } 57 gme < ass gTy > 58  GridFuni (2)< gTy >:: $SFuniPors () 65 VwAay [0] = & GF2VwMaxV ; 66 VwAay [1] = & GF2VwMV ; 67 VwAay [2] = & GF2VwNm ; 68 VwAay [3] = & GF2VwXYSli ; 69 VwAay [4] = & GF2VwXSli ; 70 VwAay [5] = & GF2VwYSli ; 73 } } 75  #IVIZDEFVAL (9999) ) 77 gme < ass gTy > 78  GridFuni (2)< gTy >:: GF_GDaSli (cڡ  tim , 79 cڡ  v , 80 #ifde ACEVeGridFuni 81 cڡ  m , 83 cڡ BBox & whe , 84 * bufr , 85 cڡ  idim , 86 cڡ  prv , 87 cڡ  idt ) 89 #ifde ACEVeGridFuni 90 as ( m < nems && itm >= 0); 93 i( gwhe . emy ()) ; 95 cڡ  gme = comm_rvi :: oc_me (); 96 cڡ  gevs = dagh . tٮvs (); 98 GridDa (2)< gTy >* ggdy = w GridDa(2)< Ty >[ evs ]; 100 cڡ  g = ( v = ACEALevs ) ? 0 :ev; 101 cڡ  gdl = ( v = ACEALevs ? dagh . fevdex () :ev; 103  gtm = 0; 105  gtm = ;tm<= dl ;tmpl++) { 106 GF_gh_e ( tim , tm , whe ,whe, gdy [tm], prv , idt , IVIZDEFVAL ); 109 i( gme = prv ) { 110  tmpr [128]; 112 rtf ( tmpr ," START_DATA \n"); 113 rt ( bufr , tmpr ); 115 rtf ( tmpr ,"START_PARAMETER GridFuni: %END_PARAMETER\n", game ); 116 rt ( bufr , tmpr ); 118  gtm = ;tm<= dl ;tmpl++) { 119 rtf ( tmpr ,"START_PARAMETER Lev: %d END_PARAMETER\n", tm ); 120 rt ( bufr , tmpr ); 122 GridDa (2)< gTy >& ggd = gdy [ tm ]; 124 cڡ gCods & glb = gd . bbox (). low (); 125 cڡ gCods & gub = gd . bbox (). u (); 126 cڡ gCods & g = gd . bbox (). size (); 128  gwlb [2], gwub [2], gw [2]; 129 gdagh . wldCods ( lb , , wlb ); 130 gdagh . wldCods ( ub , , wub ); 131 gdagh . wldSp ( , w ); 133 Ty gda ; 135  gd0 , gd1 , gd2 ; 136  gi0 , gi1 , gi2 ; 139  gi1 = lb (1), gd1 = wlb [1]; i1 < ub (1); i1 + (1), d1 + w [1]) { 140  i0 = lb (0), gd0 = wlb [0]; gi0 < ub (0); i0 + (0), d0 + w [0]) { 141 #ifde ACEVeGridFuni 142 da = gd ( i0 , i1 , m ); 144 gda = gd ( i0 , i1 ); 146 i( gda ! IVIZDEFVAL ) { 147  idim ) { 149 rtf ( tmpr ,"%%%f\n", d0 , d1 , da ); 152 rtf ( tmpr ,"%%f\n", d0 , da ); 155 rtf ( tmpr ,"%%f\n", d0 , da ); 158 rt ( bufr , tmpr ); 161 rtf ( tmpr ,"\n"); 162 rt ( bufr , tmpr ); 165 rtf ( tmpr ,"\nEND_DATA\n"); 166 rt ( bufr , tmpr ); 168 rtf ( tmpr ," END_DATA \n"); 169 rt ( bufr , tmpr ); 171 i( ggdy gde [] gdarray; 174 gme < ass gTy > 175  GridFuni (2)< gTy >:: GF_GMaxV (cڡ  tim , 176 cڡ  v , 177 #ifde ACEVeGridFuni 178 cڡ  m , 180 * bufr , 181 cڡ  idt ) 183 Ty gmaxv = GF_maxv ( tim , 184 v , 185 #ifde ACEVeGridFuni 186 m , 188 idt ); 190  gtmpbuf [128]; 192 rtf ( tmpbuf ,"MaxV = %", maxv ); 193 rt ( bufr , tmpbuf ); 196 gme < ass gTy > 197  GridFuni (2)< gTy >:: GF_GMV (cڡ  tim , 198 cڡ  v , 199 #ifde ACEVeGridFuni 200 cڡ  m , 202 * bufr , 203 cڡ  idt ) 205 Ty gmv = GF_mv ( tim , 206 v , 207 #ifde ACEVeGridFuni 208 m , 210 idt ); 212  gtmpbuf [128]; 214 rtf ( tmpbuf ,"MV = %", mv ); 215 rt ( bufr , tmpbuf ); 218 gme < ass gTy > 219  GridFuni (2)< gTy >:: GF_GNm (cڡ  tim , 220 cڡ  v , 221 #ifde ACEVeGridFuni 222 cڡ  m , 224 * bufr , 225 cڡ  idt ) 227 Ty gnm = GF_nm2 ( tim , 228 v , 229 #ifde ACEVeGridFuni 230 m , 232 idt ); 234  gtmpbuf [128]; 236 rtf ( tmpbuf ,"Nm = %", nm ); 237 rt ( bufr , tmpbuf ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionDICE3.h 1 #ide _uded_GridFuniDICE3_h 2  #_uded_GridFuniDICE3_h ) 14 #ifde DICE 25 gme < ass gTy > 26  GridFuni (3)< gTy >:: $SObjDesti () 28 `rtf ( m_rObjeDesti , 30 m_nObjeID , m_nObjeTy , game , gk ); 31 } } 33 gme < ass gTy > 34  GridFuni (3)< gTy >:: $SObjVws () 37 `rtf ( m_rObjeVws ,"START_VIEWS 9 "); 39 `rt ( m_rObjeVws ,"MaxVal TEXTDISPLAY "); 40 `rt ( m_rObjeVws ,"MinVal TEXTDISPLAY "); 41 `rt ( m_rObjeVws ,"Norm TEXTDISPLAY "); 42 `rt ( m_rObjeVws ,"XYSlice 2DPLOT "); 43 `rt ( m_rObjeVws ,"YZSlice 2DPLOT "); 44 `rt ( m_rObjeVws ,"XZSlice 2DPLOT "); 45 `rt ( m_rObjeVws ,"XSlice 1DPLOT "); 46 `rt ( m_rObjeVws ,"YSlice 1DPLOT "); 47 `rt ( m_rObjeVws ,"ZSlice 1DPLOT "); 50 `rt ( m_rObjeVws ,"END_VIEWS"); 51 } } 53 gme < ass gTy > 54  GridFuni (3)< gTy >:: $SObjCommds () 56 `rtf ( m_rObjeCommds ,"START_COMMANDS 0 "); 57 `rt ( m_rObjeCommds ,"END_COMMANDS"); 58 } } 60 gme < ass gTy > 61  GridFuni (3)< gTy >:: $SFuniPors () 67 VwAay [0] = & GF3VwMaxV ; 68 VwAay [1] = & GF3VwMV ; 69 VwAay [2] = & GF3VwNm ; 70 VwAay [3] = & GF3VwXYSli ; 71 VwAay [4] = & GF3VwYZSli ; 72 VwAay [5] = & GF3VwXZSli ; 73 VwAay [6] = & GF3VwXSli ; 74 VwAay [7] = & GF3VwYSli ; 75 VwAay [8] = & GF3VwZSli ; 79 } } 81  #IVIZDEFVAL (9999) ) 83 gme < ass gTy > 84  GridFuni (3)< gTy >:: GF_GDaSli (cڡ  tim , 85 cڡ  v , 86 #ifde ACEVeGridFuni 87 cڡ  m , 89 cڡ BBox & whe , 90 * bufr , 91 cڡ  idim , 92 cڡ  prv , 93 cڡ  idt ) 95 #ifde ACEVeGridFuni 96 as ( m < nems && itm >= 0); 99 i( gwhe . emy ()) ; 101 cڡ  gme = comm_rvi :: oc_me (); 102 cڡ  gevs = dagh . tٮvs (); 104 GridDa (3)< gTy >* ggdy = w GridDa(3)< Ty >[ evs ]; 106 cڡ  g = ( v = ACEALevs ) ? 0 :ev; 107 cڡ  gdl = ( v = ACEALevs ? dagh . fevdex () :ev; 109  gtm = 0; 111  gtm = ;tm<= dl ;tmpl++) { 112 GF_gh_e ( tim , tm , whe ,whe, gdy [tm], prv , idt , IVIZDEFVAL ); 115 i( gme = prv ) { 116  tmpr [128]; 118 rtf ( tmpr ," START_DATA \n"); 119 rt ( bufr , tmpr ); 121 rtf ( tmpr ,"START_PARAMETER GridFuni: %END_PARAMETER\n", game ); 122 rt ( bufr , tmpr ); 124  gtm = ;tm<= dl ;tmpl++) { 125 rtf ( tmpr ,"START_PARAMETER Lev: %d END_PARAMETER\n", tm ); 126 rt ( bufr , tmpr ); 128 GridDa (3)< gTy >& ggd = gdy [ tm ]; 130 cڡ gCods & glb = gd . bbox (). low (); 131 cڡ gCods & gub = gd . bbox (). u (); 132 cڡ gCods & g = gd . bbox (). size (); 134  gwlb [3], gwub [3], gw [3]; 135 gdagh . wldCods ( lb , , wlb ); 136 gdagh . wldCods ( ub , , wub ); 137 gdagh . wldSp ( , w ); 139 Ty gda ; 141  gd0 , gd1 , gd2 ; 142  gi0 , gi1 , gi2 ; 145  gi2 = lb (2), gd2 = wlb [2]; i2 < ub (2); i2 + (2), d2 + w [2]) { 146  i1 = lb (1), gd1 = wlb [1]; gi1 < ub (1); i1 + (1), d1 + w [1]) { 147  i0 = lb (0), gd0 = wlb [0]; gi0 < ub (0); i0 + (0), d0 + w [0]) { 148 #ifde ACEVeGridFuni 149 da = gd ( i0 , i1 , i2 , m ); 151 gda = gd ( i0 , i1 , i2 ); 153 i( gda ! IVIZDEFVAL ) { 154  idim ) { 156 rtf ( tmpr ,"%%%%f\n", d0 , d1 , d2 , da ); 159 rtf ( tmpr ,"%%%f\n", d0 , d1 , da ); 162 rtf ( tmpr ,"%%f\n", d0 , da ); 165 rtf ( tmpr ,"%%f\n", d0 , da ); 168 rt ( bufr , tmpr ); 171 rtf ( tmpr ,"\n"); 172 rt ( bufr , tmpr ); 174 rtf ( tmpr ,"\n"); 175 rt ( bufr , tmpr ); 178 rtf ( tmpr ,"\nEND_DATA\n"); 179 rt ( bufr , tmpr ); 181 rtf ( tmpr ," END_DATA \n"); 182 rt ( bufr , tmpr ); 184 i( ggdy gde [] gdarray; 187 gme < ass gTy > 188  GridFuni (3)< gTy >:: GF_GMaxV (cڡ  tim , 189 cڡ  v , 190 #ifde ACEVeGridFuni 191 cڡ  m , 193 * bufr , 194 cڡ  idt ) 196 Ty gmaxv = GF_maxv ( tim , 197 v , 198 #ifde ACEVeGridFuni 199 m , 201 idt ); 203  gtmpbuf [128]; 205 rtf ( tmpbuf ,"MaxV = %", maxv ); 206 rt ( bufr , tmpbuf ); 209 gme < ass gTy > 210  GridFuni (3)< gTy >:: GF_GMV (cڡ  tim , 211 cڡ  v , 212 #ifde ACEVeGridFuni 213 cڡ  m , 215 * bufr , 216 cڡ  idt ) 218 Ty gmv = GF_mv ( tim , 219 v , 220 #ifde ACEVeGridFuni 221 m , 223 idt ); 225  gtmpbuf [128]; 227 rtf ( tmpbuf ,"MV = %", mv ); 228 rt ( bufr , tmpbuf ); 231 gme < ass gTy > 232  GridFuni (3)< gTy >:: GF_GNm (cڡ  tim , 233 cڡ  v , 234 #ifde ACEVeGridFuni 235 cڡ  m , 237 * bufr , 238 cڡ  idt ) 240 Ty gnm = GF_nm2 ( tim , 241 v , 242 #ifde ACEVeGridFuni 243 m , 245 idt ); 247  gtmpbuf [128]; 249 rtf ( tmpbuf ,"Nm = %", nm ); 250 rt ( bufr , tmpbuf ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionDICECallBack1.h 1 #ide _uded_GridFuniDICE_CB1_h 2  #_uded_GridFuniDICE_CB1_h ) 14 #ifde DICE 21  #DICESv (0) ) 26 * $GF1VwXSli ( DICEBaObje * theObje ) 28 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 30 cڡ  me = comm_rvi :: `oc_me (); 31 cڡ  prv = DICESv ; 32 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 33 cڡ BBox & gbb = theGH . `glbbbox (); 34 cڡ  v = theGH . `crvdex (); 35 cڡ  tim = theGH . `gCutTime ( v ); 36 cڡ  m = 0; 37 cڡ  idt = ACE_Ma ; 39 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 40 cڡ  nVwNum = 3; 42 BBox `whe ( gbb ); 44  tmpr [128]; 46 `rtf ( tmpr ,"UPDATE_STATE %d %d 1DPLOT ", 47 theObje -> m_nObjeID , nVwNum ); 48 `ry ( m_rUpdeMsg , tmpr ); 50 theGFV . `GF_GDaSli ( tim , 51 ACEALevs , 52 #ifde ACEVeGridFuni 53 m , 55 whe , 56 m_rUpdeMsg , 58 prv , 59 idt ); 61 `rtf ( tmpr ," END_UPDATE_STATE\n"); 62 `rt ( m_rUpdeMsg , tmpr ); 64  m_rUpdeMsg ; 65 } } 68 * $GF1VwMaxV ( DICEBaObje * theObje ) 70 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 72 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 74 cڡ  v = theGH . `crvdex (); 75 cڡ  tim = theGH . `gCutTime ( v ); 76 cڡ  m = 0; 77 cڡ  idt = ACE_Ma ; 79 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 80 cڡ  nVwNum = 0; 81  tmpbuf [128]; 83 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 84 theObje -> m_nObjeID , nVwNum ); 85 `ry ( m_rUpdeMsg , tmpbuf ); 87 theGFV . `GF_GMaxV ( tim , 88 v , 89 #ifde ACEVeGridFuni 90 m , 92 m_rUpdeMsg , 93 idt ); 95 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 96 `rt ( m_rUpdeMsg , tmpbuf ); 98  m_rUpdeMsg ; 99 } } 101 * $GF1VwMV ( DICEBaObje * theObje ) 103 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 105 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 107 cڡ  v = theGH . `crvdex (); 108 cڡ  tim = theGH . `gCutTime ( v ); 109 cڡ  m = 0; 110 cڡ  idt = ACE_Ma ; 112 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 113 cڡ  nVwNum = 1; 114  tmpbuf [128]; 116 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 117 theObje -> m_nObjeID , nVwNum ); 118 `ry ( m_rUpdeMsg , tmpbuf ); 120 theGFV . `GF_GMV ( tim , 121 v , 122 #ifde ACEVeGridFuni 123 m , 125 m_rUpdeMsg , 126 idt ); 128 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 129 `rt ( m_rUpdeMsg , tmpbuf ); 131  m_rUpdeMsg ; 132 } } 134 * $GF1VwNm ( DICEBaObje * theObje ) 136 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 138 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 140 cڡ  v = theGH . `crvdex (); 141 cڡ  tim = theGH . `gCutTime ( v ); 142 cڡ  m = 0; 143 cڡ  idt = ACE_Ma ; 145 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 146 cڡ  nVwNum = 2; 147  tmpbuf [128]; 149 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 150 theObje -> m_nObjeID , nVwNum ); 151 `ry ( m_rUpdeMsg , tmpbuf ); 153 theGFV . `GF_GNm ( tim , 154 v , 155 #ifde ACEVeGridFuni 156 m , 158 m_rUpdeMsg , 159 idt ); 161 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 162 `rt ( m_rUpdeMsg , tmpbuf ); 164  m_rUpdeMsg ; 165 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionDICECallBack2.h 1 #ide _uded_GridFuniDICE_CB2_h 2  #_uded_GridFuniDICE_CB2_h ) 14 #ifde DICE 21  #DICESv (0) ) 26 * $GF2VwXYSli ( DICEBaObje * theObje ) 28 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 30 cڡ  me = comm_rvi :: `oc_me (); 31 cڡ  prv = DICESv ; 32 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 33 cڡ BBox & gbb = theGH . `glbbbox (); 34 cڡ  v = theGH . `crvdex (); 35 cڡ  tim = theGH . `gCutTime ( v ); 36 cڡ  m = 0; 37 cڡ  idt = ACE_Ma ; 39 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 40 cڡ  nVwNum = 3; 42 BBox `whe ( gbb ); 44  tmpr [128]; 46 `rtf ( tmpr ,"UPDATE_STATE %d %d 2DPLOT ", 47 theObje -> m_nObjeID , nVwNum ); 48 `ry ( m_rUpdeMsg , tmpr ); 50 theGFV . `GF_GDaSli ( tim , 51 ACEALevs , 52 #ifde ACEVeGridFuni 53 m , 55 whe , 56 m_rUpdeMsg , 58 prv , 59 idt ); 61 `rtf ( tmpr ," END_UPDATE_STATE\n"); 62 `rt ( m_rUpdeMsg , tmpr ); 64  m_rUpdeMsg ; 65 } } 68 * $GF2VwXSli ( DICEBaObje * theObje ) 70 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 72 cڡ  me = comm_rvi :: `oc_me (); 73 cڡ  prv = DICESv ; 74 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 75 cڡ BBox & gbb = theGH . `glbbbox (); 76 cڡ  v = theGH . `crvdex (); 77 cڡ  tim = theGH . `gCutTime ( v ); 78 cڡ  m = 0; 79 cڡ  idt = ACE_Ma ; 81 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 82 cڡ  nVwNum = 4; 84 BBox `whe ( gbb ); 85  y = whe . `low (1) 86 + (( whe . `exs (1- 1)*whe. `size (1))/2; 87 whe . `low (1 y ; 88 whe . `u (1 y ; 90  tmpr [128]; 92 `rtf ( tmpr ,"UPDATE_STATE %d %d 1DPLOT ", 93 theObje -> m_nObjeID , nVwNum ); 94 `ry ( m_rUpdeMsg , tmpr ); 96 theGFV . `GF_GDaSli ( tim , 97 ACEALevs , 98 #ifde ACEVeGridFuni 99 m , 101 whe , 102 m_rUpdeMsg , 104 prv , 105 idt ); 107 `rtf ( tmpr ," END_UPDATE_STATE\n"); 108 `rt ( m_rUpdeMsg , tmpr ); 110  m_rUpdeMsg ; 111 } } 113 * $GF2VwYSli ( DICEBaObje * theObje ) 115 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 117 cڡ  me = comm_rvi :: `oc_me (); 118 cڡ  prv = DICESv ; 119 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 120 cڡ BBox & gbb = theGH . `glbbbox (); 121 cڡ  v = theGH . `crvdex (); 122 cڡ  tim = theGH . `gCutTime ( v ); 123 cڡ  m = 0; 124 cڡ  idt = ACE_Ma ; 126 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 127 cڡ  nVwNum = 5; 129 BBox `whe ( gbb ); 130  x = whe . `low (0) 131 + (( whe . `exs (0- 1)*whe. `size (0))/2; 132 whe . `low (0 x ; 133 whe . `u (0 x ; 135  tmpr [128]; 137 `rtf ( tmpr ,"UPDATE_STATE %d %d 1DPLOT ", 138 theObje -> m_nObjeID , nVwNum ); 139 `ry ( m_rUpdeMsg , tmpr ); 141 theGFV . `GF_GDaSli ( tim , 142 ACEALevs , 143 #ifde ACEVeGridFuni 144 m , 146 whe , 147 m_rUpdeMsg , 149 prv , 150 idt ); 152 `rtf ( tmpr ," END_UPDATE_STATE\n"); 153 `rt ( m_rUpdeMsg , tmpr ); 155  m_rUpdeMsg ; 156 } } 160 * $GF2VwMaxV ( DICEBaObje * theObje ) 162 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 164 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 166 cڡ  v = theGH . `crvdex (); 167 cڡ  tim = theGH . `gCutTime ( v ); 168 cڡ  m = 0; 169 cڡ  idt = ACE_Ma ; 171 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 172 cڡ  nVwNum = 0; 173  tmpbuf [128]; 175 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 176 theObje -> m_nObjeID , nVwNum ); 177 `ry ( m_rUpdeMsg , tmpbuf ); 179 theGFV . `GF_GMaxV ( tim , 180 v , 181 #ifde ACEVeGridFuni 182 m , 184 m_rUpdeMsg , 185 idt ); 187 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 188 `rt ( m_rUpdeMsg , tmpbuf ); 190  m_rUpdeMsg ; 191 } } 193 * $GF2VwMV ( DICEBaObje * theObje ) 195 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 197 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 199 cڡ  v = theGH . `crvdex (); 200 cڡ  tim = theGH . `gCutTime ( v ); 201 cڡ  m = 0; 202 cڡ  idt = ACE_Ma ; 204 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 205 cڡ  nVwNum = 1; 206  tmpbuf [128]; 208 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 209 theObje -> m_nObjeID , nVwNum ); 210 `ry ( m_rUpdeMsg , tmpbuf ); 212 theGFV . `GF_GMV ( tim , 213 v , 214 #ifde ACEVeGridFuni 215 m , 217 m_rUpdeMsg , 218 idt ); 220 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 221 `rt ( m_rUpdeMsg , tmpbuf ); 223  m_rUpdeMsg ; 224 } } 226 * $GF2VwNm ( DICEBaObje * theObje ) 228 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 230 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 232 cڡ  v = theGH . `crvdex (); 233 cڡ  tim = theGH . `gCutTime ( v ); 234 cڡ  m = 0; 235 cڡ  idt = ACE_Ma ; 237 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 238 cڡ  nVwNum = 2; 239  tmpbuf [128]; 241 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 242 theObje -> m_nObjeID , nVwNum ); 243 `ry ( m_rUpdeMsg , tmpbuf ); 245 theGFV . `GF_GNm ( tim , 246 v , 247 #ifde ACEVeGridFuni 248 m , 250 m_rUpdeMsg , 251 idt ); 253 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 254 `rt ( m_rUpdeMsg , tmpbuf ); 256  m_rUpdeMsg ; 257 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionDICECallBack3.h 1 #ide _uded_GridFuniDICE_CB3_h 2  #_uded_GridFuniDICE_CB3_h ) 14 #ifde DICE 21  #DICESv (0) ) 26 * $GF3VwXYSli ( DICEBaObje * theObje ) 28 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 30 cڡ  me = comm_rvi :: `oc_me (); 31 cڡ  prv = DICESv ; 32 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 33 cڡ BBox & gbb = theGH . `glbbbox (); 34 cڡ  v = theGH . `crvdex (); 35 cڡ  tim = theGH . `gCutTime ( v ); 36 cڡ  m = 0; 37 cڡ  idt = ACE_Ma ; 39 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 40 cڡ  nVwNum = 3; 42 BBox `whe ( gbb ); 43  z = whe . `low (2) 44 + (( whe . `exs (2- 1)*whe. `size (2))/2; 45 whe . `low (2 z ; 46 whe . `u (2 z ; 48  tmpr [128]; 50 `rtf ( tmpr ,"UPDATE_STATE %d %d 2DPLOT ", 51 theObje -> m_nObjeID , nVwNum ); 52 `ry ( m_rUpdeMsg , tmpr ); 54 theGFV . `GF_GDaSli ( tim , 55 ACEALevs , 56 #ifde ACEVeGridFuni 57 m , 59 whe , 60 m_rUpdeMsg , 62 prv , 63 idt ); 65 `rtf ( tmpr ," END_UPDATE_STATE\n"); 66 `rt ( m_rUpdeMsg , tmpr ); 68  m_rUpdeMsg ; 69 } } 71 * $GF3VwYZSli ( DICEBaObje * theObje ) 73 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 75 cڡ  me = comm_rvi :: `oc_me (); 76 cڡ  prv = DICESv ; 77 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 78 cڡ BBox & gbb = theGH . `glbbbox (); 79 cڡ  v = theGH . `crvdex (); 80 cڡ  tim = theGH . `gCutTime ( v ); 81 cڡ  m = 0; 82 cڡ  idt = ACE_Ma ; 84 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 85 cڡ  nVwNum = 4; 87 BBox `whe ( gbb ); 88  x = whe . `low (0) 89 + (( whe . `exs (0- 1)*whe. `size (0))/2; 90 whe . `low (0 x ; 91 whe . `u (0 x ; 93  tmpr [128]; 95 `rtf ( tmpr ,"UPDATE_STATE %d %d 2DPLOT ", 96 theObje -> m_nObjeID , nVwNum ); 97 `ry ( m_rUpdeMsg , tmpr ); 99 theGFV . `GF_GDaSli ( tim , 100 ACEALevs , 101 #ifde ACEVeGridFuni 102 m , 104 whe , 105 m_rUpdeMsg , 107 prv , 108 idt ); 110 `rtf ( tmpr ," END_UPDATE_STATE\n"); 111 `rt ( m_rUpdeMsg , tmpr ); 113  m_rUpdeMsg ; 114 } } 116 * $GF3VwXZSli ( DICEBaObje * theObje ) 118 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 120 cڡ  me = comm_rvi :: `oc_me (); 121 cڡ  prv = DICESv ; 122 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 123 cڡ BBox & gbb = theGH . `glbbbox (); 124 cڡ  v = theGH . `crvdex (); 125 cڡ  tim = theGH . `gCutTime ( v ); 126 cڡ  m = 0; 127 cڡ  idt = ACE_Ma ; 129 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 130 cڡ  nVwNum = 5; 132 BBox `whe ( gbb ); 133  y = whe . `low (1) 134 + (( whe . `exs (1- 1)*whe. `size (1))/2; 135 whe . `low (1 y ; 136 whe . `u (1 y ; 138  tmpr [128]; 140 `rtf ( tmpr ,"UPDATE_STATE %d %d 2DPLOT ", 141 theObje -> m_nObjeID , nVwNum ); 142 `ry ( m_rUpdeMsg , tmpr ); 144 theGFV . `GF_GDaSli ( tim , 145 ACEALevs , 146 #ifde ACEVeGridFuni 147 m , 149 whe , 150 m_rUpdeMsg , 152 prv , 153 idt ); 155 `rtf ( tmpr ," END_UPDATE_STATE\n"); 156 `rt ( m_rUpdeMsg , tmpr ); 158  m_rUpdeMsg ; 159 } } 162 * $GF3VwXSli ( DICEBaObje * theObje ) 164 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 166 cڡ  me = comm_rvi :: `oc_me (); 167 cڡ  prv = DICESv ; 168 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 169 cڡ BBox & gbb = theGH . `glbbbox (); 170 cڡ  v = theGH . `crvdex (); 171 cڡ  tim = theGH . `gCutTime ( v ); 172 cڡ  m = 0; 173 cڡ  idt = ACE_Ma ; 175 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 176 cڡ  nVwNum = 6; 178 BBox `whe ( gbb ); 179  y = whe . `low (1) 180 + (( whe . `exs (1- 1)*whe. `size (1))/2; 181  z = whe . `low (2) 182 + (( whe . `exs (2- 1)*whe. `size (2))/2; 183 whe . `low (1 y ; 184 whe . `u (1 y ; 185 whe . `low (2 z ; 186 whe . `u (2 z ; 188  tmpr [128]; 190 `rtf ( tmpr ,"UPDATE_STATE %d %d 1DPLOT ", 191 theObje -> m_nObjeID , nVwNum ); 192 `ry ( m_rUpdeMsg , tmpr ); 194 theGFV . `GF_GDaSli ( tim , 195 ACEALevs , 196 #ifde ACEVeGridFuni 197 m , 199 whe , 200 m_rUpdeMsg , 202 prv , 203 idt ); 205 `rtf ( tmpr ," END_UPDATE_STATE\n"); 206 `rt ( m_rUpdeMsg , tmpr ); 208  m_rUpdeMsg ; 209 } } 211 * $GF3VwYSli ( DICEBaObje * theObje ) 213 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 215 cڡ  me = comm_rvi :: `oc_me (); 216 cڡ  prv = DICESv ; 217 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 218 cڡ BBox & gbb = theGH . `glbbbox (); 219 cڡ  v = theGH . `crvdex (); 220 cڡ  tim = theGH . `gCutTime ( v ); 221 cڡ  m = 0; 222 cڡ  idt = ACE_Ma ; 224 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 225 cڡ  nVwNum = 7; 227 BBox `whe ( gbb ); 228  x = whe . `low (0) 229 + (( whe . `exs (0- 1)*whe. `size (0))/2; 230  z = whe . `low (2) 231 + (( whe . `exs (2- 1)*whe. `size (2))/2; 232 whe . `low (0 x ; 233 whe . `u (0 x ; 234 whe . `low (2 z ; 235 whe . `u (2 z ; 237  tmpr [128]; 239 `rtf ( tmpr ,"UPDATE_STATE %d %d 1DPLOT ", 240 theObje -> m_nObjeID , nVwNum ); 241 `ry ( m_rUpdeMsg , tmpr ); 243 theGFV . `GF_GDaSli ( tim , 244 ACEALevs , 245 #ifde ACEVeGridFuni 246 m , 248 whe , 249 m_rUpdeMsg , 251 prv , 252 idt ); 254 `rtf ( tmpr ," END_UPDATE_STATE\n"); 255 `rt ( m_rUpdeMsg , tmpr ); 257  m_rUpdeMsg ; 258 } } 260 * $GF3VwZSli ( DICEBaObje * theObje ) 262 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 264 cڡ  me = comm_rvi :: `oc_me (); 265 cڡ  prv = DICESv ; 266 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 267 cڡ BBox & gbb = theGH . `glbbbox (); 268 cڡ  v = theGH . `crvdex (); 269 cڡ  tim = theGH . `gCutTime ( v ); 270 cڡ  m = 0; 271 cڡ  idt = ACE_Ma ; 273 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 274 cڡ  nVwNum = 8; 276 BBox `whe ( gbb ); 277  x = whe . `low (0) 278 + (( whe . `exs (0- 1)*whe. `size (0))/2; 279  y = whe . `low (1) 280 + (( whe . `exs (1- 1)*whe. `size (1))/2; 281 whe . `low (0 x ; 282 whe . `u (0 x ; 283 whe . `low (1 y ; 284 whe . `u (1 y ; 286  tmpr [128]; 288 `rtf ( tmpr ,"UPDATE_STATE %d %d 1DPLOT ", 289 theObje -> m_nObjeID , nVwNum ); 290 `ry ( m_rUpdeMsg , tmpr ); 292 theGFV . `GF_GDaSli ( tim , 293 ACEALevs , 294 #ifde ACEVeGridFuni 295 m , 297 whe , 298 m_rUpdeMsg , 300 prv , 301 idt ); 303 `rtf ( tmpr ," END_UPDATE_STATE\n"); 304 `rt ( m_rUpdeMsg , tmpr ); 306  m_rUpdeMsg ; 307 } } 312 * $GF3VwMaxV ( DICEBaObje * theObje ) 314 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 316 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 318 cڡ  v = theGH . `crvdex (); 319 cڡ  tim = theGH . `gCutTime ( v ); 320 cڡ  m = 0; 321 cڡ  idt = ACE_Ma ; 323 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 324 cڡ  nVwNum = 0; 325  tmpbuf [128]; 327 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 328 theObje -> m_nObjeID , nVwNum ); 329 `ry ( m_rUpdeMsg , tmpbuf ); 331 theGFV . `GF_GMaxV ( tim , 332 v , 333 #ifde ACEVeGridFuni 334 m , 336 m_rUpdeMsg , 337 idt ); 339 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 340 `rt ( m_rUpdeMsg , tmpbuf ); 342  m_rUpdeMsg ; 343 } } 345 * $GF3VwMV ( DICEBaObje * theObje ) 347 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 349 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 351 cڡ  v = theGH . `crvdex (); 352 cڡ  tim = theGH . `gCutTime ( v ); 353 cڡ  m = 0; 354 cڡ  idt = ACE_Ma ; 356 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 357 cڡ  nVwNum = 1; 358  tmpbuf [128]; 360 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 361 theObje -> m_nObjeID , nVwNum ); 362 `ry ( m_rUpdeMsg , tmpbuf ); 364 theGFV . `GF_GMV ( tim , 365 v , 366 #ifde ACEVeGridFuni 367 m , 369 m_rUpdeMsg , 370 idt ); 372 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 373 `rt ( m_rUpdeMsg , tmpbuf ); 375  m_rUpdeMsg ; 376 } } 378 * $GF3VwNm ( DICEBaObje * theObje ) 380 GridFuniVoid & theGFV = *((GridFuniVoid* theObje ); 382 cڡ GridHrchy & theGH = theGFV . `gridhrchy (); 384 cڡ  v = theGH . `crvdex (); 385 cڡ  tim = theGH . `gCutTime ( v ); 386 cڡ  m = 0; 387 cڡ  idt = ACE_Ma ; 389 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 390 cڡ  nVwNum = 2; 391  tmpbuf [128]; 393 `rtf ( tmpbuf ,"UPDATE_STATE %d %d TEXTDISPLAY ", 394 theObje -> m_nObjeID , nVwNum ); 395 `ry ( m_rUpdeMsg , tmpbuf ); 397 theGFV . `GF_GNm ( tim , 398 v , 399 #ifde ACEVeGridFuni 400 m , 402 m_rUpdeMsg , 403 idt ); 405 `rtf ( tmpbuf ," END_UPDATE_STATE\n"); 406 `rt ( m_rUpdeMsg , tmpbuf ); 408  m_rUpdeMsg ; 409 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionFluxes1.h 1 #ide _uded_GridFuniFluxes1_h 2  #_uded_GridFuniFluxes1_h ) 16 gme < ass gACE_GFTy > 17  GridFuni (1)< gACE_GFTy >:: GF_WreFluxes (cڡ  time , 18 cڡ  v , 19 #ifde ACEVeGridFuni 20 cڡ  m , 22 cڡ  idt ) 24 i(! uxes ()) ; 26 #ifde DEBUG_PRINT 27 as ( idt = ACE_Ma ); 30 cڡ  gxidt = 31 ( idt = ACE_Ma ? ACE_FluxMa : ACE_FluxShadow ; 33 #ide ACEVeGridFuni 34 cڡ  gm = ACEA ; 37 cڡ  gum = comm_rvi :: oc_num (); 38 cڡ  gme = comm_rvi :: oc_me (); 39 i( gum == 1) ; 41 cڡ  gt = dagh_timedex ( time , v ); 42 cڡ  g = v -1; 43 cڡ  gwl = v ; 45 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 47 cڡ  gvs = dagh . tٮvs (); 48 cڡ  gidx = wl ; 50  gp =0;p< gum ;p++) { 51 i( gp = me ) ; 52 i( gux_nd_fo [ p ] && flux_nd_fo[p][ idx ]) { 53 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 54 w GridDaBuck < ACE_GFTy >( ux_nd_fo [ p ][ idx ]-> t , 55 gux_nd_fo [ p ][ idx ]-> gsize , 56 gACEPacked ) 58 w GridDaBuck < ACE_GFTy >( ux_nd_fo [ p ][ idx ]-> t , 59 gux_nd_fo [ p ][ idx ]-> gmsize , 60 gACEPacked ); 61  gs = 0; 62  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 63 gs + gdb [ t ][ wl ][ i ]-> gdbWreFluxes ( p , m , xidt , ACENu , * gdbkt , s ); 64 #ifde DEBUG_PRINT 65 as ( s = ux_nd_fo [ p ][ idx ]-> t ); 67 ggt -> nd (( ACEFluxTag | ), gdbkt , p ); 76 gme < ass gACE_GFTy > 77  GridFuni (1)< gACE_GFTy >:: GF_RdFluxes (cڡ  time , 78 cڡ  v , 79 #ifde ACEVeGridFuni 80 cڡ  m , 82 cڡ  idt ) 84 i(! uxes ()) ; 86 #ifde DEBUG_PRINT 87 as ( idt = ACE_Ma ); 91 #ifde ACEVeGridFuni 92 * gvgfag = w [ nems ]; 93  gvgfi =0;vgfi< gnems ;vgfi++) 94 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 97 cڡ  gxidt = 98 ( idt = ACE_Ma ? ACE_FluxMa : ACE_FluxShadow ; 100 #ide ACEVeGridFuni 101 cڡ  gm = ACEA ; 103 cڡ  gt = dagh_timedex ( time , v ); 104 cڡ  g = v -1; 105 cڡ  gwl = v ; 107 cڡ  gmynkx2 = 2*1; 109 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 111 cڡ  gvs = dagh . tٮvs (); 112 cڡ  gum = comm_rvi :: oc_num (); 113 cڡ  gme = comm_rvi :: oc_me (); 114 cڡ  gidx = ; 117 cڡ  gmdex = dagh . maxdex ()+1; 118 cڡ  glcdex = me * mdex * mynkx2 ; 119 cڡ  gt = mynkx2 * mdex ; 121  gtmpm , gtmpidt ; 123 i( gux_cv_fo [ me ] && 124 gux_cv_fo [ me ][ idx ] && 125 gux_cv_fo [ me ][ idx ]-> gt > 0) { 126  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 127 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbFluxRdInfo (); 129 i( ggdbi !0 r =0; gr < gmynkx2 ;++) { 130 gtmpidt = xidt - r ; 131  gm =0; m< gmdex ; m++) { 132 gtmpm = r * mdex + m ; 133 i(( ggdbi [ lcdex + tmpm ]&& ( ggdb [ t ][ wl ][ m ])) { 135 #ifde DEBUG_PRINT_GF_COMM 136 gcomm_rvi :: log () << "[GF_ReadFlux::LocalCopy " 137 << "[" << i << "<-" << m << "]" 138 << * gdbi [ lcdex + tmpm ] 139 << "]" << dl ). ush (); 141 i( gfunc ) { 142 (* gfunc )( FORTRAN_ARGS ( gdb [ t ][ ][ i ]-> gridda ( idt )), 143 FORTRAN_ARGS ( gdb [ t ][ wl ][ m ]-> uxda ( tmpidt )), 144 BOUNDING_BOX ( gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt )) 145 #ifde ACEVeGridFuni 146 , gvgfag 151 ggdb [ t ][ ][ i ]-> gridda ( idt ). us ( gdb [t][ wl ][ m ]-> uxda ( tmpidt ), 152 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt ), 153 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt ), 154 m ); 161 i( gum > 1) { 162  gp ; 163  gp =0;p< gum ;p++) { 164 i( gp = me ) ; 165 i( gux_cv_rv [ p ] && 166 gux_cv_rv [ p ][ idx ] && 167 ! gux_cv_rv [ p ][ idx ]-> ived ()) 168 gcomm_rvi :: rve (* ux_cv_rv [ p ][ idx ]-> q ()); 171 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 172 GridDaBuckVoid ** ggdbkt = 0; 173 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 174 gGridDaBuck < gACE_GFTy >* grcvbkt = 175 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 177 i( grcvbkt == 0) ; 179 cڡ  gnum = rcvbkt -> num (); 181 #ifde DEBUG_PRINT 182 as ( num > 0); 185 i( gxidt !(( gdhdr *) rcvbkt -> hd ())-> idt ) ; 188 #ifde DEBUG_PRINT_GF_COMM 189 gcomm_rvi :: log (<< "[GF_RdFluxes: ExagTٮ[" << num <<"]" 190 << "]" << dl ). ush (); 193  gi =0;i< gnum ;i++) { 194  gdhdr * ggdh = rcvbkt -> hd ( i ); 196 #ifde DEBUG_PRINT_GF_COMM 197 gcomm_rvi :: log (<< "[GF_RdFluxes: Exag[" << i <<"]" 198 << * gdh 199 << "]" << dl ). ush (); 201 cڡ  g = gdh -> time ; 202 cڡ  g = gdh -> v ; 203 cڡ  glidt = gdh -> idt ; 204 cڡ  glidx = gdh -> dex % mdex ; 206 #ifde DEBUG_PRINT 207 as ( = t ); 208 as ( = wl ); 209 as ( lidt = xidt ); 212 #ifde DEBUG_PRINT 213 as ( gdb [ ]); 215 i( gfunc ) { 216 cڡ  gems = rcvbkt -> nems ( i ); 217 (* gfunc )( FORTRAN_ARGS ( gdb [ ][ ][ lidx ]-> gridda ( idt )), 218 grcvbkt -> da ( i ), BOUNDING_BOX ( rcvbkt -> bbox (i)), 219 #ifde ACEVeGridFuni 220 & gems , 222 BOUNDING_BOX ( rcvbkt -> bbox ( i )) 223 #ifde ACEVeGridFuni 224 , gvgfag 229 ( ggdb [ ][ ][ lidx ]-> gridda ( idt )). us (* rcvbkt , i , 230 rcvbkt -> bbox ( i ), 231 rcvbkt -> bbox ( i ), 232 m ); 235 de grcvbkt ;cvbkt = 0; 236 ACELiD (); 237 } gACEEndLo ; 239  gp =0;p< gum ;p++) { 240 i( gp ! me && ux_cv_rv [ p ] && flux_cv_rv[p][ idx ]) 241 ux_cv_rv [ p ][ idx ]-> porcv (); 244 #ifde ACEVeGridFuni 245 i( gvgfag gde [] vgfflag; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionFluxes2.h 1 #ide _uded_GridFuniFluxes2_h 2  #_uded_GridFuniFluxes2_h ) 16 gme < ass gACE_GFTy > 17  GridFuni (2)< gACE_GFTy >:: GF_WreFluxes (cڡ  time , 18 cڡ  v , 19 #ifde ACEVeGridFuni 20 cڡ  m , 22 cڡ  idt ) 24 i(! uxes ()) ; 26 #ifde DEBUG_PRINT 27 as ( idt = ACE_Ma ); 30 cڡ  gxidt = 31 ( idt = ACE_Ma ? ACE_FluxMa : ACE_FluxShadow ; 33 #ide ACEVeGridFuni 34 cڡ  gm = ACEA ; 37 cڡ  gum = comm_rvi :: oc_num (); 38 cڡ  gme = comm_rvi :: oc_me (); 39 i( gum == 1) ; 41 cڡ  gt = dagh_timedex ( time , v ); 42 cڡ  g = v -1; 43 cڡ  gwl = v ; 45 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 47 cڡ  gvs = dagh . tٮvs (); 48 cڡ  gidx = wl ; 50  gp =0;p< gum ;p++) { 51 i( gp = me ) ; 52 i( gux_nd_fo [ p ] && flux_nd_fo[p][ idx ]) { 53 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 54 w GridDaBuck < ACE_GFTy >( ux_nd_fo [ p ][ idx ]-> t , 55 gux_nd_fo [ p ][ idx ]-> gsize , 56 gACEPacked ) 58 w GridDaBuck < ACE_GFTy >( ux_nd_fo [ p ][ idx ]-> t , 59 gux_nd_fo [ p ][ idx ]-> gmsize , 60 gACEPacked ); 61  gs = 0; 62  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 63 gs + gdb [ t ][ wl ][ i ]-> gdbWreFluxes ( p , m , xidt , ACENu , * gdbkt , s ); 64 #ifde DEBUG_PRINT 65 as ( s = ux_nd_fo [ p ][ idx ]-> t ); 67 ggt -> nd (( ACEFluxTag | ), gdbkt , p ); 76 gme < ass gACE_GFTy > 77  GridFuni (2)< gACE_GFTy >:: GF_RdFluxes (cڡ  time , 78 cڡ  v , 79 #ifde ACEVeGridFuni 80 cڡ  m , 82 cڡ  idt ) 84 i(! uxes ()) ; 86 #ifde DEBUG_PRINT 87 as ( idt = ACE_Ma ); 91 #ifde ACEVeGridFuni 92 * gvgfag = w [ nems ]; 93  gvgfi =0;vgfi< gnems ;vgfi++) 94 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 97 cڡ  gxidt = 98 ( idt = ACE_Ma ? ACE_FluxMa : ACE_FluxShadow ; 100 #ide ACEVeGridFuni 101 cڡ  gm = ACEA ; 103 cڡ  gt = dagh_timedex ( time , v ); 104 cڡ  g = v -1; 105 cڡ  gwl = v ; 107 cڡ  gmynkx2 = 2*2; 109 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 111 cڡ  gvs = dagh . tٮvs (); 112 cڡ  gum = comm_rvi :: oc_num (); 113 cڡ  gme = comm_rvi :: oc_me (); 114 cڡ  gidx = ; 117 cڡ  gmdex = dagh . maxdex ()+1; 118 cڡ  glcdex = me * mdex * mynkx2 ; 119 cڡ  gt = mynkx2 * mdex ; 121  gtmpm , gtmpidt ; 123 i( gux_cv_fo [ me ] && 124 gux_cv_fo [ me ][ idx ] && 125 gux_cv_fo [ me ][ idx ]-> gt > 0) { 126  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 127 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbFluxRdInfo (); 129 i( ggdbi !0 r =0; gr < gmynkx2 ;++) { 130 gtmpidt = xidt - r ; 131  gm =0; m< gmdex ; m++) { 132 gtmpm = r * mdex + m ; 133 i(( ggdbi [ lcdex + tmpm ]&& ( ggdb [ t ][ wl ][ m ])) { 135 #ifde DEBUG_PRINT_GF_COMM 136 gcomm_rvi :: log () << "[GF_ReadFlux::LocalCopy " 137 << "[" << i << "<-" << m << "]" 138 << * gdbi [ lcdex + tmpm ] 139 << "]" << dl ). ush (); 141 i( gfunc ) { 142 (* gfunc )( FORTRAN_ARGS ( gdb [ t ][ ][ i ]-> gridda ( idt )), 143 FORTRAN_ARGS ( gdb [ t ][ wl ][ m ]-> uxda ( tmpidt )), 144 BOUNDING_BOX ( gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt )) 145 #ifde ACEVeGridFuni 146 , gvgfag 151 ggdb [ t ][ ][ i ]-> gridda ( idt ). us ( gdb [t][ wl ][ m ]-> uxda ( tmpidt ), 152 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt ), 153 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt ), 154 m ); 161 i( gum > 1) { 162  gp ; 163  gp =0;p< gum ;p++) { 164 i( gp = me ) ; 165 i( gux_cv_rv [ p ] && 166 gux_cv_rv [ p ][ idx ] && 167 ! gux_cv_rv [ p ][ idx ]-> ived ()) 168 gcomm_rvi :: rve (* ux_cv_rv [ p ][ idx ]-> q ()); 171 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 172 GridDaBuckVoid ** ggdbkt = 0; 173 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 174 gGridDaBuck < gACE_GFTy >* grcvbkt = 175 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 177 i( grcvbkt == 0) ; 179 cڡ  gnum = rcvbkt -> num (); 181 #ifde DEBUG_PRINT 182 as ( num > 0); 185 i( gxidt !(( gdhdr *) rcvbkt -> hd ())-> idt ) ; 188 #ifde DEBUG_PRINT_GF_COMM 189 gcomm_rvi :: log (<< "[GF_RdFluxes: ExagTٮ[" << num <<"]" 190 << "]" << dl ). ush (); 193  gi =0;i< gnum ;i++) { 194  gdhdr * ggdh = rcvbkt -> hd ( i ); 196 #ifde DEBUG_PRINT_GF_COMM 197 gcomm_rvi :: log (<< "[GF_RdFluxes: Exag[" << i <<"]" 198 << * gdh 199 << "]" << dl ). ush (); 201 cڡ  g = gdh -> time ; 202 cڡ  g = gdh -> v ; 203 cڡ  glidt = gdh -> idt ; 204 cڡ  glidx = gdh -> dex % mdex ; 206 #ifde DEBUG_PRINT 207 as ( = t ); 208 as ( = wl ); 209 as ( lidt = xidt ); 212 #ifde DEBUG_PRINT 213 as ( gdb [ ]); 215 i( gfunc ) { 216 cڡ  gems = rcvbkt -> nems ( i ); 217 (* gfunc )( FORTRAN_ARGS ( gdb [ ][ ][ lidx ]-> gridda ( idt )), 218 grcvbkt -> da ( i ), BOUNDING_BOX ( rcvbkt -> bbox (i)), 219 #ifde ACEVeGridFuni 220 & gems , 222 BOUNDING_BOX ( rcvbkt -> bbox ( i )) 223 #ifde ACEVeGridFuni 224 , gvgfag 229 ( ggdb [ ][ ][ lidx ]-> gridda ( idt )). us (* rcvbkt , i , 230 rcvbkt -> bbox ( i ), 231 rcvbkt -> bbox ( i ), 232 m ); 235 de grcvbkt ;cvbkt = 0; 236 ACELiD (); 237 } gACEEndLo ; 239  gp =0;p< gum ;p++) { 240 i( gp ! me && ux_cv_rv [ p ] && flux_cv_rv[p][ idx ]) 241 ux_cv_rv [ p ][ idx ]-> porcv (); 244 #ifde ACEVeGridFuni 245 i( gvgfag gde [] vgfflag; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionFluxes3.h 1 #ide _uded_GridFuniFluxes3_h 2  #_uded_GridFuniFluxes3_h ) 16 gme < ass gACE_GFTy > 17  GridFuni (3)< gACE_GFTy >:: GF_WreFluxes (cڡ  time , 18 cڡ  v , 19 #ifde ACEVeGridFuni 20 cڡ  m , 22 cڡ  idt ) 24 i(! uxes ()) ; 26 #ifde DEBUG_PRINT 27 as ( idt = ACE_Ma ); 30 cڡ  gxidt = 31 ( idt = ACE_Ma ? ACE_FluxMa : ACE_FluxShadow ; 33 #ide ACEVeGridFuni 34 cڡ  gm = ACEA ; 37 cڡ  gum = comm_rvi :: oc_num (); 38 cڡ  gme = comm_rvi :: oc_me (); 39 i( gum == 1) ; 41 cڡ  gt = dagh_timedex ( time , v ); 42 cڡ  g = v -1; 43 cڡ  gwl = v ; 45 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 47 cڡ  gvs = dagh . tٮvs (); 48 cڡ  gidx = wl ; 50  gp =0;p< gum ;p++) { 51 i( gp = me ) ; 52 i( gux_nd_fo [ p ] && flux_nd_fo[p][ idx ]) { 53 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 54 w GridDaBuck < ACE_GFTy >( ux_nd_fo [ p ][ idx ]-> t , 55 gux_nd_fo [ p ][ idx ]-> gsize , 56 gACEPacked ) 58 w GridDaBuck < ACE_GFTy >( ux_nd_fo [ p ][ idx ]-> t , 59 gux_nd_fo [ p ][ idx ]-> gmsize , 60 gACEPacked ); 61  gs = 0; 62  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 63 gs + gdb [ t ][ wl ][ i ]-> gdbWreFluxes ( p , m , xidt , ACENu , * gdbkt , s ); 64 #ifde DEBUG_PRINT 65 as ( s = ux_nd_fo [ p ][ idx ]-> t ); 67 ggt -> nd (( ACEFluxTag | ), gdbkt , p ); 76 gme < ass gACE_GFTy > 77  GridFuni (3)< gACE_GFTy >:: GF_RdFluxes (cڡ  time , 78 cڡ  v , 79 #ifde ACEVeGridFuni 80 cڡ  m , 82 cڡ  idt ) 84 i(! uxes ()) ; 86 #ifde DEBUG_PRINT 87 as ( idt = ACE_Ma ); 91 #ifde ACEVeGridFuni 92 * gvgfag = w [ nems ]; 93  gvgfi =0;vgfi< gnems ;vgfi++) 94 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 97 cڡ  gxidt = 98 ( idt = ACE_Ma ? ACE_FluxMa : ACE_FluxShadow ; 100 #ide ACEVeGridFuni 101 cڡ  gm = ACEA ; 103 cڡ  gt = dagh_timedex ( time , v ); 104 cڡ  g = v -1; 105 cڡ  gwl = v ; 107 cڡ  gmynkx2 = 2*3; 109 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 111 cڡ  gvs = dagh . tٮvs (); 112 cڡ  gum = comm_rvi :: oc_num (); 113 cڡ  gme = comm_rvi :: oc_me (); 114 cڡ  gidx = ; 117 cڡ  gmdex = dagh . maxdex ()+1; 118 cڡ  glcdex = me * mdex * mynkx2 ; 119 cڡ  gt = mynkx2 * mdex ; 121  gtmpm , gtmpidt ; 123 i( gux_cv_fo [ me ] && 124 gux_cv_fo [ me ][ idx ] && 125 gux_cv_fo [ me ][ idx ]-> gt > 0) { 126  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 127 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbFluxRdInfo (); 129 i( ggdbi !0 r =0; gr < gmynkx2 ;++) { 130 gtmpidt = xidt - r ; 131  gm =0; m< gmdex ; m++) { 132 gtmpm = r * mdex + m ; 133 i(( ggdbi [ lcdex + tmpm ]&& ( ggdb [ t ][ wl ][ m ])) { 135 #ifde DEBUG_PRINT_GF_COMM 136 gcomm_rvi :: log () << "[GF_ReadFlux::LocalCopy " 137 << "[" << i << "<-" << m << "]" 138 << * gdbi [ lcdex + tmpm ] 139 << "]" << dl ). ush (); 141 i( gfunc ) { 142 (* gfunc )( FORTRAN_ARGS ( gdb [ t ][ ][ i ]-> gridda ( idt )), 143 FORTRAN_ARGS ( gdb [ t ][ wl ][ m ]-> uxda ( tmpidt )), 144 BOUNDING_BOX ( gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt )) 145 #ifde ACEVeGridFuni 146 , gvgfag 151 ggdb [ t ][ ][ i ]-> gridda ( idt ). us ( gdb [t][ wl ][ m ]-> uxda ( tmpidt ), 152 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt ), 153 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + tmpm ], idt ), 154 m ); 161 i( gum > 1) { 162  gp ; 163  gp =0;p< gum ;p++) { 164 i( gp = me ) ; 165 i( gux_cv_rv [ p ] && 166 gux_cv_rv [ p ][ idx ] && 167 ! gux_cv_rv [ p ][ idx ]-> ived ()) 168 gcomm_rvi :: rve (* ux_cv_rv [ p ][ idx ]-> q ()); 171 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 172 GridDaBuckVoid ** ggdbkt = 0; 173 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 174 gGridDaBuck < gACE_GFTy >* grcvbkt = 175 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 177 i( grcvbkt == 0) ; 179 cڡ  gnum = rcvbkt -> num (); 181 #ifde DEBUG_PRINT 182 as ( num > 0); 185 i( gxidt !(( gdhdr *) rcvbkt -> hd ())-> idt ) ; 188 #ifde DEBUG_PRINT_GF_COMM 189 gcomm_rvi :: log (<< "[GF_RdFluxes: ExagTٮ[" << num <<"]" 190 << "]" << dl ). ush (); 193  gi =0;i< gnum ;i++) { 194  gdhdr * ggdh = rcvbkt -> hd ( i ); 196 #ifde DEBUG_PRINT_GF_COMM 197 gcomm_rvi :: log (<< "[GF_RdFluxes: Exag[" << i <<"]" 198 << * gdh 199 << "]" << dl ). ush (); 201 cڡ  g = gdh -> time ; 202 cڡ  g = gdh -> v ; 203 cڡ  glidt = gdh -> idt ; 204 cڡ  glidx = gdh -> dex % mdex ; 206 #ifde DEBUG_PRINT 207 as ( = t ); 208 as ( = wl ); 209 as ( lidt = xidt ); 212 #ifde DEBUG_PRINT 213 as ( gdb [ ]); 215 i( gfunc ) { 216 cڡ  gems = rcvbkt -> nems ( i ); 217 (* gfunc )( FORTRAN_ARGS ( gdb [ ][ ][ lidx ]-> gridda ( idt )), 218 grcvbkt -> da ( i ), BOUNDING_BOX ( rcvbkt -> bbox (i)), 219 #ifde ACEVeGridFuni 220 & gems , 222 BOUNDING_BOX ( rcvbkt -> bbox ( i )) 223 #ifde ACEVeGridFuni 224 , gvgfag 229 ( ggdb [ ][ ][ lidx ]-> gridda ( idt )). us (* rcvbkt , i , 230 rcvbkt -> bbox ( i ), 231 rcvbkt -> bbox ( i ), 232 m ); 235 de grcvbkt ;cvbkt = 0; 236 ACELiD (); 237 } gACEEndLo ; 239  gp =0;p< gum ;p++) { 240 i( gp ! me && ux_cv_rv [ p ] && flux_cv_rv[p][ idx ]) 241 ux_cv_rv [ p ][ idx ]-> porcv (); 244 #ifde ACEVeGridFuni 245 i( gvgfag gde [] vgfflag; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionFuncs1.h 1 #ide _uded_GridFuniFunc1_h 2  #_uded_GridFuniFunc1_h ) 19 gme < ass gACE_GFTy > 20  GridFuni (1)< gACE_GFTy >:: $GF_In (cڡ  time , cڡ  v , 21 GF_TYPE * gs , cڡ  t , 22 cڡ  idt ) 24 i(! `lize ()) ; 25 `as ( ifunc != 0); 27 cڡ  mygc = t ; 28 ACE_GFTy tmrgs [1]; 29 ACE_GFTy * mygs = 0; 30 i( gs =0 mygs = tmrgs ; 31 mygs = gs ; 33 cڡ  t = `dagh_timedex ( time , v ); 34 cڡ  l = v ; 35  i =0; i< ngth ; i++) 36 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 37 (* ifunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 38 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 39 mygs , & mygc ); 40 } } 42 gme < ass gACE_GFTy > 43  GridFuni (1)< gACE_GFTy >:: $GF_In (cڡ  time , cڡ  v , 44 cڡ BBox & bb , 45 GF_TYPE * gs , cڡ  t , 46 cڡ  idt ) 48 i(! `lize ()) ; 49 `as ( ifunc != 0); 51 cڡ  mygc = t ; 52 ACE_GFTy tmrgs [1]; 53 ACE_GFTy * mygs = 0; 54 i( gs =0 mygs = tmrgs ; 55 mygs = gs ; 57 cڡ  t = `dagh_timedex ( time , v ); 58 cڡ  l = v ; 59  i =0; i< ngth ; i++) 60 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 61 (* ifunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 62 `BOUNDING_BOX ( bb ), 63 mygs , & mygc ); 64 } } 67 gme < ass gACE_GFTy > 68  GridFuni (1)< gACE_GFTy >:: $GF_Upde (cڡ  time_om , cڡ  time_to , 69 cڡ  v , 70 GF_TYPE * gs , cڡ  t , 71 cڡ  idt ) 73 i(! `upde ()) ; 74 `as ( ufunc != 0); 76 cڡ  mygc = t ; 77 ACE_GFTy tmrgs [1]; 78 ACE_GFTy * mygs = 0; 79 i( gs =0 mygs = tmrgs ; 80 mygs = gs ; 82 cڡ  t_om = `dagh_timedex ( time_om , v ); 83 cڡ  t_to = `dagh_timedex ( time_to , v ); 84 cڡ  l = v ; 85  i =0; i< ngth ; i++) 86 i( gdb [ t_om ][ l ][ i ] && gdb[ t_to ][l][i] && gdb[t_to][l][i]-> `dexme (i)) 87 (* ufunc )( `FORTRAN_ARGS ( gdb [ t_om ][ l ][ i ]-> `gridda ( idt )), 88 `FORTRAN_ARGS ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 89 `BOUNDING_BOX ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 90 mygs , & mygc ); 91 } } 93 gme < ass gACE_GFTy > 94  GridFuni (1)< gACE_GFTy >:: $GF_Upde (cڡ  time_om , cڡ  time_to , 95 cڡ  v , 96 cڡ BBox & bb , 97 GF_TYPE * gs , cڡ  t , 98 cڡ  idt ) 100 i(! `upde ()) ; 101 `as ( ufunc != 0); 103 cڡ  mygc = t ; 104 ACE_GFTy tmrgs [1]; 105 ACE_GFTy * mygs = 0; 106 i( gs =0 mygs = tmrgs ; 107 mygs = gs ; 109 cڡ  t_om = `dagh_timedex ( time_om , v ); 110 cڡ  t_to = `dagh_timedex ( time_to , v ); 111 cڡ  l = v ; 112  i =0; i< ngth ; i++) 113 i( gdb [ t_om ][ l ][ i ] && gdb[ t_to ][l][i] && gdb[t_to][l][i]-> `dexme (i)) 114 (* ufunc )( `FORTRAN_ARGS ( gdb [ t_om ][ l ][ i ]-> `gridda ( idt )), 115 `FORTRAN_ARGS ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 116 `BOUNDING_BOX ( bb ), 117 mygs , & mygc ); 118 } } 121 gme < ass gACE_GFTy > 122  GridFuni (1)< gACE_GFTy >:: GF_Prg (cڡ  time_om , cڡ  v_om , 123 cڡ  time_to , cڡ  v_to , 125 #ifde ACEVeGridFuni 126 cڡ  m , 128 GF_TYPE * gs , cڡ  t , 129 cڡ  idt ) 131 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 132 i(! gag ) ; 133 as ( pfunc != 0); 135 cڡ  gmygc = t ; 136 ACE_GFTy gtmrgs [1]; 137 ACE_GFTy * gmygs = 0; 138 i( ggs =0 mygs = tmrgs ; 139 gmygs = gs ; 141 #ifde ACEVeGridFuni 142 * gvgfag = w [ nems ]; 143  gvgfi =0;vgfi< gnems ;vgfi++) 144 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 147 cڡ  g = v_om ; 148 cڡ  g = dagh_timedex ( time_om , ); 149 cڡ  g = v_to ; 150 cڡ  g = dagh_timedex ( time_to , ); 152  gi =0; i< gngth ; i++) { 153 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i] && gdb[][][i]-> dexme (i)) { 154 (* gpfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 155 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 156 BOUNDING_BOX ( gdb [ ][ ][ i ]-> gridda ( idt )), 157 #ifde ACEVeGridFuni 158 gvgfag , 160 gmygs , & gmygc ); 163 #ifde ACEVeGridFuni 164 i( gvgfag gde [] vgfflag; 168 gme < ass gACE_GFTy > 169  GridFuni (1)< gACE_GFTy >:: GF_Prg (cڡ  time_om , cڡ  v_om , 170 cڡ  time_to , cڡ  v_to , 171 cڡ BBox & bb , 172 #ifde ACEVeGridFuni 173 cڡ  m , 175 GF_TYPE * gs , cڡ  t , 176 cڡ  idt ) 178 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 179 i(! gag ) ; 180 as ( pfunc != 0); 182 cڡ  gmygc = t ; 183 ACE_GFTy gtmrgs [1]; 184 ACE_GFTy * gmygs = 0; 185 i( ggs =0 mygs = tmrgs ; 186 gmygs = gs ; 188 #ifde ACEVeGridFuni 189 * gvgfag = w [ nems ]; 190  gvgfi =0;vgfi< gnems ;vgfi++) 191 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 194 cڡ  g = v_om ; 195 cڡ  g = dagh_timedex ( time_om , ); 196 cڡ  g = v_to ; 197 cڡ  g = dagh_timedex ( time_to , ); 199  gi =0; i< gngth ; i++) { 200 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i] && gdb[][][i]-> dexme (i)) { 201 (* gpfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 202 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 203 BOUNDING_BOX ( bb ), 204 #ifde ACEVeGridFuni 205 gvgfag , 207 gmygs , & gmygc ); 210 #ifde ACEVeGridFuni 211 i( gvgfag gde [] vgfflag; 216 gme < ass gACE_GFTy > 217  GridFuni (1)< gACE_GFTy >:: GF_Reri (cڡ  time_om , cڡ  v_om , 218 cڡ  time_to , cڡ  v_to , 219 #ifde ACEVeGridFuni 220 cڡ  m , 222 GF_TYPE * gs , cڡ  t , 223 cڡ  idt ) 225 i(! Reri ()) ; 226 as ( rfunc != 0); 228 cڡ  gmygc = t ; 229 ACE_GFTy gtmrgs [1]; 230 ACE_GFTy * gmygs = 0; 231 i( ggs =0 mygs = tmrgs ; 232 gmygs = gs ; 234 #ifde ACEVeGridFuni 235 * gvgfag = w [ nems ]; 236  gvgfi =0;vgfi< gnems ;vgfi++) 237 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 240 cڡ  g = v_om ; 241 cڡ  g = dagh_timedex ( time_om , ); 242 cڡ  g = v_to ; 243 cڡ  g = dagh_timedex ( time_to , ); 245  gi =0; i< gngth ; i++) { 247 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i]) { 248 (* grfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 249 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 250 BOUNDING_BOX ( gdb [ ][ ][ i ]-> gridda ( idt )), 251 #ifde ACEVeGridFuni 252 gvgfag , 254 gmygs , & gmygc ); 257 #ifde ACEVeGridFuni 258 i( gvgfag gde [] vgfflag; 261 gme < ass gACE_GFTy > 262  GridFuni (1)< gACE_GFTy >:: GF_Reri (cڡ  time_om , cڡ  v_om , 263 cڡ  time_to , cڡ  v_to , 264 cڡ BBox & bb , 265 #ifde ACEVeGridFuni 266 cڡ  m , 268 GF_TYPE * gs , cڡ  t , 269 cڡ  idt ) 271 i(! Reri ()) ; 272 as ( rfunc != 0); 274 cڡ  gmygc = t ; 275 ACE_GFTy gtmrgs [1]; 276 ACE_GFTy * gmygs = 0; 277 i( ggs =0 mygs = tmrgs ; 278 gmygs = gs ; 280 #ifde ACEVeGridFuni 281 * gvgfag = w [ nems ]; 282  gvgfi =0;vgfi< gnems ;vgfi++) 283 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 286 cڡ  g = v_om ; 287 cڡ  g = dagh_timedex ( time_om , ); 288 cڡ  g = v_to ; 289 cڡ  g = dagh_timedex ( time_to , ); 291  gi =0; i< gngth ; i++) { 293 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i]) { 294 (* grfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 295 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 296 BOUNDING_BOX ( bb ), 297 #ifde ACEVeGridFuni 298 gvgfag , 300 gmygs , & gmygc ); 303 #ifde ACEVeGridFuni 304 i( gvgfag gde [] vgfflag; 309 gme < ass gACE_GFTy > 310  GridFuni (1)< gACE_GFTy >:: $GF_IO (cڡ  time , cڡ  v , 311 GF_TYPE * gs , cڡ  t , 312 cڡ  idt ) 314 i(! `io ()) ; 315 `as ( iofunc != 0); 317 cڡ  mygc = t ; 318 ACE_GFTy tmrgs [1]; 319 ACE_GFTy * mygs = 0; 320 i( gs =0 mygs = tmrgs ; 321 mygs = gs ; 323 cڡ  t = `dagh_timedex ( time , v ); 324 cڡ  l = v ; 325  i =0; i< ngth ; i++) 326 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 327 (* iofunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 328 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 329 mygs , & mygc ); 330 } } 332 gme < ass gACE_GFTy > 333  GridFuni (1)< gACE_GFTy >:: $GF_IO (cڡ  time , cڡ  v , 334 cڡ BBox & bb , 335 GF_TYPE * gs , cڡ  t , 336 cڡ  idt ) 338 i(! `io ()) ; 339 `as ( iofunc != 0); 341 cڡ  mygc = t ; 342 ACE_GFTy tmrgs [1]; 343 ACE_GFTy * mygs = 0; 344 i( gs =0 mygs = tmrgs ; 345 mygs = gs ; 347 cڡ  t = `dagh_timedex ( time , v ); 348 cڡ  l = v ; 349  i =0; i< ngth ; i++) 350 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 351 (* iofunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 352 `BOUNDING_BOX ( bb ), 353 mygs , & mygc ); 354 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionFuncs2.h 1 #ide _uded_GridFuniFunc2_h 2  #_uded_GridFuniFunc2_h ) 19 gme < ass gACE_GFTy > 20  GridFuni (2)< gACE_GFTy >:: $GF_In (cڡ  time , cڡ  v , 21 GF_TYPE * gs , cڡ  t , 22 cڡ  idt ) 24 i(! `lize ()) ; 25 `as ( ifunc != 0); 27 cڡ  mygc = t ; 28 ACE_GFTy tmrgs [1]; 29 ACE_GFTy * mygs = 0; 30 i( gs =0 mygs = tmrgs ; 31 mygs = gs ; 33 cڡ  t = `dagh_timedex ( time , v ); 34 cڡ  l = v ; 35  i =0; i< ngth ; i++) 36 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 37 (* ifunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 38 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 39 mygs , & mygc ); 40 } } 42 gme < ass gACE_GFTy > 43  GridFuni (2)< gACE_GFTy >:: $GF_In (cڡ  time , cڡ  v , 44 cڡ BBox & bb , 45 GF_TYPE * gs , cڡ  t , 46 cڡ  idt ) 48 i(! `lize ()) ; 49 `as ( ifunc != 0); 51 cڡ  mygc = t ; 52 ACE_GFTy tmrgs [1]; 53 ACE_GFTy * mygs = 0; 54 i( gs =0 mygs = tmrgs ; 55 mygs = gs ; 57 cڡ  t = `dagh_timedex ( time , v ); 58 cڡ  l = v ; 59  i =0; i< ngth ; i++) 60 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 61 (* ifunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 62 `BOUNDING_BOX ( bb ), 63 mygs , & mygc ); 64 } } 67 gme < ass gACE_GFTy > 68  GridFuni (2)< gACE_GFTy >:: $GF_Upde (cڡ  time_om , cڡ  time_to , 69 cڡ  v , 70 GF_TYPE * gs , cڡ  t , 71 cڡ  idt ) 73 i(! `upde ()) ; 74 `as ( ufunc != 0); 76 cڡ  mygc = t ; 77 ACE_GFTy tmrgs [1]; 78 ACE_GFTy * mygs = 0; 79 i( gs =0 mygs = tmrgs ; 80 mygs = gs ; 82 cڡ  t_om = `dagh_timedex ( time_om , v ); 83 cڡ  t_to = `dagh_timedex ( time_to , v ); 84 cڡ  l = v ; 85  i =0; i< ngth ; i++) 86 i( gdb [ t_om ][ l ][ i ] && gdb[ t_to ][l][i] && gdb[t_to][l][i]-> `dexme (i)) 87 (* ufunc )( `FORTRAN_ARGS ( gdb [ t_om ][ l ][ i ]-> `gridda ( idt )), 88 `FORTRAN_ARGS ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 89 `BOUNDING_BOX ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 90 mygs , & mygc ); 91 } } 93 gme < ass gACE_GFTy > 94  GridFuni (2)< gACE_GFTy >:: $GF_Upde (cڡ  time_om , cڡ  time_to , 95 cڡ  v , 96 cڡ BBox & bb , 97 GF_TYPE * gs , cڡ  t , 98 cڡ  idt ) 100 i(! `upde ()) ; 101 `as ( ufunc != 0); 103 cڡ  mygc = t ; 104 ACE_GFTy tmrgs [1]; 105 ACE_GFTy * mygs = 0; 106 i( gs =0 mygs = tmrgs ; 107 mygs = gs ; 109 cڡ  t_om = `dagh_timedex ( time_om , v ); 110 cڡ  t_to = `dagh_timedex ( time_to , v ); 111 cڡ  l = v ; 112  i =0; i< ngth ; i++) 113 i( gdb [ t_om ][ l ][ i ] && gdb[ t_to ][l][i] && gdb[t_to][l][i]-> `dexme (i)) 114 (* ufunc )( `FORTRAN_ARGS ( gdb [ t_om ][ l ][ i ]-> `gridda ( idt )), 115 `FORTRAN_ARGS ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 116 `BOUNDING_BOX ( bb ), 117 mygs , & mygc ); 118 } } 121 gme < ass gACE_GFTy > 122  GridFuni (2)< gACE_GFTy >:: GF_Prg (cڡ  time_om , cڡ  v_om , 123 cڡ  time_to , cڡ  v_to , 125 #ifde ACEVeGridFuni 126 cڡ  m , 128 GF_TYPE * gs , cڡ  t , 129 cڡ  idt ) 131 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 132 i(! gag ) ; 133 as ( pfunc != 0); 135 cڡ  gmygc = t ; 136 ACE_GFTy gtmrgs [1]; 137 ACE_GFTy * gmygs = 0; 138 i( ggs =0 mygs = tmrgs ; 139 gmygs = gs ; 141 #ifde ACEVeGridFuni 142 * gvgfag = w [ nems ]; 143  gvgfi =0;vgfi< gnems ;vgfi++) 144 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 147 cڡ  g = v_om ; 148 cڡ  g = dagh_timedex ( time_om , ); 149 cڡ  g = v_to ; 150 cڡ  g = dagh_timedex ( time_to , ); 152  gi =0; i< gngth ; i++) { 153 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i] && gdb[][][i]-> dexme (i)) { 154 (* gpfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 155 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 156 BOUNDING_BOX ( gdb [ ][ ][ i ]-> gridda ( idt )), 157 #ifde ACEVeGridFuni 158 gvgfag , 160 gmygs , & gmygc ); 163 #ifde ACEVeGridFuni 164 i( gvgfag gde [] vgfflag; 168 gme < ass gACE_GFTy > 169  GridFuni (2)< gACE_GFTy >:: GF_Prg (cڡ  time_om , cڡ  v_om , 170 cڡ  time_to , cڡ  v_to , 171 cڡ BBox & bb , 172 #ifde ACEVeGridFuni 173 cڡ  m , 175 GF_TYPE * gs , cڡ  t , 176 cڡ  idt ) 178 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 179 i(! gag ) ; 180 as ( pfunc != 0); 182 cڡ  gmygc = t ; 183 ACE_GFTy gtmrgs [1]; 184 ACE_GFTy * gmygs = 0; 185 i( ggs =0 mygs = tmrgs ; 186 gmygs = gs ; 188 #ifde ACEVeGridFuni 189 * gvgfag = w [ nems ]; 190  gvgfi =0;vgfi< gnems ;vgfi++) 191 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 194 cڡ  g = v_om ; 195 cڡ  g = dagh_timedex ( time_om , ); 196 cڡ  g = v_to ; 197 cڡ  g = dagh_timedex ( time_to , ); 199  gi =0; i< gngth ; i++) { 200 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i] && gdb[][][i]-> dexme (i)) { 201 (* gpfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 202 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 203 BOUNDING_BOX ( bb ), 204 #ifde ACEVeGridFuni 205 gvgfag , 207 gmygs , & gmygc ); 210 #ifde ACEVeGridFuni 211 i( gvgfag gde [] vgfflag; 216 gme < ass gACE_GFTy > 217  GridFuni (2)< gACE_GFTy >:: GF_Reri (cڡ  time_om , cڡ  v_om , 218 cڡ  time_to , cڡ  v_to , 219 #ifde ACEVeGridFuni 220 cڡ  m , 222 GF_TYPE * gs , cڡ  t , 223 cڡ  idt ) 225 i(! Reri ()) ; 226 as ( rfunc != 0); 228 cڡ  gmygc = t ; 229 ACE_GFTy gtmrgs [1]; 230 ACE_GFTy * gmygs = 0; 231 i( ggs =0 mygs = tmrgs ; 232 gmygs = gs ; 234 #ifde ACEVeGridFuni 235 * gvgfag = w [ nems ]; 236  gvgfi =0;vgfi< gnems ;vgfi++) 237 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 240 cڡ  g = v_om ; 241 cڡ  g = dagh_timedex ( time_om , ); 242 cڡ  g = v_to ; 243 cڡ  g = dagh_timedex ( time_to , ); 245  gi =0; i< gngth ; i++) { 247 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i]) { 248 (* grfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 249 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 250 BOUNDING_BOX ( gdb [ ][ ][ i ]-> gridda ( idt )), 251 #ifde ACEVeGridFuni 252 gvgfag , 254 gmygs , & gmygc ); 257 #ifde ACEVeGridFuni 258 i( gvgfag gde [] vgfflag; 261 gme < ass gACE_GFTy > 262  GridFuni (2)< gACE_GFTy >:: GF_Reri (cڡ  time_om , cڡ  v_om , 263 cڡ  time_to , cڡ  v_to , 264 cڡ BBox & bb , 265 #ifde ACEVeGridFuni 266 cڡ  m , 268 GF_TYPE * gs , cڡ  t , 269 cڡ  idt ) 271 i(! Reri ()) ; 272 as ( rfunc != 0); 274 cڡ  gmygc = t ; 275 ACE_GFTy gtmrgs [1]; 276 ACE_GFTy * gmygs = 0; 277 i( ggs =0 mygs = tmrgs ; 278 gmygs = gs ; 280 #ifde ACEVeGridFuni 281 * gvgfag = w [ nems ]; 282  gvgfi =0;vgfi< gnems ;vgfi++) 283 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 286 cڡ  g = v_om ; 287 cڡ  g = dagh_timedex ( time_om , ); 288 cڡ  g = v_to ; 289 cڡ  g = dagh_timedex ( time_to , ); 291  gi =0; i< gngth ; i++) { 293 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i]) { 294 (* grfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 295 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 296 BOUNDING_BOX ( bb ), 297 #ifde ACEVeGridFuni 298 gvgfag , 300 gmygs , & gmygc ); 303 #ifde ACEVeGridFuni 304 i( gvgfag gde [] vgfflag; 309 gme < ass gACE_GFTy > 310  GridFuni (2)< gACE_GFTy >:: $GF_IO (cڡ  time , cڡ  v , 311 GF_TYPE * gs , cڡ  t , 312 cڡ  idt ) 314 i(! `io ()) ; 315 `as ( iofunc != 0); 317 cڡ  mygc = t ; 318 ACE_GFTy tmrgs [1]; 319 ACE_GFTy * mygs = 0; 320 i( gs =0 mygs = tmrgs ; 321 mygs = gs ; 323 cڡ  t = `dagh_timedex ( time , v ); 324 cڡ  l = v ; 325  i =0; i< ngth ; i++) 326 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 327 (* iofunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 328 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 329 mygs , & mygc ); 330 } } 332 gme < ass gACE_GFTy > 333  GridFuni (2)< gACE_GFTy >:: $GF_IO (cڡ  time , cڡ  v , 334 cڡ BBox & bb , 335 GF_TYPE * gs , cڡ  t , 336 cڡ  idt ) 338 i(! `io ()) ; 339 `as ( iofunc != 0); 341 cڡ  mygc = t ; 342 ACE_GFTy tmrgs [1]; 343 ACE_GFTy * mygs = 0; 344 i( gs =0 mygs = tmrgs ; 345 mygs = gs ; 347 cڡ  t = `dagh_timedex ( time , v ); 348 cڡ  l = v ; 349  i =0; i< ngth ; i++) 350 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 351 (* iofunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 352 `BOUNDING_BOX ( bb ), 353 mygs , & mygc ); 354 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionFuncs3.h 1 #ide _uded_GridFuniFunc3_h 2  #_uded_GridFuniFunc3_h ) 19 gme < ass gACE_GFTy > 20  GridFuni (3)< gACE_GFTy >:: $GF_In (cڡ  time , cڡ  v , 21 GF_TYPE * gs , cڡ  t , 22 cڡ  idt ) 24 i(! `lize ()) ; 25 `as ( ifunc != 0); 27 cڡ  mygc = t ; 28 ACE_GFTy tmrgs [1]; 29 ACE_GFTy * mygs = 0; 30 i( gs =0 mygs = tmrgs ; 31 mygs = gs ; 33 cڡ  t = `dagh_timedex ( time , v ); 34 cڡ  l = v ; 35  i =0; i< ngth ; i++) 36 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 37 (* ifunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 38 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 39 mygs , & mygc ); 40 } } 42 gme < ass gACE_GFTy > 43  GridFuni (3)< gACE_GFTy >:: $GF_In (cڡ  time , cڡ  v , 44 cڡ BBox & bb , 45 GF_TYPE * gs , cڡ  t , 46 cڡ  idt ) 48 i(! `lize ()) ; 49 `as ( ifunc != 0); 51 cڡ  mygc = t ; 52 ACE_GFTy tmrgs [1]; 53 ACE_GFTy * mygs = 0; 54 i( gs =0 mygs = tmrgs ; 55 mygs = gs ; 57 cڡ  t = `dagh_timedex ( time , v ); 58 cڡ  l = v ; 59  i =0; i< ngth ; i++) 60 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 61 (* ifunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 62 `BOUNDING_BOX ( bb ), 63 mygs , & mygc ); 64 } } 67 gme < ass gACE_GFTy > 68  GridFuni (3)< gACE_GFTy >:: $GF_Upde (cڡ  time_om , cڡ  time_to , 69 cڡ  v , 70 GF_TYPE * gs , cڡ  t , 71 cڡ  idt ) 73 i(! `upde ()) ; 74 `as ( ufunc != 0); 76 cڡ  mygc = t ; 77 ACE_GFTy tmrgs [1]; 78 ACE_GFTy * mygs = 0; 79 i( gs =0 mygs = tmrgs ; 80 mygs = gs ; 82 cڡ  t_om = `dagh_timedex ( time_om , v ); 83 cڡ  t_to = `dagh_timedex ( time_to , v ); 84 cڡ  l = v ; 85  i =0; i< ngth ; i++) 86 i( gdb [ t_om ][ l ][ i ] && gdb[ t_to ][l][i] && gdb[t_to][l][i]-> `dexme (i)) 87 (* ufunc )( `FORTRAN_ARGS ( gdb [ t_om ][ l ][ i ]-> `gridda ( idt )), 88 `FORTRAN_ARGS ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 89 `BOUNDING_BOX ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 90 mygs , & mygc ); 91 } } 93 gme < ass gACE_GFTy > 94  GridFuni (3)< gACE_GFTy >:: $GF_Upde (cڡ  time_om , cڡ  time_to , 95 cڡ  v , 96 cڡ BBox & bb , 97 GF_TYPE * gs , cڡ  t , 98 cڡ  idt ) 100 i(! `upde ()) ; 101 `as ( ufunc != 0); 103 cڡ  mygc = t ; 104 ACE_GFTy tmrgs [1]; 105 ACE_GFTy * mygs = 0; 106 i( gs =0 mygs = tmrgs ; 107 mygs = gs ; 109 cڡ  t_om = `dagh_timedex ( time_om , v ); 110 cڡ  t_to = `dagh_timedex ( time_to , v ); 111 cڡ  l = v ; 112  i =0; i< ngth ; i++) 113 i( gdb [ t_om ][ l ][ i ] && gdb[ t_to ][l][i] && gdb[t_to][l][i]-> `dexme (i)) 114 (* ufunc )( `FORTRAN_ARGS ( gdb [ t_om ][ l ][ i ]-> `gridda ( idt )), 115 `FORTRAN_ARGS ( gdb [ t_to ][ l ][ i ]-> `gridda ( idt )), 116 `BOUNDING_BOX ( bb ), 117 mygs , & mygc ); 118 } } 121 gme < ass gACE_GFTy > 122  GridFuni (3)< gACE_GFTy >:: GF_Prg (cڡ  time_om , cڡ  v_om , 123 cڡ  time_to , cڡ  v_to , 125 #ifde ACEVeGridFuni 126 cڡ  m , 128 GF_TYPE * gs , cڡ  t , 129 cڡ  idt ) 131 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 132 i(! gag ) ; 133 as ( pfunc != 0); 135 cڡ  gmygc = t ; 136 ACE_GFTy gtmrgs [1]; 137 ACE_GFTy * gmygs = 0; 138 i( ggs =0 mygs = tmrgs ; 139 gmygs = gs ; 141 #ifde ACEVeGridFuni 142 * gvgfag = w [ nems ]; 143  gvgfi =0;vgfi< gnems ;vgfi++) 144 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 147 cڡ  g = v_om ; 148 cڡ  g = dagh_timedex ( time_om , ); 149 cڡ  g = v_to ; 150 cڡ  g = dagh_timedex ( time_to , ); 152  gi =0; i< gngth ; i++) { 153 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i] && gdb[][][i]-> dexme (i)) { 154 (* gpfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 155 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 156 BOUNDING_BOX ( gdb [ ][ ][ i ]-> gridda ( idt )), 157 #ifde ACEVeGridFuni 158 gvgfag , 160 gmygs , & gmygc ); 163 #ifde ACEVeGridFuni 164 i( gvgfag gde [] vgfflag; 168 gme < ass gACE_GFTy > 169  GridFuni (3)< gACE_GFTy >:: GF_Prg (cڡ  time_om , cڡ  v_om , 170 cڡ  time_to , cڡ  v_to , 171 cڡ BBox & bb , 172 #ifde ACEVeGridFuni 173 cڡ  m , 175 GF_TYPE * gs , cڡ  t , 176 cڡ  idt ) 178 cڡ  gag = ( idt = ACE_Ma ? g (: shadow_g (); 179 i(! gag ) ; 180 as ( pfunc != 0); 182 cڡ  gmygc = t ; 183 ACE_GFTy gtmrgs [1]; 184 ACE_GFTy * gmygs = 0; 185 i( ggs =0 mygs = tmrgs ; 186 gmygs = gs ; 188 #ifde ACEVeGridFuni 189 * gvgfag = w [ nems ]; 190  gvgfi =0;vgfi< gnems ;vgfi++) 191 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 194 cڡ  g = v_om ; 195 cڡ  g = dagh_timedex ( time_om , ); 196 cڡ  g = v_to ; 197 cڡ  g = dagh_timedex ( time_to , ); 199  gi =0; i< gngth ; i++) { 200 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i] && gdb[][][i]-> dexme (i)) { 201 (* gpfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 202 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 203 BOUNDING_BOX ( bb ), 204 #ifde ACEVeGridFuni 205 gvgfag , 207 gmygs , & gmygc ); 210 #ifde ACEVeGridFuni 211 i( gvgfag gde [] vgfflag; 216 gme < ass gACE_GFTy > 217  GridFuni (3)< gACE_GFTy >:: GF_Reri (cڡ  time_om , cڡ  v_om , 218 cڡ  time_to , cڡ  v_to , 219 #ifde ACEVeGridFuni 220 cڡ  m , 222 GF_TYPE * gs , cڡ  t , 223 cڡ  idt ) 225 i(! Reri ()) ; 226 as ( rfunc != 0); 228 cڡ  gmygc = t ; 229 ACE_GFTy gtmrgs [1]; 230 ACE_GFTy * gmygs = 0; 231 i( ggs =0 mygs = tmrgs ; 232 gmygs = gs ; 234 #ifde ACEVeGridFuni 235 * gvgfag = w [ nems ]; 236  gvgfi =0;vgfi< gnems ;vgfi++) 237 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 240 cڡ  g = v_om ; 241 cڡ  g = dagh_timedex ( time_om , ); 242 cڡ  g = v_to ; 243 cڡ  g = dagh_timedex ( time_to , ); 245  gi =0; i< gngth ; i++) { 247 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i]) { 248 (* grfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 249 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 250 BOUNDING_BOX ( gdb [ ][ ][ i ]-> gridda ( idt )), 251 #ifde ACEVeGridFuni 252 gvgfag , 254 gmygs , & gmygc ); 257 #ifde ACEVeGridFuni 258 i( gvgfag gde [] vgfflag; 261 gme < ass gACE_GFTy > 262  GridFuni (3)< gACE_GFTy >:: GF_Reri (cڡ  time_om , cڡ  v_om , 263 cڡ  time_to , cڡ  v_to , 264 cڡ BBox & bb , 265 #ifde ACEVeGridFuni 266 cڡ  m , 268 GF_TYPE * gs , cڡ  t , 269 cڡ  idt ) 271 i(! Reri ()) ; 272 as ( rfunc != 0); 274 cڡ  gmygc = t ; 275 ACE_GFTy gtmrgs [1]; 276 ACE_GFTy * gmygs = 0; 277 i( ggs =0 mygs = tmrgs ; 278 gmygs = gs ; 280 #ifde ACEVeGridFuni 281 * gvgfag = w [ nems ]; 282  gvgfi =0;vgfi< gnems ;vgfi++) 283 gvgfag [ vgfi ] = ( m =vgf|| itm = ACEA ? ACETrue : ACEF ; 286 cڡ  g = v_om ; 287 cڡ  g = dagh_timedex ( time_om , ); 288 cڡ  g = v_to ; 289 cڡ  g = dagh_timedex ( time_to , ); 291  gi =0; i< gngth ; i++) { 293 i( ggdb [ ][ ][ i ] && gdb[ ][ ][i]) { 294 (* grfunc )( FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 295 FORTRAN_ARGS ( gdb [ ][ ][ i ]-> gridda ( idt )), 296 BOUNDING_BOX ( bb ), 297 #ifde ACEVeGridFuni 298 gvgfag , 300 gmygs , & gmygc ); 303 #ifde ACEVeGridFuni 304 i( gvgfag gde [] vgfflag; 309 gme < ass gACE_GFTy > 310  GridFuni (3)< gACE_GFTy >:: $GF_IO (cڡ  time , cڡ  v , 311 GF_TYPE * gs , cڡ  t , 312 cڡ  idt ) 314 i(! `io ()) ; 315 `as ( iofunc != 0); 317 cڡ  mygc = t ; 318 ACE_GFTy tmrgs [1]; 319 ACE_GFTy * mygs = 0; 320 i( gs =0 mygs = tmrgs ; 321 mygs = gs ; 323 cڡ  t = `dagh_timedex ( time , v ); 324 cڡ  l = v ; 325  i =0; i< ngth ; i++) 326 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 327 (* iofunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 328 `BOUNDING_BOX ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 329 mygs , & mygc ); 330 } } 332 gme < ass gACE_GFTy > 333  GridFuni (3)< gACE_GFTy >:: $GF_IO (cڡ  time , cڡ  v , 334 cڡ BBox & bb , 335 GF_TYPE * gs , cڡ  t , 336 cڡ  idt ) 338 i(! `io ()) ; 339 `as ( iofunc != 0); 341 cڡ  mygc = t ; 342 ACE_GFTy tmrgs [1]; 343 ACE_GFTy * mygs = 0; 344 i( gs =0 mygs = tmrgs ; 345 mygs = gs ; 347 cڡ  t = `dagh_timedex ( time , v ); 348 cڡ  l = v ; 349  i =0; i< ngth ; i++) 350 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 351 (* iofunc )( `FORTRAN_ARGS ( gdb [ t ][ l ][ i ]-> `gridda ( idt )), 352 `BOUNDING_BOX ( bb ), 353 mygs , & mygc ); 354 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionIO1.h 1 #ide _uded_GridFuniIO1_h 2  #_uded_GridFuniIO1_h ) 14  ~"ACEIOPams.h " 19 gme < ass gTy > 20  GridFuni (1)< gTy >:: GF_Wre (cڡ  time , 21 cڡ  l , 22 #ifde ACEVeGridFuni 23 cڡ  m , 25 cڡ  mgl , 26 cڡ  idt , 27 cڡ  gfdty ) 29 i(! io ()) ; 31 cڡ  gt = dagh_timedex ( time , l ); 32 cڡ  gv = dagh . vnum ( l ); 34 #ifde ACEVeGridFuni 35 cڡ  gnms = ( m = ACEA ? nems : 1; 37 cڡ  gnms = 1; 38 cڡ  gm = 0; 41 i( gcomm_rvi :: io_abd ()) { 42 cڡ  de = comm_rvi :: oc_io (); 43 cڡ  gme = comm_rvi :: oc_me (); 44 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 46  gt = 0; 47 * gbktsize = w [ ngth ]; 48  gsize = 0; 50  gi ; 51  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 54 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ); 55 gbktsize [ t ] = nms *( Ty )* bb . size (); 56 gsize + gdhdr :: gdbsize ( bktsize [ t ]); 57 gt ++; 61 i( gsize == 0) ; 63 #ifde ACE_NO_MPI 65 i( gcomm_rvi :: oc_wld () > 1) { 66 #ifde DEBUG_PRINT_COMM_IO 67 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 69 << ( ACEIOTag | ACEIOWreReqTag ) << " " 71 << "De: " << de << " " 72 << dl ). ush (); 75 MPI_Reque gq ; 76  gdsize = size ; 77  gR = MPI_Ind (& dsize , 1 , MPI_INT , de , 78 ( ACEIOTag | ACEIOWreReqTag ), 79 comm , & q ); 80 i gMPI_SUCCESS ! R ) 81 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 83 gR = comm_rvi :: rve q ); 84 i gMPI_SUCCESS ! R ) 85 comm_rvi :: r_d ( "GridFunction::GF_Write" , 86 "comm_rvi::rve" , R ); 90 gGridDaBuck < gTy >* ggdbkt = 91 w GridDaBuck < Ty >( t , gbktsize , gACEPacked ); 92 gt = 0; 93  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 98 ggdb [ t ][ l ][ i ]-> gdbWreDa ( m , idt , mgl , 99 gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ),* gdbkt , t ); 101  gtmame [16]; 102 #ifde ACEVeGridFuni 103 i( gm ! ACEA ) 104 rtf ( tmame ,"%s%d", game , m ); 106 rtf ( tmame ,"%s", game ); 108 rtf ( tmame ,"%s", game ); 110 ggdbkt -> tgame ( tmame , t ); 111 ( ggdbkt -> hd ( t ))-> ggfdy = gfdty ; 112 ( ggdbkt -> hd ( t ))-> ggfaggty = gy ; 113 ( ggdbkt -> hd ( t ))-> gtime = time ; 114 ( ggdbkt -> hd ( t ))-> gv = l ; 115 gt ++; 117 i( gbktsize gde [] bktsize; 118 * gckage = 0; 119 ggdbkt -> ck ( ckage , size ); 121 i( gcomm_rvi :: oc_wld () > 1) { 122 #ifde ACE_NO_MPI 124 #ifde DEBUG_PRINT_COMM_IO 125 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 127 << ( ACEIOTag | ACEIOWreDaTag ) << " " 128 << "Size: " << size << " " 129 << "De: " << de << " " 130 << dl ). ush (); 133 MPI_Reque gq ; 134  gR = MPI_Ind ( ckage , size , MPI_BYTE , de , 135 ( ACEIOTag | ACEIOWreDaTag ), comm , & q ); 136 i gMPI_SUCCESS ! R ) 137 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 139 gR = comm_rvi :: rve q ); 140 i gMPI_SUCCESS ! R ) 141 comm_rvi :: r_d ("GridFuni::GF_Wre","comm_rvi::rve", R ); 145 ACEIO_WreFunc gwf = ACEIO_Wre [ dagh . io_ty ]; 146 i( gwf ) { 147 i( ggdbkt -> ty (= ACEPacked ) { 148  num = gdbkt ->num(); 149  gii =0;ii< gnum ;ii++) { 150 ( gwf )( gdagh , ggdbkt -> hd ( ii ), gdbkt-> da (ii)); 154 ( gwf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 158 g << "GridFunctionIO::GF_Write: WriteFuncot set" << "\n"; 161 i( ggdbkt de gdbkt; 164 g << "GridFunction::GF_Write: I/O Not Enabled" << "\n"; 168 gme < ass gTy > 169  GridFuni (1)< gTy >:: GF_Wre (cڡ  time , 170 cڡ  l , 171 #ifde ACEVeGridFuni 172 cڡ  m , 174 cڡ  mgl , 175 cڡ  idt , 176 cڡ BBox & whe , 177 cڡ  gfdty ) 179 i(! io ()) ; 181 as ( whe . nk = dagh .rank); 182 BBox gigdwhe = whe ; 183 gdbAlignBBox ( gk , igdwhe , ignmt ); 185 cڡ  gt = dagh_timedex ( time , l ); 186 cڡ  gv = dagh . vnum ( l ); 188 #ifde ACEVeGridFuni 189 cڡ  gnms = ( m = ACEA ? nems : 1; 191 cڡ  gnms = 1; 192 cڡ  gm = 0; 195 i( gcomm_rvi :: io_abd ()) { 196 cڡ  de = comm_rvi :: oc_io (); 197 cڡ  gme = comm_rvi :: oc_me (); 198 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 200  gt = 0; 201 * gbktsize = w [ ngth ]; 202  gsize = 0; 204  gi ; 205  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 208 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl * gigdwhe ; 209 gbktsize [ t ] = nms *( Ty )* bb . size (); 210 gsize + gdhdr :: gdbsize ( bktsize [ t ]); 211 gt ++; 215 i( gsize == 0) ; 217 #ifde ACE_NO_MPI 219 i( gcomm_rvi :: oc_wld () > 1) { 220 #ifde DEBUG_PRINT_COMM_IO 221 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 223 << ( ACEIOTag | ACEIOWreReqTag ) << " " 225 << "De: " << de << " " 226 << dl ). ush (); 229 MPI_Reque gq ; 230  gdsize = size ; 231  gR = MPI_Ind (& dsize , 1 , MPI_INT , de , 232 ( ACEIOTag | ACEIOWreReqTag ), 233 comm , & q ); 234 i gMPI_SUCCESS ! R ) 235 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 237 gR = comm_rvi :: rve q ); 238 i gMPI_SUCCESS ! R ) 239 comm_rvi :: r_d ( "GridFunction::GF_Write" , 240 "comm_rvi::rve" , R ); 244 gGridDaBuck < gTy > * ggdbkt = 245 w GridDaBuck < Ty >( t , gbktsize , gACEPacked ); 246 gt = 0; 247  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 252 ggdb [ t ][ l ][ i ]-> gdbWreDa ( m , idt , mgl , 253 igdwhe * gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ),* gdbkt , t ); 254  gtmame [16]; 255 #ifde ACEVeGridFuni 256 i( gm ! ACEA ) 257 rtf ( tmame ,"%s%d", game , m ); 259 rtf ( tmame ,"%s", game ); 261 rtf ( tmame ,"%s", game ); 263 ggdbkt -> tgame ( tmame , t ); 264 ( ggdbkt -> hd ( t ))-> ggfdy = gfdty ; 265 ( ggdbkt -> hd ( t ))-> ggfaggty = gy ; 266 ( ggdbkt -> hd ( t ))-> gtime = time ; 267 ( ggdbkt -> hd ( t ))-> gv = l ; 268 gt ++; 270 i( gbktsize gde [] bktsize; 271 * gckage = 0; 272 ggdbkt -> ck ( ckage , size ); 274 i( gcomm_rvi :: oc_wld () > 1) { 275 #ifde ACE_NO_MPI 277 #ifde DEBUG_PRINT_COMM_IO 278 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 280 << ( ACEIOTag | ACEIOWreDaTag ) << " " 281 << "Size: " << size << " " 282 << "De: " << de << " " 283 << dl ). ush (); 286 MPI_Reque gq ; 287  gR = MPI_Ind ( ckage , size , MPI_BYTE , de , 288 ( ACEIOTag | ACEIOWreDaTag ), comm , & q ); 289 i gMPI_SUCCESS ! R ) 290 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 292 gR = comm_rvi :: rve q ); 293 i gMPI_SUCCESS ! R ) 294 comm_rvi :: r_d ( "GridFunction::GF_Write" , 295 "comm_rvi::rve" , R ); 299 ACEIO_WreFunc gwf = ACEIO_Wre [ dagh . io_ty ]; 300 i( gwf ) { 301 i( ggdbkt -> ty (= ACEPacked ) { 302  num = gdbkt ->num(); 303  gii =0;ii< gnum ;ii++) { 304 ( gwf )( gdagh , ggdbkt -> hd ( ii ), gdbkt-> da (ii)); 308 ( gwf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 312 g << "GridFunctionIO::GF_Write: WriteFuncot set" << "\n"; 316 i( ggdbkt de gdbkt; 319 g << "GridFunction::GF_Write: I/O Not Enabled" << "\n"; 326 gme < ass gTy > 327  GridFuni (1)< gTy >:: GF_Rd (cڡ  time , 328 cڡ  l , 329 #ifde ACEVeGridFuni 330 cڡ  m , 332 cڡ  mgl , 333 cڡ  idt , 334 cڡ  gfdty ) 336 i(! io ()) ; 338 cڡ  gt = dagh_timedex ( time , l ); 339 cڡ  gv = dagh . vnum ( l ); 341 #ifde ACEVeGridFuni 342 cڡ  gnms = ( m = ACEA ? nems : 1; 344 cڡ  gnms = 1; 345 cڡ  gm = 0; 348 GridTabDaRcv ** gad_rv = w GridTabDaRcv*[ ngth ]; 350 i( gcomm_rvi :: io_abd ()) { 351 cڡ  de = comm_rvi :: oc_io (); 352 cڡ  gme = comm_rvi :: oc_me (); 353 cڡ  gpwld = comm_rvi :: oc_wld (); 354 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 356  gi ; 358  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 359 gad_rv [ i ] = GridTabDaRcvNULL ; 362 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ); 363 i( gbb . emy ()) ; 364  gsize = gdhdr :: gdbsize ( nms *( Ty )* bb . size ()); 365  gdhdr * gqhdr = 366 w  gdhdr ( bb , nms , gfid , gfdty , gy , game , t , v , i , 367 m , me , idt , ACESg ); 369 i( gpwld > 1) { 370 #ifde ACE_NO_MPI 373 gad_rv [ i ] = 374 w GridTabDaRcv (* gt ,( ACEIOTag | ACEIORdDaTag | i ), size , de ); 377 #ifde DEBUG_PRINT_COMM_IO 378 gcomm_rvi :: log (<< "GridFuni::GF_Rd: " << me << " " 380 << ( ACEIOTag | ACEIORdReqTag ) << " " 381 << "De: " << de << " " 382 << "" << * qhdr << ") " 383 << dl ). ush (); 385 MPI_Reque gq ; 386  gR = MPI_Ind ((*) qhdr , ( gdhdr ), MPI_BYTE , de , 387 ( ACEIOTag | ACEIORdReqTag ), comm , & q ); 388 i gMPI_SUCCESS ! R ) 389 comm_rvi :: r_d "GridFuni::GF_Rd" , "MPI_Ind" , R ); 391 gR = comm_rvi :: rve q ); 392 i gMPI_SUCCESS ! R ) 393 comm_rvi :: r_d ("GridFuni::GF_Rd","comm_rvi::rve", R ); 397 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( qhdr , nms *(Type)); 398 ACEIO_RdFunc grf = ACEIO_Rd [ dagh . io_ty ]; 399 i( grf ) { 400 ( grf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 401 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). cy (* gdbkt ); 404 g << "GridFunctionIO::GF_Read: ReadFuncot set" << "\n"; 406 i( ggdbkt de gdbkt; 407 ggdbkt = 0; 409 i( gqhdr de eqhdr; 411 #ifde ACE_NO_MPI 413 i( gpwld > 1) { 414  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 415 i( gad_rv [ i ] && !ad_rv[i]-> ived ()) { 416 gcomm_rvi :: rve (* ad_rv [ i ]-> q ()); 417 de gad_rv [ i ]; 418 gad_rv [ i ] = 0; 421 i( gad_rv gde []ead_server; 422 GF_RdDa ( t ); 428 g << "GridFunction::GF_Read: I/O Not Enabled" << "\n"; 432 gme < ass gTy > 433  GridFuni (1)< gTy >:: GF_Rd (cڡ  time , 434 cڡ  l , 435 #ifde ACEVeGridFuni 436 cڡ  m , 438 cڡ  mgl , 439 cڡ  idt , 440 cڡ BBox & whe , 441 cڡ  gfdty ) 443 i(! io ()) ; 445 as ( whe . nk = dagh .rank); 446 BBox gigdwhe = whe ; 447 gdbAlignBBox ( gk , igdwhe , ignmt ); 449 cڡ  gt = dagh_timedex ( time , l ); 450 cڡ  gv = dagh . vnum ( l ); 452 #ifde ACEVeGridFuni 453 cڡ  gnms = ( m = ACEA ? nems : 1; 455 cڡ  gnms = 1; 456 cڡ  gm = 0; 459 GridTabDaRcv ** gad_rv = w GridTabDaRcv*[ ngth ]; 461 i( gcomm_rvi :: io_abd ()) { 462 cڡ  de = comm_rvi :: oc_io (); 463 cڡ  gme = comm_rvi :: oc_me (); 464 cڡ  gpwld = comm_rvi :: oc_wld (); 465 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 467  gi ; 469  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 470 gad_rv [ i ] = GridTabDaRcvNULL ; 473 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl * gigdwhe ; 474 i( gbb . emy ()) ; 475  gsize = gdhdr :: gdbsize ( nms *( Ty )* bb . size ()); 476  gdhdr * gqhdr = 477 w  gdhdr ( bb , nms , gfid , gfdty , gy , game , t , v , i , 478 m , me , idt , ACESg ); 480 i( gpwld > 1) { 481 #ifde ACE_NO_MPI 484 gad_rv [ i ] = 485 w GridTabDaRcv (* gt ,( ACEIOTag | ACEIORdDaTag | i ), size , de ); 488 #ifde DEBUG_PRINT_COMM_IO 489 gcomm_rvi :: log (<< "GridFuni::GF_Rd: " << me << " " 491 << ( ACEIOTag | ACEIORdReqTag ) << " " 492 << "De: " << de << " " 493 << "" << * qhdr << ") " 494 << dl ). ush (); 496 MPI_Reque gq ; 497  gR = MPI_Ind ((*) qhdr , ( gdhdr ), MPI_BYTE , de , 498 ( ACEIOTag | ACEIORdReqTag ), comm , & q ); 499 i gMPI_SUCCESS ! R ) 500 comm_rvi :: r_d "GridFuni::GF_Rd" , "MPI_Ind" , R ); 502 gR = comm_rvi :: rve q ); 503 i gMPI_SUCCESS ! R ) 504 comm_rvi :: r_d ("GridFuni::GF_Rd","comm_rvi::rve", R ); 508 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( qhdr , nms *(Type)); 509 ACEIO_RdFunc grf = ACEIO_Rd [ dagh . io_ty ]; 510 i( grf ) { 511 ( grf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 512 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). cy (* gdbkt ); 515 g << "GridFunctionIO::GF_Read: ReadFuncot set" << "\n"; 517 i( ggdbkt de gdbkt; 518 ggdbkt = 0; 520 i( gqhdr de eqhdr; 522 #ifde ACE_NO_MPI 524 i( gpwld > 1) { 525  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 526 i( gad_rv [ i ] && !ad_rv[i]-> ived ()) { 527 gcomm_rvi :: rve (* ad_rv [ i ]-> q ()); 528 de gad_rv [ i ]; 529 gad_rv [ i ] = 0; 532 i( gad_rv gde []ead_server; 534 GF_RdDa ( t ); 540 g << "GridFunction::GF_Read: I/O Not Enabled" << "\n"; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionIO2.h 1 #ide _uded_GridFuniIO2_h 2  #_uded_GridFuniIO2_h ) 14  ~"ACEIOPams.h " 19 gme < ass gTy > 20  GridFuni (2)< gTy >:: GF_Wre (cڡ  time , 21 cڡ  l , 22 #ifde ACEVeGridFuni 23 cڡ  m , 25 cڡ  mgl , 26 cڡ  idt , 27 cڡ  gfdty ) 29 i(! io ()) ; 31 cڡ  gt = dagh_timedex ( time , l ); 32 cڡ  gv = dagh . vnum ( l ); 34 #ifde ACEVeGridFuni 35 cڡ  gnms = ( m = ACEA ? nems : 1; 37 cڡ  gnms = 1; 38 cڡ  gm = 0; 41 i( gcomm_rvi :: io_abd ()) { 42 cڡ  de = comm_rvi :: oc_io (); 43 cڡ  gme = comm_rvi :: oc_me (); 44 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 46  gt = 0; 47 * gbktsize = w [ ngth ]; 48  gsize = 0; 50  gi ; 51  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 54 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ); 55 gbktsize [ t ] = nms *( Ty )* bb . size (); 56 gsize + gdhdr :: gdbsize ( bktsize [ t ]); 57 gt ++; 61 i( gsize == 0) ; 63 #ifde ACE_NO_MPI 65 i( gcomm_rvi :: oc_wld () > 1) { 66 #ifde DEBUG_PRINT_COMM_IO 67 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 69 << ( ACEIOTag | ACEIOWreReqTag ) << " " 71 << "De: " << de << " " 72 << dl ). ush (); 75 MPI_Reque gq ; 76  gdsize = size ; 77  gR = MPI_Ind (& dsize , 1 , MPI_INT , de , 78 ( ACEIOTag | ACEIOWreReqTag ), 79 comm , & q ); 80 i gMPI_SUCCESS ! R ) 81 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 83 gR = comm_rvi :: rve q ); 84 i gMPI_SUCCESS ! R ) 85 comm_rvi :: r_d ( "GridFunction::GF_Write" , 86 "comm_rvi::rve" , R ); 90 gGridDaBuck < gTy >* ggdbkt = 91 w GridDaBuck < Ty >( t , gbktsize , gACEPacked ); 92 gt = 0; 93  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 98 ggdb [ t ][ l ][ i ]-> gdbWreDa ( m , idt , mgl , 99 gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ),* gdbkt , t ); 101  gtmame [16]; 102 #ifde ACEVeGridFuni 103 i( gm ! ACEA ) 104 rtf ( tmame ,"%s%d", game , m ); 106 rtf ( tmame ,"%s", game ); 108 rtf ( tmame ,"%s", game ); 110 ggdbkt -> tgame ( tmame , t ); 111 ( ggdbkt -> hd ( t ))-> ggfdy = gfdty ; 112 ( ggdbkt -> hd ( t ))-> ggfaggty = gy ; 113 ( ggdbkt -> hd ( t ))-> gtime = time ; 114 ( ggdbkt -> hd ( t ))-> gv = l ; 115 gt ++; 117 i( gbktsize gde [] bktsize; 118 * gckage = 0; 119 ggdbkt -> ck ( ckage , size ); 121 i( gcomm_rvi :: oc_wld () > 1) { 122 #ifde ACE_NO_MPI 124 #ifde DEBUG_PRINT_COMM_IO 125 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 127 << ( ACEIOTag | ACEIOWreDaTag ) << " " 128 << "Size: " << size << " " 129 << "De: " << de << " " 130 << dl ). ush (); 133 MPI_Reque gq ; 134  gR = MPI_Ind ( ckage , size , MPI_BYTE , de , 135 ( ACEIOTag | ACEIOWreDaTag ), comm , & q ); 136 i gMPI_SUCCESS ! R ) 137 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 139 gR = comm_rvi :: rve q ); 140 i gMPI_SUCCESS ! R ) 141 comm_rvi :: r_d ("GridFuni::GF_Wre","comm_rvi::rve", R ); 145 ACEIO_WreFunc gwf = ACEIO_Wre [ dagh . io_ty ]; 146 i( gwf ) { 147 i( ggdbkt -> ty (= ACEPacked ) { 148  num = gdbkt ->num(); 149  gii =0;ii< gnum ;ii++) { 150 ( gwf )( gdagh , ggdbkt -> hd ( ii ), gdbkt-> da (ii)); 154 ( gwf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 158 g << "GridFunctionIO::GF_Write: WriteFuncot set" << "\n"; 161 i( ggdbkt de gdbkt; 164 g << "GridFunction::GF_Write: I/O Not Enabled" << "\n"; 168 gme < ass gTy > 169  GridFuni (2)< gTy >:: GF_Wre (cڡ  time , 170 cڡ  l , 171 #ifde ACEVeGridFuni 172 cڡ  m , 174 cڡ  mgl , 175 cڡ  idt , 176 cڡ BBox & whe , 177 cڡ  gfdty ) 179 i(! io ()) ; 181 as ( whe . nk = dagh .rank); 182 BBox gigdwhe = whe ; 183 gdbAlignBBox ( gk , igdwhe , ignmt ); 185 cڡ  gt = dagh_timedex ( time , l ); 186 cڡ  gv = dagh . vnum ( l ); 188 #ifde ACEVeGridFuni 189 cڡ  gnms = ( m = ACEA ? nems : 1; 191 cڡ  gnms = 1; 192 cڡ  gm = 0; 195 i( gcomm_rvi :: io_abd ()) { 196 cڡ  de = comm_rvi :: oc_io (); 197 cڡ  gme = comm_rvi :: oc_me (); 198 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 200  gt = 0; 201 * gbktsize = w [ ngth ]; 202  gsize = 0; 204  gi ; 205  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 208 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl * gigdwhe ; 209 gbktsize [ t ] = nms *( Ty )* bb . size (); 210 gsize + gdhdr :: gdbsize ( bktsize [ t ]); 211 gt ++; 215 i( gsize == 0) ; 217 #ifde ACE_NO_MPI 219 i( gcomm_rvi :: oc_wld () > 1) { 220 #ifde DEBUG_PRINT_COMM_IO 221 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 223 << ( ACEIOTag | ACEIOWreReqTag ) << " " 225 << "De: " << de << " " 226 << dl ). ush (); 229 MPI_Reque gq ; 230  gdsize = size ; 231  gR = MPI_Ind (& dsize , 1 , MPI_INT , de , 232 ( ACEIOTag | ACEIOWreReqTag ), 233 comm , & q ); 234 i gMPI_SUCCESS ! R ) 235 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 237 gR = comm_rvi :: rve q ); 238 i gMPI_SUCCESS ! R ) 239 comm_rvi :: r_d ( "GridFunction::GF_Write" , 240 "comm_rvi::rve" , R ); 244 gGridDaBuck < gTy > * ggdbkt = 245 w GridDaBuck < Ty >( t , gbktsize , gACEPacked ); 246 gt = 0; 247  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 252 ggdb [ t ][ l ][ i ]-> gdbWreDa ( m , idt , mgl , 253 igdwhe * gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ),* gdbkt , t ); 254  gtmame [16]; 255 #ifde ACEVeGridFuni 256 i( gm ! ACEA ) 257 rtf ( tmame ,"%s%d", game , m ); 259 rtf ( tmame ,"%s", game ); 261 rtf ( tmame ,"%s", game ); 263 ggdbkt -> tgame ( tmame , t ); 264 ( ggdbkt -> hd ( t ))-> ggfdy = gfdty ; 265 ( ggdbkt -> hd ( t ))-> ggfaggty = gy ; 266 ( ggdbkt -> hd ( t ))-> gtime = time ; 267 ( ggdbkt -> hd ( t ))-> gv = l ; 268 gt ++; 270 i( gbktsize gde [] bktsize; 271 * gckage = 0; 272 ggdbkt -> ck ( ckage , size ); 274 i( gcomm_rvi :: oc_wld () > 1) { 275 #ifde ACE_NO_MPI 277 #ifde DEBUG_PRINT_COMM_IO 278 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 280 << ( ACEIOTag | ACEIOWreDaTag ) << " " 281 << "Size: " << size << " " 282 << "De: " << de << " " 283 << dl ). ush (); 286 MPI_Reque gq ; 287  gR = MPI_Ind ( ckage , size , MPI_BYTE , de , 288 ( ACEIOTag | ACEIOWreDaTag ), comm , & q ); 289 i gMPI_SUCCESS ! R ) 290 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 292 gR = comm_rvi :: rve q ); 293 i gMPI_SUCCESS ! R ) 294 comm_rvi :: r_d ( "GridFunction::GF_Write" , 295 "comm_rvi::rve" , R ); 299 ACEIO_WreFunc gwf = ACEIO_Wre [ dagh . io_ty ]; 300 i( gwf ) { 301 i( ggdbkt -> ty (= ACEPacked ) { 302  num = gdbkt ->num(); 303  gii =0;ii< gnum ;ii++) { 304 ( gwf )( gdagh , ggdbkt -> hd ( ii ), gdbkt-> da (ii)); 308 ( gwf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 312 g << "GridFunctionIO::GF_Write: WriteFuncot set" << "\n"; 316 i( ggdbkt de gdbkt; 319 g << "GridFunction::GF_Write: I/O Not Enabled" << "\n"; 326 gme < ass gTy > 327  GridFuni (2)< gTy >:: GF_Rd (cڡ  time , 328 cڡ  l , 329 #ifde ACEVeGridFuni 330 cڡ  m , 332 cڡ  mgl , 333 cڡ  idt , 334 cڡ  gfdty ) 336 i(! io ()) ; 338 cڡ  gt = dagh_timedex ( time , l ); 339 cڡ  gv = dagh . vnum ( l ); 341 #ifde ACEVeGridFuni 342 cڡ  gnms = ( m = ACEA ? nems : 1; 344 cڡ  gnms = 1; 345 cڡ  gm = 0; 348 GridTabDaRcv ** gad_rv = w GridTabDaRcv*[ ngth ]; 350 i( gcomm_rvi :: io_abd ()) { 351 cڡ  de = comm_rvi :: oc_io (); 352 cڡ  gme = comm_rvi :: oc_me (); 353 cڡ  gpwld = comm_rvi :: oc_wld (); 354 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 356  gi ; 358  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 359 gad_rv [ i ] = GridTabDaRcvNULL ; 362 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ); 363 i( gbb . emy ()) ; 364  gsize = gdhdr :: gdbsize ( nms *( Ty )* bb . size ()); 365  gdhdr * gqhdr = 366 w  gdhdr ( bb , nms , gfid , gfdty , gy , game , t , v , i , 367 m , me , idt , ACESg ); 369 i( gpwld > 1) { 370 #ifde ACE_NO_MPI 373 gad_rv [ i ] = 374 w GridTabDaRcv (* gt ,( ACEIOTag | ACEIORdDaTag | i ), size , de ); 377 #ifde DEBUG_PRINT_COMM_IO 378 gcomm_rvi :: log (<< "GridFuni::GF_Rd: " << me << " " 380 << ( ACEIOTag | ACEIORdReqTag ) << " " 381 << "De: " << de << " " 382 << "" << * qhdr << ") " 383 << dl ). ush (); 385 MPI_Reque gq ; 386  gR = MPI_Ind ((*) qhdr , ( gdhdr ), MPI_BYTE , de , 387 ( ACEIOTag | ACEIORdReqTag ), comm , & q ); 388 i gMPI_SUCCESS ! R ) 389 comm_rvi :: r_d "GridFuni::GF_Rd" , "MPI_Ind" , R ); 391 gR = comm_rvi :: rve q ); 392 i gMPI_SUCCESS ! R ) 393 comm_rvi :: r_d ("GridFuni::GF_Rd","comm_rvi::rve", R ); 397 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( qhdr , nms *(Type)); 398 ACEIO_RdFunc grf = ACEIO_Rd [ dagh . io_ty ]; 399 i( grf ) { 400 ( grf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 401 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). cy (* gdbkt ); 404 g << "GridFunctionIO::GF_Read: ReadFuncot set" << "\n"; 406 i( ggdbkt de gdbkt; 407 ggdbkt = 0; 409 i( gqhdr de eqhdr; 411 #ifde ACE_NO_MPI 413 i( gpwld > 1) { 414  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 415 i( gad_rv [ i ] && !ad_rv[i]-> ived ()) { 416 gcomm_rvi :: rve (* ad_rv [ i ]-> q ()); 417 de gad_rv [ i ]; 418 gad_rv [ i ] = 0; 421 i( gad_rv gde []ead_server; 422 GF_RdDa ( t ); 428 g << "GridFunction::GF_Read: I/O Not Enabled" << "\n"; 432 gme < ass gTy > 433  GridFuni (2)< gTy >:: GF_Rd (cڡ  time , 434 cڡ  l , 435 #ifde ACEVeGridFuni 436 cڡ  m , 438 cڡ  mgl , 439 cڡ  idt , 440 cڡ BBox & whe , 441 cڡ  gfdty ) 443 i(! io ()) ; 445 as ( whe . nk = dagh .rank); 446 BBox gigdwhe = whe ; 447 gdbAlignBBox ( gk , igdwhe , ignmt ); 449 cڡ  gt = dagh_timedex ( time , l ); 450 cڡ  gv = dagh . vnum ( l ); 452 #ifde ACEVeGridFuni 453 cڡ  gnms = ( m = ACEA ? nems : 1; 455 cڡ  gnms = 1; 456 cڡ  gm = 0; 459 GridTabDaRcv ** gad_rv = w GridTabDaRcv*[ ngth ]; 461 i( gcomm_rvi :: io_abd ()) { 462 cڡ  de = comm_rvi :: oc_io (); 463 cڡ  gme = comm_rvi :: oc_me (); 464 cڡ  gpwld = comm_rvi :: oc_wld (); 465 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 467  gi ; 469  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 470 gad_rv [ i ] = GridTabDaRcvNULL ; 473 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl * gigdwhe ; 474 i( gbb . emy ()) ; 475  gsize = gdhdr :: gdbsize ( nms *( Ty )* bb . size ()); 476  gdhdr * gqhdr = 477 w  gdhdr ( bb , nms , gfid , gfdty , gy , game , t , v , i , 478 m , me , idt , ACESg ); 480 i( gpwld > 1) { 481 #ifde ACE_NO_MPI 484 gad_rv [ i ] = 485 w GridTabDaRcv (* gt ,( ACEIOTag | ACEIORdDaTag | i ), size , de ); 488 #ifde DEBUG_PRINT_COMM_IO 489 gcomm_rvi :: log (<< "GridFuni::GF_Rd: " << me << " " 491 << ( ACEIOTag | ACEIORdReqTag ) << " " 492 << "De: " << de << " " 493 << "" << * qhdr << ") " 494 << dl ). ush (); 496 MPI_Reque gq ; 497  gR = MPI_Ind ((*) qhdr , ( gdhdr ), MPI_BYTE , de , 498 ( ACEIOTag | ACEIORdReqTag ), comm , & q ); 499 i gMPI_SUCCESS ! R ) 500 comm_rvi :: r_d "GridFuni::GF_Rd" , "MPI_Ind" , R ); 502 gR = comm_rvi :: rve q ); 503 i gMPI_SUCCESS ! R ) 504 comm_rvi :: r_d ("GridFuni::GF_Rd","comm_rvi::rve", R ); 508 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( qhdr , nms *(Type)); 509 ACEIO_RdFunc grf = ACEIO_Rd [ dagh . io_ty ]; 510 i( grf ) { 511 ( grf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 512 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). cy (* gdbkt ); 515 g << "GridFunctionIO::GF_Read: ReadFuncot set" << "\n"; 517 i( ggdbkt de gdbkt; 518 ggdbkt = 0; 520 i( gqhdr de eqhdr; 522 #ifde ACE_NO_MPI 524 i( gpwld > 1) { 525  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 526 i( gad_rv [ i ] && !ad_rv[i]-> ived ()) { 527 gcomm_rvi :: rve (* ad_rv [ i ]-> q ()); 528 de gad_rv [ i ]; 529 gad_rv [ i ] = 0; 532 i( gad_rv gde []ead_server; 534 GF_RdDa ( t ); 540 g << "GridFunction::GF_Read: I/O Not Enabled" << "\n"; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionIO3.h 1 #ide _uded_GridFuniIO3_h 2  #_uded_GridFuniIO3_h ) 14  ~"ACEIOPams.h " 19 gme < ass gTy > 20  GridFuni (3)< gTy >:: GF_Wre (cڡ  time , 21 cڡ  l , 22 #ifde ACEVeGridFuni 23 cڡ  m , 25 cڡ  mgl , 26 cڡ  idt , 27 cڡ  gfdty ) 29 i(! io ()) ; 31 cڡ  gt = dagh_timedex ( time , l ); 32 cڡ  gv = dagh . vnum ( l ); 34 #ifde ACEVeGridFuni 35 cڡ  gnms = ( m = ACEA ? nems : 1; 37 cڡ  gnms = 1; 38 cڡ  gm = 0; 41 i( gcomm_rvi :: io_abd ()) { 42 cڡ  de = comm_rvi :: oc_io (); 43 cڡ  gme = comm_rvi :: oc_me (); 44 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 46  gt = 0; 47 * gbktsize = w [ ngth ]; 48  gsize = 0; 50  gi ; 51  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 54 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ); 55 gbktsize [ t ] = nms *( Ty )* bb . size (); 56 gsize + gdhdr :: gdbsize ( bktsize [ t ]); 57 gt ++; 61 i( gsize == 0) ; 63 #ifde ACE_NO_MPI 65 i( gcomm_rvi :: oc_wld () > 1) { 66 #ifde DEBUG_PRINT_COMM_IO 67 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 69 << ( ACEIOTag | ACEIOWreReqTag ) << " " 71 << "De: " << de << " " 72 << dl ). ush (); 75 MPI_Reque gq ; 76  gdsize = size ; 77  gR = MPI_Ind (& dsize , 1 , MPI_INT , de , 78 ( ACEIOTag | ACEIOWreReqTag ), 79 comm , & q ); 80 i gMPI_SUCCESS ! R ) 81 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 83 gR = comm_rvi :: rve q ); 84 i gMPI_SUCCESS ! R ) 85 comm_rvi :: r_d ( "GridFunction::GF_Write" , 86 "comm_rvi::rve" , R ); 90 gGridDaBuck < gTy >* ggdbkt = 91 w GridDaBuck < Ty >( t , gbktsize , gACEPacked ); 92 gt = 0; 93  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 98 ggdb [ t ][ l ][ i ]-> gdbWreDa ( m , idt , mgl , 99 gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ),* gdbkt , t ); 101  gtmame [16]; 102 #ifde ACEVeGridFuni 103 i( gm ! ACEA ) 104 rtf ( tmame ,"%s%d", game , m ); 106 rtf ( tmame ,"%s", game ); 108 rtf ( tmame ,"%s", game ); 110 ggdbkt -> tgame ( tmame , t ); 111 ( ggdbkt -> hd ( t ))-> ggfdy = gfdty ; 112 ( ggdbkt -> hd ( t ))-> ggfaggty = gy ; 113 ( ggdbkt -> hd ( t ))-> gtime = time ; 114 ( ggdbkt -> hd ( t ))-> gv = l ; 115 gt ++; 117 i( gbktsize gde [] bktsize; 118 * gckage = 0; 119 ggdbkt -> ck ( ckage , size ); 121 i( gcomm_rvi :: oc_wld () > 1) { 122 #ifde ACE_NO_MPI 124 #ifde DEBUG_PRINT_COMM_IO 125 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 127 << ( ACEIOTag | ACEIOWreDaTag ) << " " 128 << "Size: " << size << " " 129 << "De: " << de << " " 130 << dl ). ush (); 133 MPI_Reque gq ; 134  gR = MPI_Ind ( ckage , size , MPI_BYTE , de , 135 ( ACEIOTag | ACEIOWreDaTag ), comm , & q ); 136 i gMPI_SUCCESS ! R ) 137 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 139 gR = comm_rvi :: rve q ); 140 i gMPI_SUCCESS ! R ) 141 comm_rvi :: r_d ("GridFuni::GF_Wre","comm_rvi::rve", R ); 145 ACEIO_WreFunc gwf = ACEIO_Wre [ dagh . io_ty ]; 146 i( gwf ) { 147 i( ggdbkt -> ty (= ACEPacked ) { 148  num = gdbkt ->num(); 149  gii =0;ii< gnum ;ii++) { 150 ( gwf )( gdagh , ggdbkt -> hd ( ii ), gdbkt-> da (ii)); 154 ( gwf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 158 g << "GridFunctionIO::GF_Write: WriteFuncot set" << "\n"; 161 i( ggdbkt de gdbkt; 164 g << "GridFunction::GF_Write: I/O Not Enabled" << "\n"; 168 gme < ass gTy > 169  GridFuni (3)< gTy >:: GF_Wre (cڡ  time , 170 cڡ  l , 171 #ifde ACEVeGridFuni 172 cڡ  m , 174 cڡ  mgl , 175 cڡ  idt , 176 cڡ BBox & whe , 177 cڡ  gfdty ) 179 i(! io ()) ; 181 as ( whe . nk = dagh .rank); 182 BBox gigdwhe = whe ; 183 gdbAlignBBox ( gk , igdwhe , ignmt ); 185 cڡ  gt = dagh_timedex ( time , l ); 186 cڡ  gv = dagh . vnum ( l ); 188 #ifde ACEVeGridFuni 189 cڡ  gnms = ( m = ACEA ? nems : 1; 191 cڡ  gnms = 1; 192 cڡ  gm = 0; 195 i( gcomm_rvi :: io_abd ()) { 196 cڡ  de = comm_rvi :: oc_io (); 197 cڡ  gme = comm_rvi :: oc_me (); 198 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 200  gt = 0; 201 * gbktsize = w [ ngth ]; 202  gsize = 0; 204  gi ; 205  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 208 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl * gigdwhe ; 209 gbktsize [ t ] = nms *( Ty )* bb . size (); 210 gsize + gdhdr :: gdbsize ( bktsize [ t ]); 211 gt ++; 215 i( gsize == 0) ; 217 #ifde ACE_NO_MPI 219 i( gcomm_rvi :: oc_wld () > 1) { 220 #ifde DEBUG_PRINT_COMM_IO 221 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 223 << ( ACEIOTag | ACEIOWreReqTag ) << " " 225 << "De: " << de << " " 226 << dl ). ush (); 229 MPI_Reque gq ; 230  gdsize = size ; 231  gR = MPI_Ind (& dsize , 1 , MPI_INT , de , 232 ( ACEIOTag | ACEIOWreReqTag ), 233 comm , & q ); 234 i gMPI_SUCCESS ! R ) 235 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 237 gR = comm_rvi :: rve q ); 238 i gMPI_SUCCESS ! R ) 239 comm_rvi :: r_d ( "GridFunction::GF_Write" , 240 "comm_rvi::rve" , R ); 244 gGridDaBuck < gTy > * ggdbkt = 245 w GridDaBuck < Ty >( t , gbktsize , gACEPacked ); 246 gt = 0; 247  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 252 ggdb [ t ][ l ][ i ]-> gdbWreDa ( m , idt , mgl , 253 igdwhe * gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ),* gdbkt , t ); 254  gtmame [16]; 255 #ifde ACEVeGridFuni 256 i( gm ! ACEA ) 257 rtf ( tmame ,"%s%d", game , m ); 259 rtf ( tmame ,"%s", game ); 261 rtf ( tmame ,"%s", game ); 263 ggdbkt -> tgame ( tmame , t ); 264 ( ggdbkt -> hd ( t ))-> ggfdy = gfdty ; 265 ( ggdbkt -> hd ( t ))-> ggfaggty = gy ; 266 ( ggdbkt -> hd ( t ))-> gtime = time ; 267 ( ggdbkt -> hd ( t ))-> gv = l ; 268 gt ++; 270 i( gbktsize gde [] bktsize; 271 * gckage = 0; 272 ggdbkt -> ck ( ckage , size ); 274 i( gcomm_rvi :: oc_wld () > 1) { 275 #ifde ACE_NO_MPI 277 #ifde DEBUG_PRINT_COMM_IO 278 comm_rvi :: log (<< "GridFuni::GF_Wre: " << me << " " 280 << ( ACEIOTag | ACEIOWreDaTag ) << " " 281 << "Size: " << size << " " 282 << "De: " << de << " " 283 << dl ). ush (); 286 MPI_Reque gq ; 287  gR = MPI_Ind ( ckage , size , MPI_BYTE , de , 288 ( ACEIOTag | ACEIOWreDaTag ), comm , & q ); 289 i gMPI_SUCCESS ! R ) 290 comm_rvi :: r_d ("GridFuni::GF_Wre","MPI_Ind", R ); 292 gR = comm_rvi :: rve q ); 293 i gMPI_SUCCESS ! R ) 294 comm_rvi :: r_d ( "GridFunction::GF_Write" , 295 "comm_rvi::rve" , R ); 299 ACEIO_WreFunc gwf = ACEIO_Wre [ dagh . io_ty ]; 300 i( gwf ) { 301 i( ggdbkt -> ty (= ACEPacked ) { 302  num = gdbkt ->num(); 303  gii =0;ii< gnum ;ii++) { 304 ( gwf )( gdagh , ggdbkt -> hd ( ii ), gdbkt-> da (ii)); 308 ( gwf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 312 g << "GridFunctionIO::GF_Write: WriteFuncot set" << "\n"; 316 i( ggdbkt de gdbkt; 319 g << "GridFunction::GF_Write: I/O Not Enabled" << "\n"; 326 gme < ass gTy > 327  GridFuni (3)< gTy >:: GF_Rd (cڡ  time , 328 cڡ  l , 329 #ifde ACEVeGridFuni 330 cڡ  m , 332 cڡ  mgl , 333 cڡ  idt , 334 cڡ  gfdty ) 336 i(! io ()) ; 338 cڡ  gt = dagh_timedex ( time , l ); 339 cڡ  gv = dagh . vnum ( l ); 341 #ifde ACEVeGridFuni 342 cڡ  gnms = ( m = ACEA ? nems : 1; 344 cڡ  gnms = 1; 345 cڡ  gm = 0; 348 GridTabDaRcv ** gad_rv = w GridTabDaRcv*[ ngth ]; 350 i( gcomm_rvi :: io_abd ()) { 351 cڡ  de = comm_rvi :: oc_io (); 352 cڡ  gme = comm_rvi :: oc_me (); 353 cڡ  gpwld = comm_rvi :: oc_wld (); 354 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 356  gi ; 358  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 359 gad_rv [ i ] = GridTabDaRcvNULL ; 362 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl ); 363 i( gbb . emy ()) ; 364  gsize = gdhdr :: gdbsize ( nms *( Ty )* bb . size ()); 365  gdhdr * gqhdr = 366 w  gdhdr ( bb , nms , gfid , gfdty , gy , game , t , v , i , 367 m , me , idt , ACESg ); 369 i( gpwld > 1) { 370 #ifde ACE_NO_MPI 373 gad_rv [ i ] = 374 w GridTabDaRcv (* gt ,( ACEIOTag | ACEIORdDaTag | i ), size , de ); 377 #ifde DEBUG_PRINT_COMM_IO 378 gcomm_rvi :: log (<< "GridFuni::GF_Rd: " << me << " " 380 << ( ACEIOTag | ACEIORdReqTag ) << " " 381 << "De: " << de << " " 382 << "" << * qhdr << ") " 383 << dl ). ush (); 385 MPI_Reque gq ; 386  gR = MPI_Ind ((*) qhdr , ( gdhdr ), MPI_BYTE , de , 387 ( ACEIOTag | ACEIORdReqTag ), comm , & q ); 388 i gMPI_SUCCESS ! R ) 389 comm_rvi :: r_d "GridFuni::GF_Rd" , "MPI_Ind" , R ); 391 gR = comm_rvi :: rve q ); 392 i gMPI_SUCCESS ! R ) 393 comm_rvi :: r_d ("GridFuni::GF_Rd","comm_rvi::rve", R ); 397 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( qhdr , nms *(Type)); 398 ACEIO_RdFunc grf = ACEIO_Rd [ dagh . io_ty ]; 399 i( grf ) { 400 ( grf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 401 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). cy (* gdbkt ); 404 g << "GridFunctionIO::GF_Read: ReadFuncot set" << "\n"; 406 i( ggdbkt de gdbkt; 407 ggdbkt = 0; 409 i( gqhdr de eqhdr; 411 #ifde ACE_NO_MPI 413 i( gpwld > 1) { 414  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 415 i( gad_rv [ i ] && !ad_rv[i]-> ived ()) { 416 gcomm_rvi :: rve (* ad_rv [ i ]-> q ()); 417 de gad_rv [ i ]; 418 gad_rv [ i ] = 0; 421 i( gad_rv gde []ead_server; 422 GF_RdDa ( t ); 428 g << "GridFunction::GF_Read: I/O Not Enabled" << "\n"; 432 gme < ass gTy > 433  GridFuni (3)< gTy >:: GF_Rd (cڡ  time , 434 cڡ  l , 435 #ifde ACEVeGridFuni 436 cڡ  m , 438 cڡ  mgl , 439 cڡ  idt , 440 cڡ BBox & whe , 441 cڡ  gfdty ) 443 i(! io ()) ; 445 as ( whe . nk = dagh .rank); 446 BBox gigdwhe = whe ; 447 gdbAlignBBox ( gk , igdwhe , ignmt ); 449 cڡ  gt = dagh_timedex ( time , l ); 450 cڡ  gv = dagh . vnum ( l ); 452 #ifde ACEVeGridFuni 453 cڡ  gnms = ( m = ACEA ? nems : 1; 455 cڡ  gnms = 1; 456 cڡ  gm = 0; 459 GridTabDaRcv ** gad_rv = w GridTabDaRcv*[ ngth ]; 461 i( gcomm_rvi :: io_abd ()) { 462 cڡ  de = comm_rvi :: oc_io (); 463 cڡ  gme = comm_rvi :: oc_me (); 464 cڡ  gpwld = comm_rvi :: oc_wld (); 465 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 467  gi ; 469  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 470 gad_rv [ i ] = GridTabDaRcvNULL ; 473 BBox gbb = gdb [ t ][ l ][ i ]-> iobox ( idt , mgl * gigdwhe ; 474 i( gbb . emy ()) ; 475  gsize = gdhdr :: gdbsize ( nms *( Ty )* bb . size ()); 476  gdhdr * gqhdr = 477 w  gdhdr ( bb , nms , gfid , gfdty , gy , game , t , v , i , 478 m , me , idt , ACESg ); 480 i( gpwld > 1) { 481 #ifde ACE_NO_MPI 484 gad_rv [ i ] = 485 w GridTabDaRcv (* gt ,( ACEIOTag | ACEIORdDaTag | i ), size , de ); 488 #ifde DEBUG_PRINT_COMM_IO 489 gcomm_rvi :: log (<< "GridFuni::GF_Rd: " << me << " " 491 << ( ACEIOTag | ACEIORdReqTag ) << " " 492 << "De: " << de << " " 493 << "" << * qhdr << ") " 494 << dl ). ush (); 496 MPI_Reque gq ; 497  gR = MPI_Ind ((*) qhdr , ( gdhdr ), MPI_BYTE , de , 498 ( ACEIOTag | ACEIORdReqTag ), comm , & q ); 499 i gMPI_SUCCESS ! R ) 500 comm_rvi :: r_d "GridFuni::GF_Rd" , "MPI_Ind" , R ); 502 gR = comm_rvi :: rve q ); 503 i gMPI_SUCCESS ! R ) 504 comm_rvi :: r_d ("GridFuni::GF_Rd","comm_rvi::rve", R ); 508 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( qhdr , nms *(Type)); 509 ACEIO_RdFunc grf = ACEIO_Rd [ dagh . io_ty ]; 510 i( grf ) { 511 ( grf )( gdagh , ggdbkt -> hd (),gdbkt-> da ()); 512 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). cy (* gdbkt ); 515 g << "GridFunctionIO::GF_Read: ReadFuncot set" << "\n"; 517 i( ggdbkt de gdbkt; 518 ggdbkt = 0; 520 i( gqhdr de eqhdr; 522 #ifde ACE_NO_MPI 524 i( gpwld > 1) { 525  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 526 i( gad_rv [ i ] && !ad_rv[i]-> ived ()) { 527 gcomm_rvi :: rve (* ad_rv [ i ]-> q ()); 528 de gad_rv [ i ]; 529 gad_rv [ i ] = 0; 532 i( gad_rv gde []ead_server; 534 GF_RdDa ( t ); 540 g << "GridFunction::GF_Read: I/O Not Enabled" << "\n"; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionIndex.h 1 #ide _uded_GridFuniIndex_h 2  #_uded_GridFuniIndex_h ) 12  ~"gic.h " 14 #ide fܮl 15  #fܮl ( gf , t , l , c ) { \ 16 cڡ  `me2 ( gf , _T (gf). `dagh_timedex ( t , l ); \ 17 cڡ  `me2 ( gf , _CU (gf). `n (); \ 18  c = 0; c < `me2 ( gf , _CU ); c++) { \ 19 if(!( gf ). `exis ( t , l , c ); { ) 22 #ide d_fܮl_sync 23  #d_fܮl_sync } } comm_rvi :: `brr (); } ) 26 #ide d_fܮl 27  #d_fܮl } } } ) 30 #ide fܮlBB 31  #fܮlBB ( gf , t , l , c , whe , bb , idt ) { \ 32 cڡ  `me2 ( gf , _T (gf). `dagh_timedex ( t , l ); \ 33 cڡ  `me2 ( gf , _CU (gf). `n (); \ 34  c = 0; c < `me2 ( gf , _CU ); c++) { \ 35 if(!( gf ). `exis ( t , l , c ) || \ 36 (( bb )=( whe )*(( gf ). `dabbox ( t , l , c , idt ))). `emy (); { ) 39 #ide d_fܮlBB_sync 40  #d_fܮlBB_sync } } comm_rvi :: `brr (); } ) 43 #ide d_fܮlBB 44  #d_fܮlBB } } } ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionInterface.h 11 #ifde ACEVeGridFuni 12 #ide FORTRAN_INTERFACE 13  #FORTRAN_INTERFACE ( T ) T *, const *, const *, \ 14 cڡ *, cڡ * ) 17 #ide FORTRAN_INTERFACE 18  #FORTRAN_INTERFACE ( T ) T *, const *, const *, \ 19 cڡ * ) 23 #ide BBOX_INTERFACE 24  #BBOX_INTERFACE cڡ *, cڡ *, cڡ * ) 27 #ide GF_TYPE 28  #GF_TYPE  ) 32 (* tInFunc ) ( 33 tFORTRAN_INTERFACE ( tGF_TYPE ), 34 tBBOX_INTERFACE , 35 tGF_TYPE *, const *); 38 (* tUpdeFunc ) ( 39 tFORTRAN_INTERFACE ( tGF_TYPE ), FORTRAN_INTERFACE(GF_TYPE), 40 tBBOX_INTERFACE , 41 tGF_TYPE *, const *); 44 (* tBndryUpdeFunc ) ( 45 tFORTRAN_INTERFACE ( tGF_TYPE ), 46 tBBOX_INTERFACE , 47 tGF_TYPE *, const *); 50 (* tAdBndryUpdeFunc ) ( 51 tFORTRAN_INTERFACE ( tGF_TYPE ), 52 tFORTRAN_INTERFACE ( tGF_TYPE ), const *, 53 tFORTRAN_INTERFACE ( tGF_TYPE ), const *, 54 tBBOX_INTERFACE , 55 tGF_TYPE *, const *); 58 (* tPrgFunc ) ( 59 tFORTRAN_INTERFACE ( tGF_TYPE ), FORTRAN_INTERFACE(GF_TYPE), 60 tBBOX_INTERFACE , 61 #ifde tACEVeGridFuni 62 tINTEGER *, 64 tGF_TYPE *, const *); 67 (* tReriFunc ) ( 68 tFORTRAN_INTERFACE ( tGF_TYPE ), FORTRAN_INTERFACE(GF_TYPE), 69 tBBOX_INTERFACE , 70 #ifde tACEVeGridFuni 71 tINTEGER *, 73 tGF_TYPE *, const *); 76 (* tTimeIpFunc ) ( 77 tFORTRAN_INTERFACE ( tGF_TYPE ), 78 tFORTRAN_INTERFACE ( tGF_TYPE ), 80 tFORTRAN_INTERFACE ( tGF_TYPE ), 82 tBBOX_INTERFACE 83 #ifde tACEVeGridFuni 84 , tINTEGER *); 90 (* tFluxAddFunc ) ( 91 tFORTRAN_INTERFACE ( tGF_TYPE ), 92 tFORTRAN_INTERFACE ( tGF_TYPE ), 93 tBBOX_INTERFACE 94 #ifde tACEVeGridFuni 95 , tINTEGER *); 101 (* tIOFunc ) ( 102 tFORTRAN_INTERFACE ( tGF_TYPE ), 103 tBBOX_INTERFACE , 104 tGF_TYPE *, const *); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOps1.h 1 #ide _uded_GridFuniOps1_h 2  #_uded_GridFuniOps1_h ) 17 gme < ass gACE_GFTy > 18  GridFuni (1)< gACE_GFTy >:: $GF_Fl ( ACE_GFTy cڡ & v , 19 cڡ time , cڡ v , 20 cڡ idt ) 22  t = `dagh_timedex ( time , v ); 23  l = v ; 24  i =0; i< ngth ; i++) 25 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 26 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `fl ( v ); 27 } } 29 gme < ass gACE_GFTy > 30  GridFuni (1)< gACE_GFTy >:: $GF_Fl ( ACE_GFTy cڡ & v , 31 cڡ time , cڡ v , 32 cڡ mgl , cڡ idt ) 34  t = `dagh_timedex ( time , v ); 35  l = v ; 36  i =0; i< ngth ; i++) 37 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 38 ( gdb [ t ][ l ][ i ]-> `gridda ( mgl , idt )). `fl ( v ); 39 } } 46 gme < ass gACE_GFTy > 47  GridFuni (1)< gACE_GFTy >:: GF_Cy (cڡ t1 , cڡ l1 , 48 GridFuni (1)< ACE_GFTy > cڡ & rhs , 49 cڡ t2 , cڡ l2 , 50 BBox cڡ & whe , 51 cڡ idt ) 53 as ( whe . nk = dagh .rank); 55 BBox gigdwhe = whe ; 56 gdbAlignBBox ( gk , igdwhe , ignmt ); 58  gtime1 = dagh_timedex ( t1 , l1 ); 59  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 60  gi =0; i< gngth ; i++) 61 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 62 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). cy ( 63 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 66 gme < ass gACE_GFTy > 67  GridFuni (1)< gACE_GFTy >:: GF_Cy (cڡ t1 , cڡ l1 , 68 GridFuni (1)< ACE_GFTy > cڡ & rhs , 69 cڡ t2 , cڡ l2 , 70 cڡ idt ) 72  gtime1 = dagh_timedex ( t1 , l1 ); 73  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 74  gi =0; i< gngth ; i++) 75 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 76 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). cy ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 83 gme < ass gACE_GFTy > 84  GridFuni (1)< gACE_GFTy >:: $GF_equs (cڡ time , cڡ v , 85 BBox cڡ & whe , 86 ACE_GFTy cڡ & v , 87 cڡ idt ) 89 `as ( whe . nk = dagh .rank); 91 BBox igdwhe = whe ; 92 `gdbAlignBBox ( gk , igdwhe , ignmt ); 94  t = `dagh_timedex ( time , v ); 95  l = v ; 96  i =0; i< ngth ; i++) 97 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 98 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `equs ( v , igdwhe ); 99 } } 101 gme < ass gACE_GFTy > 102  GridFuni (1)< gACE_GFTy >:: $GF_equs (cڡ time , cڡ v , 103 ACE_GFTy cڡ & v , 104 cڡ idt ) 106  t = `dagh_timedex ( time , v ); 107  l = v ; 108  i =0; i< ngth ; i++) 109 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 110 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `equs ( v ); 111 } } 113 gme < ass gACE_GFTy > 114  GridFuni (1)< gACE_GFTy >:: GF_equs (cڡ t1 , cڡ l1 , 115 GridFuni (1)< ACE_GFTy > cڡ & rhs , 116 cڡ t2 , cڡ l2 , 117 BBox cڡ & whe , 118 cڡ idt ) 120 as ( whe . nk = dagh .rank); 122 BBox gigdwhe = whe ; 123 gdbAlignBBox ( gk , igdwhe , ignmt ); 125  gtime1 = dagh_timedex ( t1 , l1 ); 126  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 127  gi =0; i< gngth ; i++) 128 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 129 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). equs ( 130 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 133 gme < ass gACE_GFTy > 134  GridFuni (1)< gACE_GFTy >:: GF_equs (cڡ t1 , cڡ l1 , 135 GridFuni (1)< ACE_GFTy > cڡ & rhs , 136 cڡ t2 , cڡ l2 , 137 cڡ idt ) 139  gtime1 = dagh_timedex ( t1 , l1 ); 140  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 141  gi =0; i< gngth ; i++) 142 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 143 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). equs ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 150 gme < ass gACE_GFTy > 151  GridFuni (1)< gACE_GFTy >:: $GF_us (cڡ time , cڡ v , 152 BBox cڡ & whe , 153 ACE_GFTy cڡ & v , 154 cڡ idt ) 156 `as ( whe . nk = dagh .rank); 158 BBox igdwhe = whe ; 159 `gdbAlignBBox ( gk , igdwhe , ignmt ); 161  t = `dagh_timedex ( time , v ); 162  l = v ; 163  i =0; i< ngth ; i++) 164 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 165 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `us ( v , igdwhe ); 166 } } 168 gme < ass gACE_GFTy > 169  GridFuni (1)< gACE_GFTy >:: $GF_us (cڡ time , cڡ v , 170 ACE_GFTy cڡ & v , 171 cڡ idt ) 173  t = `dagh_timedex ( time , v ); 174  l = v ; 175  i =0; i< ngth ; i++) 176 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 177 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `us ( v ); 178 } } 180 gme < ass gACE_GFTy > 181  GridFuni (1)< gACE_GFTy >:: GF_us (cڡ t1 , cڡ l1 , 182 GridFuni (1)< ACE_GFTy > cڡ & rhs , 183 cڡ t2 , cڡ l2 , 184 BBox cڡ & whe , 185 cڡ idt ) 187 as ( whe . nk = dagh .rank); 189 BBox gigdwhe = whe ; 190 gdbAlignBBox ( gk , igdwhe , ignmt ); 192  gtime1 = dagh_timedex ( t1 , l1 ); 193  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 194  gi =0; i< gngth ; i++) 195 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 196 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). us ( 197 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 200 gme < ass gACE_GFTy > 201  GridFuni (1)< gACE_GFTy >:: GF_us (cڡ t1 , cڡ l1 , 202 GridFuni (1)< ACE_GFTy > cڡ & rhs , 203 cڡ t2 , cڡ l2 , 204 cڡ idt ) 206  gtime1 = dagh_timedex ( t1 , l1 ); 207  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 208  gi =0; i< gngth ; i++) 209 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 210 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). us ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 217 gme < ass gACE_GFTy > 218  GridFuni (1)< gACE_GFTy >:: $GF_mus (cڡ time , cڡ v , 219 BBox cڡ & whe , 220 ACE_GFTy cڡ & v , 221 cڡ idt ) 223 `as ( whe . nk = dagh .rank); 225 BBox igdwhe = whe ; 226 `gdbAlignBBox ( gk , igdwhe , ignmt ); 228  t = `dagh_timedex ( time , v ); 229  l = v ; 230  i =0; i< ngth ; i++) 231 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 232 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `mus ( v , igdwhe ); 233 } } 235 gme < ass gACE_GFTy > 236  GridFuni (1)< gACE_GFTy >:: $GF_mus (cڡ time , cڡ v , 237 ACE_GFTy cڡ & v , 238 cڡ idt ) 240  t = `dagh_timedex ( time , v ); 241  l = v ; 242  i =0; i< ngth ; i++) 243 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 244 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `mus ( v ); 245 } } 247 gme < ass gACE_GFTy > 248  GridFuni (1)< gACE_GFTy >:: GF_mus (cڡ t1 , cڡ l1 , 249 GridFuni (1)< ACE_GFTy > cڡ & rhs , 250 cڡ t2 , cڡ l2 , 251 BBox cڡ & whe , 252 cڡ idt ) 254 as ( whe . nk = dagh .rank); 256 BBox gigdwhe = whe ; 257 gdbAlignBBox ( gk , igdwhe , ignmt ); 259  gtime1 = dagh_timedex ( t1 , l1 ); 260  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 261  gi =0; i< gngth ; i++) 262 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 263 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). mus ( 264 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 267 gme < ass gACE_GFTy > 268  GridFuni (1)< gACE_GFTy >:: GF_mus (cڡ t1 , cڡ l1 , 269 GridFuni (1)< ACE_GFTy > cڡ & rhs , 270 cڡ t2 , cڡ l2 , 271 cڡ idt ) 273  gtime1 = dagh_timedex ( t1 , l1 ); 274  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 275  gi =0; i< gngth ; i++) 276 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 277 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). mus ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 284 gme < ass gACE_GFTy > 285  GridFuni (1)< gACE_GFTy >:: $GF_muɝly (cڡ time , cڡ v , 286 BBox cڡ & whe , 287 ACE_GFTy cڡ & v , 288 cڡ idt ) 290 `as ( whe . nk = dagh .rank); 292 BBox igdwhe = whe ; 293 `gdbAlignBBox ( gk , igdwhe , ignmt ); 295  t = `dagh_timedex ( time , v ); 296  l = v ; 297  i =0; i< ngth ; i++) 298 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 299 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `muɝly ( v , igdwhe ); 300 } } 302 gme < ass gACE_GFTy > 303  GridFuni (1)< gACE_GFTy >:: $GF_muɝly (cڡ time , cڡ v , 304 ACE_GFTy cڡ & v , 305 cڡ idt ) 307  t = `dagh_timedex ( time , v ); 308  l = v ; 309  i =0; i< ngth ; i++) 310 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 311 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `muɝly ( v ); 312 } } 314 gme < ass gACE_GFTy > 315  GridFuni (1)< gACE_GFTy >:: GF_muɝly (cڡ t1 , cڡ l1 , 316 GridFuni (1)< ACE_GFTy > cڡ & rhs , 317 cڡ t2 , cڡ l2 , 318 BBox cڡ & whe , 319 cڡ idt ) 321 as ( whe . nk = dagh .rank); 323 BBox gigdwhe = whe ; 324 gdbAlignBBox ( gk , igdwhe , ignmt ); 326  gtime1 = dagh_timedex ( t1 , l1 ); 327  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 328  gi =0; i< gngth ; i++) 329 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 330 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). muɝly ( 331 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 334 gme < ass gACE_GFTy > 335  GridFuni (1)< gACE_GFTy >:: GF_muɝly (cڡ t1 , cڡ l1 , 336 GridFuni (1)< ACE_GFTy > cڡ & rhs , 337 cڡ t2 , cڡ l2 , 338 cڡ idt ) 340  gtime1 = dagh_timedex ( t1 , l1 ); 341  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 342  gi =0; i< gngth ; i++) 343 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 344 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). muɝly ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 351 gme < ass gACE_GFTy > 352  GridFuni (1)< gACE_GFTy >:: $GF_divide (cڡ time , cڡ v , 353 BBox cڡ & whe , 354 ACE_GFTy cڡ & v , 355 cڡ idt ) 357 `as ( whe . nk = dagh .rank); 359 BBox igdwhe = whe ; 360 `gdbAlignBBox ( gk , igdwhe , ignmt ); 362  t = `dagh_timedex ( time , v ); 363  l = v ; 364  i =0; i< ngth ; i++) 365 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 366 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `divide ( v , igdwhe ); 367 } } 369 gme < ass gACE_GFTy > 370  GridFuni (1)< gACE_GFTy >:: $GF_divide (cڡ time , cڡ v , 371 ACE_GFTy cڡ & v , 372 cڡ idt ) 374  t = `dagh_timedex ( time , v ); 375  l = v ; 376  i =0; i< ngth ; i++) 377 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 378 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `divide ( v ); 379 } } 381 gme < ass gACE_GFTy > 382  GridFuni (1)< gACE_GFTy >:: GF_divide (cڡ t1 , cڡ l1 , 383 GridFuni (1)< ACE_GFTy > cڡ & rhs , 384 cڡ t2 , cڡ l2 , 385 BBox cڡ & whe , 386 cڡ idt ) 388 as ( whe . nk = dagh .rank); 390 BBox gigdwhe = whe ; 391 gdbAlignBBox ( gk , igdwhe , ignmt ); 393  gtime1 = dagh_timedex ( t1 , l1 ); 394  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 395  gi =0; i< gngth ; i++) 396 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 397 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). divide ( 398 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 401 gme < ass gACE_GFTy > 402  GridFuni (1)< gACE_GFTy >:: GF_divide (cڡ t1 , cڡ l1 , 403 GridFuni (1)< ACE_GFTy > cڡ & rhs , 404 cڡ t2 , cڡ l2 , 405 cڡ idt ) 407  gtime1 = dagh_timedex ( t1 , l1 ); 408  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 409  gi =0; i< gngth ; i++) 410 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 411 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). divide ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOps2.h 1 #ide _uded_GridFuniOps2_h 2  #_uded_GridFuniOps2_h ) 17 gme < ass gACE_GFTy > 18  GridFuni (2)< gACE_GFTy >:: $GF_Fl ( ACE_GFTy cڡ & v , 19 cڡ time , cڡ v , 20 cڡ idt ) 22  t = `dagh_timedex ( time , v ); 23  l = v ; 24  i =0; i< ngth ; i++) 25 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 26 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `fl ( v ); 27 } } 29 gme < ass gACE_GFTy > 30  GridFuni (2)< gACE_GFTy >:: $GF_Fl ( ACE_GFTy cڡ & v , 31 cڡ time , cڡ v , 32 cڡ mgl , cڡ idt ) 34  t = `dagh_timedex ( time , v ); 35  l = v ; 36  i =0; i< ngth ; i++) 37 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 38 ( gdb [ t ][ l ][ i ]-> `gridda ( mgl , idt )). `fl ( v ); 39 } } 46 gme < ass gACE_GFTy > 47  GridFuni (2)< gACE_GFTy >:: GF_Cy (cڡ t1 , cڡ l1 , 48 GridFuni (2)< ACE_GFTy > cڡ & rhs , 49 cڡ t2 , cڡ l2 , 50 BBox cڡ & whe , 51 cڡ idt ) 53 as ( whe . nk = dagh .rank); 55 BBox gigdwhe = whe ; 56 gdbAlignBBox ( gk , igdwhe , ignmt ); 58  gtime1 = dagh_timedex ( t1 , l1 ); 59  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 60  gi =0; i< gngth ; i++) 61 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 62 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). cy ( 63 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 66 gme < ass gACE_GFTy > 67  GridFuni (2)< gACE_GFTy >:: GF_Cy (cڡ t1 , cڡ l1 , 68 GridFuni (2)< ACE_GFTy > cڡ & rhs , 69 cڡ t2 , cڡ l2 , 70 cڡ idt ) 72  gtime1 = dagh_timedex ( t1 , l1 ); 73  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 74  gi =0; i< gngth ; i++) 75 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 76 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). cy ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 83 gme < ass gACE_GFTy > 84  GridFuni (2)< gACE_GFTy >:: $GF_equs (cڡ time , cڡ v , 85 BBox cڡ & whe , 86 ACE_GFTy cڡ & v , 87 cڡ idt ) 89 `as ( whe . nk = dagh .rank); 91 BBox igdwhe = whe ; 92 `gdbAlignBBox ( gk , igdwhe , ignmt ); 94  t = `dagh_timedex ( time , v ); 95  l = v ; 96  i =0; i< ngth ; i++) 97 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 98 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `equs ( v , igdwhe ); 99 } } 101 gme < ass gACE_GFTy > 102  GridFuni (2)< gACE_GFTy >:: $GF_equs (cڡ time , cڡ v , 103 ACE_GFTy cڡ & v , 104 cڡ idt ) 106  t = `dagh_timedex ( time , v ); 107  l = v ; 108  i =0; i< ngth ; i++) 109 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 110 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `equs ( v ); 111 } } 113 gme < ass gACE_GFTy > 114  GridFuni (2)< gACE_GFTy >:: GF_equs (cڡ t1 , cڡ l1 , 115 GridFuni (2)< ACE_GFTy > cڡ & rhs , 116 cڡ t2 , cڡ l2 , 117 BBox cڡ & whe , 118 cڡ idt ) 120 as ( whe . nk = dagh .rank); 122 BBox gigdwhe = whe ; 123 gdbAlignBBox ( gk , igdwhe , ignmt ); 125  gtime1 = dagh_timedex ( t1 , l1 ); 126  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 127  gi =0; i< gngth ; i++) 128 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 129 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). equs ( 130 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 133 gme < ass gACE_GFTy > 134  GridFuni (2)< gACE_GFTy >:: GF_equs (cڡ t1 , cڡ l1 , 135 GridFuni (2)< ACE_GFTy > cڡ & rhs , 136 cڡ t2 , cڡ l2 , 137 cڡ idt ) 139  gtime1 = dagh_timedex ( t1 , l1 ); 140  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 141  gi =0; i< gngth ; i++) 142 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 143 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). equs ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 150 gme < ass gACE_GFTy > 151  GridFuni (2)< gACE_GFTy >:: $GF_us (cڡ time , cڡ v , 152 BBox cڡ & whe , 153 ACE_GFTy cڡ & v , 154 cڡ idt ) 156 `as ( whe . nk = dagh .rank); 158 BBox igdwhe = whe ; 159 `gdbAlignBBox ( gk , igdwhe , ignmt ); 161  t = `dagh_timedex ( time , v ); 162  l = v ; 163  i =0; i< ngth ; i++) 164 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 165 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `us ( v , igdwhe ); 166 } } 168 gme < ass gACE_GFTy > 169  GridFuni (2)< gACE_GFTy >:: $GF_us (cڡ time , cڡ v , 170 ACE_GFTy cڡ & v , 171 cڡ idt ) 173  t = `dagh_timedex ( time , v ); 174  l = v ; 175  i =0; i< ngth ; i++) 176 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 177 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `us ( v ); 178 } } 180 gme < ass gACE_GFTy > 181  GridFuni (2)< gACE_GFTy >:: GF_us (cڡ t1 , cڡ l1 , 182 GridFuni (2)< ACE_GFTy > cڡ & rhs , 183 cڡ t2 , cڡ l2 , 184 BBox cڡ & whe , 185 cڡ idt ) 187 as ( whe . nk = dagh .rank); 189 BBox gigdwhe = whe ; 190 gdbAlignBBox ( gk , igdwhe , ignmt ); 192  gtime1 = dagh_timedex ( t1 , l1 ); 193  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 194  gi =0; i< gngth ; i++) 195 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 196 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). us ( 197 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 200 gme < ass gACE_GFTy > 201  GridFuni (2)< gACE_GFTy >:: GF_us (cڡ t1 , cڡ l1 , 202 GridFuni (2)< ACE_GFTy > cڡ & rhs , 203 cڡ t2 , cڡ l2 , 204 cڡ idt ) 206  gtime1 = dagh_timedex ( t1 , l1 ); 207  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 208  gi =0; i< gngth ; i++) 209 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 210 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). us ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 217 gme < ass gACE_GFTy > 218  GridFuni (2)< gACE_GFTy >:: $GF_mus (cڡ time , cڡ v , 219 BBox cڡ & whe , 220 ACE_GFTy cڡ & v , 221 cڡ idt ) 223 `as ( whe . nk = dagh .rank); 225 BBox igdwhe = whe ; 226 `gdbAlignBBox ( gk , igdwhe , ignmt ); 228  t = `dagh_timedex ( time , v ); 229  l = v ; 230  i =0; i< ngth ; i++) 231 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 232 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `mus ( v , igdwhe ); 233 } } 235 gme < ass gACE_GFTy > 236  GridFuni (2)< gACE_GFTy >:: $GF_mus (cڡ time , cڡ v , 237 ACE_GFTy cڡ & v , 238 cڡ idt ) 240  t = `dagh_timedex ( time , v ); 241  l = v ; 242  i =0; i< ngth ; i++) 243 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 244 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `mus ( v ); 245 } } 247 gme < ass gACE_GFTy > 248  GridFuni (2)< gACE_GFTy >:: GF_mus (cڡ t1 , cڡ l1 , 249 GridFuni (2)< ACE_GFTy > cڡ & rhs , 250 cڡ t2 , cڡ l2 , 251 BBox cڡ & whe , 252 cڡ idt ) 254 as ( whe . nk = dagh .rank); 256 BBox gigdwhe = whe ; 257 gdbAlignBBox ( gk , igdwhe , ignmt ); 259  gtime1 = dagh_timedex ( t1 , l1 ); 260  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 261  gi =0; i< gngth ; i++) 262 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 263 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). mus ( 264 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 267 gme < ass gACE_GFTy > 268  GridFuni (2)< gACE_GFTy >:: GF_mus (cڡ t1 , cڡ l1 , 269 GridFuni (2)< ACE_GFTy > cڡ & rhs , 270 cڡ t2 , cڡ l2 , 271 cڡ idt ) 273  gtime1 = dagh_timedex ( t1 , l1 ); 274  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 275  gi =0; i< gngth ; i++) 276 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 277 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). mus ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 284 gme < ass gACE_GFTy > 285  GridFuni (2)< gACE_GFTy >:: $GF_muɝly (cڡ time , cڡ v , 286 BBox cڡ & whe , 287 ACE_GFTy cڡ & v , 288 cڡ idt ) 290 `as ( whe . nk = dagh .rank); 292 BBox igdwhe = whe ; 293 `gdbAlignBBox ( gk , igdwhe , ignmt ); 295  t = `dagh_timedex ( time , v ); 296  l = v ; 297  i =0; i< ngth ; i++) 298 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 299 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `muɝly ( v , igdwhe ); 300 } } 302 gme < ass gACE_GFTy > 303  GridFuni (2)< gACE_GFTy >:: $GF_muɝly (cڡ time , cڡ v , 304 ACE_GFTy cڡ & v , 305 cڡ idt ) 307  t = `dagh_timedex ( time , v ); 308  l = v ; 309  i =0; i< ngth ; i++) 310 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 311 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `muɝly ( v ); 312 } } 314 gme < ass gACE_GFTy > 315  GridFuni (2)< gACE_GFTy >:: GF_muɝly (cڡ t1 , cڡ l1 , 316 GridFuni (2)< ACE_GFTy > cڡ & rhs , 317 cڡ t2 , cڡ l2 , 318 BBox cڡ & whe , 319 cڡ idt ) 321 as ( whe . nk = dagh .rank); 323 BBox gigdwhe = whe ; 324 gdbAlignBBox ( gk , igdwhe , ignmt ); 326  gtime1 = dagh_timedex ( t1 , l1 ); 327  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 328  gi =0; i< gngth ; i++) 329 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 330 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). muɝly ( 331 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 334 gme < ass gACE_GFTy > 335  GridFuni (2)< gACE_GFTy >:: GF_muɝly (cڡ t1 , cڡ l1 , 336 GridFuni (2)< ACE_GFTy > cڡ & rhs , 337 cڡ t2 , cڡ l2 , 338 cڡ idt ) 340  gtime1 = dagh_timedex ( t1 , l1 ); 341  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 342  gi =0; i< gngth ; i++) 343 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 344 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). muɝly ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 351 gme < ass gACE_GFTy > 352  GridFuni (2)< gACE_GFTy >:: $GF_divide (cڡ time , cڡ v , 353 BBox cڡ & whe , 354 ACE_GFTy cڡ & v , 355 cڡ idt ) 357 `as ( whe . nk = dagh .rank); 359 BBox igdwhe = whe ; 360 `gdbAlignBBox ( gk , igdwhe , ignmt ); 362  t = `dagh_timedex ( time , v ); 363  l = v ; 364  i =0; i< ngth ; i++) 365 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 366 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `divide ( v , igdwhe ); 367 } } 369 gme < ass gACE_GFTy > 370  GridFuni (2)< gACE_GFTy >:: $GF_divide (cڡ time , cڡ v , 371 ACE_GFTy cڡ & v , 372 cڡ idt ) 374  t = `dagh_timedex ( time , v ); 375  l = v ; 376  i =0; i< ngth ; i++) 377 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 378 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `divide ( v ); 379 } } 381 gme < ass gACE_GFTy > 382  GridFuni (2)< gACE_GFTy >:: GF_divide (cڡ t1 , cڡ l1 , 383 GridFuni (2)< ACE_GFTy > cڡ & rhs , 384 cڡ t2 , cڡ l2 , 385 BBox cڡ & whe , 386 cڡ idt ) 388 as ( whe . nk = dagh .rank); 390 BBox gigdwhe = whe ; 391 gdbAlignBBox ( gk , igdwhe , ignmt ); 393  gtime1 = dagh_timedex ( t1 , l1 ); 394  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 395  gi =0; i< gngth ; i++) 396 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 397 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). divide ( 398 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 401 gme < ass gACE_GFTy > 402  GridFuni (2)< gACE_GFTy >:: GF_divide (cڡ t1 , cڡ l1 , 403 GridFuni (2)< ACE_GFTy > cڡ & rhs , 404 cڡ t2 , cڡ l2 , 405 cڡ idt ) 407  gtime1 = dagh_timedex ( t1 , l1 ); 408  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 409  gi =0; i< gngth ; i++) 410 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 411 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). divide ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOps3.h 1 #ide _uded_GridFuniOps3_h 2  #_uded_GridFuniOps3_h ) 17 gme < ass gACE_GFTy > 18  GridFuni (3)< gACE_GFTy >:: $GF_Fl ( ACE_GFTy cڡ & v , 19 cڡ time , cڡ v , 20 cڡ idt ) 22  t = `dagh_timedex ( time , v ); 23  l = v ; 24  i =0; i< ngth ; i++) 25 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 26 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `fl ( v ); 27 } } 29 gme < ass gACE_GFTy > 30  GridFuni (3)< gACE_GFTy >:: $GF_Fl ( ACE_GFTy cڡ & v , 31 cڡ time , cڡ v , 32 cڡ mgl , cڡ idt ) 34  t = `dagh_timedex ( time , v ); 35  l = v ; 36  i =0; i< ngth ; i++) 37 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 38 ( gdb [ t ][ l ][ i ]-> `gridda ( mgl , idt )). `fl ( v ); 39 } } 46 gme < ass gACE_GFTy > 47  GridFuni (3)< gACE_GFTy >:: GF_Cy (cڡ t1 , cڡ l1 , 48 GridFuni (3)< ACE_GFTy > cڡ & rhs , 49 cڡ t2 , cڡ l2 , 50 BBox cڡ & whe , 51 cڡ idt ) 53 as ( whe . nk = dagh .rank); 55 BBox gigdwhe = whe ; 56 gdbAlignBBox ( gk , igdwhe , ignmt ); 58  gtime1 = dagh_timedex ( t1 , l1 ); 59  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 60  gi =0; i< gngth ; i++) 61 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 62 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). cy ( 63 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 66 gme < ass gACE_GFTy > 67  GridFuni (3)< gACE_GFTy >:: GF_Cy (cڡ t1 , cڡ l1 , 68 GridFuni (3)< ACE_GFTy > cڡ & rhs , 69 cڡ t2 , cڡ l2 , 70 cڡ idt ) 72  gtime1 = dagh_timedex ( t1 , l1 ); 73  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 74  gi =0; i< gngth ; i++) 75 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 76 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). cy ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 83 gme < ass gACE_GFTy > 84  GridFuni (3)< gACE_GFTy >:: $GF_equs (cڡ time , cڡ v , 85 BBox cڡ & whe , 86 ACE_GFTy cڡ & v , 87 cڡ idt ) 89 `as ( whe . nk = dagh .rank); 91 BBox igdwhe = whe ; 92 `gdbAlignBBox ( gk , igdwhe , ignmt ); 94  t = `dagh_timedex ( time , v ); 95  l = v ; 96  i =0; i< ngth ; i++) 97 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 98 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `equs ( v , igdwhe ); 99 } } 101 gme < ass gACE_GFTy > 102  GridFuni (3)< gACE_GFTy >:: $GF_equs (cڡ time , cڡ v , 103 ACE_GFTy cڡ & v , 104 cڡ idt ) 106  t = `dagh_timedex ( time , v ); 107  l = v ; 108  i =0; i< ngth ; i++) 109 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 110 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `equs ( v ); 111 } } 113 gme < ass gACE_GFTy > 114  GridFuni (3)< gACE_GFTy >:: GF_equs (cڡ t1 , cڡ l1 , 115 GridFuni (3)< ACE_GFTy > cڡ & rhs , 116 cڡ t2 , cڡ l2 , 117 BBox cڡ & whe , 118 cڡ idt ) 120 as ( whe . nk = dagh .rank); 122 BBox gigdwhe = whe ; 123 gdbAlignBBox ( gk , igdwhe , ignmt ); 125  gtime1 = dagh_timedex ( t1 , l1 ); 126  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 127  gi =0; i< gngth ; i++) 128 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 129 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). equs ( 130 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 133 gme < ass gACE_GFTy > 134  GridFuni (3)< gACE_GFTy >:: GF_equs (cڡ t1 , cڡ l1 , 135 GridFuni (3)< ACE_GFTy > cڡ & rhs , 136 cڡ t2 , cڡ l2 , 137 cڡ idt ) 139  gtime1 = dagh_timedex ( t1 , l1 ); 140  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 141  gi =0; i< gngth ; i++) 142 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 143 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). equs ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 150 gme < ass gACE_GFTy > 151  GridFuni (3)< gACE_GFTy >:: $GF_us (cڡ time , cڡ v , 152 BBox cڡ & whe , 153 ACE_GFTy cڡ & v , 154 cڡ idt ) 156 `as ( whe . nk = dagh .rank); 158 BBox igdwhe = whe ; 159 `gdbAlignBBox ( gk , igdwhe , ignmt ); 161  t = `dagh_timedex ( time , v ); 162  l = v ; 163  i =0; i< ngth ; i++) 164 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 165 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `us ( v , igdwhe ); 166 } } 168 gme < ass gACE_GFTy > 169  GridFuni (3)< gACE_GFTy >:: $GF_us (cڡ time , cڡ v , 170 ACE_GFTy cڡ & v , 171 cڡ idt ) 173  t = `dagh_timedex ( time , v ); 174  l = v ; 175  i =0; i< ngth ; i++) 176 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 177 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `us ( v ); 178 } } 180 gme < ass gACE_GFTy > 181  GridFuni (3)< gACE_GFTy >:: GF_us (cڡ t1 , cڡ l1 , 182 GridFuni (3)< ACE_GFTy > cڡ & rhs , 183 cڡ t2 , cڡ l2 , 184 BBox cڡ & whe , 185 cڡ idt ) 187 as ( whe . nk = dagh .rank); 189 BBox gigdwhe = whe ; 190 gdbAlignBBox ( gk , igdwhe , ignmt ); 192  gtime1 = dagh_timedex ( t1 , l1 ); 193  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 194  gi =0; i< gngth ; i++) 195 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 196 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). us ( 197 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 200 gme < ass gACE_GFTy > 201  GridFuni (3)< gACE_GFTy >:: GF_us (cڡ t1 , cڡ l1 , 202 GridFuni (3)< ACE_GFTy > cڡ & rhs , 203 cڡ t2 , cڡ l2 , 204 cڡ idt ) 206  gtime1 = dagh_timedex ( t1 , l1 ); 207  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 208  gi =0; i< gngth ; i++) 209 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 210 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). us ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 217 gme < ass gACE_GFTy > 218  GridFuni (3)< gACE_GFTy >:: $GF_mus (cڡ time , cڡ v , 219 BBox cڡ & whe , 220 ACE_GFTy cڡ & v , 221 cڡ idt ) 223 `as ( whe . nk = dagh .rank); 225 BBox igdwhe = whe ; 226 `gdbAlignBBox ( gk , igdwhe , ignmt ); 228  t = `dagh_timedex ( time , v ); 229  l = v ; 230  i =0; i< ngth ; i++) 231 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 232 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `mus ( v , igdwhe ); 233 } } 235 gme < ass gACE_GFTy > 236  GridFuni (3)< gACE_GFTy >:: $GF_mus (cڡ time , cڡ v , 237 ACE_GFTy cڡ & v , 238 cڡ idt ) 240  t = `dagh_timedex ( time , v ); 241  l = v ; 242  i =0; i< ngth ; i++) 243 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 244 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `mus ( v ); 245 } } 247 gme < ass gACE_GFTy > 248  GridFuni (3)< gACE_GFTy >:: GF_mus (cڡ t1 , cڡ l1 , 249 GridFuni (3)< ACE_GFTy > cڡ & rhs , 250 cڡ t2 , cڡ l2 , 251 BBox cڡ & whe , 252 cڡ idt ) 254 as ( whe . nk = dagh .rank); 256 BBox gigdwhe = whe ; 257 gdbAlignBBox ( gk , igdwhe , ignmt ); 259  gtime1 = dagh_timedex ( t1 , l1 ); 260  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 261  gi =0; i< gngth ; i++) 262 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 263 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). mus ( 264 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 267 gme < ass gACE_GFTy > 268  GridFuni (3)< gACE_GFTy >:: GF_mus (cڡ t1 , cڡ l1 , 269 GridFuni (3)< ACE_GFTy > cڡ & rhs , 270 cڡ t2 , cڡ l2 , 271 cڡ idt ) 273  gtime1 = dagh_timedex ( t1 , l1 ); 274  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 275  gi =0; i< gngth ; i++) 276 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 277 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). mus ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 284 gme < ass gACE_GFTy > 285  GridFuni (3)< gACE_GFTy >:: $GF_muɝly (cڡ time , cڡ v , 286 BBox cڡ & whe , 287 ACE_GFTy cڡ & v , 288 cڡ idt ) 290 `as ( whe . nk = dagh .rank); 292 BBox igdwhe = whe ; 293 `gdbAlignBBox ( gk , igdwhe , ignmt ); 295  t = `dagh_timedex ( time , v ); 296  l = v ; 297  i =0; i< ngth ; i++) 298 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 299 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `muɝly ( v , igdwhe ); 300 } } 302 gme < ass gACE_GFTy > 303  GridFuni (3)< gACE_GFTy >:: $GF_muɝly (cڡ time , cڡ v , 304 ACE_GFTy cڡ & v , 305 cڡ idt ) 307  t = `dagh_timedex ( time , v ); 308  l = v ; 309  i =0; i< ngth ; i++) 310 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 311 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `muɝly ( v ); 312 } } 314 gme < ass gACE_GFTy > 315  GridFuni (3)< gACE_GFTy >:: GF_muɝly (cڡ t1 , cڡ l1 , 316 GridFuni (3)< ACE_GFTy > cڡ & rhs , 317 cڡ t2 , cڡ l2 , 318 BBox cڡ & whe , 319 cڡ idt ) 321 as ( whe . nk = dagh .rank); 323 BBox gigdwhe = whe ; 324 gdbAlignBBox ( gk , igdwhe , ignmt ); 326  gtime1 = dagh_timedex ( t1 , l1 ); 327  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 328  gi =0; i< gngth ; i++) 329 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 330 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). muɝly ( 331 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 334 gme < ass gACE_GFTy > 335  GridFuni (3)< gACE_GFTy >:: GF_muɝly (cڡ t1 , cڡ l1 , 336 GridFuni (3)< ACE_GFTy > cڡ & rhs , 337 cڡ t2 , cڡ l2 , 338 cڡ idt ) 340  gtime1 = dagh_timedex ( t1 , l1 ); 341  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 342  gi =0; i< gngth ; i++) 343 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 344 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). muɝly ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); 351 gme < ass gACE_GFTy > 352  GridFuni (3)< gACE_GFTy >:: $GF_divide (cڡ time , cڡ v , 353 BBox cڡ & whe , 354 ACE_GFTy cڡ & v , 355 cڡ idt ) 357 `as ( whe . nk = dagh .rank); 359 BBox igdwhe = whe ; 360 `gdbAlignBBox ( gk , igdwhe , ignmt ); 362  t = `dagh_timedex ( time , v ); 363  l = v ; 364  i =0; i< ngth ; i++) 365 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 366 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `divide ( v , igdwhe ); 367 } } 369 gme < ass gACE_GFTy > 370  GridFuni (3)< gACE_GFTy >:: $GF_divide (cڡ time , cڡ v , 371 ACE_GFTy cڡ & v , 372 cڡ idt ) 374  t = `dagh_timedex ( time , v ); 375  l = v ; 376  i =0; i< ngth ; i++) 377 i( gdb [ t ][ l ][ i ] && gdb[t][l][i]-> `dexme (i)) 378 ( gdb [ t ][ l ][ i ]-> `gridda ( idt )). `divide ( v ); 379 } } 381 gme < ass gACE_GFTy > 382  GridFuni (3)< gACE_GFTy >:: GF_divide (cڡ t1 , cڡ l1 , 383 GridFuni (3)< ACE_GFTy > cڡ & rhs , 384 cڡ t2 , cڡ l2 , 385 BBox cڡ & whe , 386 cڡ idt ) 388 as ( whe . nk = dagh .rank); 390 BBox gigdwhe = whe ; 391 gdbAlignBBox ( gk , igdwhe , ignmt ); 393  gtime1 = dagh_timedex ( t1 , l1 ); 394  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 395  gi =0; i< gngth ; i++) 396 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 397 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). divide ( 398 rhs . gdb [ time2 ][ l2 ][ i ]-> gridda ( idt ), igdwhe ); 401 gme < ass gACE_GFTy > 402  GridFuni (3)< gACE_GFTy >:: GF_divide (cڡ t1 , cڡ l1 , 403 GridFuni (3)< ACE_GFTy > cڡ & rhs , 404 cڡ t2 , cڡ l2 , 405 cڡ idt ) 407  gtime1 = dagh_timedex ( t1 , l1 ); 408  gtime2 = rhs . dagh_timedex ( t2 , l2 ); 409  gi =0; i< gngth ; i++) 410 i( ggdb [ time1 ][ l1 ][ i ] && gdb[time1][l1][i]-> dexme (i&& grhs .gdb[ time2 ][ l2 ][i]) 411 ( ggdb [ time1 ][ l1 ][ i ]-> gridda ( idt )). divide ( rhs . gdb [ time2 ][ l2 ][i]->griddata(ident)); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOpsDist1.h 1 #ide _uded_GridFuniOpsDi1_h 2  #_uded_GridFuniOpsDi1_h ) 17 gme < ass gTy > 18  GridFuni (1)< gTy >:: GF_gh_e (cڡ  t1 , cڡ  l1 , 19 cڡ BBox & to , cڡ BBox& om , 20 GridDa (1)< Ty > & to , 21 cڡ  , 22 cڡ  idt , 23 cڡ Ty defv ) 25 as ( to . nk = dagh .nk && om .rank == dagh.rank); 26 cڡ  gtf = dagh_timedex ( t1 , l1 ); 28 cڡ  gme = comm_rvi :: oc_me (); 29 cڡ  gum = comm_rvi :: oc_num (); 30 cڡ  gmynk = 1; 32 Cods cڡ gtoshi = om . low (- to .lower(); 33 BBox gwom = om * shiabs ( to , toshi ); 34 i( gwom . emy ()) ; 35 BBox gwto = shiabs ( wom , - toshi ); 37 BBox gigdto = to ; 38 gdbAlignBBox ( gk , igdto , ignmt ); 39 BBox gigdom = om ; 40 gdbAlignBBox ( gk , igdom , ignmt ); 42 Cods ( mynk , dagh . size ( l1 , idt )); 43 gwto . size ( ; 44 gwom . size ( ; 46 i( gme = ) { 47 to . lo ( wto , nems ); 48 gto = defv ; 51 i( gcomm_rvi :: d (&& um > 1) { 53 cڡ  lf = dagh . vnum ( l1 ); 54 cڡ  gvid = dagh . daghdex ( idt ); 55 cڡ  gmdex = dagh . maxdex ()+1; 57 gGridBoxLi & gggbl = * dagh . ggbl (); 58 gGridBoxLi & glgbl = * dagh . lgbl (); 60 GridBoxLi ggfgbl ; 61 GridBoxLi glfgbl ; 62 gggbl . r ( wom , lf , gfgbl , ovp ); 63 glgbl . r ( wom , lf , lfgbl , ovp ); 65 #ifde DEBUG_PRINT_GF_DCOPY 66 gcomm_rvi :: log () << "\n************* Global From List *************\n" 67 << gfgbl 69 ). ush (); 70 gcomm_rvi :: log () << "\n************* Local From List *************\n" 71 << lfgbl 73 ). ush (); 76 GridTabDaRcv ** gcv_rv = 0; 78 i( gme = ) { 80 cv_rv = w GridTabDaRcv *[ um ]; 81  gp ; 82  gp =0;p< gum ;p++ gcv_rv [ p ] = GridTabDaRcvNULL ; 84 GridBoxLi * gfgbl = & gfgbl ; 86 BBoxLi gfbbl ; 87 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 89 #ifde DEBUG_PRINT_GF_DCOPY 90 gcomm_rvi :: log () << "\n************* Post Recv From BB List *************\n" 91 << fbbl 93 ). ush (); 96 * grcvsize = w [ um ]; 97  gp =0;p< gum ;p++ grcvsize [ p ] = 0; 98 BBox * grb = w BBox[ um * mdex ]; 99  gridx = 0; 100  gidx = 0; 102 GridBox * gfgb = fgbl -> f (); 103 BBox * gfbb = fbbl . f (); 104 BBox gbb ; 105  gowr = ACENoBody ; 106 ; gfgb ;fgb= gfgbl . xt (), gfbb = fbbl .xt(), gidx ++) { 107 i(( gowr = fgb -> gbOwr ()= me ) ; 108 gbb = * fbb * wom ; 109 i( gbb . emy ()) ; 110 gdbAlignBBox ( gk , bb , ignmt ); 111 gidx = fgb -> gbIndex (); 112 gridx = owr * mdex + idx ; 113 i( grb [ ridx ]. emy ()rb[ridx] = bb ; 114 i( gbb . mgab ( rb [ ridx ], ovp ) grb [ridx] + bb ; 116 grcvsize [ owr ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 117 grb [ ridx ] = bb ; 120  gp =0;p< gum ;p++) { 121 i( gp = me ) ; 122  gm =0;m< gmdex ;m++) { 123 gridx = p * mdex + m ; 124 i(! grb [ ridx ]. emy ()) { 125 grcvsize [ p ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 126 grb [ ridx ]. my (); 129 i( grcvsize [ p ] > 0) { 131 #ifde DEBUG_PRINT_GF_DCOPY 132 gcomm_rvi :: log () << "GF_gather_one: Receiving from: " 133 << p << " " << rcvsize [p] << "\n"). ush (); 135 gcv_rv [ p ] = w GridTabDaRcv (* gt ,( ACESviTag |), rcvsize [p],p); 138 i( grcvsize gde []cvsize; 139 i( grb gde []b; 142 i( gme ! && ! lfgbl . imy ()) { 143 GridBoxLi * fgbl = & lfgbl ; 144 cڡ  g = fgbl -> numb (); 146 BBoxLi gfbbl ; 147 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 149 #ifde DEBUG_PRINT_GF_DCOPY 150 gcomm_rvi :: log () << "\n************* Send Data From BB List *************\n" 151 << fbbl 153 ). ush (); 156 * gdsize = w [ ]; 157 BBox * gdbbox = w BBox[ ]; 158 * gddex = w [ ]; 159 BBox * gsb = w BBox[ mdex ]; 160  gdt = 0; 161  gidx = 0; 163 GridBox * gfgb = fgbl -> f (); 164 BBox * gfbb = fbbl . f (); 165 BBox gbb ; 166 ; gfgb ;fgb= fgbl -> xt (), gfbb = fbbl .next()) { 167 bb = * fbb * wom ; 168 i( gbb . emy ()) ; 169 gdbAlignBBox ( gk , bb , ignmt ); 170 gidx = fgb -> gbIndex (); 171 i( gsb [ idx ]. emy ()sb[idx] = bb ; 172 i( gbb . mgab ( sb [ idx ], ovp ) gsb [idx] + bb ; 174 gdbbox [ dt ] = sb [ idx ]; 175 gdsize [ dt ] = nems *( Ty )* sb [ idx ]. size (); 176 gddex [ dt ] = idx ; 177 gsb [ idx ] = bb ; 178 gdt ++; 181  gm =0;m< gmdex ;m++) { 182 i(! gsb [ m ]. emy ()) { 183 gdbbox [ dt ] = sb [ m ]; 184 gdsize [ dt ] = nems *( Ty )* sb [ m ]. size (); 185 gddex [ dt ] = m ; 186 gsb [ m ]. my (); 187 gdt ++; 190 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( dt , gdsize , gACEPacked ); 191  gs = 0; 192  gs < gdt ) { 193 gdbbox [ s ] * gdb [ tf ][ l1 ][ ddex [s]]-> ribox ( idt ); 195 #ifde DEBUG_PRINT_GF_DCOPY 196 gcomm_rvi :: log (<< "\n************* Sdg DTo: " << << "*************\n" 197 << dbbox [ s ] << " " << dsize [s] << " " << ddex [s]; 198 gcomm_rvi :: log (<< "\n************* ***************** *************\n"). ush (); 201 ggdb [ tf ][ l1 ][ ddex [ s ]]-> gdbWreDa ( ACEA , idt , ACENu , dbbox [s],* gdbkt ,s); 202 ( ggdbkt -> hd ( s ))-> gbbox = shiabs (( gdbkt ->hd(s))-> bbox ,- toshi ); 203 gs ++; 205 ggt -> nd (( ACESviTag | me ), gdbkt , ); 206 i( gdsize gde [] sndsize; 207 i( gdbbox gde [] sndbbox; 208 i( gddex gde [] sndindex; 209 i( gsb gde [] sb; 212 i( gme = ) { 214  i =0; gi < gngth ; i++) 215 i( ggdb [ tf ][ l1 ][ i ] && gdb[tf][l1][i]-> dexme (i)) 216 gto . cy ( gdb [ tf ][ l1 ][ i ]-> gridda ( idt ), igdto , igdom ); 220 i( gme = ) { 222 GridBoxLi * fgbl = & gfgbl ; 224 BBoxLi gfbbl ; 225 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 227 #ifde DEBUG_PRINT_GF_DCOPY 228 gcomm_rvi :: log () << "\n************* Recv Data From BB List *************\n" 229 << fbbl 231 ). ush (); 234  gp =0;p< gum ;p++) { 235 i( gp = me ) ; 236 i( gcv_rv [ p ]) { 237 i(! gcv_rv [ p ]-> ived ()) 238 gcomm_rvi :: rve (* cv_rv [ p ]-> q ()); 239 de gcv_rv [ p ]; 240 gcv_rv [ p ] = 0; 243 GF_RdDa ( tf , to ); 245 i( gcv_rv gde []ecv_server; 251  gi =0; i< gngth ; i++) 252 i( ggdb [ tf ][ l1 ][ i ] && gdb[tf][l1][i]-> dexme (i)) 253 gto . cy ( gdb [ tf ][ l1 ][ i ]-> gridda ( idt ), igdto , igdom ); 261 gme < ass gTy > 262  GridFuni (1)< gTy >:: GF_Cy (cڡ  t1 , cڡ  l1 , 263 cڡ GridFuni (1)< Ty >& rhs , 264 cڡ  t2 , cڡ  l2 , 265 cڡ BBox & to , cڡ BBox& om , 266 cڡ  idt ) 268 as ( to . nk = dagh .nk && om .rank == dagh.rank); 269 cڡ  g = dagh_timedex ( t1 , l1 ); 270 cڡ  gtf = rhs . dagh_timedex ( t2 , l2 ); 272 cڡ  gme = comm_rvi :: oc_me (); 273 cڡ  gum = comm_rvi :: oc_num (); 275 i( gcomm_rvi :: d (&& um > 1) { 277 cڡ  = dagh . vnum ( l1 ); 278 cڡ  glf = dagh . vnum ( l2 ); 279 cڡ  gvid = dagh . daghdex ( idt ); 280 cڡ  gmdex = dagh . maxdex ()+1; 282 Cods cڡ gtoshi = om . low (- to .lower(); 283 BBox gwom = om * shiabs ( to , toshi ); 284 i( gwom . emy ()) ; 285 BBox gwto = shiabs ( wom , - toshi ); 287 BBox gigdto = to ; 288 gdbAlignBBox ( gk , igdto , ignmt ); 289 BBox gigdom = om ; 290 gdbAlignBBox ( gk , igdom , ignmt ); 292 gGridBoxLi & gggbl = * dagh . ggbl (); 293 gGridBoxLi & glgbl = * dagh . lgbl (); 295 GridBoxLi ggtgbl ; 296 GridBoxLi ggbl ; 297 GridBoxLi ggfgbl ; 298 GridBoxLi glfgbl ; 299 gggbl . r ( wto , , gtgbl , ovp ); 300 glgbl . r ( wto , , gbl , ovp ); 301 gggbl . r ( wom , lf , gfgbl , ovp ); 302 glgbl . r ( wom , lf , lfgbl , ovp ); 304 #ifde DEBUG_PRINT_GF_DCOPY 305 gcomm_rvi :: log () << "\n************* Global From List *************\n" 306 << gfgbl 308 ). ush (); 309 gcomm_rvi :: log () << "\n************* Local From List *************\n" 310 << lfgbl 312 ). ush (); 313 gcomm_rvi :: log () << "\n************* Global To List *************\n" 314 << gtgbl 316 ). ush (); 317 gcomm_rvi :: log () << "\n************* Local To List *************\n" 318 << gbl 320 ). ush (); 323 GridTabDaRcv ** gcv_rv ; 324 gcv_rv = w GridTabDaRcv *[ um ]; 325  gp ; 326  gp =0;p< gum ;p++ gcv_rv [ p ] = GridTabDaRcvNULL ; 329 GridBoxLi * gfgbl = & gfgbl ; 330 GridBoxLi * gtgbl = & gbl ; 332 BBoxLi gfbbl ; 333 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 334 BBoxLi gtbbl ; 335 gtgbl -> bboxli ( tbbl , , ovp , vid ); 337 #ifde DEBUG_PRINT_GF_DCOPY 338 gcomm_rvi :: log () << "\n************* Post Recv From BB List *************\n" 339 << fbbl 341 ). ush (); 342 gcomm_rvi :: log () << "\n************* Post Recv To BB List *************\n" 343 << tbbl 345 ). ush (); 348 * grcvsize = w [ um ]; 349  gp ; 350  gp =0;p< gum ;p++ grcvsize [ p ] = 0; 351 BBox * grb = w BBox[ um * mdex ]; 352 * goidx = w [ um * mdex ]; 353  gridx = 0; 354  gidx = 0; 355  gidx = 0; 357 GridBox * gfgb = fgbl -> f (); 358 GridBox * gtgb = 0; 359 BBox * gfbb = fbbl . f (); 360 BBox * gtbb = 0; 361 BBox gbb ; 362  gowr = ACENoBody ; 363 ; gfgb ;fgb= gfgbl . xt (), gfbb = fbbl .next()) { 364 i(( owr = fgb -> gbOwr ()= me ) ; 365 gidx = fgb -> gbIndex (); 366 gridx = owr * mdex + idx ; 367  gtgb = tgbl -> f (), gtbb = tbbl .f();tgb;tgbgbl-> xt (),tbb=tbbl.next()) { 368 bb = * fbb * shiabs ((* tbb * wto ), toshi ); 369 i(! gbb . emy ()) { 370 gdbAlignBBox ( gk , bb , ignmt ); 371 gidx = tgb -> gbIndex (); 372 i( grb [ ridx ]. emy (){b[ridx] = bb ; goidx [ridx] = idx ; } 373 i( goidx [ ridx ] = idx && bb . mgab ( rb [ridx], ovp )) 374 grb [ ridx ] + bb ; 376 grcvsize [ owr ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 377 grb [ ridx ] = bb ; 378 goidx [ ridx ] = idx ; 383  gp =0;p< gum ;p++) { 384 i( gp = me ) ; 385  gm =0;m< gmdex ;m++) { 386 gridx = p * mdex + m ; 387 i(! grb [ ridx ]. emy ()) { 388 grcvsize [ p ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 389 grb [ ridx ]. my (); 392 i( grcvsize [ p ] > 0) { 394 #ifde DEBUG_PRINT_GF_DCOPY 395 gcomm_rvi :: log () << "GF_Copy: Receiving from: " 396 << p << " " << rcvsize [p] << "\n"). ush (); 398 gcv_rv [ p ] = w GridTabDaRcv (* gt ,( ACESviTag |), rcvsize [p],p); 401 i( grcvsize gde []cvsize; 402 i( grb gde []b; 403 i( goidx gde []toidx; 407 GridBoxLi * gfgbl = & lfgbl ; 408 GridBoxLi * gtgbl = & gtgbl ; 410 cڡ  g = fgbl -> numb (); 412 BBoxLi gfbbl ; 413 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 414 BBoxLi gtbbl ; 415 gtgbl -> bboxli ( tbbl , , ovp , vid ); 417 #ifde DEBUG_PRINT_GF_DCOPY 418 gcomm_rvi :: log () << "\n************* Send Data From BB List *************\n" 419 << fbbl 421 ). ush (); 422 gcomm_rvi :: log () << "\n************* Send Data To BB List *************\n" 423 << tbbl 425 ). ush (); 428 * gdsize = w [ um * ]; 429 BBox * gdbbox = w BBox[ um * ]; 430 * gddex = w [ um * ]; 431 * grcvdex = w [ um * ]; 432 * gdt = w [ um ]; 433  gp ; 434  gp =0;p< gum ;p++ gdt [ p ] = 0; 435 BBox * gsb = w BBox[ um * mdex ]; 436 * goidx = w [ um * mdex ]; 437  gsidx = 0; 438  gidx = 0; 439  gidx = 0; 441 GridBox * gfgb = fgbl -> f (); 442 GridBox * gtgb = 0; 443 BBox * gfbb = fbbl . f (); 444 BBox * gtbb = 0; 445 BBox gbb ; 447  gowr = ACENoBody ; 448 ; gfgb ;fgb= fgbl -> xt (), gfbb = fbbl .next()) { 449 idx = fgb -> gbIndex (); 450  gtgb = tgbl -> f (), gtbb = tbbl .f();tgb;tgbgbl-> xt (),tbb=tbbl.next()) { 451 i(( owr = tgb -> gbOwr ()= me ) ; 452 gidx = tgb -> gbIndex (); 453 gsidx = owr * mdex + idx ; 454 gbb = * fbb * shiabs ((* tbb * wto ), toshi ); 455 i(! gbb . emy ()) { 456 gdbAlignBBox ( gk , bb , ignmt ); 457 i( gsb [ sidx ]. emy (){ sb[sidx] = bb ; goidx [sidx] = idx ; } 458 i( goidx [ sidx ] = idx && bb . mgab ( sb [sidx], ovp )) 459 gsb [ sidx ] + bb ; 461 cڡ  gtmpid = owr * + dt [owner]; 462 gdbbox [ tmpid ] = sb [ sidx ]; 463 gdsize [ tmpid ] = nems *( Ty )* sb [ sidx ]. size (); 464 gddex [ tmpid ] = idx ; 465 grcvdex [ tmpid ] = oidx [ sidx ]; 466 gsb [ sidx ] = bb ; 467 goidx [ sidx ] = idx ; 468 gdt [ owr ]++; 473  gp =0;p< gum ;p++) { 474 i( gp = me ) ; 475  goff = p * ; 476  gm =0;m< gmdex ;m++) { 477 gsidx = p * mdex + m ; 478 i(! gsb [ sidx ]. emy ()) { 479 cڡ  gtmpid = off + dt [ p ]; 480 gdbbox [ tmpid ] = sb [ sidx ]; 481 gdsize [ tmpid ] = nems *( Ty )* sb [ sidx ]. size (); 482 gddex [ tmpid ] = m ; 483 grcvdex [ tmpid ] = oidx [ sidx ]; 484 gsb [ m ]. my (); 485 gdt [ p ]++; 489 i( gdt [ p ] == 0) ; 491 gGridDaBuck < gTy > * ggdbkt = 492 w GridDaBuck < Ty >( dt [ p ],( gdsize + goff ), gACEPacked ); 493  gs = 0; 494  gs < gdt [ p ]) { 495 gdbbox [ off + s ] * rhs . gdb [ tf ][ l2 ][ ddex [off+s]]-> ribox ( idt ); 497 #ifde DEBUG_PRINT_GF_DCOPY 498 gcomm_rvi :: log (<< "\n************* Sdg DTo: " << p << "*************\n" 499 << dbbox [ off + s ] << " " << dsize [off+s]; 500 gcomm_rvi :: log (<< "\n************* ***************** *************\n"). ush (); 503 grhs . ggdb [ tf ][ l2 ][ ddex [ off + s ]]-> gdbWreDa ( ACEA , idt , ACENu , dbbox [off+s],* gdbkt ,s); 504 ( ggdbkt -> hd ( s ))-> gbbox = shiabs (( gdbkt ->hd(s))-> bbox ,- toshi ); 505 ( ggdbkt -> hd ( s ))-> gtime = ; 506 ( ggdbkt -> hd ( s ))-> gv = ; 508 as (( gdbkt -> hd ( s ))-> dex = rcvdex [ off +s]); 509 gs ++; 511 ggt -> nd (( ACESviTag | me ), gdbkt , p ); 512 i( gdsize gde [] sndsize; 513 i( gdbbox gde [] sndbbox; 514 i( gddex gde [] sndindex; 515 i( grcvdex gde []cvindex; 516 i( gdt gde [] sndcnt; 517 i( gsb gde [] sb; 518 i( goidx gde [] stoidx; 523 GridBoxLi * gfgbl = & lfgbl ; 524 GridBoxLi * gtgbl = & gbl ; 526 #ifde DEBUG_PRINT_GF_DCOPY 527 BBoxLi gfbbl ; 528 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 529 BBoxLi gtbbl ; 530 gtgbl -> bboxli ( tbbl , , ovp , vid ); 532 gcomm_rvi :: log () << "\n************* Copy Data From BB List *************\n" 533 << fbbl 535 ). ush (); 536 gcomm_rvi :: log () << "\n************* Copy Data To BB List *************\n" 537 << tbbl 539 ). ush (); 542 GridBox * gfgb = fgbl -> f (); 543 GridBox * gtgb = 0; 544 * gidxag = w [ mdex *mindex]; 545  gfidx = ACENu , gtidx = ACENull; 546  gm =0;m< mdex * gmdex ;m++ gidxag [ m ] = ACEF ; 548 ; gfgb ;fgb= fgbl -> xt ()) { 549 fidx = fgb -> gbIndex (); 550  gtgb = tgbl -> f ();tgb;tgbgbl-> xt ()) { 551 tidx = tgb -> gbIndex (); 552 gidxag [ fidx * mdex + tidx ] = ACETrue ; 555  gmf =0;mf< gmdex ;mf++) { 556 GridDa (1)< gTy >& gtmpgd = rhs . gdb [ tf ][ l2 ][ mf ]-> gridda ( idt ); 557  gmt =0;mt< gmdex ;mt++) { 558 i( gidxag [ mf * mdex + mt ] = ACETrue ) 559 ( gdb [ ][ l1 ][ mt ]-> gridda ( idt )). cy ( tmpgd , igdto , igdom ); 562 i( gidxag gde [] idxflag; 566 #ifde DEBUG_PRINT_GF_DCOPY 567 GridBoxLi * gfgbl = & gfgbl ; 568 GridBoxLi * gtgbl = & gbl ; 570 BBoxLi gfbbl ; 571 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 572 BBoxLi gtbbl ; 573 gtgbl -> bboxli ( tbbl , , ovp , vid ); 575 gcomm_rvi :: log () << "\n************* Recv Data From BB List *************\n" 576 << fbbl 578 ). ush (); 579 gcomm_rvi :: log () << "\n************* Recv Data To BB List *************\n" 580 << tbbl 582 ). ush (); 585  g =0;< gum ;pp++) { 586 i( g = me ) ; 587 i( gcv_rv [ ]) { 588 i(! gcv_rv [ ]-> ived ()) 589 gcomm_rvi :: rve (* cv_rv [ ]-> q ()); 590 de gcv_rv [ ]; 591 gcv_rv [ ] = 0; 594 GF_RdDa ( ); 598 i( gcv_rv gde []ecv_server; 603 BBox gigdto = to ; 604 gdbAlignBBox ( gk , igdto , ignmt ); 605 BBox gigdom = om ; 606 gdbAlignBBox ( gk , igdom , ignmt ); 608  gi =0; i< gngth ; i++) 609 i( ggdb [ ][ l1 ][ i ] && gdb[][l1][i]-> dexme (i&& grhs .gdb[ tf ][ l2 ][i]) 610 ( ggdb [ ][ l1 ][ i ]-> gridda ( idt )). cy ( 611 rhs . gdb [ tf ][ l2 ][ i ]-> gridda ( idt ), igdto , igdom ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOpsDist2.h 1 #ide _uded_GridFuniOpsDi2_h 2  #_uded_GridFuniOpsDi2_h ) 17 gme < ass gTy > 18  GridFuni (2)< gTy >:: GF_gh_e (cڡ  t1 , cڡ  l1 , 19 cڡ BBox & to , cڡ BBox& om , 20 GridDa (2)< Ty > & to , 21 cڡ  , 22 cڡ  idt , 23 cڡ Ty defv ) 25 as ( to . nk = dagh .nk && om .rank == dagh.rank); 26 cڡ  gtf = dagh_timedex ( t1 , l1 ); 28 cڡ  gme = comm_rvi :: oc_me (); 29 cڡ  gum = comm_rvi :: oc_num (); 30 cڡ  gmynk = 2; 32 Cods cڡ gtoshi = om . low (- to .lower(); 33 BBox gwom = om * shiabs ( to , toshi ); 34 i( gwom . emy ()) ; 35 BBox gwto = shiabs ( wom , - toshi ); 37 BBox gigdto = to ; 38 gdbAlignBBox ( gk , igdto , ignmt ); 39 BBox gigdom = om ; 40 gdbAlignBBox ( gk , igdom , ignmt ); 42 Cods ( mynk , dagh . size ( l1 , idt )); 43 gwto . size ( ; 44 gwom . size ( ; 46 i( gme = ) { 47 to . lo ( wto , nems ); 48 gto = defv ; 51 i( gcomm_rvi :: d (&& um > 1) { 53 cڡ  lf = dagh . vnum ( l1 ); 54 cڡ  gvid = dagh . daghdex ( idt ); 55 cڡ  gmdex = dagh . maxdex ()+1; 57 gGridBoxLi & gggbl = * dagh . ggbl (); 58 gGridBoxLi & glgbl = * dagh . lgbl (); 60 GridBoxLi ggfgbl ; 61 GridBoxLi glfgbl ; 62 gggbl . r ( wom , lf , gfgbl , ovp ); 63 glgbl . r ( wom , lf , lfgbl , ovp ); 65 #ifde DEBUG_PRINT_GF_DCOPY 66 gcomm_rvi :: log () << "\n************* Global From List *************\n" 67 << gfgbl 69 ). ush (); 70 gcomm_rvi :: log () << "\n************* Local From List *************\n" 71 << lfgbl 73 ). ush (); 76 GridTabDaRcv ** gcv_rv = 0; 78 i( gme = ) { 80 cv_rv = w GridTabDaRcv *[ um ]; 81  gp ; 82  gp =0;p< gum ;p++ gcv_rv [ p ] = GridTabDaRcvNULL ; 84 GridBoxLi * gfgbl = & gfgbl ; 86 BBoxLi gfbbl ; 87 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 89 #ifde DEBUG_PRINT_GF_DCOPY 90 gcomm_rvi :: log () << "\n************* Post Recv From BB List *************\n" 91 << fbbl 93 ). ush (); 96 * grcvsize = w [ um ]; 97  gp =0;p< gum ;p++ grcvsize [ p ] = 0; 98 BBox * grb = w BBox[ um * mdex ]; 99  gridx = 0; 100  gidx = 0; 102 GridBox * gfgb = fgbl -> f (); 103 BBox * gfbb = fbbl . f (); 104 BBox gbb ; 105  gowr = ACENoBody ; 106 ; gfgb ;fgb= gfgbl . xt (), gfbb = fbbl .xt(), gidx ++) { 107 i(( gowr = fgb -> gbOwr ()= me ) ; 108 gbb = * fbb * wom ; 109 i( gbb . emy ()) ; 110 gdbAlignBBox ( gk , bb , ignmt ); 111 gidx = fgb -> gbIndex (); 112 gridx = owr * mdex + idx ; 113 i( grb [ ridx ]. emy ()rb[ridx] = bb ; 114 i( gbb . mgab ( rb [ ridx ], ovp ) grb [ridx] + bb ; 116 grcvsize [ owr ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 117 grb [ ridx ] = bb ; 120  gp =0;p< gum ;p++) { 121 i( gp = me ) ; 122  gm =0;m< gmdex ;m++) { 123 gridx = p * mdex + m ; 124 i(! grb [ ridx ]. emy ()) { 125 grcvsize [ p ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 126 grb [ ridx ]. my (); 129 i( grcvsize [ p ] > 0) { 131 #ifde DEBUG_PRINT_GF_DCOPY 132 gcomm_rvi :: log () << "GF_gather_one: Receiving from: " 133 << p << " " << rcvsize [p] << "\n"). ush (); 135 gcv_rv [ p ] = w GridTabDaRcv (* gt ,( ACESviTag |), rcvsize [p],p); 138 i( grcvsize gde []cvsize; 139 i( grb gde []b; 142 i( gme ! && ! lfgbl . imy ()) { 143 GridBoxLi * fgbl = & lfgbl ; 144 cڡ  g = fgbl -> numb (); 146 BBoxLi gfbbl ; 147 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 149 #ifde DEBUG_PRINT_GF_DCOPY 150 gcomm_rvi :: log () << "\n************* Send Data From BB List *************\n" 151 << fbbl 153 ). ush (); 156 * gdsize = w [ ]; 157 BBox * gdbbox = w BBox[ ]; 158 * gddex = w [ ]; 159 BBox * gsb = w BBox[ mdex ]; 160  gdt = 0; 161  gidx = 0; 163 GridBox * gfgb = fgbl -> f (); 164 BBox * gfbb = fbbl . f (); 165 BBox gbb ; 166 ; gfgb ;fgb= fgbl -> xt (), gfbb = fbbl .next()) { 167 bb = * fbb * wom ; 168 i( gbb . emy ()) ; 169 gdbAlignBBox ( gk , bb , ignmt ); 170 gidx = fgb -> gbIndex (); 171 i( gsb [ idx ]. emy ()sb[idx] = bb ; 172 i( gbb . mgab ( sb [ idx ], ovp ) gsb [idx] + bb ; 174 gdbbox [ dt ] = sb [ idx ]; 175 gdsize [ dt ] = nems *( Ty )* sb [ idx ]. size (); 176 gddex [ dt ] = idx ; 177 gsb [ idx ] = bb ; 178 gdt ++; 181  gm =0;m< gmdex ;m++) { 182 i(! gsb [ m ]. emy ()) { 183 gdbbox [ dt ] = sb [ m ]; 184 gdsize [ dt ] = nems *( Ty )* sb [ m ]. size (); 185 gddex [ dt ] = m ; 186 gsb [ m ]. my (); 187 gdt ++; 190 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( dt , gdsize , gACEPacked ); 191  gs = 0; 192  gs < gdt ) { 193 gdbbox [ s ] * gdb [ tf ][ l1 ][ ddex [s]]-> ribox ( idt ); 195 #ifde DEBUG_PRINT_GF_DCOPY 196 gcomm_rvi :: log (<< "\n************* Sdg DTo: " << << "*************\n" 197 << dbbox [ s ] << " " << dsize [s] << " " << ddex [s]; 198 gcomm_rvi :: log (<< "\n************* ***************** *************\n"). ush (); 201 ggdb [ tf ][ l1 ][ ddex [ s ]]-> gdbWreDa ( ACEA , idt , ACENu , dbbox [s],* gdbkt ,s); 202 ( ggdbkt -> hd ( s ))-> gbbox = shiabs (( gdbkt ->hd(s))-> bbox ,- toshi ); 203 gs ++; 205 ggt -> nd (( ACESviTag | me ), gdbkt , ); 206 i( gdsize gde [] sndsize; 207 i( gdbbox gde [] sndbbox; 208 i( gddex gde [] sndindex; 209 i( gsb gde [] sb; 212 i( gme = ) { 214  i =0; gi < gngth ; i++) 215 i( ggdb [ tf ][ l1 ][ i ] && gdb[tf][l1][i]-> dexme (i)) 216 gto . cy ( gdb [ tf ][ l1 ][ i ]-> gridda ( idt ), igdto , igdom ); 220 i( gme = ) { 222 GridBoxLi * fgbl = & gfgbl ; 224 BBoxLi gfbbl ; 225 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 227 #ifde DEBUG_PRINT_GF_DCOPY 228 gcomm_rvi :: log () << "\n************* Recv Data From BB List *************\n" 229 << fbbl 231 ). ush (); 234  gp =0;p< gum ;p++) { 235 i( gp = me ) ; 236 i( gcv_rv [ p ]) { 237 i(! gcv_rv [ p ]-> ived ()) 238 gcomm_rvi :: rve (* cv_rv [ p ]-> q ()); 239 de gcv_rv [ p ]; 240 gcv_rv [ p ] = 0; 243 GF_RdDa ( tf , to ); 245 i( gcv_rv gde []ecv_server; 251  gi =0; i< gngth ; i++) 252 i( ggdb [ tf ][ l1 ][ i ] && gdb[tf][l1][i]-> dexme (i)) 253 gto . cy ( gdb [ tf ][ l1 ][ i ]-> gridda ( idt ), igdto , igdom ); 261 gme < ass gTy > 262  GridFuni (2)< gTy >:: GF_Cy (cڡ  t1 , cڡ  l1 , 263 cڡ GridFuni (2)< Ty >& rhs , 264 cڡ  t2 , cڡ  l2 , 265 cڡ BBox & to , cڡ BBox& om , 266 cڡ  idt ) 268 as ( to . nk = dagh .nk && om .rank == dagh.rank); 269 cڡ  g = dagh_timedex ( t1 , l1 ); 270 cڡ  gtf = rhs . dagh_timedex ( t2 , l2 ); 272 cڡ  gme = comm_rvi :: oc_me (); 273 cڡ  gum = comm_rvi :: oc_num (); 275 i( gcomm_rvi :: d (&& um > 1) { 277 cڡ  = dagh . vnum ( l1 ); 278 cڡ  glf = dagh . vnum ( l2 ); 279 cڡ  gvid = dagh . daghdex ( idt ); 280 cڡ  gmdex = dagh . maxdex ()+1; 282 Cods cڡ gtoshi = om . low (- to .lower(); 283 BBox gwom = om * shiabs ( to , toshi ); 284 i( gwom . emy ()) ; 285 BBox gwto = shiabs ( wom , - toshi ); 287 BBox gigdto = to ; 288 gdbAlignBBox ( gk , igdto , ignmt ); 289 BBox gigdom = om ; 290 gdbAlignBBox ( gk , igdom , ignmt ); 292 gGridBoxLi & gggbl = * dagh . ggbl (); 293 gGridBoxLi & glgbl = * dagh . lgbl (); 295 GridBoxLi ggtgbl ; 296 GridBoxLi ggbl ; 297 GridBoxLi ggfgbl ; 298 GridBoxLi glfgbl ; 299 gggbl . r ( wto , , gtgbl , ovp ); 300 glgbl . r ( wto , , gbl , ovp ); 301 gggbl . r ( wom , lf , gfgbl , ovp ); 302 glgbl . r ( wom , lf , lfgbl , ovp ); 304 #ifde DEBUG_PRINT_GF_DCOPY 305 gcomm_rvi :: log () << "\n************* Global From List *************\n" 306 << gfgbl 308 ). ush (); 309 gcomm_rvi :: log () << "\n************* Local From List *************\n" 310 << lfgbl 312 ). ush (); 313 gcomm_rvi :: log () << "\n************* Global To List *************\n" 314 << gtgbl 316 ). ush (); 317 gcomm_rvi :: log () << "\n************* Local To List *************\n" 318 << gbl 320 ). ush (); 323 GridTabDaRcv ** gcv_rv ; 324 gcv_rv = w GridTabDaRcv *[ um ]; 325  gp ; 326  gp =0;p< gum ;p++ gcv_rv [ p ] = GridTabDaRcvNULL ; 329 GridBoxLi * gfgbl = & gfgbl ; 330 GridBoxLi * gtgbl = & gbl ; 332 BBoxLi gfbbl ; 333 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 334 BBoxLi gtbbl ; 335 gtgbl -> bboxli ( tbbl , , ovp , vid ); 337 #ifde DEBUG_PRINT_GF_DCOPY 338 gcomm_rvi :: log () << "\n************* Post Recv From BB List *************\n" 339 << fbbl 341 ). ush (); 342 gcomm_rvi :: log () << "\n************* Post Recv To BB List *************\n" 343 << tbbl 345 ). ush (); 348 * grcvsize = w [ um ]; 349  gp ; 350  gp =0;p< gum ;p++ grcvsize [ p ] = 0; 351 BBox * grb = w BBox[ um * mdex ]; 352 * goidx = w [ um * mdex ]; 353  gridx = 0; 354  gidx = 0; 355  gidx = 0; 357 GridBox * gfgb = fgbl -> f (); 358 GridBox * gtgb = 0; 359 BBox * gfbb = fbbl . f (); 360 BBox * gtbb = 0; 361 BBox gbb ; 362  gowr = ACENoBody ; 363 ; gfgb ;fgb= gfgbl . xt (), gfbb = fbbl .next()) { 364 i(( owr = fgb -> gbOwr ()= me ) ; 365 gidx = fgb -> gbIndex (); 366 gridx = owr * mdex + idx ; 367  gtgb = tgbl -> f (), gtbb = tbbl .f();tgb;tgbgbl-> xt (),tbb=tbbl.next()) { 368 bb = * fbb * shiabs ((* tbb * wto ), toshi ); 369 i(! gbb . emy ()) { 370 gdbAlignBBox ( gk , bb , ignmt ); 371 gidx = tgb -> gbIndex (); 372 i( grb [ ridx ]. emy (){b[ridx] = bb ; goidx [ridx] = idx ; } 373 i( goidx [ ridx ] = idx && bb . mgab ( rb [ridx], ovp )) 374 grb [ ridx ] + bb ; 376 grcvsize [ owr ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 377 grb [ ridx ] = bb ; 378 goidx [ ridx ] = idx ; 383  gp =0;p< gum ;p++) { 384 i( gp = me ) ; 385  gm =0;m< gmdex ;m++) { 386 gridx = p * mdex + m ; 387 i(! grb [ ridx ]. emy ()) { 388 grcvsize [ p ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 389 grb [ ridx ]. my (); 392 i( grcvsize [ p ] > 0) { 394 #ifde DEBUG_PRINT_GF_DCOPY 395 gcomm_rvi :: log () << "GF_Copy: Receiving from: " 396 << p << " " << rcvsize [p] << "\n"). ush (); 398 gcv_rv [ p ] = w GridTabDaRcv (* gt ,( ACESviTag |), rcvsize [p],p); 401 i( grcvsize gde []cvsize; 402 i( grb gde []b; 403 i( goidx gde []toidx; 407 GridBoxLi * gfgbl = & lfgbl ; 408 GridBoxLi * gtgbl = & gtgbl ; 410 cڡ  g = fgbl -> numb (); 412 BBoxLi gfbbl ; 413 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 414 BBoxLi gtbbl ; 415 gtgbl -> bboxli ( tbbl , , ovp , vid ); 417 #ifde DEBUG_PRINT_GF_DCOPY 418 gcomm_rvi :: log () << "\n************* Send Data From BB List *************\n" 419 << fbbl 421 ). ush (); 422 gcomm_rvi :: log () << "\n************* Send Data To BB List *************\n" 423 << tbbl 425 ). ush (); 428 * gdsize = w [ um * ]; 429 BBox * gdbbox = w BBox[ um * ]; 430 * gddex = w [ um * ]; 431 * grcvdex = w [ um * ]; 432 * gdt = w [ um ]; 433  gp ; 434  gp =0;p< gum ;p++ gdt [ p ] = 0; 435 BBox * gsb = w BBox[ um * mdex ]; 436 * goidx = w [ um * mdex ]; 437  gsidx = 0; 438  gidx = 0; 439  gidx = 0; 441 GridBox * gfgb = fgbl -> f (); 442 GridBox * gtgb = 0; 443 BBox * gfbb = fbbl . f (); 444 BBox * gtbb = 0; 445 BBox gbb ; 447  gowr = ACENoBody ; 448 ; gfgb ;fgb= fgbl -> xt (), gfbb = fbbl .next()) { 449 idx = fgb -> gbIndex (); 450  gtgb = tgbl -> f (), gtbb = tbbl .f();tgb;tgbgbl-> xt (),tbb=tbbl.next()) { 451 i(( owr = tgb -> gbOwr ()= me ) ; 452 gidx = tgb -> gbIndex (); 453 gsidx = owr * mdex + idx ; 454 gbb = * fbb * shiabs ((* tbb * wto ), toshi ); 455 i(! gbb . emy ()) { 456 gdbAlignBBox ( gk , bb , ignmt ); 457 i( gsb [ sidx ]. emy (){ sb[sidx] = bb ; goidx [sidx] = idx ; } 458 i( goidx [ sidx ] = idx && bb . mgab ( sb [sidx], ovp )) 459 gsb [ sidx ] + bb ; 461 cڡ  gtmpid = owr * + dt [owner]; 462 gdbbox [ tmpid ] = sb [ sidx ]; 463 gdsize [ tmpid ] = nems *( Ty )* sb [ sidx ]. size (); 464 gddex [ tmpid ] = idx ; 465 grcvdex [ tmpid ] = oidx [ sidx ]; 466 gsb [ sidx ] = bb ; 467 goidx [ sidx ] = idx ; 468 gdt [ owr ]++; 473  gp =0;p< gum ;p++) { 474 i( gp = me ) ; 475  goff = p * ; 476  gm =0;m< gmdex ;m++) { 477 gsidx = p * mdex + m ; 478 i(! gsb [ sidx ]. emy ()) { 479 cڡ  gtmpid = off + dt [ p ]; 480 gdbbox [ tmpid ] = sb [ sidx ]; 481 gdsize [ tmpid ] = nems *( Ty )* sb [ sidx ]. size (); 482 gddex [ tmpid ] = m ; 483 grcvdex [ tmpid ] = oidx [ sidx ]; 484 gsb [ m ]. my (); 485 gdt [ p ]++; 489 i( gdt [ p ] == 0) ; 491 gGridDaBuck < gTy > * ggdbkt = 492 w GridDaBuck < Ty >( dt [ p ],( gdsize + goff ), gACEPacked ); 493  gs = 0; 494  gs < gdt [ p ]) { 495 gdbbox [ off + s ] * rhs . gdb [ tf ][ l2 ][ ddex [off+s]]-> ribox ( idt ); 497 #ifde DEBUG_PRINT_GF_DCOPY 498 gcomm_rvi :: log (<< "\n************* Sdg DTo: " << p << "*************\n" 499 << dbbox [ off + s ] << " " << dsize [off+s]; 500 gcomm_rvi :: log (<< "\n************* ***************** *************\n"). ush (); 503 grhs . ggdb [ tf ][ l2 ][ ddex [ off + s ]]-> gdbWreDa ( ACEA , idt , ACENu , dbbox [off+s],* gdbkt ,s); 504 ( ggdbkt -> hd ( s ))-> gbbox = shiabs (( gdbkt ->hd(s))-> bbox ,- toshi ); 505 ( ggdbkt -> hd ( s ))-> gtime = ; 506 ( ggdbkt -> hd ( s ))-> gv = ; 508 as (( gdbkt -> hd ( s ))-> dex = rcvdex [ off +s]); 509 gs ++; 511 ggt -> nd (( ACESviTag | me ), gdbkt , p ); 512 i( gdsize gde [] sndsize; 513 i( gdbbox gde [] sndbbox; 514 i( gddex gde [] sndindex; 515 i( grcvdex gde []cvindex; 516 i( gdt gde [] sndcnt; 517 i( gsb gde [] sb; 518 i( goidx gde [] stoidx; 523 GridBoxLi * gfgbl = & lfgbl ; 524 GridBoxLi * gtgbl = & gbl ; 526 #ifde DEBUG_PRINT_GF_DCOPY 527 BBoxLi gfbbl ; 528 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 529 BBoxLi gtbbl ; 530 gtgbl -> bboxli ( tbbl , , ovp , vid ); 532 gcomm_rvi :: log () << "\n************* Copy Data From BB List *************\n" 533 << fbbl 535 ). ush (); 536 gcomm_rvi :: log () << "\n************* Copy Data To BB List *************\n" 537 << tbbl 539 ). ush (); 542 GridBox * gfgb = fgbl -> f (); 543 GridBox * gtgb = 0; 544 * gidxag = w [ mdex *mindex]; 545  gfidx = ACENu , gtidx = ACENull; 546  gm =0;m< mdex * gmdex ;m++ gidxag [ m ] = ACEF ; 548 ; gfgb ;fgb= fgbl -> xt ()) { 549 fidx = fgb -> gbIndex (); 550  gtgb = tgbl -> f ();tgb;tgbgbl-> xt ()) { 551 tidx = tgb -> gbIndex (); 552 gidxag [ fidx * mdex + tidx ] = ACETrue ; 555  gmf =0;mf< gmdex ;mf++) { 556 GridDa (2)< gTy >& gtmpgd = rhs . gdb [ tf ][ l2 ][ mf ]-> gridda ( idt ); 557  gmt =0;mt< gmdex ;mt++) { 558 i( gidxag [ mf * mdex + mt ] = ACETrue ) 559 ( gdb [ ][ l1 ][ mt ]-> gridda ( idt )). cy ( tmpgd , igdto , igdom ); 562 i( gidxag gde [] idxflag; 566 #ifde DEBUG_PRINT_GF_DCOPY 567 GridBoxLi * gfgbl = & gfgbl ; 568 GridBoxLi * gtgbl = & gbl ; 570 BBoxLi gfbbl ; 571 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 572 BBoxLi gtbbl ; 573 gtgbl -> bboxli ( tbbl , , ovp , vid ); 575 gcomm_rvi :: log () << "\n************* Recv Data From BB List *************\n" 576 << fbbl 578 ). ush (); 579 gcomm_rvi :: log () << "\n************* Recv Data To BB List *************\n" 580 << tbbl 582 ). ush (); 585  g =0;< gum ;pp++) { 586 i( g = me ) ; 587 i( gcv_rv [ ]) { 588 i(! gcv_rv [ ]-> ived ()) 589 gcomm_rvi :: rve (* cv_rv [ ]-> q ()); 590 de gcv_rv [ ]; 591 gcv_rv [ ] = 0; 594 GF_RdDa ( ); 598 i( gcv_rv gde []ecv_server; 603 BBox gigdto = to ; 604 gdbAlignBBox ( gk , igdto , ignmt ); 605 BBox gigdom = om ; 606 gdbAlignBBox ( gk , igdom , ignmt ); 608  gi =0; i< gngth ; i++) 609 i( ggdb [ ][ l1 ][ i ] && gdb[][l1][i]-> dexme (i&& grhs .gdb[ tf ][ l2 ][i]) 610 ( ggdb [ ][ l1 ][ i ]-> gridda ( idt )). cy ( 611 rhs . gdb [ tf ][ l2 ][ i ]-> gridda ( idt ), igdto , igdom ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOpsDist3.h 1 #ide _uded_GridFuniOpsDi3_h 2  #_uded_GridFuniOpsDi3_h ) 17 gme < ass gTy > 18  GridFuni (3)< gTy >:: GF_gh_e (cڡ  t1 , cڡ  l1 , 19 cڡ BBox & to , cڡ BBox& om , 20 GridDa (3)< Ty > & to , 21 cڡ  , 22 cڡ  idt , 23 cڡ Ty defv ) 25 as ( to . nk = dagh .nk && om .rank == dagh.rank); 26 cڡ  gtf = dagh_timedex ( t1 , l1 ); 28 cڡ  gme = comm_rvi :: oc_me (); 29 cڡ  gum = comm_rvi :: oc_num (); 30 cڡ  gmynk = 3; 32 Cods cڡ gtoshi = om . low (- to .lower(); 33 BBox gwom = om * shiabs ( to , toshi ); 34 i( gwom . emy ()) ; 35 BBox gwto = shiabs ( wom , - toshi ); 37 BBox gigdto = to ; 38 gdbAlignBBox ( gk , igdto , ignmt ); 39 BBox gigdom = om ; 40 gdbAlignBBox ( gk , igdom , ignmt ); 42 Cods ( mynk , dagh . size ( l1 , idt )); 43 gwto . size ( ; 44 gwom . size ( ; 46 i( gme = ) { 47 to . lo ( wto , nems ); 48 gto = defv ; 51 i( gcomm_rvi :: d (&& um > 1) { 53 cڡ  lf = dagh . vnum ( l1 ); 54 cڡ  gvid = dagh . daghdex ( idt ); 55 cڡ  gmdex = dagh . maxdex ()+1; 57 gGridBoxLi & gggbl = * dagh . ggbl (); 58 gGridBoxLi & glgbl = * dagh . lgbl (); 60 GridBoxLi ggfgbl ; 61 GridBoxLi glfgbl ; 62 gggbl . r ( wom , lf , gfgbl , ovp ); 63 glgbl . r ( wom , lf , lfgbl , ovp ); 65 #ifde DEBUG_PRINT_GF_DCOPY 66 gcomm_rvi :: log () << "\n************* Global From List *************\n" 67 << gfgbl 69 ). ush (); 70 gcomm_rvi :: log () << "\n************* Local From List *************\n" 71 << lfgbl 73 ). ush (); 76 GridTabDaRcv ** gcv_rv = 0; 78 i( gme = ) { 80 cv_rv = w GridTabDaRcv *[ um ]; 81  gp ; 82  gp =0;p< gum ;p++ gcv_rv [ p ] = GridTabDaRcvNULL ; 84 GridBoxLi * gfgbl = & gfgbl ; 86 BBoxLi gfbbl ; 87 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 89 #ifde DEBUG_PRINT_GF_DCOPY 90 gcomm_rvi :: log () << "\n************* Post Recv From BB List *************\n" 91 << fbbl 93 ). ush (); 96 * grcvsize = w [ um ]; 97  gp =0;p< gum ;p++ grcvsize [ p ] = 0; 98 BBox * grb = w BBox[ um * mdex ]; 99  gridx = 0; 100  gidx = 0; 102 GridBox * gfgb = fgbl -> f (); 103 BBox * gfbb = fbbl . f (); 104 BBox gbb ; 105  gowr = ACENoBody ; 106 ; gfgb ;fgb= gfgbl . xt (), gfbb = fbbl .xt(), gidx ++) { 107 i(( gowr = fgb -> gbOwr ()= me ) ; 108 gbb = * fbb * wom ; 109 i( gbb . emy ()) ; 110 gdbAlignBBox ( gk , bb , ignmt ); 111 gidx = fgb -> gbIndex (); 112 gridx = owr * mdex + idx ; 113 i( grb [ ridx ]. emy ()rb[ridx] = bb ; 114 i( gbb . mgab ( rb [ ridx ], ovp ) grb [ridx] + bb ; 116 grcvsize [ owr ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 117 grb [ ridx ] = bb ; 120  gp =0;p< gum ;p++) { 121 i( gp = me ) ; 122  gm =0;m< gmdex ;m++) { 123 gridx = p * mdex + m ; 124 i(! grb [ ridx ]. emy ()) { 125 grcvsize [ p ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 126 grb [ ridx ]. my (); 129 i( grcvsize [ p ] > 0) { 131 #ifde DEBUG_PRINT_GF_DCOPY 132 gcomm_rvi :: log () << "GF_gather_one: Receiving from: " 133 << p << " " << rcvsize [p] << "\n"). ush (); 135 gcv_rv [ p ] = w GridTabDaRcv (* gt ,( ACESviTag |), rcvsize [p],p); 138 i( grcvsize gde []cvsize; 139 i( grb gde []b; 142 i( gme ! && ! lfgbl . imy ()) { 143 GridBoxLi * fgbl = & lfgbl ; 144 cڡ  g = fgbl -> numb (); 146 BBoxLi gfbbl ; 147 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 149 #ifde DEBUG_PRINT_GF_DCOPY 150 gcomm_rvi :: log () << "\n************* Send Data From BB List *************\n" 151 << fbbl 153 ). ush (); 156 * gdsize = w [ ]; 157 BBox * gdbbox = w BBox[ ]; 158 * gddex = w [ ]; 159 BBox * gsb = w BBox[ mdex ]; 160  gdt = 0; 161  gidx = 0; 163 GridBox * gfgb = fgbl -> f (); 164 BBox * gfbb = fbbl . f (); 165 BBox gbb ; 166 ; gfgb ;fgb= fgbl -> xt (), gfbb = fbbl .next()) { 167 bb = * fbb * wom ; 168 i( gbb . emy ()) ; 169 gdbAlignBBox ( gk , bb , ignmt ); 170 gidx = fgb -> gbIndex (); 171 i( gsb [ idx ]. emy ()sb[idx] = bb ; 172 i( gbb . mgab ( sb [ idx ], ovp ) gsb [idx] + bb ; 174 gdbbox [ dt ] = sb [ idx ]; 175 gdsize [ dt ] = nems *( Ty )* sb [ idx ]. size (); 176 gddex [ dt ] = idx ; 177 gsb [ idx ] = bb ; 178 gdt ++; 181  gm =0;m< gmdex ;m++) { 182 i(! gsb [ m ]. emy ()) { 183 gdbbox [ dt ] = sb [ m ]; 184 gdsize [ dt ] = nems *( Ty )* sb [ m ]. size (); 185 gddex [ dt ] = m ; 186 gsb [ m ]. my (); 187 gdt ++; 190 gGridDaBuck < gTy > * ggdbkt = w GridDaBuck < Ty >( dt , gdsize , gACEPacked ); 191  gs = 0; 192  gs < gdt ) { 193 gdbbox [ s ] * gdb [ tf ][ l1 ][ ddex [s]]-> ribox ( idt ); 195 #ifde DEBUG_PRINT_GF_DCOPY 196 gcomm_rvi :: log (<< "\n************* Sdg DTo: " << << "*************\n" 197 << dbbox [ s ] << " " << dsize [s] << " " << ddex [s]; 198 gcomm_rvi :: log (<< "\n************* ***************** *************\n"). ush (); 201 ggdb [ tf ][ l1 ][ ddex [ s ]]-> gdbWreDa ( ACEA , idt , ACENu , dbbox [s],* gdbkt ,s); 202 ( ggdbkt -> hd ( s ))-> gbbox = shiabs (( gdbkt ->hd(s))-> bbox ,- toshi ); 203 gs ++; 205 ggt -> nd (( ACESviTag | me ), gdbkt , ); 206 i( gdsize gde [] sndsize; 207 i( gdbbox gde [] sndbbox; 208 i( gddex gde [] sndindex; 209 i( gsb gde [] sb; 212 i( gme = ) { 214  i =0; gi < gngth ; i++) 215 i( ggdb [ tf ][ l1 ][ i ] && gdb[tf][l1][i]-> dexme (i)) 216 gto . cy ( gdb [ tf ][ l1 ][ i ]-> gridda ( idt ), igdto , igdom ); 220 i( gme = ) { 222 GridBoxLi * fgbl = & gfgbl ; 224 BBoxLi gfbbl ; 225 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 227 #ifde DEBUG_PRINT_GF_DCOPY 228 gcomm_rvi :: log () << "\n************* Recv Data From BB List *************\n" 229 << fbbl 231 ). ush (); 234  gp =0;p< gum ;p++) { 235 i( gp = me ) ; 236 i( gcv_rv [ p ]) { 237 i(! gcv_rv [ p ]-> ived ()) 238 gcomm_rvi :: rve (* cv_rv [ p ]-> q ()); 239 de gcv_rv [ p ]; 240 gcv_rv [ p ] = 0; 243 GF_RdDa ( tf , to ); 245 i( gcv_rv gde []ecv_server; 251  gi =0; i< gngth ; i++) 252 i( ggdb [ tf ][ l1 ][ i ] && gdb[tf][l1][i]-> dexme (i)) 253 gto . cy ( gdb [ tf ][ l1 ][ i ]-> gridda ( idt ), igdto , igdom ); 261 gme < ass gTy > 262  GridFuni (3)< gTy >:: GF_Cy (cڡ  t1 , cڡ  l1 , 263 cڡ GridFuni (3)< Ty >& rhs , 264 cڡ  t2 , cڡ  l2 , 265 cڡ BBox & to , cڡ BBox& om , 266 cڡ  idt ) 268 as ( to . nk = dagh .nk && om .rank == dagh.rank); 269 cڡ  g = dagh_timedex ( t1 , l1 ); 270 cڡ  gtf = rhs . dagh_timedex ( t2 , l2 ); 272 cڡ  gme = comm_rvi :: oc_me (); 273 cڡ  gum = comm_rvi :: oc_num (); 275 i( gcomm_rvi :: d (&& um > 1) { 277 cڡ  = dagh . vnum ( l1 ); 278 cڡ  glf = dagh . vnum ( l2 ); 279 cڡ  gvid = dagh . daghdex ( idt ); 280 cڡ  gmdex = dagh . maxdex ()+1; 282 Cods cڡ gtoshi = om . low (- to .lower(); 283 BBox gwom = om * shiabs ( to , toshi ); 284 i( gwom . emy ()) ; 285 BBox gwto = shiabs ( wom , - toshi ); 287 BBox gigdto = to ; 288 gdbAlignBBox ( gk , igdto , ignmt ); 289 BBox gigdom = om ; 290 gdbAlignBBox ( gk , igdom , ignmt ); 292 gGridBoxLi & gggbl = * dagh . ggbl (); 293 gGridBoxLi & glgbl = * dagh . lgbl (); 295 GridBoxLi ggtgbl ; 296 GridBoxLi ggbl ; 297 GridBoxLi ggfgbl ; 298 GridBoxLi glfgbl ; 299 gggbl . r ( wto , , gtgbl , ovp ); 300 glgbl . r ( wto , , gbl , ovp ); 301 gggbl . r ( wom , lf , gfgbl , ovp ); 302 glgbl . r ( wom , lf , lfgbl , ovp ); 304 #ifde DEBUG_PRINT_GF_DCOPY 305 gcomm_rvi :: log () << "\n************* Global From List *************\n" 306 << gfgbl 308 ). ush (); 309 gcomm_rvi :: log () << "\n************* Local From List *************\n" 310 << lfgbl 312 ). ush (); 313 gcomm_rvi :: log () << "\n************* Global To List *************\n" 314 << gtgbl 316 ). ush (); 317 gcomm_rvi :: log () << "\n************* Local To List *************\n" 318 << gbl 320 ). ush (); 323 GridTabDaRcv ** gcv_rv ; 324 gcv_rv = w GridTabDaRcv *[ um ]; 325  gp ; 326  gp =0;p< gum ;p++ gcv_rv [ p ] = GridTabDaRcvNULL ; 329 GridBoxLi * gfgbl = & gfgbl ; 330 GridBoxLi * gtgbl = & gbl ; 332 BBoxLi gfbbl ; 333 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 334 BBoxLi gtbbl ; 335 gtgbl -> bboxli ( tbbl , , ovp , vid ); 337 #ifde DEBUG_PRINT_GF_DCOPY 338 gcomm_rvi :: log () << "\n************* Post Recv From BB List *************\n" 339 << fbbl 341 ). ush (); 342 gcomm_rvi :: log () << "\n************* Post Recv To BB List *************\n" 343 << tbbl 345 ). ush (); 348 * grcvsize = w [ um ]; 349  gp ; 350  gp =0;p< gum ;p++ grcvsize [ p ] = 0; 351 BBox * grb = w BBox[ um * mdex ]; 352 * goidx = w [ um * mdex ]; 353  gridx = 0; 354  gidx = 0; 355  gidx = 0; 357 GridBox * gfgb = fgbl -> f (); 358 GridBox * gtgb = 0; 359 BBox * gfbb = fbbl . f (); 360 BBox * gtbb = 0; 361 BBox gbb ; 362  gowr = ACENoBody ; 363 ; gfgb ;fgb= gfgbl . xt (), gfbb = fbbl .next()) { 364 i(( owr = fgb -> gbOwr ()= me ) ; 365 gidx = fgb -> gbIndex (); 366 gridx = owr * mdex + idx ; 367  gtgb = tgbl -> f (), gtbb = tbbl .f();tgb;tgbgbl-> xt (),tbb=tbbl.next()) { 368 bb = * fbb * shiabs ((* tbb * wto ), toshi ); 369 i(! gbb . emy ()) { 370 gdbAlignBBox ( gk , bb , ignmt ); 371 gidx = tgb -> gbIndex (); 372 i( grb [ ridx ]. emy (){b[ridx] = bb ; goidx [ridx] = idx ; } 373 i( goidx [ ridx ] = idx && bb . mgab ( rb [ridx], ovp )) 374 grb [ ridx ] + bb ; 376 grcvsize [ owr ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 377 grb [ ridx ] = bb ; 378 goidx [ ridx ] = idx ; 383  gp =0;p< gum ;p++) { 384 i( gp = me ) ; 385  gm =0;m< gmdex ;m++) { 386 gridx = p * mdex + m ; 387 i(! grb [ ridx ]. emy ()) { 388 grcvsize [ p ] + gdhdr :: gdbsize ( nems *( Ty )* rb [ ridx ]. size ()); 389 grb [ ridx ]. my (); 392 i( grcvsize [ p ] > 0) { 394 #ifde DEBUG_PRINT_GF_DCOPY 395 gcomm_rvi :: log () << "GF_Copy: Receiving from: " 396 << p << " " << rcvsize [p] << "\n"). ush (); 398 gcv_rv [ p ] = w GridTabDaRcv (* gt ,( ACESviTag |), rcvsize [p],p); 401 i( grcvsize gde []cvsize; 402 i( grb gde []b; 403 i( goidx gde []toidx; 407 GridBoxLi * gfgbl = & lfgbl ; 408 GridBoxLi * gtgbl = & gtgbl ; 410 cڡ  g = fgbl -> numb (); 412 BBoxLi gfbbl ; 413 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 414 BBoxLi gtbbl ; 415 gtgbl -> bboxli ( tbbl , , ovp , vid ); 417 #ifde DEBUG_PRINT_GF_DCOPY 418 gcomm_rvi :: log () << "\n************* Send Data From BB List *************\n" 419 << fbbl 421 ). ush (); 422 gcomm_rvi :: log () << "\n************* Send Data To BB List *************\n" 423 << tbbl 425 ). ush (); 428 * gdsize = w [ um * ]; 429 BBox * gdbbox = w BBox[ um * ]; 430 * gddex = w [ um * ]; 431 * grcvdex = w [ um * ]; 432 * gdt = w [ um ]; 433  gp ; 434  gp =0;p< gum ;p++ gdt [ p ] = 0; 435 BBox * gsb = w BBox[ um * mdex ]; 436 * goidx = w [ um * mdex ]; 437  gsidx = 0; 438  gidx = 0; 439  gidx = 0; 441 GridBox * gfgb = fgbl -> f (); 442 GridBox * gtgb = 0; 443 BBox * gfbb = fbbl . f (); 444 BBox * gtbb = 0; 445 BBox gbb ; 447  gowr = ACENoBody ; 448 ; gfgb ;fgb= fgbl -> xt (), gfbb = fbbl .next()) { 449 idx = fgb -> gbIndex (); 450  gtgb = tgbl -> f (), gtbb = tbbl .f();tgb;tgbgbl-> xt (),tbb=tbbl.next()) { 451 i(( owr = tgb -> gbOwr ()= me ) ; 452 gidx = tgb -> gbIndex (); 453 gsidx = owr * mdex + idx ; 454 gbb = * fbb * shiabs ((* tbb * wto ), toshi ); 455 i(! gbb . emy ()) { 456 gdbAlignBBox ( gk , bb , ignmt ); 457 i( gsb [ sidx ]. emy (){ sb[sidx] = bb ; goidx [sidx] = idx ; } 458 i( goidx [ sidx ] = idx && bb . mgab ( sb [sidx], ovp )) 459 gsb [ sidx ] + bb ; 461 cڡ  gtmpid = owr * + dt [owner]; 462 gdbbox [ tmpid ] = sb [ sidx ]; 463 gdsize [ tmpid ] = nems *( Ty )* sb [ sidx ]. size (); 464 gddex [ tmpid ] = idx ; 465 grcvdex [ tmpid ] = oidx [ sidx ]; 466 gsb [ sidx ] = bb ; 467 goidx [ sidx ] = idx ; 468 gdt [ owr ]++; 473  gp =0;p< gum ;p++) { 474 i( gp = me ) ; 475  goff = p * ; 476  gm =0;m< gmdex ;m++) { 477 gsidx = p * mdex + m ; 478 i(! gsb [ sidx ]. emy ()) { 479 cڡ  gtmpid = off + dt [ p ]; 480 gdbbox [ tmpid ] = sb [ sidx ]; 481 gdsize [ tmpid ] = nems *( Ty )* sb [ sidx ]. size (); 482 gddex [ tmpid ] = m ; 483 grcvdex [ tmpid ] = oidx [ sidx ]; 484 gsb [ m ]. my (); 485 gdt [ p ]++; 489 i( gdt [ p ] == 0) ; 491 gGridDaBuck < gTy > * ggdbkt = 492 w GridDaBuck < Ty >( dt [ p ],( gdsize + goff ), gACEPacked ); 493  gs = 0; 494  gs < gdt [ p ]) { 495 gdbbox [ off + s ] * rhs . gdb [ tf ][ l2 ][ ddex [off+s]]-> ribox ( idt ); 497 #ifde DEBUG_PRINT_GF_DCOPY 498 gcomm_rvi :: log (<< "\n************* Sdg DTo: " << p << "*************\n" 499 << dbbox [ off + s ] << " " << dsize [off+s]; 500 gcomm_rvi :: log (<< "\n************* ***************** *************\n"). ush (); 503 grhs . ggdb [ tf ][ l2 ][ ddex [ off + s ]]-> gdbWreDa ( ACEA , idt , ACENu , dbbox [off+s],* gdbkt ,s); 504 ( ggdbkt -> hd ( s ))-> gbbox = shiabs (( gdbkt ->hd(s))-> bbox ,- toshi ); 505 ( ggdbkt -> hd ( s ))-> gtime = ; 506 ( ggdbkt -> hd ( s ))-> gv = ; 508 as (( gdbkt -> hd ( s ))-> dex = rcvdex [ off +s]); 509 gs ++; 511 ggt -> nd (( ACESviTag | me ), gdbkt , p ); 512 i( gdsize gde [] sndsize; 513 i( gdbbox gde [] sndbbox; 514 i( gddex gde [] sndindex; 515 i( grcvdex gde []cvindex; 516 i( gdt gde [] sndcnt; 517 i( gsb gde [] sb; 518 i( goidx gde [] stoidx; 523 GridBoxLi * gfgbl = & lfgbl ; 524 GridBoxLi * gtgbl = & gbl ; 526 #ifde DEBUG_PRINT_GF_DCOPY 527 BBoxLi gfbbl ; 528 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 529 BBoxLi gtbbl ; 530 gtgbl -> bboxli ( tbbl , , ovp , vid ); 532 gcomm_rvi :: log () << "\n************* Copy Data From BB List *************\n" 533 << fbbl 535 ). ush (); 536 gcomm_rvi :: log () << "\n************* Copy Data To BB List *************\n" 537 << tbbl 539 ). ush (); 542 GridBox * gfgb = fgbl -> f (); 543 GridBox * gtgb = 0; 544 * gidxag = w [ mdex *mindex]; 545  gfidx = ACENu , gtidx = ACENull; 546  gm =0;m< mdex * gmdex ;m++ gidxag [ m ] = ACEF ; 548 ; gfgb ;fgb= fgbl -> xt ()) { 549 fidx = fgb -> gbIndex (); 550  gtgb = tgbl -> f ();tgb;tgbgbl-> xt ()) { 551 tidx = tgb -> gbIndex (); 552 gidxag [ fidx * mdex + tidx ] = ACETrue ; 555  gmf =0;mf< gmdex ;mf++) { 556 GridDa (3)< gTy >& gtmpgd = rhs . gdb [ tf ][ l2 ][ mf ]-> gridda ( idt ); 557  gmt =0;mt< gmdex ;mt++) { 558 i( gidxag [ mf * mdex + mt ] = ACETrue ) 559 ( gdb [ ][ l1 ][ mt ]-> gridda ( idt )). cy ( tmpgd , igdto , igdom ); 562 i( gidxag gde [] idxflag; 566 #ifde DEBUG_PRINT_GF_DCOPY 567 GridBoxLi * gfgbl = & gfgbl ; 568 GridBoxLi * gtgbl = & gbl ; 570 BBoxLi gfbbl ; 571 gfgbl -> bboxli ( fbbl , lf , ovp , vid ); 572 BBoxLi gtbbl ; 573 gtgbl -> bboxli ( tbbl , , ovp , vid ); 575 gcomm_rvi :: log () << "\n************* Recv Data From BB List *************\n" 576 << fbbl 578 ). ush (); 579 gcomm_rvi :: log () << "\n************* Recv Data To BB List *************\n" 580 << tbbl 582 ). ush (); 585  g =0;< gum ;pp++) { 586 i( g = me ) ; 587 i( gcv_rv [ ]) { 588 i(! gcv_rv [ ]-> ived ()) 589 gcomm_rvi :: rve (* cv_rv [ ]-> q ()); 590 de gcv_rv [ ]; 591 gcv_rv [ ] = 0; 594 GF_RdDa ( ); 598 i( gcv_rv gde []ecv_server; 603 BBox gigdto = to ; 604 gdbAlignBBox ( gk , igdto , ignmt ); 605 BBox gigdom = om ; 606 gdbAlignBBox ( gk , igdom , ignmt ); 608  gi =0; i< gngth ; i++) 609 i( ggdb [ ][ l1 ][ i ] && gdb[][l1][i]-> dexme (i&& grhs .gdb[ tf ][ l2 ][i]) 610 ( ggdb [ ][ l1 ][ i ]-> gridda ( idt )). cy ( 611 rhs . gdb [ tf ][ l2 ][ i ]-> gridda ( idt ), igdto , igdom ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOpsRed1.h 1 #ide _uded_GridFuniOpsRed1_h 2  #_uded_GridFuniOpsRed1_h ) 17 gme < ass gTy > 18 Ty GridFuni (1)< gTy >:: GF_maxv (cڡ  time , 19 cڡ  v , 20 #ifde ACEVeGridFuni 21 cڡ  m , 23 cڡ  idt ) 25 #ifde ACEVeGridFuni 26 as ( m >0 && itm < nems ); 28  gt = dagh_timedex ( time , v ); 29  gl = v ; 30 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 31  gi ; 32  gag = ACETrue ; 33  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 34 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). maxv (gdb[t][l][i]-> ribox (ident) 35 #ifde ACEVeGridFuni 36 , m 39 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 40 i( gmaxv < gtmax maxv = tmax ; 41 gtmax = ( Ty ACESml ; 44 #ifde ACE_NO_MPI 46 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 48  me = comm_rvi :: oc_me (); 49  gnum = comm_rvi :: oc_num (); 51  gR ; 52  gsize = ( Ty ); 53 * gvues = (* w [ size * num ]; 55 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 56 comm_rvi :: comm ( gfid )); 57 i gMPI_SUCCESS ! R ) 58 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 60 #ifde DEBUG_PRINT_GF_COMM 61 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 63 << size 65 << dl ). ush (); 68 gmaxv = ( Ty ACESml ; 69 gag = ACETrue ; 70  gi =0;i< gnum ;i++) { 71 gtmax = *(( Ty *) vues + i ); 72 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 73 i( gmaxv < gtmax maxv = tmax ; 75 i( gvues gde [] values; 79  ( gmaxv ); 82 gme < ass gTy > 83 Ty GridFuni (1)< gTy >:: GF_maxv (cڡ  time , 84 cڡ  v , 85 #ifde ACEVeGridFuni 86 cڡ  m , 88 cڡ BBox & whe , 89 cڡ  idt ) 91 #ifde ACEVeGridFuni 92 as ( m >0 && itm < nems ); 94 as ( whe . nk = dagh .rank); 96 BBox gigdwhe = whe ; 97 gdbAlignBBox ( gk , igdwhe , ignmt ); 99  gt = dagh_timedex ( time , v ); 100  gl = v ; 101 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 102  gi ; 103  gag = ACETrue ; 104  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 105 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). maxv ( 106 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 107 #ifde ACEVeGridFuni 108 , m 111 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 112 i( gmaxv < gtmax maxv = tmax ; 113 gtmax = ( Ty ACESml ; 116 #ifde ACE_NO_MPI 118 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 120  me = comm_rvi :: oc_me (); 121  gnum = comm_rvi :: oc_num (); 123  gR ; 124  gsize = ( Ty ); 125 * gvues = (* w [ size * num ]; 127 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 128 comm_rvi :: comm ( gfid )); 129 i gMPI_SUCCESS ! R ) 130 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 132 #ifde DEBUG_PRINT_GF_COMM 133 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 135 << size 137 << dl ). ush (); 140 gmaxv = ( Ty ACESml ; 141 gag = ACETrue ; 142  gi =0;i< gnum ;i++) { 143 gtmax = *(( Ty *) vues + i ); 144 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 145 i( gmaxv < gtmax maxv = tmax ; 147 i( gvues gde [] values; 151  ( gmaxv ); 154 gme < ass gTy > 155 Ty GridFuni (1)< gTy >:: GF_maxv (cڡ  time , 156 cڡ  v , 157 #ifde ACEVeGridFuni 158 cڡ  m , 160 cڡ  mgl , 161 cڡ  idt ) 163 #ifde ACEVeGridFuni 164 as ( m >0 && itm < nems ); 166  gt = dagh_timedex ( time , v ); 167  gl = v ; 168 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 169  gi ; 170  gag ACETrue ; 171  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 172 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). maxv (gdb[t][l][i]-> ribox (ident,mgl) 173 #ifde ACEVeGridFuni 174 , m 177 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 178 i( gmaxv < gtmax maxv = tmax ; 179 gtmax = ( Ty ACESml ; 182 #ifde ACE_NO_MPI 184 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 186  me = comm_rvi :: oc_me (); 187  gnum = comm_rvi :: oc_num (); 189  gR ; 190  gsize = ( Ty ); 191 * gvues = (* w [ size * num ]; 193 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 194 comm_rvi :: comm ( gfid )); 195 i gMPI_SUCCESS ! R ) 196 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 198 #ifde DEBUG_PRINT_GF_COMM 199 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 201 << size 203 << dl ). ush (); 206 gmaxv = ( Ty ACESml ; 207 gag = ACETrue ; 208  gi =0;i< gnum ;i++) { 209 gtmax = *(( Ty *) vues + i ); 210 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 211 i( gmaxv < gtmax maxv = tmax ; 213 i( gvues gde [] values; 217  ( gmaxv ); 220 gme < ass gTy > 221 Ty GridFuni (1)< gTy >:: GF_maxv (cڡ  time , 222 cڡ  v , 223 #ifde ACEVeGridFuni 224 cڡ  m , 226 cڡ  mgl , 227 cڡ BBox & whe , 228 cڡ  idt ) 230 #ifde ACEVeGridFuni 231 as ( m >0 && itm < nems ); 233 as ( whe . nk = dagh .rank); 235 BBox gigdwhe = whe ; 236 gdbAlignBBox ( gk , igdwhe , ignmt ); 238  gt = dagh_timedex ( time , v ); 239  gl = v ; 240 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 241  gi ; 242  gag = ACETrue ; 243  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 244 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). maxv ( 245 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 246 #ifde ACEVeGridFuni 247 , m 250 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 251 i( gmaxv < gtmax maxv = tmax ; 252 gtmax = ( Ty ACESml ; 255 #ifde ACE_NO_MPI 257 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 259  me = comm_rvi :: oc_me (); 260  gnum = comm_rvi :: oc_num (); 262  gR ; 263  gsize = ( Ty ); 264 * gvues = (* w [ size * num ]; 266 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 267 comm_rvi :: comm ( gfid )); 268 i gMPI_SUCCESS ! R ) 269 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 271 #ifde DEBUG_PRINT_GF_COMM 272 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 274 << size 276 << dl ). ush (); 279 gmaxv = ( Ty ACESml ; 280 gag = ACETrue ; 281  gi =0;i< gnum ;i++) { 282 gtmax = *(( Ty *) vues + i ); 283 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 284 i( gmaxv < gtmax maxv = tmax ; 286 i( gvues gde [] values; 290  ( gmaxv ); 296 gme < ass gTy > 297 Ty GridFuni (1)< gTy >:: GF_mv (cڡ  time , 298 cڡ  v , 299 #ifde ACEVeGridFuni 300 cڡ  m , 302 cڡ  idt ) 304 #ifde ACEVeGridFuni 305 as ( m >0 && itm < nems ); 307  gt = dagh_timedex ( time , v ); 308  gl = v ; 309 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 310  gi ; 311  gag = ACETrue ; 312  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 313 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). mv (gdb[t][l][i]-> ribox (ident) 314 #ifde ACEVeGridFuni 315 , m 318 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 319 i( gmv > gtm mv = tm ; 320 gtm = MAXLIM ( Ty ); 323 #ifde ACE_NO_MPI 325 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 327  me = comm_rvi :: oc_me (); 328  gnum = comm_rvi :: oc_num (); 330  gR ; 331  gsize = ( Ty ); 332 * gvues = (* w [ size * num ]; 334 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 335 comm_rvi :: comm ( gfid )); 336 i gMPI_SUCCESS ! R ) 337 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 339 #ifde DEBUG_PRINT_GF_COMM 340 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 342 << size 344 << dl ). ush (); 347 gmv = MAXLIM ( Ty ); 348 gag = ACETrue ; 349  gi =0;i< gnum ;i++) { 350 gtm = *(( Ty *) vues + i ); 351 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 352 i( gmv > gtm mv = tm ; 354 i( gvues gde [] values; 358  ( gmv ); 361 gme < ass gTy > 362 Ty GridFuni (1)< gTy >:: GF_mv (cڡ  time , 363 cڡ  v , 364 #ifde ACEVeGridFuni 365 cڡ  m , 367 cڡ BBox & whe , 368 cڡ  idt ) 370 #ifde ACEVeGridFuni 371 as ( m >0 && itm < nems ); 373 as ( whe . nk = dagh .rank); 375 BBox gigdwhe = whe ; 376 gdbAlignBBox ( gk , igdwhe , ignmt ); 378  gt = dagh_timedex ( time , v ); 379  gl = v ; 380 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 381  gi ; 382  gag = ACETrue ; 383  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 384 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). mv ( 385 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 386 #ifde ACEVeGridFuni 387 , m 390 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 391 i( gmv > gtm mv = tm ; 392 gtm = MAXLIM ( Ty ); 395 #ifde ACE_NO_MPI 398 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 400  me = comm_rvi :: oc_me (); 401  gnum = comm_rvi :: oc_num (); 403  gR ; 404  gsize = ( Ty ); 405 * gvues = (* w [ size * num ]; 407 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 408 comm_rvi :: comm ( gfid )); 409 i gMPI_SUCCESS ! R ) 410 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 412 #ifde DEBUG_PRINT_GF_COMM 413 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 415 << size 417 << dl ). ush (); 420 gmv = MAXLIM ( Ty ); 421 gag = ACETrue ; 422  gi =0;i< gnum ;i++) { 423 gtm = *(( Ty *) vues + i ); 424 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 425 i( gmv > gtm mv = tm ; 427 i( gvues gde [] values; 431  ( gmv ); 434 gme < ass gTy > 435 Ty GridFuni (1)< gTy >:: GF_mv (cڡ  time , 436 cڡ  v , 437 #ifde ACEVeGridFuni 438 cڡ  m , 440 cڡ  mgl , 441 cڡ  idt ) 443 #ifde ACEVeGridFuni 444 as ( m >0 && itm < nems ); 446  gt = dagh_timedex ( time , v ); 447  gl = v ; 448 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 449  gi ; 450  gag = ACETrue ; 451  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 452 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). mv (gdb[t][l][i]-> ribox (ident,mgl) 453 #ifde ACEVeGridFuni 454 , m 457 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 458 i( gmv > gtm mv = tm ; 459 gtm = MAXLIM ( Ty ); 462 #ifde ACE_NO_MPI 464 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 466  me = comm_rvi :: oc_me (); 467  gnum = comm_rvi :: oc_num (); 469  gR ; 470  gsize = ( Ty ); 471 * gvues = (* w [ size * num ]; 473 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 474 comm_rvi :: comm ( gfid )); 475 i gMPI_SUCCESS ! R ) 476 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 478 #ifde DEBUG_PRINT_GF_COMM 479 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 481 << size 483 << dl ). ush (); 486 gmv = MAXLIM ( Ty ); 487 gag = ACETrue ; 488  gi =0;i< gnum ;i++) { 489 gtm = *(( Ty *) vues + i ); 490 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 491 i( gmv > gtm mv = tm ; 493 i( gvues gde [] values; 497  ( gmv ); 500 gme < ass gTy > 501 Ty GridFuni (1)< gTy >:: GF_mv (cڡ  time , 502 cڡ  v , 503 #ifde ACEVeGridFuni 504 cڡ  m , 506 cڡ  mgl , 507 cڡ BBox & whe , 508 cڡ  idt ) 510 #ifde ACEVeGridFuni 511 as ( m >0 && itm < nems ); 513 as ( whe . nk = dagh .rank); 515 BBox gigdwhe = whe ; 516 gdbAlignBBox ( gk , igdwhe , ignmt ); 518  gt = dagh_timedex ( time , v ); 519  gl = v ; 520 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 521  gi ; 522  gag = ACETrue ; 523  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 524 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). mv ( 525 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 526 #ifde ACEVeGridFuni 527 , m 530 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 531 i( gmv > gtm mv = tm ; 532 gtm = MAXLIM ( Ty ); 535 #ifde ACE_NO_MPI 537 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 540  me = comm_rvi :: oc_me (); 541  gnum = comm_rvi :: oc_num (); 543  gR ; 544  gsize = ( Ty ); 545 * gvues = (* w [ size * num ]; 547 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 548 comm_rvi :: comm ( gfid )); 549 i gMPI_SUCCESS ! R ) 550 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 552 #ifde DEBUG_PRINT_GF_COMM 553 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 555 << size 557 << dl ). ush (); 560 gmv = MAXLIM ( Ty ); 561 gag = ACETrue ; 562  gi =0;i< gnum ;i++) { 563 gtm = *(( Ty *) vues + i ); 564 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 565 i( gmv > gtm mv = tm ; 567 i( gvues gde [] values; 571  ( gmv ); 577 gme < ass gTy > 578 Ty GridFuni (1)< gTy >:: GF_sum (cڡ  time , 579 cڡ  v , 580 #ifde ACEVeGridFuni 581 cڡ  m , 583 cڡ  idt ) 585 #ifde ACEVeGridFuni 586 as ( m >0 && itm < nems ); 588  gt = dagh_timedex ( time , v ); 589  gl = v ; 590 Ty gsum = (Type) 0; 591  gi ; 592  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 593 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt )). sum (gdb[t][l][i]-> ribox (ident) 594 #ifde ACEVeGridFuni 595 , m 600 #ifde ACE_NO_MPI 602 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 605  me = comm_rvi :: oc_me (); 606  gnum = comm_rvi :: oc_num (); 608  gR ; 609  gsize = ( Ty ); 610 * gvues = (* w [ size * num ]; 612 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 613 comm_rvi :: comm ( gfid )); 614 i gMPI_SUCCESS ! R ) 615 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 617 #ifde DEBUG_PRINT_GF_COMM 618 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 620 << size 622 << dl ). ush (); 625 gsum = ( Ty ) 0; 626  gi =0;i< gnum ;i++) 627 gsum +*(( Ty *) vues + i ); 629 i( gvues gde [] values; 633  ( gsum ); 636 gme < ass gTy > 637 Ty GridFuni (1)< gTy >:: GF_sum (cڡ  time , 638 cڡ  v , 639 #ifde ACEVeGridFuni 640 cڡ  m , 642 cڡ BBox & whe , 643 cڡ  idt ) 645 #ifde ACEVeGridFuni 646 as ( m >0 && itm < nems ); 648 as ( whe . nk = dagh .rank); 650 BBox gigdwhe = whe ; 651 gdbAlignBBox ( gk , igdwhe , ignmt ); 653  gt = dagh_timedex ( time , v ); 654  gl = v ; 655 Ty gsum = (Type) 0; 656  gi ; 657  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 658 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt )). sum ( 659 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 660 #ifde ACEVeGridFuni 661 , m 666 #ifde ACE_NO_MPI 668 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 671  me = comm_rvi :: oc_me (); 672  gnum = comm_rvi :: oc_num (); 674  gR ; 675  gsize = ( Ty ); 676 * gvues = (* w [ size * num ]; 678 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 679 comm_rvi :: comm ( gfid )); 680 i gMPI_SUCCESS ! R ) 681 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 683 #ifde DEBUG_PRINT_GF_COMM 684 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 686 << size 688 << dl ). ush (); 691 gsum = ( Ty ) 0; 692  gi =0;i< gnum ;i++) 693 gsum +*(( Ty *) vues + i ); 695 i( gvues gde [] values; 699  ( gsum ); 702 gme < ass gTy > 703 Ty GridFuni (1)< gTy >:: GF_sum (cڡ  time , 704 cڡ  v , 705 #ifde ACEVeGridFuni 706 cڡ  m , 708 cڡ  mgl , 709 cڡ  idt ) 711 #ifde ACEVeGridFuni 712 as ( m >0 && itm < nems ); 714  gt = dagh_timedex ( time , v ); 715  gl = v ; 716 Ty gsum = (Type) 0; 717  gi ; 718  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 719 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sum (gdb[t][l][i]-> ribox (ident,mgl) 720 #ifde ACEVeGridFuni 721 , m 726 #ifde ACE_NO_MPI 728 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 731  me = comm_rvi :: oc_me (); 732  gnum = comm_rvi :: oc_num (); 734  gR ; 735  gsize = ( Ty ); 736 * gvues = (* w [ size * num ]; 738 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 739 comm_rvi :: comm ( gfid )); 740 i gMPI_SUCCESS ! R ) 741 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 743 #ifde DEBUG_PRINT_GF_COMM 744 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 746 << size 748 << dl ). ush (); 751 gsum = ( Ty ) 0; 752  gi =0;i< gnum ;i++) 753 gsum +*(( Ty *) vues + i ); 755 i( gvues gde [] values; 759  ( gsum ); 762 gme < ass gTy > 763 Ty GridFuni (1)< gTy >:: GF_sum (cڡ  time , 764 cڡ  v , 765 #ifde ACEVeGridFuni 766 cڡ  m , 768 cڡ  mgl , 769 cڡ BBox & whe , 770 cڡ  idt ) 772 #ifde ACEVeGridFuni 773 as ( m >0 && itm < nems ); 775 as ( whe . nk = dagh .rank); 777 BBox gigdwhe = whe ; 778 gdbAlignBBox ( gk , igdwhe , ignmt ); 780  gt = dagh_timedex ( time , v ); 781  gl = v ; 782 Ty gsum = (Type) 0; 783  gi ; 784  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 785 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sum ( 786 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 787 #ifde ACEVeGridFuni 788 , m 793 #ifde ACE_NO_MPI 795 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 798  me = comm_rvi :: oc_me (); 799  gnum = comm_rvi :: oc_num (); 801  gR ; 802  gsize = ( Ty ); 803 * gvues = (* w [ size * num ]; 805 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 806 comm_rvi :: comm ( gfid )); 807 i gMPI_SUCCESS ! R ) 808 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 810 #ifde DEBUG_PRINT_GF_COMM 811 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 813 << size 815 << dl ). ush (); 818 gsum = ( Ty ) 0; 819  gi =0;i< gnum ;i++) 820 gsum +*(( Ty *) vues + i ); 822 i( gvues gde [] values; 826  ( gsum ); 832 gme < ass gTy > 833 Ty GridFuni (1)< gTy >:: GF_odu (cڡ  time , 834 cڡ  v , 835 #ifde ACEVeGridFuni 836 cڡ  m , 838 cڡ  idt ) 840 #ifde ACEVeGridFuni 841 as ( m >0 && itm < nems ); 843  gt = dagh_timedex ( time , v ); 844  gl = v ; 845 Ty god = (Type) 1; 846  gi ; 847  gi =0; i< gngth ; i++) { 848 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 849 god *( gdb [ t ][ l ][ i ]-> gridda ( idt )). odu (gdb[t][l][i]-> ribox (ident) 850 #ifde ACEVeGridFuni 851 , m 856 #ifde ACE_NO_MPI 858 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 861  me = comm_rvi :: oc_me (); 862  gnum = comm_rvi :: oc_num (); 864  gR ; 865  gsize = ( Ty ); 866 * gvues = (* w [ size * num ]; 868 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 869 comm_rvi :: comm ( gfid )); 870 i gMPI_SUCCESS ! R ) 871 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 873 #ifde DEBUG_PRINT_GF_COMM 874 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 876 << size 878 << dl ). ush (); 881 god = ( Ty ) 1; 882  gi =0;i< gnum ;i++) 883 god **(( Ty *) vues + i ); 885 i( gvues gde [] values; 889  ( god ); 892 gme < ass gTy > 893 Ty GridFuni (1)< gTy >:: GF_odu (cڡ  time , 894 cڡ  v , 895 #ifde ACEVeGridFuni 896 cڡ  m , 898 cڡ BBox & whe , 899 cڡ  idt ) 901 #ifde ACEVeGridFuni 902 as ( m >0 && itm < nems ); 904 as ( whe . nk = dagh .rank); 906 BBox gigdwhe = whe ; 907 gdbAlignBBox ( gk , igdwhe , ignmt ); 909  gt = dagh_timedex ( time , v ); 910  gl = v ; 911 Ty god = (Type) 1; 912  gi ; 913  gi =0; i< gngth ; i++) { 914 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 915 god *( gdb [ t ][ l ][ i ]-> gridda ( idt )). odu ( 916 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 917 #ifde ACEVeGridFuni 918 , m 923 #ifde ACE_NO_MPI 925 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 928  me = comm_rvi :: oc_me (); 929  gnum = comm_rvi :: oc_num (); 931  gR ; 932  gsize = ( Ty ); 933 * gvues = (* w [ size * num ]; 935 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 936 comm_rvi :: comm ( gfid )); 937 i gMPI_SUCCESS ! R ) 938 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 940 #ifde DEBUG_PRINT_GF_COMM 941 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 943 << size 945 << dl ). ush (); 948 god = ( Ty ) 1; 949  gi =0;i< gnum ;i++) 950 god **(( Ty *) vues + i ); 952 i( gvues gde [] values; 956  ( god ); 959 gme < ass gTy > 960 Ty GridFuni (1)< gTy >:: GF_odu (cڡ  time , 961 cڡ  v , 962 #ifde ACEVeGridFuni 963 cڡ  m , 965 cڡ  mgl , 966 cڡ  idt ) 968 #ifde ACEVeGridFuni 969 as ( m >0 && itm < nems ); 971  gt = dagh_timedex ( time , v ); 972  gl = v ; 973 Ty god = (Type) 1; 974  gi ; 975  gi =0; i< gngth ; i++) { 976 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 977 god *( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). odu (gdb[t][l][i]-> ribox (ident,mgl) 978 #ifde ACEVeGridFuni 979 , m 984 #ifde ACE_NO_MPI 986 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 989  me = comm_rvi :: oc_me (); 990  gnum = comm_rvi :: oc_num (); 992  gR ; 993  gsize = ( Ty ); 994 * gvues = (* w [ size * num ]; 996 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 997 comm_rvi :: comm ( gfid )); 998 i gMPI_SUCCESS ! R ) 999 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 1001 #ifde DEBUG_PRINT_GF_COMM 1002 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 1004 << size 1006 << dl ). ush (); 1009 god = ( Ty ) 1; 1010  gi =0;i< gnum ;i++) 1011 god **(( Ty *) vues + i ); 1013 i( gvues gde [] values; 1017  ( god ); 1020 gme < ass gTy > 1021 Ty GridFuni (1)< gTy >:: GF_odu (cڡ  time , 1022 cڡ  v , 1023 #ifde ACEVeGridFuni 1024 cڡ  m , 1026 cڡ  mgl , 1027 cڡ BBox & whe , 1028 cڡ  idt ) 1030 #ifde ACEVeGridFuni 1031 as ( m >0 && itm < nems ); 1033 as ( whe . nk = dagh .rank); 1035 BBox gigdwhe = whe ; 1036 gdbAlignBBox ( gk , igdwhe , ignmt ); 1038  gt = dagh_timedex ( time , v ); 1039  gl = v ; 1040 Ty god = (Type) 1; 1041  gi ; 1042  gi =0; i< gngth ; i++) { 1043 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 1044 god *( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). odu ( 1045 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 1046 #ifde ACEVeGridFuni 1047 , m 1052 #ifde ACE_NO_MPI 1054 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1057  me = comm_rvi :: oc_me (); 1058  gnum = comm_rvi :: oc_num (); 1060  gR ; 1061  gsize = ( Ty ); 1062 * gvues = (* w [ size * num ]; 1064 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 1065 comm_rvi :: comm ( gfid )); 1066 i gMPI_SUCCESS ! R ) 1067 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 1069 #ifde DEBUG_PRINT_GF_COMM 1070 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 1072 << size 1074 << dl ). ush (); 1077 god = ( Ty ) 1; 1078  gi =0;i< gnum ;i++) 1079 god **(( Ty *) vues + i ); 1081 i( gvues gde [] values; 1085  ( god ); 1091 gme < ass gTy > 1092 Ty GridFuni (1)< gTy >:: GF_nm2 (cڡ  time , 1093 cڡ  v , 1094 #ifde ACEVeGridFuni 1095 cڡ  m , 1097 cڡ  idt ) 1099 #ifde ACEVeGridFuni 1100 as ( m >0 && itm < nems ); 1102  gt = dagh_timedex ( time , v ); 1103  gl = v ; 1104 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1105  gt = 0, gc = 0; 1106  gi ; 1107  gi =0; i< gngth ; i++) { 1108 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1109 ( ggdb [ t ][ l ][ i ]-> gridda ( idt )). sumsqrd ( gdb [t][l][i]-> ribox (idt), s , c 1110 #ifde ACEVeGridFuni 1111 , m 1114 gsumsqrd + s ; 1115 gt + c ; 1119 #ifde ACE_NO_MPI 1121 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1124  me = comm_rvi :: oc_me (); 1125  gnum = comm_rvi :: oc_num (); 1127  gR ; 1128  gsize = 2*( Ty ); 1129 * gvues = (* w [ size * num ]; 1131 * gdbuf = (* w [ size ]; 1132 *(( gTy * gdbuf sumsqrd ; 1133 *((*(( gTy *) gdbuf +1) t ; 1135 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1136 comm_rvi :: comm ( gfid )); 1137 i gMPI_SUCCESS ! R ) 1138 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1140 #ifde DEBUG_PRINT_GF_COMM 1141 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1143 << size 1145 << dl ). ush (); 1148 gsumsqrd = ( Ty ) 0; 1149 gt = 0; 1150  gi =0;i< gnum ;i++) { 1151 gsumsqrd +*(( Ty *) vues + 2* i ); 1152 gt +*((*)(( Ty *) vues + 2* i +1)); 1155 i( gvues gde [] values; 1156 i( gdbuf gde [] sndbuf; 1160  (( gTy ) sq (((1.0* sumsqrd / t ))); 1163 gme < ass gTy > 1164 Ty GridFuni (1)< gTy >:: GF_nm2 (cڡ  time , 1165 cڡ  v , 1166 #ifde ACEVeGridFuni 1167 cڡ  m , 1169 cڡ BBox & whe , 1170 cڡ  idt ) 1172 #ifde ACEVeGridFuni 1173 as ( m >0 && itm < nems ); 1175 as ( whe . nk = dagh .rank); 1177 BBox gigdwhe = whe ; 1178 gdbAlignBBox ( gk , igdwhe , ignmt ); 1180  gt = dagh_timedex ( time , v ); 1181  gl = v ; 1182 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1183  gt = 0, gc = 0; 1184  gi ; 1185  gi =0; i< gngth ; i++) { 1186 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1187 ( ggdb [ t ][ l ][ i ]-> gridda ( idt )). sumsqrd ( 1188 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ), s , c 1189 #ifde ACEVeGridFuni 1190 , m 1193 gsumsqrd + s ; 1194 gt + c ; 1198 #ifde ACE_NO_MPI 1200 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1203  me = comm_rvi :: oc_me (); 1204  gnum = comm_rvi :: oc_num (); 1206  gR ; 1207  gsize = 2*( Ty ); 1208 * gvues = (* w [ size * num ]; 1210 * gdbuf = (* w [ size ]; 1211 *(( gTy * gdbuf sumsqrd ; 1212 *((*(( gTy *) gdbuf +1) t ; 1214 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1215 comm_rvi :: comm ( gfid )); 1216 i gMPI_SUCCESS ! R ) 1217 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1219 #ifde DEBUG_PRINT_GF_COMM 1220 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1222 << size 1224 << dl ). ush (); 1227 gsumsqrd = ( Ty ) 0; 1228 gt = 0; 1229  gi =0;i< gnum ;i++) { 1230 gsumsqrd +*(( Ty *) vues + 2* i ); 1231 gt +*((*)(( Ty *) vues + 2* i +1)); 1234 i( gvues gde [] values; 1235 i( gdbuf gde [] sndbuf; 1239  (( gTy ) sq (((1.0* sumsqrd / t ))); 1242 gme < ass gTy > 1243 Ty GridFuni (1)< gTy >:: GF_nm2 (cڡ  time , 1244 cڡ  v , 1245 #ifde ACEVeGridFuni 1246 cڡ  m , 1248 cڡ  mgl , 1249 cڡ  idt ) 1251 #ifde ACEVeGridFuni 1252 as ( m >0 && itm < nems ); 1254  gt = dagh_timedex ( time , v ); 1255  gl = v ; 1256 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1257  gt = 0, gc = 0; 1258  gi ; 1259  gi =0; i< gngth ; i++) { 1260 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1261 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sumsqrd ( gdb [t][l][i]-> ribox (idt,mgl), s , c 1262 #ifde ACEVeGridFuni 1263 , m 1266 gsumsqrd + s ; 1267 gt + c ; 1271 #ifde ACE_NO_MPI 1273 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1276  me = comm_rvi :: oc_me (); 1277  gnum = comm_rvi :: oc_num (); 1279  gR ; 1280  gsize = 2*( Ty ); 1281 * gvues = (* w [ size * num ]; 1283 * gdbuf = (* w [ size ]; 1284 *(( gTy * gdbuf sumsqrd ; 1285 *((*(( gTy *) gdbuf +1) t ; 1287 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1288 comm_rvi :: comm ( gfid )); 1289 i gMPI_SUCCESS ! R ) 1290 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1292 #ifde DEBUG_PRINT_GF_COMM 1293 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1295 << size 1297 << dl ). ush (); 1300 gsumsqrd = ( Ty ) 0; 1301 gt = 0; 1302  gi =0;i< gnum ;i++) { 1303 gsumsqrd +*(( Ty *) vues + 2* i ); 1304 gt +*((*)(( Ty *) vues + 2* i +1)); 1307 i( gvues gde [] values; 1308 i( gdbuf gde [] sndbuf; 1312  (( gTy ) sq (((1.0* sumsqrd / t ))); 1315 gme < ass gTy > 1316 Ty GridFuni (1)< gTy >:: GF_nm2 (cڡ  time , 1317 cڡ  v , 1318 #ifde ACEVeGridFuni 1319 cڡ  m , 1321 cڡ  mgl , 1322 cڡ BBox & whe , 1323 cڡ  idt ) 1325 #ifde ACEVeGridFuni 1326 as ( m >0 && itm < nems ); 1328 as ( whe . nk = dagh .rank); 1330 BBox gigdwhe = whe ; 1331 gdbAlignBBox ( gk , igdwhe , ignmt ); 1333  gt = dagh_timedex ( time , v ); 1334  gl = v ; 1335 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1336  gt = 0, gc = 0; 1337  gi ; 1338  gi =0; i< gngth ; i++) { 1339 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1340 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sumsqrd ( 1341 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ), s , c 1342 #ifde ACEVeGridFuni 1343 , m 1346 gsumsqrd + s ; 1347 gt + c ; 1351 #ifde ACE_NO_MPI 1353 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1356  me = comm_rvi :: oc_me (); 1357  gnum = comm_rvi :: oc_num (); 1359  gR ; 1360  gsize = 2*( Ty ); 1361 * gvues = (* w [ size * num ]; 1363 * gdbuf = (* w [ size ]; 1364 *(( gTy * gdbuf sumsqrd ; 1365 *((*(( gTy *) gdbuf +1) t ; 1367 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1368 comm_rvi :: comm ( gfid )); 1369 i gMPI_SUCCESS ! R ) 1370 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1372 #ifde DEBUG_PRINT_GF_COMM 1373 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1375 << size 1377 << dl ). ush (); 1380 gsumsqrd = ( Ty ) 0; 1381 gt = 0; 1382  gi =0;i< gnum ;i++) { 1383 gsumsqrd +*(( Ty *) vues + 2* i ); 1384 gt +*((*)(( Ty *) vues + 2* i +1)); 1387 i( gvues gde [] values; 1388 i( gdbuf gde [] sndbuf; 1392  (( gTy ) sq (((1.0* sumsqrd / t ))); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOpsRed2.h 1 #ide _uded_GridFuniOpsRed2_h 2  #_uded_GridFuniOpsRed2_h ) 17 gme < ass gTy > 18 Ty GridFuni (2)< gTy >:: GF_maxv (cڡ  time , 19 cڡ  v , 20 #ifde ACEVeGridFuni 21 cڡ  m , 23 cڡ  idt ) 25 #ifde ACEVeGridFuni 26 as ( m >0 && itm < nems ); 28  gt = dagh_timedex ( time , v ); 29  gl = v ; 30 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 31  gi ; 32  gag = ACETrue ; 33  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 34 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). maxv (gdb[t][l][i]-> ribox (ident) 35 #ifde ACEVeGridFuni 36 , m 39 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 40 i( gmaxv < gtmax maxv = tmax ; 41 gtmax = ( Ty ACESml ; 44 #ifde ACE_NO_MPI 46 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 48  me = comm_rvi :: oc_me (); 49  gnum = comm_rvi :: oc_num (); 51  gR ; 52  gsize = ( Ty ); 53 * gvues = (* w [ size * num ]; 55 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 56 comm_rvi :: comm ( gfid )); 57 i gMPI_SUCCESS ! R ) 58 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 60 #ifde DEBUG_PRINT_GF_COMM 61 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 63 << size 65 << dl ). ush (); 68 gmaxv = ( Ty ACESml ; 69 gag = ACETrue ; 70  gi =0;i< gnum ;i++) { 71 gtmax = *(( Ty *) vues + i ); 72 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 73 i( gmaxv < gtmax maxv = tmax ; 75 i( gvues gde [] values; 79  ( gmaxv ); 82 gme < ass gTy > 83 Ty GridFuni (2)< gTy >:: GF_maxv (cڡ  time , 84 cڡ  v , 85 #ifde ACEVeGridFuni 86 cڡ  m , 88 cڡ BBox & whe , 89 cڡ  idt ) 91 #ifde ACEVeGridFuni 92 as ( m >0 && itm < nems ); 94 as ( whe . nk = dagh .rank); 96 BBox gigdwhe = whe ; 97 gdbAlignBBox ( gk , igdwhe , ignmt ); 99  gt = dagh_timedex ( time , v ); 100  gl = v ; 101 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 102  gi ; 103  gag = ACETrue ; 104  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 105 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). maxv ( 106 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 107 #ifde ACEVeGridFuni 108 , m 111 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 112 i( gmaxv < gtmax maxv = tmax ; 113 gtmax = ( Ty ACESml ; 116 #ifde ACE_NO_MPI 118 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 120  me = comm_rvi :: oc_me (); 121  gnum = comm_rvi :: oc_num (); 123  gR ; 124  gsize = ( Ty ); 125 * gvues = (* w [ size * num ]; 127 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 128 comm_rvi :: comm ( gfid )); 129 i gMPI_SUCCESS ! R ) 130 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 132 #ifde DEBUG_PRINT_GF_COMM 133 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 135 << size 137 << dl ). ush (); 140 gmaxv = ( Ty ACESml ; 141 gag = ACETrue ; 142  gi =0;i< gnum ;i++) { 143 gtmax = *(( Ty *) vues + i ); 144 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 145 i( gmaxv < gtmax maxv = tmax ; 147 i( gvues gde [] values; 151  ( gmaxv ); 154 gme < ass gTy > 155 Ty GridFuni (2)< gTy >:: GF_maxv (cڡ  time , 156 cڡ  v , 157 #ifde ACEVeGridFuni 158 cڡ  m , 160 cڡ  mgl , 161 cڡ  idt ) 163 #ifde ACEVeGridFuni 164 as ( m >0 && itm < nems ); 166  gt = dagh_timedex ( time , v ); 167  gl = v ; 168 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 169  gi ; 170  gag ACETrue ; 171  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 172 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). maxv (gdb[t][l][i]-> ribox (ident,mgl) 173 #ifde ACEVeGridFuni 174 , m 177 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 178 i( gmaxv < gtmax maxv = tmax ; 179 gtmax = ( Ty ACESml ; 182 #ifde ACE_NO_MPI 184 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 186  me = comm_rvi :: oc_me (); 187  gnum = comm_rvi :: oc_num (); 189  gR ; 190  gsize = ( Ty ); 191 * gvues = (* w [ size * num ]; 193 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 194 comm_rvi :: comm ( gfid )); 195 i gMPI_SUCCESS ! R ) 196 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 198 #ifde DEBUG_PRINT_GF_COMM 199 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 201 << size 203 << dl ). ush (); 206 gmaxv = ( Ty ACESml ; 207 gag = ACETrue ; 208  gi =0;i< gnum ;i++) { 209 gtmax = *(( Ty *) vues + i ); 210 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 211 i( gmaxv < gtmax maxv = tmax ; 213 i( gvues gde [] values; 217  ( gmaxv ); 220 gme < ass gTy > 221 Ty GridFuni (2)< gTy >:: GF_maxv (cڡ  time , 222 cڡ  v , 223 #ifde ACEVeGridFuni 224 cڡ  m , 226 cڡ  mgl , 227 cڡ BBox & whe , 228 cڡ  idt ) 230 #ifde ACEVeGridFuni 231 as ( m >0 && itm < nems ); 233 as ( whe . nk = dagh .rank); 235 BBox gigdwhe = whe ; 236 gdbAlignBBox ( gk , igdwhe , ignmt ); 238  gt = dagh_timedex ( time , v ); 239  gl = v ; 240 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 241  gi ; 242  gag = ACETrue ; 243  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 244 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). maxv ( 245 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 246 #ifde ACEVeGridFuni 247 , m 250 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 251 i( gmaxv < gtmax maxv = tmax ; 252 gtmax = ( Ty ACESml ; 255 #ifde ACE_NO_MPI 257 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 259  me = comm_rvi :: oc_me (); 260  gnum = comm_rvi :: oc_num (); 262  gR ; 263  gsize = ( Ty ); 264 * gvues = (* w [ size * num ]; 266 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 267 comm_rvi :: comm ( gfid )); 268 i gMPI_SUCCESS ! R ) 269 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 271 #ifde DEBUG_PRINT_GF_COMM 272 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 274 << size 276 << dl ). ush (); 279 gmaxv = ( Ty ACESml ; 280 gag = ACETrue ; 281  gi =0;i< gnum ;i++) { 282 gtmax = *(( Ty *) vues + i ); 283 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 284 i( gmaxv < gtmax maxv = tmax ; 286 i( gvues gde [] values; 290  ( gmaxv ); 296 gme < ass gTy > 297 Ty GridFuni (2)< gTy >:: GF_mv (cڡ  time , 298 cڡ  v , 299 #ifde ACEVeGridFuni 300 cڡ  m , 302 cڡ  idt ) 304 #ifde ACEVeGridFuni 305 as ( m >0 && itm < nems ); 307  gt = dagh_timedex ( time , v ); 308  gl = v ; 309 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 310  gi ; 311  gag = ACETrue ; 312  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 313 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). mv (gdb[t][l][i]-> ribox (ident) 314 #ifde ACEVeGridFuni 315 , m 318 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 319 i( gmv > gtm mv = tm ; 320 gtm = MAXLIM ( Ty ); 323 #ifde ACE_NO_MPI 325 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 327  me = comm_rvi :: oc_me (); 328  gnum = comm_rvi :: oc_num (); 330  gR ; 331  gsize = ( Ty ); 332 * gvues = (* w [ size * num ]; 334 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 335 comm_rvi :: comm ( gfid )); 336 i gMPI_SUCCESS ! R ) 337 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 339 #ifde DEBUG_PRINT_GF_COMM 340 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 342 << size 344 << dl ). ush (); 347 gmv = MAXLIM ( Ty ); 348 gag = ACETrue ; 349  gi =0;i< gnum ;i++) { 350 gtm = *(( Ty *) vues + i ); 351 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 352 i( gmv > gtm mv = tm ; 354 i( gvues gde [] values; 358  ( gmv ); 361 gme < ass gTy > 362 Ty GridFuni (2)< gTy >:: GF_mv (cڡ  time , 363 cڡ  v , 364 #ifde ACEVeGridFuni 365 cڡ  m , 367 cڡ BBox & whe , 368 cڡ  idt ) 370 #ifde ACEVeGridFuni 371 as ( m >0 && itm < nems ); 373 as ( whe . nk = dagh .rank); 375 BBox gigdwhe = whe ; 376 gdbAlignBBox ( gk , igdwhe , ignmt ); 378  gt = dagh_timedex ( time , v ); 379  gl = v ; 380 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 381  gi ; 382  gag = ACETrue ; 383  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 384 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). mv ( 385 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 386 #ifde ACEVeGridFuni 387 , m 390 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 391 i( gmv > gtm mv = tm ; 392 gtm = MAXLIM ( Ty ); 395 #ifde ACE_NO_MPI 398 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 400  me = comm_rvi :: oc_me (); 401  gnum = comm_rvi :: oc_num (); 403  gR ; 404  gsize = ( Ty ); 405 * gvues = (* w [ size * num ]; 407 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 408 comm_rvi :: comm ( gfid )); 409 i gMPI_SUCCESS ! R ) 410 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 412 #ifde DEBUG_PRINT_GF_COMM 413 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 415 << size 417 << dl ). ush (); 420 gmv = MAXLIM ( Ty ); 421 gag = ACETrue ; 422  gi =0;i< gnum ;i++) { 423 gtm = *(( Ty *) vues + i ); 424 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 425 i( gmv > gtm mv = tm ; 427 i( gvues gde [] values; 431  ( gmv ); 434 gme < ass gTy > 435 Ty GridFuni (2)< gTy >:: GF_mv (cڡ  time , 436 cڡ  v , 437 #ifde ACEVeGridFuni 438 cڡ  m , 440 cڡ  mgl , 441 cڡ  idt ) 443 #ifde ACEVeGridFuni 444 as ( m >0 && itm < nems ); 446  gt = dagh_timedex ( time , v ); 447  gl = v ; 448 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 449  gi ; 450  gag = ACETrue ; 451  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 452 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). mv (gdb[t][l][i]-> ribox (ident,mgl) 453 #ifde ACEVeGridFuni 454 , m 457 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 458 i( gmv > gtm mv = tm ; 459 gtm = MAXLIM ( Ty ); 462 #ifde ACE_NO_MPI 464 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 466  me = comm_rvi :: oc_me (); 467  gnum = comm_rvi :: oc_num (); 469  gR ; 470  gsize = ( Ty ); 471 * gvues = (* w [ size * num ]; 473 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 474 comm_rvi :: comm ( gfid )); 475 i gMPI_SUCCESS ! R ) 476 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 478 #ifde DEBUG_PRINT_GF_COMM 479 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 481 << size 483 << dl ). ush (); 486 gmv = MAXLIM ( Ty ); 487 gag = ACETrue ; 488  gi =0;i< gnum ;i++) { 489 gtm = *(( Ty *) vues + i ); 490 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 491 i( gmv > gtm mv = tm ; 493 i( gvues gde [] values; 497  ( gmv ); 500 gme < ass gTy > 501 Ty GridFuni (2)< gTy >:: GF_mv (cڡ  time , 502 cڡ  v , 503 #ifde ACEVeGridFuni 504 cڡ  m , 506 cڡ  mgl , 507 cڡ BBox & whe , 508 cڡ  idt ) 510 #ifde ACEVeGridFuni 511 as ( m >0 && itm < nems ); 513 as ( whe . nk = dagh .rank); 515 BBox gigdwhe = whe ; 516 gdbAlignBBox ( gk , igdwhe , ignmt ); 518  gt = dagh_timedex ( time , v ); 519  gl = v ; 520 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 521  gi ; 522  gag = ACETrue ; 523  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 524 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). mv ( 525 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 526 #ifde ACEVeGridFuni 527 , m 530 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 531 i( gmv > gtm mv = tm ; 532 gtm = MAXLIM ( Ty ); 535 #ifde ACE_NO_MPI 537 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 540  me = comm_rvi :: oc_me (); 541  gnum = comm_rvi :: oc_num (); 543  gR ; 544  gsize = ( Ty ); 545 * gvues = (* w [ size * num ]; 547 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 548 comm_rvi :: comm ( gfid )); 549 i gMPI_SUCCESS ! R ) 550 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 552 #ifde DEBUG_PRINT_GF_COMM 553 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 555 << size 557 << dl ). ush (); 560 gmv = MAXLIM ( Ty ); 561 gag = ACETrue ; 562  gi =0;i< gnum ;i++) { 563 gtm = *(( Ty *) vues + i ); 564 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 565 i( gmv > gtm mv = tm ; 567 i( gvues gde [] values; 571  ( gmv ); 577 gme < ass gTy > 578 Ty GridFuni (2)< gTy >:: GF_sum (cڡ  time , 579 cڡ  v , 580 #ifde ACEVeGridFuni 581 cڡ  m , 583 cڡ  idt ) 585 #ifde ACEVeGridFuni 586 as ( m >0 && itm < nems ); 588  gt = dagh_timedex ( time , v ); 589  gl = v ; 590 Ty gsum = (Type) 0; 591  gi ; 592  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 593 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt )). sum (gdb[t][l][i]-> ribox (ident) 594 #ifde ACEVeGridFuni 595 , m 600 #ifde ACE_NO_MPI 602 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 605  me = comm_rvi :: oc_me (); 606  gnum = comm_rvi :: oc_num (); 608  gR ; 609  gsize = ( Ty ); 610 * gvues = (* w [ size * num ]; 612 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 613 comm_rvi :: comm ( gfid )); 614 i gMPI_SUCCESS ! R ) 615 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 617 #ifde DEBUG_PRINT_GF_COMM 618 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 620 << size 622 << dl ). ush (); 625 gsum = ( Ty ) 0; 626  gi =0;i< gnum ;i++) 627 gsum +*(( Ty *) vues + i ); 629 i( gvues gde [] values; 633  ( gsum ); 636 gme < ass gTy > 637 Ty GridFuni (2)< gTy >:: GF_sum (cڡ  time , 638 cڡ  v , 639 #ifde ACEVeGridFuni 640 cڡ  m , 642 cڡ BBox & whe , 643 cڡ  idt ) 645 #ifde ACEVeGridFuni 646 as ( m >0 && itm < nems ); 648 as ( whe . nk = dagh .rank); 650 BBox gigdwhe = whe ; 651 gdbAlignBBox ( gk , igdwhe , ignmt ); 653  gt = dagh_timedex ( time , v ); 654  gl = v ; 655 Ty gsum = (Type) 0; 656  gi ; 657  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 658 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt )). sum ( 659 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 660 #ifde ACEVeGridFuni 661 , m 666 #ifde ACE_NO_MPI 668 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 671  me = comm_rvi :: oc_me (); 672  gnum = comm_rvi :: oc_num (); 674  gR ; 675  gsize = ( Ty ); 676 * gvues = (* w [ size * num ]; 678 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 679 comm_rvi :: comm ( gfid )); 680 i gMPI_SUCCESS ! R ) 681 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 683 #ifde DEBUG_PRINT_GF_COMM 684 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 686 << size 688 << dl ). ush (); 691 gsum = ( Ty ) 0; 692  gi =0;i< gnum ;i++) 693 gsum +*(( Ty *) vues + i ); 695 i( gvues gde [] values; 699  ( gsum ); 702 gme < ass gTy > 703 Ty GridFuni (2)< gTy >:: GF_sum (cڡ  time , 704 cڡ  v , 705 #ifde ACEVeGridFuni 706 cڡ  m , 708 cڡ  mgl , 709 cڡ  idt ) 711 #ifde ACEVeGridFuni 712 as ( m >0 && itm < nems ); 714  gt = dagh_timedex ( time , v ); 715  gl = v ; 716 Ty gsum = (Type) 0; 717  gi ; 718  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 719 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sum (gdb[t][l][i]-> ribox (ident,mgl) 720 #ifde ACEVeGridFuni 721 , m 726 #ifde ACE_NO_MPI 728 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 731  me = comm_rvi :: oc_me (); 732  gnum = comm_rvi :: oc_num (); 734  gR ; 735  gsize = ( Ty ); 736 * gvues = (* w [ size * num ]; 738 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 739 comm_rvi :: comm ( gfid )); 740 i gMPI_SUCCESS ! R ) 741 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 743 #ifde DEBUG_PRINT_GF_COMM 744 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 746 << size 748 << dl ). ush (); 751 gsum = ( Ty ) 0; 752  gi =0;i< gnum ;i++) 753 gsum +*(( Ty *) vues + i ); 755 i( gvues gde [] values; 759  ( gsum ); 762 gme < ass gTy > 763 Ty GridFuni (2)< gTy >:: GF_sum (cڡ  time , 764 cڡ  v , 765 #ifde ACEVeGridFuni 766 cڡ  m , 768 cڡ  mgl , 769 cڡ BBox & whe , 770 cڡ  idt ) 772 #ifde ACEVeGridFuni 773 as ( m >0 && itm < nems ); 775 as ( whe . nk = dagh .rank); 777 BBox gigdwhe = whe ; 778 gdbAlignBBox ( gk , igdwhe , ignmt ); 780  gt = dagh_timedex ( time , v ); 781  gl = v ; 782 Ty gsum = (Type) 0; 783  gi ; 784  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 785 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sum ( 786 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 787 #ifde ACEVeGridFuni 788 , m 793 #ifde ACE_NO_MPI 795 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 798  me = comm_rvi :: oc_me (); 799  gnum = comm_rvi :: oc_num (); 801  gR ; 802  gsize = ( Ty ); 803 * gvues = (* w [ size * num ]; 805 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 806 comm_rvi :: comm ( gfid )); 807 i gMPI_SUCCESS ! R ) 808 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 810 #ifde DEBUG_PRINT_GF_COMM 811 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 813 << size 815 << dl ). ush (); 818 gsum = ( Ty ) 0; 819  gi =0;i< gnum ;i++) 820 gsum +*(( Ty *) vues + i ); 822 i( gvues gde [] values; 826  ( gsum ); 832 gme < ass gTy > 833 Ty GridFuni (2)< gTy >:: GF_odu (cڡ  time , 834 cڡ  v , 835 #ifde ACEVeGridFuni 836 cڡ  m , 838 cڡ  idt ) 840 #ifde ACEVeGridFuni 841 as ( m >0 && itm < nems ); 843  gt = dagh_timedex ( time , v ); 844  gl = v ; 845 Ty god = (Type) 1; 846  gi ; 847  gi =0; i< gngth ; i++) { 848 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 849 god *( gdb [ t ][ l ][ i ]-> gridda ( idt )). odu (gdb[t][l][i]-> ribox (ident) 850 #ifde ACEVeGridFuni 851 , m 856 #ifde ACE_NO_MPI 858 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 861  me = comm_rvi :: oc_me (); 862  gnum = comm_rvi :: oc_num (); 864  gR ; 865  gsize = ( Ty ); 866 * gvues = (* w [ size * num ]; 868 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 869 comm_rvi :: comm ( gfid )); 870 i gMPI_SUCCESS ! R ) 871 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 873 #ifde DEBUG_PRINT_GF_COMM 874 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 876 << size 878 << dl ). ush (); 881 god = ( Ty ) 1; 882  gi =0;i< gnum ;i++) 883 god **(( Ty *) vues + i ); 885 i( gvues gde [] values; 889  ( god ); 892 gme < ass gTy > 893 Ty GridFuni (2)< gTy >:: GF_odu (cڡ  time , 894 cڡ  v , 895 #ifde ACEVeGridFuni 896 cڡ  m , 898 cڡ BBox & whe , 899 cڡ  idt ) 901 #ifde ACEVeGridFuni 902 as ( m >0 && itm < nems ); 904 as ( whe . nk = dagh .rank); 906 BBox gigdwhe = whe ; 907 gdbAlignBBox ( gk , igdwhe , ignmt ); 909  gt = dagh_timedex ( time , v ); 910  gl = v ; 911 Ty god = (Type) 1; 912  gi ; 913  gi =0; i< gngth ; i++) { 914 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 915 god *( gdb [ t ][ l ][ i ]-> gridda ( idt )). odu ( 916 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 917 #ifde ACEVeGridFuni 918 , m 923 #ifde ACE_NO_MPI 925 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 928  me = comm_rvi :: oc_me (); 929  gnum = comm_rvi :: oc_num (); 931  gR ; 932  gsize = ( Ty ); 933 * gvues = (* w [ size * num ]; 935 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 936 comm_rvi :: comm ( gfid )); 937 i gMPI_SUCCESS ! R ) 938 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 940 #ifde DEBUG_PRINT_GF_COMM 941 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 943 << size 945 << dl ). ush (); 948 god = ( Ty ) 1; 949  gi =0;i< gnum ;i++) 950 god **(( Ty *) vues + i ); 952 i( gvues gde [] values; 956  ( god ); 959 gme < ass gTy > 960 Ty GridFuni (2)< gTy >:: GF_odu (cڡ  time , 961 cڡ  v , 962 #ifde ACEVeGridFuni 963 cڡ  m , 965 cڡ  mgl , 966 cڡ  idt ) 968 #ifde ACEVeGridFuni 969 as ( m >0 && itm < nems ); 971  gt = dagh_timedex ( time , v ); 972  gl = v ; 973 Ty god = (Type) 1; 974  gi ; 975  gi =0; i< gngth ; i++) { 976 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 977 god *( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). odu (gdb[t][l][i]-> ribox (ident,mgl) 978 #ifde ACEVeGridFuni 979 , m 984 #ifde ACE_NO_MPI 986 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 989  me = comm_rvi :: oc_me (); 990  gnum = comm_rvi :: oc_num (); 992  gR ; 993  gsize = ( Ty ); 994 * gvues = (* w [ size * num ]; 996 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 997 comm_rvi :: comm ( gfid )); 998 i gMPI_SUCCESS ! R ) 999 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 1001 #ifde DEBUG_PRINT_GF_COMM 1002 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 1004 << size 1006 << dl ). ush (); 1009 god = ( Ty ) 1; 1010  gi =0;i< gnum ;i++) 1011 god **(( Ty *) vues + i ); 1013 i( gvues gde [] values; 1017  ( god ); 1020 gme < ass gTy > 1021 Ty GridFuni (2)< gTy >:: GF_odu (cڡ  time , 1022 cڡ  v , 1023 #ifde ACEVeGridFuni 1024 cڡ  m , 1026 cڡ  mgl , 1027 cڡ BBox & whe , 1028 cڡ  idt ) 1030 #ifde ACEVeGridFuni 1031 as ( m >0 && itm < nems ); 1033 as ( whe . nk = dagh .rank); 1035 BBox gigdwhe = whe ; 1036 gdbAlignBBox ( gk , igdwhe , ignmt ); 1038  gt = dagh_timedex ( time , v ); 1039  gl = v ; 1040 Ty god = (Type) 1; 1041  gi ; 1042  gi =0; i< gngth ; i++) { 1043 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 1044 god *( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). odu ( 1045 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 1046 #ifde ACEVeGridFuni 1047 , m 1052 #ifde ACE_NO_MPI 1054 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1057  me = comm_rvi :: oc_me (); 1058  gnum = comm_rvi :: oc_num (); 1060  gR ; 1061  gsize = ( Ty ); 1062 * gvues = (* w [ size * num ]; 1064 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 1065 comm_rvi :: comm ( gfid )); 1066 i gMPI_SUCCESS ! R ) 1067 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 1069 #ifde DEBUG_PRINT_GF_COMM 1070 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 1072 << size 1074 << dl ). ush (); 1077 god = ( Ty ) 1; 1078  gi =0;i< gnum ;i++) 1079 god **(( Ty *) vues + i ); 1081 i( gvues gde [] values; 1085  ( god ); 1091 gme < ass gTy > 1092 Ty GridFuni (2)< gTy >:: GF_nm2 (cڡ  time , 1093 cڡ  v , 1094 #ifde ACEVeGridFuni 1095 cڡ  m , 1097 cڡ  idt ) 1099 #ifde ACEVeGridFuni 1100 as ( m >0 && itm < nems ); 1102  gt = dagh_timedex ( time , v ); 1103  gl = v ; 1104 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1105  gt = 0, gc = 0; 1106  gi ; 1107  gi =0; i< gngth ; i++) { 1108 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1109 ( ggdb [ t ][ l ][ i ]-> gridda ( idt )). sumsqrd ( gdb [t][l][i]-> ribox (idt), s , c 1110 #ifde ACEVeGridFuni 1111 , m 1114 gsumsqrd + s ; 1115 gt + c ; 1119 #ifde ACE_NO_MPI 1121 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1124  me = comm_rvi :: oc_me (); 1125  gnum = comm_rvi :: oc_num (); 1127  gR ; 1128  gsize = 2*( Ty ); 1129 * gvues = (* w [ size * num ]; 1131 * gdbuf = (* w [ size ]; 1132 *(( gTy * gdbuf sumsqrd ; 1133 *((*(( gTy *) gdbuf +1) t ; 1135 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1136 comm_rvi :: comm ( gfid )); 1137 i gMPI_SUCCESS ! R ) 1138 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1140 #ifde DEBUG_PRINT_GF_COMM 1141 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1143 << size 1145 << dl ). ush (); 1148 gsumsqrd = ( Ty ) 0; 1149 gt = 0; 1150  gi =0;i< gnum ;i++) { 1151 gsumsqrd +*(( Ty *) vues + 2* i ); 1152 gt +*((*)(( Ty *) vues + 2* i +1)); 1155 i( gvues gde [] values; 1156 i( gdbuf gde [] sndbuf; 1160  (( gTy ) sq (((1.0* sumsqrd / t ))); 1163 gme < ass gTy > 1164 Ty GridFuni (2)< gTy >:: GF_nm2 (cڡ  time , 1165 cڡ  v , 1166 #ifde ACEVeGridFuni 1167 cڡ  m , 1169 cڡ BBox & whe , 1170 cڡ  idt ) 1172 #ifde ACEVeGridFuni 1173 as ( m >0 && itm < nems ); 1175 as ( whe . nk = dagh .rank); 1177 BBox gigdwhe = whe ; 1178 gdbAlignBBox ( gk , igdwhe , ignmt ); 1180  gt = dagh_timedex ( time , v ); 1181  gl = v ; 1182 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1183  gt = 0, gc = 0; 1184  gi ; 1185  gi =0; i< gngth ; i++) { 1186 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1187 ( ggdb [ t ][ l ][ i ]-> gridda ( idt )). sumsqrd ( 1188 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ), s , c 1189 #ifde ACEVeGridFuni 1190 , m 1193 gsumsqrd + s ; 1194 gt + c ; 1198 #ifde ACE_NO_MPI 1200 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1203  me = comm_rvi :: oc_me (); 1204  gnum = comm_rvi :: oc_num (); 1206  gR ; 1207  gsize = 2*( Ty ); 1208 * gvues = (* w [ size * num ]; 1210 * gdbuf = (* w [ size ]; 1211 *(( gTy * gdbuf sumsqrd ; 1212 *((*(( gTy *) gdbuf +1) t ; 1214 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1215 comm_rvi :: comm ( gfid )); 1216 i gMPI_SUCCESS ! R ) 1217 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1219 #ifde DEBUG_PRINT_GF_COMM 1220 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1222 << size 1224 << dl ). ush (); 1227 gsumsqrd = ( Ty ) 0; 1228 gt = 0; 1229  gi =0;i< gnum ;i++) { 1230 gsumsqrd +*(( Ty *) vues + 2* i ); 1231 gt +*((*)(( Ty *) vues + 2* i +1)); 1234 i( gvues gde [] values; 1235 i( gdbuf gde [] sndbuf; 1239  (( gTy ) sq (((1.0* sumsqrd / t ))); 1242 gme < ass gTy > 1243 Ty GridFuni (2)< gTy >:: GF_nm2 (cڡ  time , 1244 cڡ  v , 1245 #ifde ACEVeGridFuni 1246 cڡ  m , 1248 cڡ  mgl , 1249 cڡ  idt ) 1251 #ifde ACEVeGridFuni 1252 as ( m >0 && itm < nems ); 1254  gt = dagh_timedex ( time , v ); 1255  gl = v ; 1256 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1257  gt = 0, gc = 0; 1258  gi ; 1259  gi =0; i< gngth ; i++) { 1260 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1261 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sumsqrd ( gdb [t][l][i]-> ribox (idt,mgl), s , c 1262 #ifde ACEVeGridFuni 1263 , m 1266 gsumsqrd + s ; 1267 gt + c ; 1271 #ifde ACE_NO_MPI 1273 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1276  me = comm_rvi :: oc_me (); 1277  gnum = comm_rvi :: oc_num (); 1279  gR ; 1280  gsize = 2*( Ty ); 1281 * gvues = (* w [ size * num ]; 1283 * gdbuf = (* w [ size ]; 1284 *(( gTy * gdbuf sumsqrd ; 1285 *((*(( gTy *) gdbuf +1) t ; 1287 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1288 comm_rvi :: comm ( gfid )); 1289 i gMPI_SUCCESS ! R ) 1290 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1292 #ifde DEBUG_PRINT_GF_COMM 1293 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1295 << size 1297 << dl ). ush (); 1300 gsumsqrd = ( Ty ) 0; 1301 gt = 0; 1302  gi =0;i< gnum ;i++) { 1303 gsumsqrd +*(( Ty *) vues + 2* i ); 1304 gt +*((*)(( Ty *) vues + 2* i +1)); 1307 i( gvues gde [] values; 1308 i( gdbuf gde [] sndbuf; 1312  (( gTy ) sq (((1.0* sumsqrd / t ))); 1315 gme < ass gTy > 1316 Ty GridFuni (2)< gTy >:: GF_nm2 (cڡ  time , 1317 cڡ  v , 1318 #ifde ACEVeGridFuni 1319 cڡ  m , 1321 cڡ  mgl , 1322 cڡ BBox & whe , 1323 cڡ  idt ) 1325 #ifde ACEVeGridFuni 1326 as ( m >0 && itm < nems ); 1328 as ( whe . nk = dagh .rank); 1330 BBox gigdwhe = whe ; 1331 gdbAlignBBox ( gk , igdwhe , ignmt ); 1333  gt = dagh_timedex ( time , v ); 1334  gl = v ; 1335 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1336  gt = 0, gc = 0; 1337  gi ; 1338  gi =0; i< gngth ; i++) { 1339 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1340 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sumsqrd ( 1341 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ), s , c 1342 #ifde ACEVeGridFuni 1343 , m 1346 gsumsqrd + s ; 1347 gt + c ; 1351 #ifde ACE_NO_MPI 1353 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1356  me = comm_rvi :: oc_me (); 1357  gnum = comm_rvi :: oc_num (); 1359  gR ; 1360  gsize = 2*( Ty ); 1361 * gvues = (* w [ size * num ]; 1363 * gdbuf = (* w [ size ]; 1364 *(( gTy * gdbuf sumsqrd ; 1365 *((*(( gTy *) gdbuf +1) t ; 1367 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1368 comm_rvi :: comm ( gfid )); 1369 i gMPI_SUCCESS ! R ) 1370 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1372 #ifde DEBUG_PRINT_GF_COMM 1373 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1375 << size 1377 << dl ). ush (); 1380 gsumsqrd = ( Ty ) 0; 1381 gt = 0; 1382  gi =0;i< gnum ;i++) { 1383 gsumsqrd +*(( Ty *) vues + 2* i ); 1384 gt +*((*)(( Ty *) vues + 2* i +1)); 1387 i( gvues gde [] values; 1388 i( gdbuf gde [] sndbuf; 1392  (( gTy ) sq (((1.0* sumsqrd / t ))); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionOpsRed3.h 1 #ide _uded_GridFuniOpsRed3_h 2  #_uded_GridFuniOpsRed3_h ) 17 gme < ass gTy > 18 Ty GridFuni (3)< gTy >:: GF_maxv (cڡ  time , 19 cڡ  v , 20 #ifde ACEVeGridFuni 21 cڡ  m , 23 cڡ  idt ) 25 #ifde ACEVeGridFuni 26 as ( m >0 && itm < nems ); 28  gt = dagh_timedex ( time , v ); 29  gl = v ; 30 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 31  gi ; 32  gag = ACETrue ; 33  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 34 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). maxv (gdb[t][l][i]-> ribox (ident) 35 #ifde ACEVeGridFuni 36 , m 39 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 40 i( gmaxv < gtmax maxv = tmax ; 41 gtmax = ( Ty ACESml ; 44 #ifde ACE_NO_MPI 46 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 48  me = comm_rvi :: oc_me (); 49  gnum = comm_rvi :: oc_num (); 51  gR ; 52  gsize = ( Ty ); 53 * gvues = (* w [ size * num ]; 55 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 56 comm_rvi :: comm ( gfid )); 57 i gMPI_SUCCESS ! R ) 58 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 60 #ifde DEBUG_PRINT_GF_COMM 61 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 63 << size 65 << dl ). ush (); 68 gmaxv = ( Ty ACESml ; 69 gag = ACETrue ; 70  gi =0;i< gnum ;i++) { 71 gtmax = *(( Ty *) vues + i ); 72 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 73 i( gmaxv < gtmax maxv = tmax ; 75 i( gvues gde [] values; 79  ( gmaxv ); 82 gme < ass gTy > 83 Ty GridFuni (3)< gTy >:: GF_maxv (cڡ  time , 84 cڡ  v , 85 #ifde ACEVeGridFuni 86 cڡ  m , 88 cڡ BBox & whe , 89 cڡ  idt ) 91 #ifde ACEVeGridFuni 92 as ( m >0 && itm < nems ); 94 as ( whe . nk = dagh .rank); 96 BBox gigdwhe = whe ; 97 gdbAlignBBox ( gk , igdwhe , ignmt ); 99  gt = dagh_timedex ( time , v ); 100  gl = v ; 101 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 102  gi ; 103  gag = ACETrue ; 104  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 105 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). maxv ( 106 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 107 #ifde ACEVeGridFuni 108 , m 111 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 112 i( gmaxv < gtmax maxv = tmax ; 113 gtmax = ( Ty ACESml ; 116 #ifde ACE_NO_MPI 118 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 120  me = comm_rvi :: oc_me (); 121  gnum = comm_rvi :: oc_num (); 123  gR ; 124  gsize = ( Ty ); 125 * gvues = (* w [ size * num ]; 127 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 128 comm_rvi :: comm ( gfid )); 129 i gMPI_SUCCESS ! R ) 130 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 132 #ifde DEBUG_PRINT_GF_COMM 133 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 135 << size 137 << dl ). ush (); 140 gmaxv = ( Ty ACESml ; 141 gag = ACETrue ; 142  gi =0;i< gnum ;i++) { 143 gtmax = *(( Ty *) vues + i ); 144 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 145 i( gmaxv < gtmax maxv = tmax ; 147 i( gvues gde [] values; 151  ( gmaxv ); 154 gme < ass gTy > 155 Ty GridFuni (3)< gTy >:: GF_maxv (cڡ  time , 156 cڡ  v , 157 #ifde ACEVeGridFuni 158 cڡ  m , 160 cڡ  mgl , 161 cڡ  idt ) 163 #ifde ACEVeGridFuni 164 as ( m >0 && itm < nems ); 166  gt = dagh_timedex ( time , v ); 167  gl = v ; 168 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 169  gi ; 170  gag ACETrue ; 171  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 172 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). maxv (gdb[t][l][i]-> ribox (ident,mgl) 173 #ifde ACEVeGridFuni 174 , m 177 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 178 i( gmaxv < gtmax maxv = tmax ; 179 gtmax = ( Ty ACESml ; 182 #ifde ACE_NO_MPI 184 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 186  me = comm_rvi :: oc_me (); 187  gnum = comm_rvi :: oc_num (); 189  gR ; 190  gsize = ( Ty ); 191 * gvues = (* w [ size * num ]; 193 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 194 comm_rvi :: comm ( gfid )); 195 i gMPI_SUCCESS ! R ) 196 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 198 #ifde DEBUG_PRINT_GF_COMM 199 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 201 << size 203 << dl ). ush (); 206 gmaxv = ( Ty ACESml ; 207 gag = ACETrue ; 208  gi =0;i< gnum ;i++) { 209 gtmax = *(( Ty *) vues + i ); 210 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 211 i( gmaxv < gtmax maxv = tmax ; 213 i( gvues gde [] values; 217  ( gmaxv ); 220 gme < ass gTy > 221 Ty GridFuni (3)< gTy >:: GF_maxv (cڡ  time , 222 cڡ  v , 223 #ifde ACEVeGridFuni 224 cڡ  m , 226 cڡ  mgl , 227 cڡ BBox & whe , 228 cڡ  idt ) 230 #ifde ACEVeGridFuni 231 as ( m >0 && itm < nems ); 233 as ( whe . nk = dagh .rank); 235 BBox gigdwhe = whe ; 236 gdbAlignBBox ( gk , igdwhe , ignmt ); 238  gt = dagh_timedex ( time , v ); 239  gl = v ; 240 Ty gmaxv = (Ty ACESml , gtmax = (Type) ACESmall; 241  gi ; 242  gag = ACETrue ; 243  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 244 gtmax = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). maxv ( 245 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 246 #ifde ACEVeGridFuni 247 , m 250 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 251 i( gmaxv < gtmax maxv = tmax ; 252 gtmax = ( Ty ACESml ; 255 #ifde ACE_NO_MPI 257 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 259  me = comm_rvi :: oc_me (); 260  gnum = comm_rvi :: oc_num (); 262  gR ; 263  gsize = ( Ty ); 264 * gvues = (* w [ size * num ]; 266 gR = MPI_Agh (& maxv , size , MPI_BYTE , vues , size, MPI_BYTE, 267 comm_rvi :: comm ( gfid )); 268 i gMPI_SUCCESS ! R ) 269 comm_rvi :: r_d "GridFuni::GF_maxv", "MPI_Agh", R ); 271 #ifde DEBUG_PRINT_GF_COMM 272 gcomm_rvi :: log (<< "GridFuni::GF_maxv" << " " << comm_rvi :: oc_me () << " " 274 << size 276 << dl ). ush (); 279 gmaxv = ( Ty ACESml ; 280 gag = ACETrue ; 281  gi =0;i< gnum ;i++) { 282 gtmax = *(( Ty *) vues + i ); 283 i( gag = ACETrue { maxv = tmax ; fg = ACEF ; } 284 i( gmaxv < gtmax maxv = tmax ; 286 i( gvues gde [] values; 290  ( gmaxv ); 296 gme < ass gTy > 297 Ty GridFuni (3)< gTy >:: GF_mv (cڡ  time , 298 cڡ  v , 299 #ifde ACEVeGridFuni 300 cڡ  m , 302 cڡ  idt ) 304 #ifde ACEVeGridFuni 305 as ( m >0 && itm < nems ); 307  gt = dagh_timedex ( time , v ); 308  gl = v ; 309 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 310  gi ; 311  gag = ACETrue ; 312  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 313 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). mv (gdb[t][l][i]-> ribox (ident) 314 #ifde ACEVeGridFuni 315 , m 318 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 319 i( gmv > gtm mv = tm ; 320 gtm = MAXLIM ( Ty ); 323 #ifde ACE_NO_MPI 325 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 327  me = comm_rvi :: oc_me (); 328  gnum = comm_rvi :: oc_num (); 330  gR ; 331  gsize = ( Ty ); 332 * gvues = (* w [ size * num ]; 334 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 335 comm_rvi :: comm ( gfid )); 336 i gMPI_SUCCESS ! R ) 337 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 339 #ifde DEBUG_PRINT_GF_COMM 340 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 342 << size 344 << dl ). ush (); 347 gmv = MAXLIM ( Ty ); 348 gag = ACETrue ; 349  gi =0;i< gnum ;i++) { 350 gtm = *(( Ty *) vues + i ); 351 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 352 i( gmv > gtm mv = tm ; 354 i( gvues gde [] values; 358  ( gmv ); 361 gme < ass gTy > 362 Ty GridFuni (3)< gTy >:: GF_mv (cڡ  time , 363 cڡ  v , 364 #ifde ACEVeGridFuni 365 cڡ  m , 367 cڡ BBox & whe , 368 cڡ  idt ) 370 #ifde ACEVeGridFuni 371 as ( m >0 && itm < nems ); 373 as ( whe . nk = dagh .rank); 375 BBox gigdwhe = whe ; 376 gdbAlignBBox ( gk , igdwhe , ignmt ); 378  gt = dagh_timedex ( time , v ); 379  gl = v ; 380 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 381  gi ; 382  gag = ACETrue ; 383  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 384 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt )). mv ( 385 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 386 #ifde ACEVeGridFuni 387 , m 390 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 391 i( gmv > gtm mv = tm ; 392 gtm = MAXLIM ( Ty ); 395 #ifde ACE_NO_MPI 398 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 400  me = comm_rvi :: oc_me (); 401  gnum = comm_rvi :: oc_num (); 403  gR ; 404  gsize = ( Ty ); 405 * gvues = (* w [ size * num ]; 407 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 408 comm_rvi :: comm ( gfid )); 409 i gMPI_SUCCESS ! R ) 410 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 412 #ifde DEBUG_PRINT_GF_COMM 413 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 415 << size 417 << dl ). ush (); 420 gmv = MAXLIM ( Ty ); 421 gag = ACETrue ; 422  gi =0;i< gnum ;i++) { 423 gtm = *(( Ty *) vues + i ); 424 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 425 i( gmv > gtm mv = tm ; 427 i( gvues gde [] values; 431  ( gmv ); 434 gme < ass gTy > 435 Ty GridFuni (3)< gTy >:: GF_mv (cڡ  time , 436 cڡ  v , 437 #ifde ACEVeGridFuni 438 cڡ  m , 440 cڡ  mgl , 441 cڡ  idt ) 443 #ifde ACEVeGridFuni 444 as ( m >0 && itm < nems ); 446  gt = dagh_timedex ( time , v ); 447  gl = v ; 448 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 449  gi ; 450  gag = ACETrue ; 451  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 452 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). mv (gdb[t][l][i]-> ribox (ident,mgl) 453 #ifde ACEVeGridFuni 454 , m 457 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 458 i( gmv > gtm mv = tm ; 459 gtm = MAXLIM ( Ty ); 462 #ifde ACE_NO_MPI 464 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 466  me = comm_rvi :: oc_me (); 467  gnum = comm_rvi :: oc_num (); 469  gR ; 470  gsize = ( Ty ); 471 * gvues = (* w [ size * num ]; 473 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 474 comm_rvi :: comm ( gfid )); 475 i gMPI_SUCCESS ! R ) 476 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 478 #ifde DEBUG_PRINT_GF_COMM 479 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 481 << size 483 << dl ). ush (); 486 gmv = MAXLIM ( Ty ); 487 gag = ACETrue ; 488  gi =0;i< gnum ;i++) { 489 gtm = *(( Ty *) vues + i ); 490 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 491 i( gmv > gtm mv = tm ; 493 i( gvues gde [] values; 497  ( gmv ); 500 gme < ass gTy > 501 Ty GridFuni (3)< gTy >:: GF_mv (cڡ  time , 502 cڡ  v , 503 #ifde ACEVeGridFuni 504 cڡ  m , 506 cڡ  mgl , 507 cڡ BBox & whe , 508 cڡ  idt ) 510 #ifde ACEVeGridFuni 511 as ( m >0 && itm < nems ); 513 as ( whe . nk = dagh .rank); 515 BBox gigdwhe = whe ; 516 gdbAlignBBox ( gk , igdwhe , ignmt ); 518  gt = dagh_timedex ( time , v ); 519  gl = v ; 520 Ty gmv = MAXLIM (Ty), gtm = MAXLIM(Type); 521  gi ; 522  gag = ACETrue ; 523  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 524 gtm = ( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). mv ( 525 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 526 #ifde ACEVeGridFuni 527 , m 530 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 531 i( gmv > gtm mv = tm ; 532 gtm = MAXLIM ( Ty ); 535 #ifde ACE_NO_MPI 537 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 540  me = comm_rvi :: oc_me (); 541  gnum = comm_rvi :: oc_num (); 543  gR ; 544  gsize = ( Ty ); 545 * gvues = (* w [ size * num ]; 547 gR = MPI_Agh (& mv , size , MPI_BYTE , vues , size, MPI_BYTE, 548 comm_rvi :: comm ( gfid )); 549 i gMPI_SUCCESS ! R ) 550 comm_rvi :: r_d "GridFuni::GF_mv", "MPI_Agh", R ); 552 #ifde DEBUG_PRINT_GF_COMM 553 gcomm_rvi :: log (<< "GridFuni::GF_mv" << " " << comm_rvi :: oc_me () << " " 555 << size 557 << dl ). ush (); 560 gmv = MAXLIM ( Ty ); 561 gag = ACETrue ; 562  gi =0;i< gnum ;i++) { 563 gtm = *(( Ty *) vues + i ); 564 i( gag = ACETrue { mv = tm ; fg = ACEF ; } 565 i( gmv > gtm mv = tm ; 567 i( gvues gde [] values; 571  ( gmv ); 577 gme < ass gTy > 578 Ty GridFuni (3)< gTy >:: GF_sum (cڡ  time , 579 cڡ  v , 580 #ifde ACEVeGridFuni 581 cڡ  m , 583 cڡ  idt ) 585 #ifde ACEVeGridFuni 586 as ( m >0 && itm < nems ); 588  gt = dagh_timedex ( time , v ); 589  gl = v ; 590 Ty gsum = (Type) 0; 591  gi ; 592  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 593 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt )). sum (gdb[t][l][i]-> ribox (ident) 594 #ifde ACEVeGridFuni 595 , m 600 #ifde ACE_NO_MPI 602 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 605  me = comm_rvi :: oc_me (); 606  gnum = comm_rvi :: oc_num (); 608  gR ; 609  gsize = ( Ty ); 610 * gvues = (* w [ size * num ]; 612 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 613 comm_rvi :: comm ( gfid )); 614 i gMPI_SUCCESS ! R ) 615 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 617 #ifde DEBUG_PRINT_GF_COMM 618 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 620 << size 622 << dl ). ush (); 625 gsum = ( Ty ) 0; 626  gi =0;i< gnum ;i++) 627 gsum +*(( Ty *) vues + i ); 629 i( gvues gde [] values; 633  ( gsum ); 636 gme < ass gTy > 637 Ty GridFuni (3)< gTy >:: GF_sum (cڡ  time , 638 cڡ  v , 639 #ifde ACEVeGridFuni 640 cڡ  m , 642 cڡ BBox & whe , 643 cڡ  idt ) 645 #ifde ACEVeGridFuni 646 as ( m >0 && itm < nems ); 648 as ( whe . nk = dagh .rank); 650 BBox gigdwhe = whe ; 651 gdbAlignBBox ( gk , igdwhe , ignmt ); 653  gt = dagh_timedex ( time , v ); 654  gl = v ; 655 Ty gsum = (Type) 0; 656  gi ; 657  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 658 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt )). sum ( 659 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 660 #ifde ACEVeGridFuni 661 , m 666 #ifde ACE_NO_MPI 668 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 671  me = comm_rvi :: oc_me (); 672  gnum = comm_rvi :: oc_num (); 674  gR ; 675  gsize = ( Ty ); 676 * gvues = (* w [ size * num ]; 678 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 679 comm_rvi :: comm ( gfid )); 680 i gMPI_SUCCESS ! R ) 681 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 683 #ifde DEBUG_PRINT_GF_COMM 684 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 686 << size 688 << dl ). ush (); 691 gsum = ( Ty ) 0; 692  gi =0;i< gnum ;i++) 693 gsum +*(( Ty *) vues + i ); 695 i( gvues gde [] values; 699  ( gsum ); 702 gme < ass gTy > 703 Ty GridFuni (3)< gTy >:: GF_sum (cڡ  time , 704 cڡ  v , 705 #ifde ACEVeGridFuni 706 cڡ  m , 708 cڡ  mgl , 709 cڡ  idt ) 711 #ifde ACEVeGridFuni 712 as ( m >0 && itm < nems ); 714  gt = dagh_timedex ( time , v ); 715  gl = v ; 716 Ty gsum = (Type) 0; 717  gi ; 718  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 719 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sum (gdb[t][l][i]-> ribox (ident,mgl) 720 #ifde ACEVeGridFuni 721 , m 726 #ifde ACE_NO_MPI 728 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 731  me = comm_rvi :: oc_me (); 732  gnum = comm_rvi :: oc_num (); 734  gR ; 735  gsize = ( Ty ); 736 * gvues = (* w [ size * num ]; 738 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 739 comm_rvi :: comm ( gfid )); 740 i gMPI_SUCCESS ! R ) 741 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 743 #ifde DEBUG_PRINT_GF_COMM 744 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 746 << size 748 << dl ). ush (); 751 gsum = ( Ty ) 0; 752  gi =0;i< gnum ;i++) 753 gsum +*(( Ty *) vues + i ); 755 i( gvues gde [] values; 759  ( gsum ); 762 gme < ass gTy > 763 Ty GridFuni (3)< gTy >:: GF_sum (cڡ  time , 764 cڡ  v , 765 #ifde ACEVeGridFuni 766 cڡ  m , 768 cڡ  mgl , 769 cڡ BBox & whe , 770 cڡ  idt ) 772 #ifde ACEVeGridFuni 773 as ( m >0 && itm < nems ); 775 as ( whe . nk = dagh .rank); 777 BBox gigdwhe = whe ; 778 gdbAlignBBox ( gk , igdwhe , ignmt ); 780  gt = dagh_timedex ( time , v ); 781  gl = v ; 782 Ty gsum = (Type) 0; 783  gi ; 784  gi =0; i< gngth ; i++i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 785 gsum +( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sum ( 786 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 787 #ifde ACEVeGridFuni 788 , m 793 #ifde ACE_NO_MPI 795 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 798  me = comm_rvi :: oc_me (); 799  gnum = comm_rvi :: oc_num (); 801  gR ; 802  gsize = ( Ty ); 803 * gvues = (* w [ size * num ]; 805 gR = MPI_Agh (& sum , size , MPI_BYTE , vues , size, MPI_BYTE, 806 comm_rvi :: comm ( gfid )); 807 i gMPI_SUCCESS ! R ) 808 comm_rvi :: r_d "GridFuni::GF_sum", "MPI_Agh", R ); 810 #ifde DEBUG_PRINT_GF_COMM 811 gcomm_rvi :: log (<< "GridFuni::GF_sum" << " " << comm_rvi :: oc_me () << " " 813 << size 815 << dl ). ush (); 818 gsum = ( Ty ) 0; 819  gi =0;i< gnum ;i++) 820 gsum +*(( Ty *) vues + i ); 822 i( gvues gde [] values; 826  ( gsum ); 832 gme < ass gTy > 833 Ty GridFuni (3)< gTy >:: GF_odu (cڡ  time , 834 cڡ  v , 835 #ifde ACEVeGridFuni 836 cڡ  m , 838 cڡ  idt ) 840 #ifde ACEVeGridFuni 841 as ( m >0 && itm < nems ); 843  gt = dagh_timedex ( time , v ); 844  gl = v ; 845 Ty god = (Type) 1; 846  gi ; 847  gi =0; i< gngth ; i++) { 848 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 849 god *( gdb [ t ][ l ][ i ]-> gridda ( idt )). odu (gdb[t][l][i]-> ribox (ident) 850 #ifde ACEVeGridFuni 851 , m 856 #ifde ACE_NO_MPI 858 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 861  me = comm_rvi :: oc_me (); 862  gnum = comm_rvi :: oc_num (); 864  gR ; 865  gsize = ( Ty ); 866 * gvues = (* w [ size * num ]; 868 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 869 comm_rvi :: comm ( gfid )); 870 i gMPI_SUCCESS ! R ) 871 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 873 #ifde DEBUG_PRINT_GF_COMM 874 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 876 << size 878 << dl ). ush (); 881 god = ( Ty ) 1; 882  gi =0;i< gnum ;i++) 883 god **(( Ty *) vues + i ); 885 i( gvues gde [] values; 889  ( god ); 892 gme < ass gTy > 893 Ty GridFuni (3)< gTy >:: GF_odu (cڡ  time , 894 cڡ  v , 895 #ifde ACEVeGridFuni 896 cڡ  m , 898 cڡ BBox & whe , 899 cڡ  idt ) 901 #ifde ACEVeGridFuni 902 as ( m >0 && itm < nems ); 904 as ( whe . nk = dagh .rank); 906 BBox gigdwhe = whe ; 907 gdbAlignBBox ( gk , igdwhe , ignmt ); 909  gt = dagh_timedex ( time , v ); 910  gl = v ; 911 Ty god = (Type) 1; 912  gi ; 913  gi =0; i< gngth ; i++) { 914 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 915 god *( gdb [ t ][ l ][ i ]-> gridda ( idt )). odu ( 916 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ) 917 #ifde ACEVeGridFuni 918 , m 923 #ifde ACE_NO_MPI 925 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 928  me = comm_rvi :: oc_me (); 929  gnum = comm_rvi :: oc_num (); 931  gR ; 932  gsize = ( Ty ); 933 * gvues = (* w [ size * num ]; 935 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 936 comm_rvi :: comm ( gfid )); 937 i gMPI_SUCCESS ! R ) 938 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 940 #ifde DEBUG_PRINT_GF_COMM 941 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 943 << size 945 << dl ). ush (); 948 god = ( Ty ) 1; 949  gi =0;i< gnum ;i++) 950 god **(( Ty *) vues + i ); 952 i( gvues gde [] values; 956  ( god ); 959 gme < ass gTy > 960 Ty GridFuni (3)< gTy >:: GF_odu (cڡ  time , 961 cڡ  v , 962 #ifde ACEVeGridFuni 963 cڡ  m , 965 cڡ  mgl , 966 cڡ  idt ) 968 #ifde ACEVeGridFuni 969 as ( m >0 && itm < nems ); 971  gt = dagh_timedex ( time , v ); 972  gl = v ; 973 Ty god = (Type) 1; 974  gi ; 975  gi =0; i< gngth ; i++) { 976 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 977 god *( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). odu (gdb[t][l][i]-> ribox (ident,mgl) 978 #ifde ACEVeGridFuni 979 , m 984 #ifde ACE_NO_MPI 986 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 989  me = comm_rvi :: oc_me (); 990  gnum = comm_rvi :: oc_num (); 992  gR ; 993  gsize = ( Ty ); 994 * gvues = (* w [ size * num ]; 996 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 997 comm_rvi :: comm ( gfid )); 998 i gMPI_SUCCESS ! R ) 999 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 1001 #ifde DEBUG_PRINT_GF_COMM 1002 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 1004 << size 1006 << dl ). ush (); 1009 god = ( Ty ) 1; 1010  gi =0;i< gnum ;i++) 1011 god **(( Ty *) vues + i ); 1013 i( gvues gde [] values; 1017  ( god ); 1020 gme < ass gTy > 1021 Ty GridFuni (3)< gTy >:: GF_odu (cڡ  time , 1022 cڡ  v , 1023 #ifde ACEVeGridFuni 1024 cڡ  m , 1026 cڡ  mgl , 1027 cڡ BBox & whe , 1028 cڡ  idt ) 1030 #ifde ACEVeGridFuni 1031 as ( m >0 && itm < nems ); 1033 as ( whe . nk = dagh .rank); 1035 BBox gigdwhe = whe ; 1036 gdbAlignBBox ( gk , igdwhe , ignmt ); 1038  gt = dagh_timedex ( time , v ); 1039  gl = v ; 1040 Ty god = (Type) 1; 1041  gi ; 1042  gi =0; i< gngth ; i++) { 1043 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) 1044 god *( gdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). odu ( 1045 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ) 1046 #ifde ACEVeGridFuni 1047 , m 1052 #ifde ACE_NO_MPI 1054 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1057  me = comm_rvi :: oc_me (); 1058  gnum = comm_rvi :: oc_num (); 1060  gR ; 1061  gsize = ( Ty ); 1062 * gvues = (* w [ size * num ]; 1064 gR = MPI_Agh (& od , size , MPI_BYTE , vues , size, MPI_BYTE, 1065 comm_rvi :: comm ( gfid )); 1066 i gMPI_SUCCESS ! R ) 1067 comm_rvi :: r_d "GridFuni::GF_odu", "MPI_Agh", R ); 1069 #ifde DEBUG_PRINT_GF_COMM 1070 gcomm_rvi :: log (<< "GridFuni::GF_odu" << " " << comm_rvi :: oc_me () << " " 1072 << size 1074 << dl ). ush (); 1077 god = ( Ty ) 1; 1078  gi =0;i< gnum ;i++) 1079 god **(( Ty *) vues + i ); 1081 i( gvues gde [] values; 1085  ( god ); 1091 gme < ass gTy > 1092 Ty GridFuni (3)< gTy >:: GF_nm2 (cڡ  time , 1093 cڡ  v , 1094 #ifde ACEVeGridFuni 1095 cڡ  m , 1097 cڡ  idt ) 1099 #ifde ACEVeGridFuni 1100 as ( m >0 && itm < nems ); 1102  gt = dagh_timedex ( time , v ); 1103  gl = v ; 1104 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1105  gt = 0, gc = 0; 1106  gi ; 1107  gi =0; i< gngth ; i++) { 1108 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1109 ( ggdb [ t ][ l ][ i ]-> gridda ( idt )). sumsqrd ( gdb [t][l][i]-> ribox (idt), s , c 1110 #ifde ACEVeGridFuni 1111 , m 1114 gsumsqrd + s ; 1115 gt + c ; 1119 #ifde ACE_NO_MPI 1121 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1124  me = comm_rvi :: oc_me (); 1125  gnum = comm_rvi :: oc_num (); 1127  gR ; 1128  gsize = 2*( Ty ); 1129 * gvues = (* w [ size * num ]; 1131 * gdbuf = (* w [ size ]; 1132 *(( gTy * gdbuf sumsqrd ; 1133 *((*(( gTy *) gdbuf +1) t ; 1135 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1136 comm_rvi :: comm ( gfid )); 1137 i gMPI_SUCCESS ! R ) 1138 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1140 #ifde DEBUG_PRINT_GF_COMM 1141 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1143 << size 1145 << dl ). ush (); 1148 gsumsqrd = ( Ty ) 0; 1149 gt = 0; 1150  gi =0;i< gnum ;i++) { 1151 gsumsqrd +*(( Ty *) vues + 2* i ); 1152 gt +*((*)(( Ty *) vues + 2* i +1)); 1155 i( gvues gde [] values; 1156 i( gdbuf gde [] sndbuf; 1160  (( gTy ) sq (((1.0* sumsqrd / t ))); 1163 gme < ass gTy > 1164 Ty GridFuni (3)< gTy >:: GF_nm2 (cڡ  time , 1165 cڡ  v , 1166 #ifde ACEVeGridFuni 1167 cڡ  m , 1169 cڡ BBox & whe , 1170 cڡ  idt ) 1172 #ifde ACEVeGridFuni 1173 as ( m >0 && itm < nems ); 1175 as ( whe . nk = dagh .rank); 1177 BBox gigdwhe = whe ; 1178 gdbAlignBBox ( gk , igdwhe , ignmt ); 1180  gt = dagh_timedex ( time , v ); 1181  gl = v ; 1182 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1183  gt = 0, gc = 0; 1184  gi ; 1185  gi =0; i< gngth ; i++) { 1186 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1187 ( ggdb [ t ][ l ][ i ]-> gridda ( idt )). sumsqrd ( 1188 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt ), s , c 1189 #ifde ACEVeGridFuni 1190 , m 1193 gsumsqrd + s ; 1194 gt + c ; 1198 #ifde ACE_NO_MPI 1200 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1203  me = comm_rvi :: oc_me (); 1204  gnum = comm_rvi :: oc_num (); 1206  gR ; 1207  gsize = 2*( Ty ); 1208 * gvues = (* w [ size * num ]; 1210 * gdbuf = (* w [ size ]; 1211 *(( gTy * gdbuf sumsqrd ; 1212 *((*(( gTy *) gdbuf +1) t ; 1214 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1215 comm_rvi :: comm ( gfid )); 1216 i gMPI_SUCCESS ! R ) 1217 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1219 #ifde DEBUG_PRINT_GF_COMM 1220 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1222 << size 1224 << dl ). ush (); 1227 gsumsqrd = ( Ty ) 0; 1228 gt = 0; 1229  gi =0;i< gnum ;i++) { 1230 gsumsqrd +*(( Ty *) vues + 2* i ); 1231 gt +*((*)(( Ty *) vues + 2* i +1)); 1234 i( gvues gde [] values; 1235 i( gdbuf gde [] sndbuf; 1239  (( gTy ) sq (((1.0* sumsqrd / t ))); 1242 gme < ass gTy > 1243 Ty GridFuni (3)< gTy >:: GF_nm2 (cڡ  time , 1244 cڡ  v , 1245 #ifde ACEVeGridFuni 1246 cڡ  m , 1248 cڡ  mgl , 1249 cڡ  idt ) 1251 #ifde ACEVeGridFuni 1252 as ( m >0 && itm < nems ); 1254  gt = dagh_timedex ( time , v ); 1255  gl = v ; 1256 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1257  gt = 0, gc = 0; 1258  gi ; 1259  gi =0; i< gngth ; i++) { 1260 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1261 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sumsqrd ( gdb [t][l][i]-> ribox (idt,mgl), s , c 1262 #ifde ACEVeGridFuni 1263 , m 1266 gsumsqrd + s ; 1267 gt + c ; 1271 #ifde ACE_NO_MPI 1273 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1276  me = comm_rvi :: oc_me (); 1277  gnum = comm_rvi :: oc_num (); 1279  gR ; 1280  gsize = 2*( Ty ); 1281 * gvues = (* w [ size * num ]; 1283 * gdbuf = (* w [ size ]; 1284 *(( gTy * gdbuf sumsqrd ; 1285 *((*(( gTy *) gdbuf +1) t ; 1287 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1288 comm_rvi :: comm ( gfid )); 1289 i gMPI_SUCCESS ! R ) 1290 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1292 #ifde DEBUG_PRINT_GF_COMM 1293 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1295 << size 1297 << dl ). ush (); 1300 gsumsqrd = ( Ty ) 0; 1301 gt = 0; 1302  gi =0;i< gnum ;i++) { 1303 gsumsqrd +*(( Ty *) vues + 2* i ); 1304 gt +*((*)(( Ty *) vues + 2* i +1)); 1307 i( gvues gde [] values; 1308 i( gdbuf gde [] sndbuf; 1312  (( gTy ) sq (((1.0* sumsqrd / t ))); 1315 gme < ass gTy > 1316 Ty GridFuni (3)< gTy >:: GF_nm2 (cڡ  time , 1317 cڡ  v , 1318 #ifde ACEVeGridFuni 1319 cڡ  m , 1321 cڡ  mgl , 1322 cڡ BBox & whe , 1323 cڡ  idt ) 1325 #ifde ACEVeGridFuni 1326 as ( m >0 && itm < nems ); 1328 as ( whe . nk = dagh .rank); 1330 BBox gigdwhe = whe ; 1331 gdbAlignBBox ( gk , igdwhe , ignmt ); 1333  gt = dagh_timedex ( time , v ); 1334  gl = v ; 1335 Ty gsumsqrd = (Ty0, gs = (Type) 0; 1336  gt = 0, gc = 0; 1337  gi ; 1338  gi =0; i< gngth ; i++) { 1339 i( ggdb [ t ][ l ][ i ] && gdb[t][l][i]-> dexme (i)) { 1340 ( ggdb [ t ][ l ][ i ]-> gridda ( idt , mgl )). sumsqrd ( 1341 igdwhe * gdb [ t ][ l ][ i ]-> ribox ( idt , mgl ), s , c 1342 #ifde ACEVeGridFuni 1343 , m 1346 gsumsqrd + s ; 1347 gt + c ; 1351 #ifde ACE_NO_MPI 1353 i( gcomm_rvi :: d (&& comm_rvi :: oc_num () > 1) { 1356  me = comm_rvi :: oc_me (); 1357  gnum = comm_rvi :: oc_num (); 1359  gR ; 1360  gsize = 2*( Ty ); 1361 * gvues = (* w [ size * num ]; 1363 * gdbuf = (* w [ size ]; 1364 *(( gTy * gdbuf sumsqrd ; 1365 *((*(( gTy *) gdbuf +1) t ; 1367 gR = MPI_Agh ( dbuf , size , MPI_BYTE , vues , size, MPI_BYTE, 1368 comm_rvi :: comm ( gfid )); 1369 i gMPI_SUCCESS ! R ) 1370 comm_rvi :: r_d "GridFuni::GF_nm2", "MPI_Agh", R ); 1372 #ifde DEBUG_PRINT_GF_COMM 1373 gcomm_rvi :: log (<< "GridFuni::GF_nm2" << " " << comm_rvi :: oc_me () << " " 1375 << size 1377 << dl ). ush (); 1380 gsumsqrd = ( Ty ) 0; 1381 gt = 0; 1382  gi =0;i< gnum ;i++) { 1383 gsumsqrd +*(( Ty *) vues + 2* i ); 1384 gt +*((*)(( Ty *) vues + 2* i +1)); 1387 i( gvues gde [] values; 1388 i( gdbuf gde [] sndbuf; 1392  (( gTy ) sq (((1.0* sumsqrd / t ))); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionParents1.h 1 #ide _uded_GridFuniPts1_h 2  #_uded_GridFuniPts1_h ) 16 gme < ass gACE_GFTy > 17  GridFuni (1)< gACE_GFTy >:: GF_GWrePt (cڡ  time , 18 cڡ  v , 19 #ifde ACEVeGridFuni 20 cڡ  m , 22 cڡ  idt ) 24 i(! ()) ; 26 #ifde DEBUG_PRINT 27 as ( idt = ACE_Ma ); 30 cڡ  gpidt = 31 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 33 #ide ACEVeGridFuni 34 cڡ  gm = ACEA ; 37 cڡ  gum = comm_rvi :: oc_num (); 38 cڡ  gme = comm_rvi :: oc_me (); 39 i( gum == 1) ; 41 cڡ  gt = dagh_timedex ( time , v ); 42 cڡ  gwl = v -1; 43 cڡ  g = v ; 45 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 47 cڡ  gvs = dagh . tٮvs (); 48 cڡ  gidx = wl ; 50  gp =0;p< gum ;p++) { 51 i( gp = me ) ; 52 i( gg_nd_fo [ p ] && g_nd_fo[p][ idx ]) { 53 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 54 w GridDaBuck < ACE_GFTy >( g_nd_fo [ p ][ idx ]-> t , 55 gg_nd_fo [ p ][ idx ]-> gsize , 56 gACEPacked ) 58 w GridDaBuck < ACE_GFTy >( g_nd_fo [ p ][ idx ]-> t , 59 gg_nd_fo [ p ][ idx ]-> gmsize , 60 gACEPacked ); 61  gs = 0; 62  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 63 gs + gdb [ t ][ wl ][ i ]-> gdbWrePtGh ( p , m , pidt , ACENu , * gdbkt , s ); 65 #ifde DEBUG_PRINT 66 as ( s = g_nd_fo [ p ][ idx ]-> t ); 69 ggt -> nd (( ACEGPtTag | ), gdbkt , p ); 74 gme < ass gACE_GFTy > 75  GridFuni (1)< gACE_GFTy >:: GF_SWrePt (cڡ  time , 76 cڡ  v , 77 #ifde ACEVeGridFuni 78 cڡ  m , 80 cڡ  idt ) 82 i(! ()) ; 84 #ifde DEBUG_PRINT 85 as ( idt = ACE_Ma ); 88 cڡ  gpidt = 89 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 91 #ide ACEVeGridFuni 92 cڡ  gm = ACEA ; 95 cڡ  gum = comm_rvi :: oc_num (); 96 cڡ  gme = comm_rvi :: oc_me (); 97 i( gum == 1) ; 99 cڡ  gt = dagh_timedex ( time , v ); 100 cڡ  gwl = v ; 101 cڡ  g = v -1; 103 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 105 cڡ  gvs = dagh . tٮvs (); 106 cڡ  gidx = wl ; 108  gp =0;p< gum ;p++) { 109 i( gp = me ) ; 110 i( gt_nd_fo [ p ] && s_nd_fo[p][ idx ]) { 111 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 112 w GridDaBuck < ACE_GFTy >( t_nd_fo [ p ][ idx ]-> t , 113 gt_nd_fo [ p ][ idx ]-> gsize , 114 gACEPacked ) 116 w GridDaBuck < ACE_GFTy >( t_nd_fo [ p ][ idx ]-> t , 117 gt_nd_fo [ p ][ idx ]-> gmsize , 118 gACEPacked ); 119  gs = 0; 120  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 121 gs + gdb [ t ][ wl ][ i ]-> gdbWrePtS ( p , m , idt , ACENu , * gdbkt , s ); 123 #ifde DEBUG_PRINT 124 as ( s = t_nd_fo [ p ][ idx ]-> t ); 127 ggt -> nd (( ACESPtTag | ), gdbkt , p ); 136 gme < ass gACE_GFTy > 137  GridFuni (1)< gACE_GFTy >:: GF_GRdPt (cڡ  time , 138 cڡ  v , 139 #ifde ACEVeGridFuni 140 cڡ  m , 142 cڡ  idt ) 144 i(! ()) ; 146 #ifde DEBUG_PRINT 147 as ( idt = ACE_Ma ); 150 cڡ  gpidt = 151 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 153 #ide ACEVeGridFuni 154 cڡ  gm = ACEA ; 156 cڡ  gt = dagh_timedex ( time , v ); 157 cڡ  g = v ; 158 cڡ  gwl = v -1; 160 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 162 cڡ  gvs = dagh . tٮvs (); 163 cڡ  gum = comm_rvi :: oc_num (); 164 cڡ  gme = comm_rvi :: oc_me (); 165 cڡ  gidx = ; 168 cڡ  gmdex = dagh . maxdex ()+1; 169 cڡ  glcdex = me * mdex ; 171 i( gg_cv_fo [ me ] && 172 gg_cv_fo [ me ][ idx ] && 173 gg_cv_fo [ me ][ idx ]-> gt > 0) { 174  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 175 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbPtGhRdInfo (); 177 i( ggdbi !0 m =0; gm < gmdex ; m++) { 178 i(( ggdbi [ lcdex + m ]&& ( ggdb [ t ][ wl ][m])) { 180 #ifde DEBUG_PRINT_GF_COMM 181 gcomm_rvi :: log () << "[GF_GReadParent::LocalCopy " 182 << "[" << i << "<-" << m << "]" 183 << * gdbi [ lcdex + m ] 184 << "]" << dl ). ush (); 186 ggdb [ t ][ ][ i ]-> da ( pidt ). cy ( gdb [t][ wl ][ m ]-> gridda ( idt ), 187 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 188 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 189 m ); 195 i( gum > 1) { 196  gp ; 197  gp =0;p< gum ;p++) { 198 i( gp = me ) ; 199 i( gg_cv_rv [ p ] && 200 gg_cv_rv [ p ][ idx ] && 201 ! gg_cv_rv [ p ][ idx ]-> ived ()) 202 gcomm_rvi :: rve (* g_cv_rv [ p ][ idx ]-> q ()); 205 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 206 GridDaBuckVoid ** ggdbkt = 0; 207 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 208 gGridDaBuck < gACE_GFTy >* grcvbkt = 209 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 211 i( grcvbkt == 0) ; 213 cڡ  gnum = rcvbkt -> num (); 215 #ifde DEBUG_PRINT 216 as ( num > 0); 219  gi =0;i< gnum ;i++) { 220  gdhdr * ggdh = rcvbkt -> hd ( i ); 222 #ifde DEBUG_PRINT_GF_COMM 223 gcomm_rvi :: log (<< "[GF_GRdPt: Exag[" << i <<"]" 224 << * gdh 225 << "]" << dl ). ush (); 228 cڡ  g = gdh -> time ; 229 cڡ  g = gdh -> v ; 230 cڡ  glidt = gdh -> idt ; 231 cڡ  glidx = gdh -> dex ; 233 #ifde DEBUG_PRINT 234 as ( = t ); 235 as ( = wl ); 236 as ( lidt = pidt ); 239 #ifde DEBUG_PRINT 240 as ( gdb [ ]); 242 ( ggdb [ ][ ][ lidx ]-> da ( lidt )). cy (* rcvbkt , i , 243 rcvbkt -> bbox ( i ), 244 rcvbkt -> bbox ( i ), 245 m ); 247 de grcvbkt ;cvbkt = 0; 248 ACELiD (); 249 } gACEEndLo ; 251  gp =0;p< gum ;p++) { 252 i( gp ! me && g_cv_rv [ p ] && g_cv_rv[p][ idx ]) 253 g_cv_rv [ p ][ idx ]-> porcv (); 258 gme < ass gACE_GFTy > 259  GridFuni (1)< gACE_GFTy >:: GF_SRdPt (cڡ  time , 260 cڡ  v , 261 #ifde ACEVeGridFuni 262 cڡ  m , 264 cڡ  idt ) 266 i(! ()) ; 268 #ifde DEBUG_PRINT 269 as ( idt = ACE_Ma ); 272 cڡ  gpidt = 273 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 275 #ide ACEVeGridFuni 276 cڡ  gm = ACEA ; 278 cڡ  gt = dagh_timedex ( time , v ); 279 cڡ  g = v -1; 280 cڡ  gwl = v ; 282 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 284 cڡ  gvs = dagh . tٮvs (); 285 cڡ  gum = comm_rvi :: oc_num (); 286 cڡ  gme = comm_rvi :: oc_me (); 287 cڡ  gidx = ; 290 cڡ  gmdex = dagh . maxdex ()+1; 291 cڡ  glcdex = me * mdex ; 293 i( gt_cv_fo [ me ] && 294 gt_cv_fo [ me ][ idx ] && 295 gt_cv_fo [ me ][ idx ]-> gt > 0) { 296  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 297 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbPtSRdInfo (); 299 i( ggdbi !0 m =0; gm < gmdex ; m++) { 300 i(( ggdbi [ lcdex + m ]&& ( ggdb [ t ][ wl ][m])) { 302 #ifde DEBUG_PRINT_GF_COMM 303 gcomm_rvi :: log () << "[GF_SReadParent::LocalCopy " 304 << "[" << i << "<-" << m << "]" 305 << * gdbi [ lcdex + m ] 306 << "]" << dl ). ush (); 308 ggdb [ t ][ ][ i ]-> gridda ( idt ). cy ( gdb [t][ wl ][ m ]-> da ( pidt ), 309 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 310 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 311 m ); 317 i( gum > 1) { 318  gp ; 319  gp =0;p< gum ;p++) { 320 i( gp = me ) ; 321 i( gt_cv_rv [ p ] && 322 gt_cv_rv [ p ][ idx ] && 323 ! gt_cv_rv [ p ][ idx ]-> ived ()) 324 gcomm_rvi :: rve (* t_cv_rv [ p ][ idx ]-> q ()); 327 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 328 GridDaBuckVoid ** ggdbkt = 0; 329 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 330 gGridDaBuck < gACE_GFTy >* grcvbkt = 331 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 333 i( grcvbkt == 0) ; 335 cڡ  gnum = rcvbkt -> num (); 337 #ifde DEBUG_PRINT 338 as ( num > 0); 341  gi =0;i< gnum ;i++) { 342  gdhdr * ggdh = rcvbkt -> hd ( i ); 344 #ifde DEBUG_PRINT_GF_COMM 345 gcomm_rvi :: log (<< "[GF_SRdPt: Exag[" << i <<"]" 346 << * gdh 347 << "]" << dl ). ush (); 350 cڡ  g = gdh -> time ; 351 cڡ  g = gdh -> v ; 352 cڡ  glidt = gdh -> idt ; 353 cڡ  glidx = gdh -> dex ; 355 #ifde DEBUG_PRINT 356 as ( = t ); 357 as ( = wl ); 358 as ( lidt = idt ); 361 #ifde DEBUG_PRINT 362 as ( gdb [ ]); 364 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 365 rcvbkt -> bbox ( i ), 366 rcvbkt -> bbox ( i ), 367 m ); 369 de grcvbkt ;cvbkt = 0; 370 ACELiD (); 371 } gACEEndLo ; 373  gp =0;p< gum ;p++) { 374 i( gp ! me && t_cv_rv [ p ] && s_cv_rv[p][ idx ]) 375 t_cv_rv [ p ][ idx ]-> porcv (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionParents2.h 1 #ide _uded_GridFuniPts2_h 2  #_uded_GridFuniPts2_h ) 16 gme < ass gACE_GFTy > 17  GridFuni (2)< gACE_GFTy >:: GF_GWrePt (cڡ  time , 18 cڡ  v , 19 #ifde ACEVeGridFuni 20 cڡ  m , 22 cڡ  idt ) 24 i(! ()) ; 26 #ifde DEBUG_PRINT 27 as ( idt = ACE_Ma ); 30 cڡ  gpidt = 31 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 33 #ide ACEVeGridFuni 34 cڡ  gm = ACEA ; 37 cڡ  gum = comm_rvi :: oc_num (); 38 cڡ  gme = comm_rvi :: oc_me (); 39 i( gum == 1) ; 41 cڡ  gt = dagh_timedex ( time , v ); 42 cڡ  gwl = v -1; 43 cڡ  g = v ; 45 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 47 cڡ  gvs = dagh . tٮvs (); 48 cڡ  gidx = wl ; 50  gp =0;p< gum ;p++) { 51 i( gp = me ) ; 52 i( gg_nd_fo [ p ] && g_nd_fo[p][ idx ]) { 53 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 54 w GridDaBuck < ACE_GFTy >( g_nd_fo [ p ][ idx ]-> t , 55 gg_nd_fo [ p ][ idx ]-> gsize , 56 gACEPacked ) 58 w GridDaBuck < ACE_GFTy >( g_nd_fo [ p ][ idx ]-> t , 59 gg_nd_fo [ p ][ idx ]-> gmsize , 60 gACEPacked ); 61  gs = 0; 62  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 63 gs + gdb [ t ][ wl ][ i ]-> gdbWrePtGh ( p , m , pidt , ACENu , * gdbkt , s ); 65 #ifde DEBUG_PRINT 66 as ( s = g_nd_fo [ p ][ idx ]-> t ); 69 ggt -> nd (( ACEGPtTag | ), gdbkt , p ); 74 gme < ass gACE_GFTy > 75  GridFuni (2)< gACE_GFTy >:: GF_SWrePt (cڡ  time , 76 cڡ  v , 77 #ifde ACEVeGridFuni 78 cڡ  m , 80 cڡ  idt ) 82 i(! ()) ; 84 #ifde DEBUG_PRINT 85 as ( idt = ACE_Ma ); 88 cڡ  gpidt = 89 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 91 #ide ACEVeGridFuni 92 cڡ  gm = ACEA ; 95 cڡ  gum = comm_rvi :: oc_num (); 96 cڡ  gme = comm_rvi :: oc_me (); 97 i( gum == 1) ; 99 cڡ  gt = dagh_timedex ( time , v ); 100 cڡ  gwl = v ; 101 cڡ  g = v -1; 103 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 105 cڡ  gvs = dagh . tٮvs (); 106 cڡ  gidx = wl ; 108  gp =0;p< gum ;p++) { 109 i( gp = me ) ; 110 i( gt_nd_fo [ p ] && s_nd_fo[p][ idx ]) { 111 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 112 w GridDaBuck < ACE_GFTy >( t_nd_fo [ p ][ idx ]-> t , 113 gt_nd_fo [ p ][ idx ]-> gsize , 114 gACEPacked ) 116 w GridDaBuck < ACE_GFTy >( t_nd_fo [ p ][ idx ]-> t , 117 gt_nd_fo [ p ][ idx ]-> gmsize , 118 gACEPacked ); 119  gs = 0; 120  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 121 gs + gdb [ t ][ wl ][ i ]-> gdbWrePtS ( p , m , idt , ACENu , * gdbkt , s ); 123 #ifde DEBUG_PRINT 124 as ( s = t_nd_fo [ p ][ idx ]-> t ); 127 ggt -> nd (( ACESPtTag | ), gdbkt , p ); 136 gme < ass gACE_GFTy > 137  GridFuni (2)< gACE_GFTy >:: GF_GRdPt (cڡ  time , 138 cڡ  v , 139 #ifde ACEVeGridFuni 140 cڡ  m , 142 cڡ  idt ) 144 i(! ()) ; 146 #ifde DEBUG_PRINT 147 as ( idt = ACE_Ma ); 150 cڡ  gpidt = 151 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 153 #ide ACEVeGridFuni 154 cڡ  gm = ACEA ; 156 cڡ  gt = dagh_timedex ( time , v ); 157 cڡ  g = v ; 158 cڡ  gwl = v -1; 160 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 162 cڡ  gvs = dagh . tٮvs (); 163 cڡ  gum = comm_rvi :: oc_num (); 164 cڡ  gme = comm_rvi :: oc_me (); 165 cڡ  gidx = ; 168 cڡ  gmdex = dagh . maxdex ()+1; 169 cڡ  glcdex = me * mdex ; 171 i( gg_cv_fo [ me ] && 172 gg_cv_fo [ me ][ idx ] && 173 gg_cv_fo [ me ][ idx ]-> gt > 0) { 174  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 175 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbPtGhRdInfo (); 177 i( ggdbi !0 m =0; gm < gmdex ; m++) { 178 i(( ggdbi [ lcdex + m ]&& ( ggdb [ t ][ wl ][m])) { 180 #ifde DEBUG_PRINT_GF_COMM 181 gcomm_rvi :: log () << "[GF_GReadParent::LocalCopy " 182 << "[" << i << "<-" << m << "]" 183 << * gdbi [ lcdex + m ] 184 << "]" << dl ). ush (); 186 ggdb [ t ][ ][ i ]-> da ( pidt ). cy ( gdb [t][ wl ][ m ]-> gridda ( idt ), 187 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 188 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 189 m ); 195 i( gum > 1) { 196  gp ; 197  gp =0;p< gum ;p++) { 198 i( gp = me ) ; 199 i( gg_cv_rv [ p ] && 200 gg_cv_rv [ p ][ idx ] && 201 ! gg_cv_rv [ p ][ idx ]-> ived ()) 202 gcomm_rvi :: rve (* g_cv_rv [ p ][ idx ]-> q ()); 205 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 206 GridDaBuckVoid ** ggdbkt = 0; 207 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 208 gGridDaBuck < gACE_GFTy >* grcvbkt = 209 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 211 i( grcvbkt == 0) ; 213 cڡ  gnum = rcvbkt -> num (); 215 #ifde DEBUG_PRINT 216 as ( num > 0); 219  gi =0;i< gnum ;i++) { 220  gdhdr * ggdh = rcvbkt -> hd ( i ); 222 #ifde DEBUG_PRINT_GF_COMM 223 gcomm_rvi :: log (<< "[GF_GRdPt: Exag[" << i <<"]" 224 << * gdh 225 << "]" << dl ). ush (); 228 cڡ  g = gdh -> time ; 229 cڡ  g = gdh -> v ; 230 cڡ  glidt = gdh -> idt ; 231 cڡ  glidx = gdh -> dex ; 233 #ifde DEBUG_PRINT 234 as ( = t ); 235 as ( = wl ); 236 as ( lidt = pidt ); 239 #ifde DEBUG_PRINT 240 as ( gdb [ ]); 242 ( ggdb [ ][ ][ lidx ]-> da ( lidt )). cy (* rcvbkt , i , 243 rcvbkt -> bbox ( i ), 244 rcvbkt -> bbox ( i ), 245 m ); 247 de grcvbkt ;cvbkt = 0; 248 ACELiD (); 249 } gACEEndLo ; 251  gp =0;p< gum ;p++) { 252 i( gp ! me && g_cv_rv [ p ] && g_cv_rv[p][ idx ]) 253 g_cv_rv [ p ][ idx ]-> porcv (); 258 gme < ass gACE_GFTy > 259  GridFuni (2)< gACE_GFTy >:: GF_SRdPt (cڡ  time , 260 cڡ  v , 261 #ifde ACEVeGridFuni 262 cڡ  m , 264 cڡ  idt ) 266 i(! ()) ; 268 #ifde DEBUG_PRINT 269 as ( idt = ACE_Ma ); 272 cڡ  gpidt = 273 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 275 #ide ACEVeGridFuni 276 cڡ  gm = ACEA ; 278 cڡ  gt = dagh_timedex ( time , v ); 279 cڡ  g = v -1; 280 cڡ  gwl = v ; 282 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 284 cڡ  gvs = dagh . tٮvs (); 285 cڡ  gum = comm_rvi :: oc_num (); 286 cڡ  gme = comm_rvi :: oc_me (); 287 cڡ  gidx = ; 290 cڡ  gmdex = dagh . maxdex ()+1; 291 cڡ  glcdex = me * mdex ; 293 i( gt_cv_fo [ me ] && 294 gt_cv_fo [ me ][ idx ] && 295 gt_cv_fo [ me ][ idx ]-> gt > 0) { 296  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 297 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbPtSRdInfo (); 299 i( ggdbi !0 m =0; gm < gmdex ; m++) { 300 i(( ggdbi [ lcdex + m ]&& ( ggdb [ t ][ wl ][m])) { 302 #ifde DEBUG_PRINT_GF_COMM 303 gcomm_rvi :: log () << "[GF_SReadParent::LocalCopy " 304 << "[" << i << "<-" << m << "]" 305 << * gdbi [ lcdex + m ] 306 << "]" << dl ). ush (); 308 ggdb [ t ][ ][ i ]-> gridda ( idt ). cy ( gdb [t][ wl ][ m ]-> da ( pidt ), 309 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 310 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 311 m ); 317 i( gum > 1) { 318  gp ; 319  gp =0;p< gum ;p++) { 320 i( gp = me ) ; 321 i( gt_cv_rv [ p ] && 322 gt_cv_rv [ p ][ idx ] && 323 ! gt_cv_rv [ p ][ idx ]-> ived ()) 324 gcomm_rvi :: rve (* t_cv_rv [ p ][ idx ]-> q ()); 327 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 328 GridDaBuckVoid ** ggdbkt = 0; 329 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 330 gGridDaBuck < gACE_GFTy >* grcvbkt = 331 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 333 i( grcvbkt == 0) ; 335 cڡ  gnum = rcvbkt -> num (); 337 #ifde DEBUG_PRINT 338 as ( num > 0); 341  gi =0;i< gnum ;i++) { 342  gdhdr * ggdh = rcvbkt -> hd ( i ); 344 #ifde DEBUG_PRINT_GF_COMM 345 gcomm_rvi :: log (<< "[GF_SRdPt: Exag[" << i <<"]" 346 << * gdh 347 << "]" << dl ). ush (); 350 cڡ  g = gdh -> time ; 351 cڡ  g = gdh -> v ; 352 cڡ  glidt = gdh -> idt ; 353 cڡ  glidx = gdh -> dex ; 355 #ifde DEBUG_PRINT 356 as ( = t ); 357 as ( = wl ); 358 as ( lidt = idt ); 361 #ifde DEBUG_PRINT 362 as ( gdb [ ]); 364 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 365 rcvbkt -> bbox ( i ), 366 rcvbkt -> bbox ( i ), 367 m ); 369 de grcvbkt ;cvbkt = 0; 370 ACELiD (); 371 } gACEEndLo ; 373  gp =0;p< gum ;p++) { 374 i( gp ! me && t_cv_rv [ p ] && s_cv_rv[p][ idx ]) 375 t_cv_rv [ p ][ idx ]-> porcv (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionParents3.h 1 #ide _uded_GridFuniPts3_h 2  #_uded_GridFuniPts3_h ) 16 gme < ass gACE_GFTy > 17  GridFuni (3)< gACE_GFTy >:: GF_GWrePt (cڡ  time , 18 cڡ  v , 19 #ifde ACEVeGridFuni 20 cڡ  m , 22 cڡ  idt ) 24 i(! ()) ; 26 #ifde DEBUG_PRINT 27 as ( idt = ACE_Ma ); 30 cڡ  gpidt = 31 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 33 #ide ACEVeGridFuni 34 cڡ  gm = ACEA ; 37 cڡ  gum = comm_rvi :: oc_num (); 38 cڡ  gme = comm_rvi :: oc_me (); 39 i( gum == 1) ; 41 cڡ  gt = dagh_timedex ( time , v ); 42 cڡ  gwl = v -1; 43 cڡ  g = v ; 45 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 47 cڡ  gvs = dagh . tٮvs (); 48 cڡ  gidx = wl ; 50  gp =0;p< gum ;p++) { 51 i( gp = me ) ; 52 i( gg_nd_fo [ p ] && g_nd_fo[p][ idx ]) { 53 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 54 w GridDaBuck < ACE_GFTy >( g_nd_fo [ p ][ idx ]-> t , 55 gg_nd_fo [ p ][ idx ]-> gsize , 56 gACEPacked ) 58 w GridDaBuck < ACE_GFTy >( g_nd_fo [ p ][ idx ]-> t , 59 gg_nd_fo [ p ][ idx ]-> gmsize , 60 gACEPacked ); 61  gs = 0; 62  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 63 gs + gdb [ t ][ wl ][ i ]-> gdbWrePtGh ( p , m , pidt , ACENu , * gdbkt , s ); 65 #ifde DEBUG_PRINT 66 as ( s = g_nd_fo [ p ][ idx ]-> t ); 69 ggt -> nd (( ACEGPtTag | ), gdbkt , p ); 74 gme < ass gACE_GFTy > 75  GridFuni (3)< gACE_GFTy >:: GF_SWrePt (cڡ  time , 76 cڡ  v , 77 #ifde ACEVeGridFuni 78 cڡ  m , 80 cڡ  idt ) 82 i(! ()) ; 84 #ifde DEBUG_PRINT 85 as ( idt = ACE_Ma ); 88 cڡ  gpidt = 89 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 91 #ide ACEVeGridFuni 92 cڡ  gm = ACEA ; 95 cڡ  gum = comm_rvi :: oc_num (); 96 cڡ  gme = comm_rvi :: oc_me (); 97 i( gum == 1) ; 99 cڡ  gt = dagh_timedex ( time , v ); 100 cڡ  gwl = v ; 101 cڡ  g = v -1; 103 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 105 cڡ  gvs = dagh . tٮvs (); 106 cڡ  gidx = wl ; 108  gp =0;p< gum ;p++) { 109 i( gp = me ) ; 110 i( gt_nd_fo [ p ] && s_nd_fo[p][ idx ]) { 111 gGridDaBuck < gACE_GFTy > * ggdbkt = ( m = ACEA ) ? 112 w GridDaBuck < ACE_GFTy >( t_nd_fo [ p ][ idx ]-> t , 113 gt_nd_fo [ p ][ idx ]-> gsize , 114 gACEPacked ) 116 w GridDaBuck < ACE_GFTy >( t_nd_fo [ p ][ idx ]-> t , 117 gt_nd_fo [ p ][ idx ]-> gmsize , 118 gACEPacked ); 119  gs = 0; 120  gi =0; i< gngth ; i++i( ggdb [ t ][ wl ][ i ] && gdb[t][wl][i]-> dexme (i)) 121 gs + gdb [ t ][ wl ][ i ]-> gdbWrePtS ( p , m , idt , ACENu , * gdbkt , s ); 123 #ifde DEBUG_PRINT 124 as ( s = t_nd_fo [ p ][ idx ]-> t ); 127 ggt -> nd (( ACESPtTag | ), gdbkt , p ); 136 gme < ass gACE_GFTy > 137  GridFuni (3)< gACE_GFTy >:: GF_GRdPt (cڡ  time , 138 cڡ  v , 139 #ifde ACEVeGridFuni 140 cڡ  m , 142 cڡ  idt ) 144 i(! ()) ; 146 #ifde DEBUG_PRINT 147 as ( idt = ACE_Ma ); 150 cڡ  gpidt = 151 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 153 #ide ACEVeGridFuni 154 cڡ  gm = ACEA ; 156 cڡ  gt = dagh_timedex ( time , v ); 157 cڡ  g = v ; 158 cڡ  gwl = v -1; 160 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 162 cڡ  gvs = dagh . tٮvs (); 163 cڡ  gum = comm_rvi :: oc_num (); 164 cڡ  gme = comm_rvi :: oc_me (); 165 cڡ  gidx = ; 168 cڡ  gmdex = dagh . maxdex ()+1; 169 cڡ  glcdex = me * mdex ; 171 i( gg_cv_fo [ me ] && 172 gg_cv_fo [ me ][ idx ] && 173 gg_cv_fo [ me ][ idx ]-> gt > 0) { 174  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 175 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbPtGhRdInfo (); 177 i( ggdbi !0 m =0; gm < gmdex ; m++) { 178 i(( ggdbi [ lcdex + m ]&& ( ggdb [ t ][ wl ][m])) { 180 #ifde DEBUG_PRINT_GF_COMM 181 gcomm_rvi :: log () << "[GF_GReadParent::LocalCopy " 182 << "[" << i << "<-" << m << "]" 183 << * gdbi [ lcdex + m ] 184 << "]" << dl ). ush (); 186 ggdb [ t ][ ][ i ]-> da ( pidt ). cy ( gdb [t][ wl ][ m ]-> gridda ( idt ), 187 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 188 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 189 m ); 195 i( gum > 1) { 196  gp ; 197  gp =0;p< gum ;p++) { 198 i( gp = me ) ; 199 i( gg_cv_rv [ p ] && 200 gg_cv_rv [ p ][ idx ] && 201 ! gg_cv_rv [ p ][ idx ]-> ived ()) 202 gcomm_rvi :: rve (* g_cv_rv [ p ][ idx ]-> q ()); 205 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 206 GridDaBuckVoid ** ggdbkt = 0; 207 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 208 gGridDaBuck < gACE_GFTy >* grcvbkt = 209 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 211 i( grcvbkt == 0) ; 213 cڡ  gnum = rcvbkt -> num (); 215 #ifde DEBUG_PRINT 216 as ( num > 0); 219  gi =0;i< gnum ;i++) { 220  gdhdr * ggdh = rcvbkt -> hd ( i ); 222 #ifde DEBUG_PRINT_GF_COMM 223 gcomm_rvi :: log (<< "[GF_GRdPt: Exag[" << i <<"]" 224 << * gdh 225 << "]" << dl ). ush (); 228 cڡ  g = gdh -> time ; 229 cڡ  g = gdh -> v ; 230 cڡ  glidt = gdh -> idt ; 231 cڡ  glidx = gdh -> dex ; 233 #ifde DEBUG_PRINT 234 as ( = t ); 235 as ( = wl ); 236 as ( lidt = pidt ); 239 #ifde DEBUG_PRINT 240 as ( gdb [ ]); 242 ( ggdb [ ][ ][ lidx ]-> da ( lidt )). cy (* rcvbkt , i , 243 rcvbkt -> bbox ( i ), 244 rcvbkt -> bbox ( i ), 245 m ); 247 de grcvbkt ;cvbkt = 0; 248 ACELiD (); 249 } gACEEndLo ; 251  gp =0;p< gum ;p++) { 252 i( gp ! me && g_cv_rv [ p ] && g_cv_rv[p][ idx ]) 253 g_cv_rv [ p ][ idx ]-> porcv (); 258 gme < ass gACE_GFTy > 259  GridFuni (3)< gACE_GFTy >:: GF_SRdPt (cڡ  time , 260 cڡ  v , 261 #ifde ACEVeGridFuni 262 cڡ  m , 264 cڡ  idt ) 266 i(! ()) ; 268 #ifde DEBUG_PRINT 269 as ( idt = ACE_Ma ); 272 cڡ  gpidt = 273 ( idt = ACE_Ma ? ACE_PtMa : ACE_PtShadow ; 275 #ide ACEVeGridFuni 276 cڡ  gm = ACEA ; 278 cڡ  gt = dagh_timedex ( time , v ); 279 cڡ  g = v -1; 280 cڡ  gwl = v ; 282 i( gt > 2* gtime__d || ! ggdb [ t ]) ; 284 cڡ  gvs = dagh . tٮvs (); 285 cڡ  gum = comm_rvi :: oc_num (); 286 cڡ  gme = comm_rvi :: oc_me (); 287 cڡ  gidx = ; 290 cڡ  gmdex = dagh . maxdex ()+1; 291 cڡ  glcdex = me * mdex ; 293 i( gt_cv_fo [ me ] && 294 gt_cv_fo [ me ][ idx ] && 295 gt_cv_fo [ me ][ idx ]-> gt > 0) { 296  gi =0; i< gngth ; i++i( ggdb [ t ][ ][ i ] && gdb[t][][i]-> dexme (i)) { 297 GDB_Iai ** ggdbi = gdb [ t ][ ][ i ]-> gdbPtSRdInfo (); 299 i( ggdbi !0 m =0; gm < gmdex ; m++) { 300 i(( ggdbi [ lcdex + m ]&& ( ggdb [ t ][ wl ][m])) { 302 #ifde DEBUG_PRINT_GF_COMM 303 gcomm_rvi :: log () << "[GF_SReadParent::LocalCopy " 304 << "[" << i << "<-" << m << "]" 305 << * gdbi [ lcdex + m ] 306 << "]" << dl ). ush (); 308 ggdb [ t ][ ][ i ]-> gridda ( idt ). cy ( gdb [t][ wl ][ m ]-> da ( pidt ), 309 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 310 gdb [ t ][ ][ i ]-> ibox (* gdbi [ lcdex + m ], idt ), 311 m ); 317 i( gum > 1) { 318  gp ; 319  gp =0;p< gum ;p++) { 320 i( gp = me ) ; 321 i( gt_cv_rv [ p ] && 322 gt_cv_rv [ p ][ idx ] && 323 ! gt_cv_rv [ p ][ idx ]-> ived ()) 324 gcomm_rvi :: rve (* t_cv_rv [ p ][ idx ]-> q ()); 327 gLi < gGridDaBuckVoid *>& glgdbkt = gt -> ghos ( t , wl ); 328 GridDaBuckVoid ** ggdbkt = 0; 329 ACELiLo ( lgdbkt , gdbkt , GridDaBuckVoid *) { 330 gGridDaBuck < gACE_GFTy >* grcvbkt = 331 ( GridDaBuck < ACE_GFTy > ** gdbkt ; 333 i( grcvbkt == 0) ; 335 cڡ  gnum = rcvbkt -> num (); 337 #ifde DEBUG_PRINT 338 as ( num > 0); 341  gi =0;i< gnum ;i++) { 342  gdhdr * ggdh = rcvbkt -> hd ( i ); 344 #ifde DEBUG_PRINT_GF_COMM 345 gcomm_rvi :: log (<< "[GF_SRdPt: Exag[" << i <<"]" 346 << * gdh 347 << "]" << dl ). ush (); 350 cڡ  g = gdh -> time ; 351 cڡ  g = gdh -> v ; 352 cڡ  glidt = gdh -> idt ; 353 cڡ  glidx = gdh -> dex ; 355 #ifde DEBUG_PRINT 356 as ( = t ); 357 as ( = wl ); 358 as ( lidt = idt ); 361 #ifde DEBUG_PRINT 362 as ( gdb [ ]); 364 ( ggdb [ ][ ][ lidx ]-> gridda ( lidt )). cy (* rcvbkt , i , 365 rcvbkt -> bbox ( i ), 366 rcvbkt -> bbox ( i ), 367 m ); 369 de grcvbkt ;cvbkt = 0; 370 ACELiD (); 371 } gACEEndLo ; 373  gp =0;p< gum ;p++) { 374 i( gp ! me && t_cv_rv [ p ] && s_cv_rv[p][ idx ]) 375 t_cv_rv [ p ][ idx ]-> porcv (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionUCD1.h 1 #ide _uded_GridFuniUCD1_h 2  #_uded_GridFuniUCD1_h ) 14 gme < ass gACE_GFTy > 15  GridFuni (1)< gACE_GFTy >:: GF_GUCDDa (cڡ ACEUCD (1)& daghucd , 16 cڡ  t , 17 ACE_GFTy *& ucdda , 18 cڡ  ucdrv ) 20 cڡ  gme = comm_rvi :: oc_me (); 22 as ( nems == 1); 24 as (! ucdda ); 25 i( gme = ucdrv ) 26 ucdda = w ACE_GFTy [ daghucd . tٮnodes ]; 28  gidx =0; idx< gdaghucd . gnumblks ; idx++) { 29 cڡ GridDa (1)<>& gucdgd = daghucd . blks [ idx ]; 30 cڡ gBBox & gb = ucdgd . bbox (); 31 cڡ gCods & gs = ucdgd . size (); 34 cڡ  gl = dagh . 2v ( s (0)); 35 GridDa (1)< gACE_GFTy > gtmpgd ; 36 GF_gh_e ( t , l , b ,b, tmpgd , ucdrv , daghucd . idt_ag ); 38 i( gme = ucdrv ) { 41 f_1 ( i , b , s ) { 42 ucdda [ ucdgd ( i )] = tmpgd (i); 43 } gd_f @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionUCD2.h 1 #ide _uded_GridFuniUCD2_h 2  #_uded_GridFuniUCD2_h ) 14 gme < ass gACE_GFTy > 15  GridFuni (2)< gACE_GFTy >:: GF_GUCDDa (cڡ ACEUCD (2)& daghucd , 16 cڡ  t , 17 ACE_GFTy *& ucdda , 18 cڡ  ucdrv ) 20 cڡ  gme = comm_rvi :: oc_me (); 22 as ( nems == 1); 24 as (! ucdda ); 25 i( gme = ucdrv ) 26 ucdda = w ACE_GFTy [ daghucd . tٮnodes ]; 28  gidx =0; idx< gdaghucd . gnumblks ; idx++) { 29 cڡ GridDa (2)<>& gucdgd = daghucd . blks [ idx ]; 30 cڡ gBBox & gb = ucdgd . bbox (); 31 cڡ gCods & gs = ucdgd . size (); 34 as ( s (0) == s(1)); 37 cڡ  gl = dagh . 2v ( s (0)); 38 GridDa (2)< gACE_GFTy > gtmpgd ; 39 GF_gh_e ( t , l , b ,b, tmpgd , ucdrv , daghucd . idt_ag ); 41 i( gme = ucdrv ) { 44 f_2 ( i , j , b , s ) { 45 ucdda [ ucdgd ( i , j )] = tmpgd (i,j); 46 } gd_f @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionUCD3.h 1 #ide _uded_GridFuniUCD3_h 2  #_uded_GridFuniUCD3_h ) 14 gme < ass gACE_GFTy > 15  GridFuni (3)< gACE_GFTy >:: GF_GUCDDa (cڡ ACEUCD (3)& daghucd , 16 cڡ  t , 17 ACE_GFTy *& ucdda , 18 cڡ  ucdrv ) 20 cڡ  gme = comm_rvi :: oc_me (); 22 as ( nems == 1); 24 as (! ucdda ); 25 i( gme = ucdrv ) 26 ucdda = w ACE_GFTy [ daghucd . tٮnodes ]; 28  gidx =0; idx< gdaghucd . gnumblks ; idx++) { 29 cڡ GridDa (3)<>& gucdgd = daghucd . blks [ idx ]; 30 cڡ gBBox & gb = ucdgd . bbox (); 31 cڡ gCods & gs = ucdgd . size (); 34 as ( s (0) == s(1) && s(0) == s(2)); 37 cڡ  gl = dagh . 2v ( s (0)); 38 GridDa (3)< gACE_GFTy > gtmpgd ; 39 GF_gh_e ( t , l , b ,b, tmpgd , ucdrv , daghucd . idt_ag ); 41 i( gme = ucdrv ) { 44 f_3 ( i , j , k , b , s ) { 45 ucdda [ ucdgd ( i , j , k )] = tmpgd (i,j,k); 46 } gd_f @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionViz1.h 1 #ide _uded_GridFuniViz1_h 2  #_uded_GridFuniViz1_h ) 14  #DIE ( X { << X << ush ; `ex (-1); } ) 15  #VIZBUFFER_LENGTH (128) ) 17  #VIZDEFVAL (9999) ) 19 gme < ass gTy > 20  GridFuni (1)< gTy >:: GF_Vw (cڡ  time , 21 cڡ  l , 22 #ifde ACEVeGridFuni 23 cڡ  m , 25 cڡ  axis , 26 cڡ BBox & whe , 27 cڡ  prv , 28 cڡ  ty , 29 cڡ * xg , 30 cڡ * drv , 31 cڡ  idt ) 33 i( gidt = ACE_Shadow && ! shadow ()) ; 34 as ( whe . nk = dagh .rank); 36 #ifde ACEVeGridFuni 37 as ( m < nems && itm >= 0); 40 i( gwhe . emy ()) ; 42 cڡ  gme = comm_rvi :: oc_me (); 43 cڡ  gevs = dagh . tٮvs (); 45 GridDa (1)< gTy >* ggdy = w GridDa(1)< Ty >[ evs ]; 47 cڡ  g = ( l = ACEALevs ) ? 0 :; 48 cڡ  gdl = ( l = ACEALevs ? dagh . fevdex () :; 50 BBox gtmpwhe = whe ; 51  gtm = 0; 52  gtm = ;tm<= dl ;tmpl++) { 53 gtmpwhe . tsize ( dagh . size ( tm , idt )); 54 GF_gh_e ( time , tm , tmpwhe ,tmpwhe, gdy [tm], prv , idt , VIZDEFVAL ); 57 i( gme = prv ) { 59 FILE * xgph ; 60  gbufr [ VIZBUFFER_LENGTH ]; 62  gtm = ;tm<= dl ;tmpl++) { 64 GridDa (1)< gTy >& ggd = gdy [ tm ]; 66 i( gtm = ) { 68 i( ty = ACEViz_XGRAPH ) { 69 i(! drv ) 70 rtf ( bufr , "%s", xg ); 72 rtf ( bufr , "%-diy %s", xg , drv ); 74 i(!( gxgph = pݒ ( bufr , "w"))) 75 DIE ("GridFunction::GF_View -- Cannot startpplication ``" << 76 bufr << "''\n"); 78 i( gty = ACEViz_FILE ) { 79 rtf ( bufr , "%s", xg ); 80 i(!( gxgph = fݒ ( bufr , "w"))) 81 DIE ("GridFunction::GF_View -- Cannot write file``" << 82 bufr << "''\n"); 85 #ifde DEBUG_PRINT 86 gcomm_rvi :: log (<< gd ; 91 rtf ( xgph , "TText: %s\n", game ); 92 rtf ( xgph , "Markers: True\n"); 96 cڡ gCods & glb = gd . bbox (). low (); 97 cڡ gCods & gub = gd . bbox (). u (); 98 cڡ gCods & g = gd . bbox (). size (); 100  gwlb [1], gwub [1], gw [1]; 101 gdagh . wldCods ( lb , , wlb ); 102 gdagh . wldCods ( ub , , wub ); 103 gdagh . wldSp ( , w ); 106 cڡ  ga0 = axis ; 109 i( gtm = ) { 112 rtf ( xgph , "XUnitText: X Slice\n"); 115 rtf ( xgph , "YUnitText: Grid Data Values\n"); 119 Ty gda ; 122  gi0 = lb ( a0 ); 124 Ty gtmpda = (Ty VIZDEFVAL ; 125  gtmpi = -1; 126 gi0 - ( a0 ); 128  gtmpda =( Ty ) VIZDEFVAL && i0 < ub ( a0 )) { 129 tmpi ++; 130 gi0 + ( a0 ); 131 #ifde ACEVeGridFuni 132 gtmpda = gd ( i0 , m ); 134 gtmpda = gd ( i0 ); 138 i( gtmpda !( Ty ) VIZDEFVAL ) { 139 rtf ( xgph , "\"X (Lev=%d)\n", tm ); 140 #ifde ACEVeGridFuni 141 rtf ( xgph , "mov%18.10%18.10e\n", wlb [0]+ tmpi * w [0], gd ( i0 , m )); 143 rtf ( xgph , "mov%18.10%18.10e\n", wlb [0]+ tmpi * w [0], gd ( i0 )); 147 gi0 + ( a0 ); 148  gi = tmpi +1; gi0 < ub ( a0 ); i++, i0 + (a0)) { 149 #ifde ACEVeGridFuni 150 da = gd ( i0 , m ); 152 gda = gd ( i0 ); 154 i( gda !( Ty ) VIZDEFVAL rtf ( xgph , "dw %18.10%18.10e\n", wlb [0]+ i * w [0], da ); 156 rtf ( xgph , "\n"); 157 fush ( xgph ); 159 rtf ( xgph , "\n"); 160 fush ( xgph ); 162 i( gty = ACEViz_XGRAPH ) { 163 i( xgph po (xgraph); 165 i( gty = ACEViz_FILE ) { 166 i( xgph fo (xgraph); 169 i( ggdy gde [] gdarray; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionViz2.h 1 #ide _uded_GridFuniViz2_h 2  #_uded_GridFuniViz2_h ) 14  #DIE ( X { << X << ush ; `ex (-1); } ) 15  #VIZBUFFER_LENGTH (128) ) 17  #VIZDEFVAL (9999) ) 19 gme < ass gTy > 20  GridFuni (2)< gTy >:: GF_Vw (cڡ  time , 21 cڡ  l , 22 #ifde ACEVeGridFuni 23 cڡ  m , 25 cڡ  axis , 26 cڡ BBox & whe , 27 cڡ  prv , 28 cڡ  ty , 29 cڡ * xg , 30 cڡ * drv , 31 cڡ  idt ) 33 i( gidt = ACE_Shadow && ! shadow ()) ; 34 as ( whe . nk = dagh .rank); 36 #ifde ACEVeGridFuni 37 as ( m < nems && itm >= 0); 40 i( gwhe . emy ()) ; 42 cڡ  gme = comm_rvi :: oc_me (); 43 cڡ  gevs = dagh . tٮvs (); 45 GridDa (2)< gTy >* ggdy = w GridDa(2)< Ty >[ evs ]; 47 cڡ  g = ( l = ACEALevs ) ? 0 :; 48 cڡ  gdl = ( l = ACEALevs ? dagh . fevdex () :; 50 BBox gtmpwhe = whe ; 51  gtm = 0; 52  gtm = ;tm<= dl ;tmpl++) { 53 gtmpwhe . tsize ( dagh . size ( tm , idt )); 54 GF_gh_e ( time , tm , tmpwhe ,tmpwhe, gdy [tm], prv , idt , VIZDEFVAL ); 57 i( gme = prv ) { 59 FILE * xgph ; 60  gbufr [ VIZBUFFER_LENGTH ]; 62  gtm = ;tm<= dl ;tmpl++) { 64 GridDa (2)< gTy >& ggd = gdy [ tm ]; 66 i( gtm = ) { 68 i( ty = ACEViz_XGRAPH ) { 69 i(! drv ) 70 rtf ( bufr , "%s", xg ); 72 rtf ( bufr , "%-diy %s", xg , drv ); 74 i(!( gxgph = pݒ ( bufr , "w"))) 75 DIE ("GridFunction::GF_View -- Cannot startpplication ``" << 76 bufr << "''\n"); 78 i( gty = ACEViz_FILE ) { 79 rtf ( bufr , "%s", xg ); 80 i(!( gxgph = fݒ ( bufr , "w"))) 81 DIE ("GridFunction::GF_View -- Cannot write file``" << 82 bufr << "''\n"); 85 #ifde DEBUG_PRINT 86 gcomm_rvi :: log (<< gd ; 91 rtf ( xgph , "TText: %s\n", game ); 92 rtf ( xgph , "Markers: True\n"); 96 cڡ gCods & glb = gd . bbox (). low (); 97 cڡ gCods & gub = gd . bbox (). u (); 98 cڡ gCods & g = gd . bbox (). size (); 100  gwlb [2], gwub [2], gw [2]; 101 gdagh . wldCods ( lb , , wlb ); 102 gdagh . wldCods ( ub , , wub ); 103 gdagh . wldSp ( , w ); 106 cڡ  ga0 = axis ; 107 cڡ  ga1 = ( a0 +1)%2; 110 i( gtm = ) { 113  axis ) 115  ACE_X : 116 rtf ( xgph , "XUnitText: X Slice\n"); 118  gACE_Y : 119 rtf ( xgph , "XUnitText: Y Slice\n"); 124 rtf ( xgph , "YUnitText: Grid Data Values\n"); 128 Ty gda ; 131  gi1 = lb ( a1 ); i1 < ub 1); i1 + (a1)) { 133  i0 = lb ( a0 ); 134 cڡ  gii1 = i1 - lb ( a1 ); 136 Ty gtmpda = (Ty VIZDEFVAL ; 137  gtmpi = -1; 138 gi0 - ( a0 ); 140  gtmpda =( Ty ) VIZDEFVAL && i0 < ub ( a0 )) { 141 tmpi ++; 142 gi0 + ( a0 ); 143  gaxis ) 145  gACE_X : 146 #ifde ACEVeGridFuni 147 tmpda = gd ( i0 , i1 , m ); 149 gtmpda = gd ( i0 , i1 ); 152  gACE_Y : 153 #ifde ACEVeGridFuni 154 tmpda = gd ( i1 , i0 , m ); 156 gtmpda = gd ( i1 , i0 ); 162 i( gtmpda !( Ty ) VIZDEFVAL ) { 163  axis ) 165  ACE_X : 166 rtf ( xgph , "\"X (Y=%g, Lev=%d)\n", wlb [1]+(( w [1]/ (1))* ii1 ), tm ); 167 #ifde ACEVeGridFuni 168 rtf ( xgph , "mov%18.10%18.10e\n", wlb [0]+ tmpi * w [0], gd ( i0 , i1 , m )); 170 rtf ( xgph , "mov%18.10%18.10e\n", wlb [0]+ tmpi * w [0], gd ( i0 , i1 )); 173  gACE_Y : 174 rtf ( xgph , "\"Y (X=%g, Lev=%d)\n", wlb [0]+(( w [0]/ (0))* ii1 ), tm ); 175 #ifde ACEVeGridFuni 176 rtf ( xgph , "mov%18.10%18.10e\n", wlb [1]+ tmpi * w [1], gd ( i1 , i0 , m )); 178 rtf ( xgph , "mov%18.10%18.10e\n", wlb [1]+ tmpi * w [1], gd ( i1 , i0 )); 184 gi0 + ( a0 ); 185  gi = tmpi +1; gi0 < ub ( a0 ); i++, i0 + (a0)) { 186  axis ) 188  ACE_X : 189 #ifde ACEVeGridFuni 190 da = gd ( i0 , i1 , m ); 192 gda = gd ( i0 , i1 ); 194 i( gda !( Ty ) VIZDEFVAL rtf ( xgph , "dw %18.10%18.10e\n", wlb [0]+ i * w [0], da ); 196  gACE_Y : 197 #ifde ACEVeGridFuni 198 da = gd ( i1 , i0 , m ); 200 gda = gd ( i1 , i0 ); 202 i( gda !( Ty ) VIZDEFVAL rtf ( xgph , "dw %18.10%18.10e\n", wlb [1]+ i * w [1], da ); 206 rtf ( xgph , "\n"); 207 fush ( xgph ); 210 rtf ( xgph , "\n"); 211 fush ( xgph ); 213 i( gty = ACEViz_XGRAPH ) { 214 i( xgph po (xgraph); 216 i( gty = ACEViz_FILE ) { 217 i( xgph fo (xgraph); 220 i( ggdy gde [] gdarray; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionViz3.h 1 #ide _uded_GridFuniViz3_h 2  #_uded_GridFuniViz3_h ) 14  #DIE ( X { << X << ush ; `ex (-1); } ) 15  #VIZBUFFER_LENGTH (128) ) 17  #VIZDEFVAL (9999) ) 19 gme < ass gTy > 20  GridFuni (3)< gTy >:: GF_Vw (cڡ  time , 21 cڡ  l , 22 #ifde ACEVeGridFuni 23 cڡ  m , 25 cڡ  axis , 26 cڡ BBox & whe , 27 cڡ  prv , 28 cڡ  ty , 29 cڡ * xg , 30 cڡ * drv , 31 cڡ  idt ) 33 i( gidt = ACE_Shadow && ! shadow ()) ; 34 as ( whe . nk = dagh .rank); 36 #ifde ACEVeGridFuni 37 as ( m < nems && itm >= 0); 40 i( gwhe . emy ()) ; 42 cڡ  gme = comm_rvi :: oc_me (); 43 cڡ  gevs = dagh . tٮvs (); 45 GridDa (3)< gTy >* ggdy = w GridDa(3)< Ty >[ evs ]; 47 cڡ  g = ( l = ACEALevs ) ? 0 :; 48 cڡ  gdl = ( l = ACEALevs ? dagh . fevdex () :; 50 BBox gtmpwhe = whe ; 51  gtm = 0; 52  gtm = ;tm<= dl ;tmpl++) { 53 gtmpwhe . tsize ( dagh . size ( tm , idt )); 54 GF_gh_e ( time , tm , tmpwhe ,tmpwhe, gdy [tm], prv , idt , VIZDEFVAL ); 57 i( gme = prv ) { 59 FILE * xgph ; 60  gbufr [ VIZBUFFER_LENGTH ]; 62  gtm = ;tm<= dl ;tmpl++) { 64 GridDa (3)< gTy >& ggd = gdy [ tm ]; 66 i( gtm = ) { 68 i( ty = ACEViz_XGRAPH ) { 69 i(! drv ) 70 rtf ( bufr , "%s", xg ); 72 rtf ( bufr , "%-diy %s", xg , drv ); 74 i(!( gxgph = pݒ ( bufr , "w"))) 75 DIE ("GridFunction::GF_View -- Cannot startpplication ``" << 76 bufr << "''\n"); 78 i( gty = ACEViz_FILE ) { 79 rtf ( bufr , "%s", xg ); 80 i(!( gxgph = fݒ ( bufr , "w"))) 81 DIE ("GridFunction::GF_View -- Cannot write file``" << 82 bufr << "''\n"); 85 #ifde DEBUG_PRINT 86 gcomm_rvi :: log (<< gd ; 91 rtf ( xgph , "TText: %s\n", game ); 92 rtf ( xgph , "Markers: True\n"); 96 cڡ gCods & glb = gd . bbox (). low (); 97 cڡ gCods & gub = gd . bbox (). u (); 98 cڡ gCods & g = gd . bbox (). size (); 100  gwlb [3], gwub [3], gw [3]; 101 gdagh . wldCods ( lb , , wlb ); 102 gdagh . wldCods ( ub , , wub ); 103 gdagh . wldSp ( , w ); 106 cڡ  ga0 = axis ; 107 cڡ  ga1 = ( a0 +1)%3; 108 cڡ  ga2 = ( a0 +2)%3; 111 i( gtm = ) { 114  axis ) 116  ACE_X : 117 rtf ( xgph , "XUnitText: X Slice\n"); 119  gACE_Y : 120 rtf ( xgph , "XUnitText: Y Slice\n"); 122  gACE_Z : 123 rtf ( xgph , "XUnitText: Z Slice\n"); 128 rtf ( xgph , "YUnitText: Grid Data Values\n"); 132 Ty gda ; 135  gi2 = lb ( a2 ); i2 < ub 2); i2 + (a2)) { 136  i1 = lb ( a1 ); gi1 < ub 1); i1 + (a1)) { 138  i0 = lb ( a0 ); 139 cڡ  gii1 = i1 - lb ( a1 ); 140 cڡ  gii2 = i2 - lb ( a2 ); 142 Ty gtmpda = (Ty VIZDEFVAL ; 143  gtmpi = -1; 144 gi0 - ( a0 ); 146  gtmpda =( Ty ) VIZDEFVAL && i0 < ub ( a0 )) { 147 tmpi ++; 148 gi0 + ( a0 ); 149  gaxis ) 151  gACE_X : 152 #ifde ACEVeGridFuni 153 tmpda = gd ( i0 , i1 , i2 , m ); 155 gtmpda = gd ( i0 , i1 , i2 ); 158  gACE_Y : 159 #ifde ACEVeGridFuni 160 tmpda = gd ( i2 , i0 , i1 , m ); 162 gtmpda = gd ( i2 , i0 , i1 ); 165  gACE_Z : 166 #ifde ACEVeGridFuni 167 tmpda = gd ( i1 , i2 , i0 , m ); 169 gtmpda = gd ( i1 , i2 , i0 ); 175 i( gtmpda !( Ty ) VIZDEFVAL ) { 176  axis ) 178  ACE_X : 179 rtf ( xgph , "\"X (Y=%g, Z=%g, Lev=%d)\n", wlb [1]+(( w [1]/ (1))* ii1 ), 180 wlb [2]+(( w [2]/ (2))* ii2 ), tm ); 181 #ifde ACEVeGridFuni 182 rtf ( xgph , "mov%18.10%18.10e\n", wlb [0]+ tmpi * w [0], gd ( i0 , i1 , i2 , m )); 184 rtf ( xgph , "mov%18.10%18.10e\n", wlb [0]+ tmpi * w [0], gd ( i0 , i1 , i2 )); 187  gACE_Y : 188 rtf ( xgph , "\"Y (X=%g, Z=%g, Lev=%d)\n", wlb [0]+(( w [0]/ (0))* ii2 ), 189 wlb [2]+(( w [2]/ (2))* ii1 ), tm ); 190 #ifde ACEVeGridFuni 191 rtf ( xgph , "mov%18.10%18.10e\n", wlb [1]+ tmpi * w [1], gd ( i2 , i0 , i1 , m )); 193 rtf ( xgph , "mov%18.10%18.10e\n", wlb [1]+ tmpi * w [1], gd ( i2 , i0 , i1 )); 196  gACE_Z : 197 rtf ( xgph , "\"Z (X=%g, Y=%g, Lev=%d)\n", wlb [0]+(( w [0]/ (0))* ii1 ), 198 wlb [1]+(( w [1]/ (1))* ii2 ), tm ); 199 #ifde ACEVeGridFuni 200 rtf ( xgph , "mov%18.10%18.10e\n", wlb [2]+ tmpi * w [2], gd ( i1 , i2 , i0 , m )); 202 rtf ( xgph , "mov%18.10%18.10e\n", wlb [2]+ tmpi * w [2], gd ( i1 , i2 , i0 )); 208 gi0 + ( a0 ); 209  gi = tmpi +1; gi0 < ub ( a0 ); i++, i0 + (a0)) { 210  axis ) 212  ACE_X : 213 #ifde ACEVeGridFuni 214 da = gd ( i0 , i1 , i2 , m ); 216 gda = gd ( i0 , i1 , i2 ); 218 i( gda !( Ty ) VIZDEFVAL rtf ( xgph , "dw %18.10%18.10e\n", wlb [0]+ i * w [0], da ); 220  gACE_Y : 221 #ifde ACEVeGridFuni 222 da = gd ( i2 , i0 , i1 , m ); 224 gda = gd ( i2 , i0 , i1 ); 226 i( gda !( Ty ) VIZDEFVAL rtf ( xgph , "dw %18.10%18.10e\n", wlb [1]+ i * w [1], da ); 228  gACE_Z : 229 #ifde ACEVeGridFuni 230 da = gd ( i1 , i2 , i0 , m ); 232 gda = gd ( i1 , i2 , i0 ); 234 i( gda !( Ty ) VIZDEFVAL rtf ( xgph , "dw %18.10%18.10e\n", wlb [2]+ i * w [2], da ); 238 rtf ( xgph , "\n"); 239 fush ( xgph ); 243 rtf ( xgph , "\n"); 244 fush ( xgph ); 246 i( gty = ACEViz_XGRAPH ) { 247 i( xgph po (xgraph); 249 i( gty = ACEViz_FILE ) { 250 i( xgph fo (xgraph); 253 i( ggdy gde [] gdarray; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionVoid.cpp 11  ~"GridFuniVoid.h " 12  ~"GridHrchy.h " 18 gGridFuniVoid :: $GridFuniVoid (cڡ  ty , 19 cڡ  nk , 20 cڡ  me [], 21 cڡ  nms , 22 GridHrchy & gh , 23 cڡ  ign , 24 cڡ * bndrywidth , 25 cڡ * extghwidth , 26 cڡ  cag , 27 cڡ  sag , 28 cڡ  pag , 29 cڡ  fag , 30 cڡ  bag , 31 cڡ  adbag , 32 cڡ  extghag ) 33 : `gy ( ty ), `gk ( nk ), `nems ( nms ), 34 `ignmt ( ign ), 35 `bwidth (0), `extghowidth (0), 36 `comm_ag ( cag ), `shadow_ag ( sag ), 37 `bndry_ag ( bag ), `adtbndry_ag ( adbag ), 38 `extgho_ag ( extghag ), `compo_ag ( ACEF ), 39 `me_ag ( ACENu ), 40 `_ag ( ACETrue ), `upde_ag (ACETrue), 41 `g_ag ( ACETrue ), `sh_g_ag (ACETrue), 42 `time_ag ( ACETrue ), `sh_time_ag (ACETrue), 43 `ri_ag ( ACETrue ), 44 `bndry_upde_ag ( ACETrue ), 45 `adtbndry_upde_ag ( ACETrue ), 46 `io_ag ( ACETrue ), `chk_ag (ACETrue), 47 `time__d (0), `a__d (0), `time_s (0), 48 `is ( gh . nk , ACEGhoIai , 1), 49 `gho_nd_fo (0), `gho_cv_t (0), `gho_cv_fo (0), 50 `gho_cv_rv (0), `da_cv_rv (0), 51 `_ag ( pag ), 52 `g_nd_fo (0), `g_cv_fo (0), `g_cv_rv (0), 53 `t_nd_fo (0), `t_cv_fo (0), `t_cv_rv (0), 54 `ux_ag ( fag ), `ux_nd_fo (0), `ux_cv_fo (0), 55 `ux_cv_rv (0), 56 `upded ( gh . `updedvue ()), 57 `gt (0), `dagh ( gh ), 58 `rcvsize (0), `shrcvsize (0), ` (0), `dsize (0), `dbbox (0), 59 `ddex (0), `rcvdex (0), `dv (0), `dt (0) 61 `ry ( game , me ); 63 dagh . `ACE_InOvps ( gy , ovp ); 65 * nks = w [ ACEMaxRk ]; 66 dagh . `ACE_InRks ( ignmt , nks ); 68 time_s = w [2* time__d +1]; 69 time_s [2* time__d ] = 2*time_sten_rad; 71 a__d = w [2* gk ]; 72 bwidth = w [2* gk ]; 73 extghowidth = w [2* gk ]; 74  r =0;< gk ;++) { 75 a__d [2* r ] = 0; 76 a__d [2* r +1] = 0; 78 bwidth [2* r ] = bndrywidth [2* nks [r]]; 79 bwidth [2* r +1] = bndrywidth [2* nks [r]+1]; 81 extghowidth [2* r ] = extghwidth [2* nks [r]]; 82 extghowidth [2* r +1] = extghwidth [2* nks [r]+1]; 85 cuime [0] = curtime[1] = 0; 87 i( cag > ACETemeComm ) { 88 me_ag = cag - ACETemeComm ; 89 #ifde DEBUG_PRINT 90 `as ( dagh . gi [ me_ag ]); 92 comm_ag = dagh . gi [ me_ag ]->comm_flag; 95  ui =0; ui< ACEGFVFgNum ; ui++) 96 urags [ ui ] = 0; 98 i( nks de []anks; 100 gfid = gh . `ACE_AddGridFuni (( GridFuniVoid * this ); 102 cڡ  um = comm_rvi :: `oc_num (); 103  p = 0; 106 i( `comm ()) { 107 gho_nd_fo = w GF_Iai ** [ um ]; 108 gho_cv_fo = w GF_Iai ** [ um ]; 109 gho_cv_rv = w GridTabGhoRcv ** [ um ]; 110  p =0;p< um ;p++) { 111 gho_nd_fo [ p ] = 0; 112 gho_cv_fo [ p ] = 0; 113 gho_cv_rv [ p ] = 0; 118 da_cv_rv = w GridTabDaRcv ** [ um ]; 119  p =0;p< um ;p++ da_cv_rv [p] = 0; 122 i( ` ()) { 123 g_nd_fo = w GF_Iai ** [ um ]; 124 g_cv_fo = w GF_Iai ** [ um ]; 125 g_cv_rv = w GridTabGhoRcv ** [ um ]; 126 t_nd_fo = w GF_Iai ** [ um ]; 127 t_cv_fo = w GF_Iai ** [ um ]; 128 t_cv_rv = w GridTabGhoRcv ** [ um ]; 129  p =0;p< um ;p++) { 130 g_nd_fo [ p ] = 0; 131 g_cv_fo [ p ] = 0; 132 g_cv_rv [ p ] = 0; 133 t_nd_fo [ p ] = 0; 134 t_cv_fo [ p ] = 0; 135 t_cv_rv [ p ] = 0; 140 i( `uxes ()) { 141 ux_nd_fo = w GF_Iai ** [ um ]; 142 ux_cv_fo = w GF_Iai ** [ um ]; 143 ux_cv_rv = w GridTabGhoRcv ** [ um ]; 144  p =0;p< um ;p++) { 145 ux_nd_fo [ p ] = 0; 146 ux_cv_fo [ p ] = 0; 147 ux_cv_rv [ p ] = 0; 150 } } 152 gGridFuniVoid :: $GridFuniVoid (cڡ  ty , 153 cڡ  nk , 154 cڡ  me [], 155 cڡ  nms , 156 cڡ  t , 157 cڡ  s , 158 GridHrchy & gh , 159 cڡ  ign , 160 cڡ * bndrywidth , 161 cڡ * extghwidth , 162 cڡ  cag , 163 cڡ  sag , 164 cڡ  pag , 165 cڡ  fag , 166 cڡ  bag , 167 cڡ  adbag , 168 cڡ  extghag ) 169 : `gy ( ty ), `gk ( nk ), `nems ( nms ), 170 `ignmt ( ign ), 171 `bwidth (0), `extghowidth (0), 172 `comm_ag ( cag ), `shadow_ag ( sag ), 173 `bndry_ag ( bag ), `adtbndry_ag ( adbag ), 174 `extgho_ag ( extghag ), `compo_ag ( ACEF ), 175 `me_ag ( ACENu ), 176 `_ag ( ACETrue ), `upde_ag (ACETrue), 177 `g_ag ( ACETrue ), `sh_g_ag (ACETrue), 178 `time_ag ( ACETrue ), `sh_time_ag (ACETrue), 179 `ri_ag ( ACETrue ), 180 `bndry_upde_ag ( ACETrue ), 181 `adtbndry_upde_ag ( ACETrue ), 182 `io_ag ( ACETrue ), `chk_ag (ACETrue), 183 `time__d ( t ), `a__d (0), `time_s (0), 184 `is ( gh . nk , ACEGhoIai , 1), 185 `gho_nd_fo (0), `gho_cv_t (0), `gho_cv_fo (0), 186 `gho_cv_rv (0), `da_cv_rv (0), 187 `_ag ( pag ), 188 `g_nd_fo (0), `g_cv_fo (0), `g_cv_rv (0), 189 `t_nd_fo (0), `t_cv_fo (0), `t_cv_rv (0), 190 `ux_ag ( fag ), `ux_nd_fo (0), `ux_cv_fo (0), 191 `ux_cv_rv (0), 192 `upded ( gh . `updedvue ()), 193 `gt (0), `dagh ( gh ), 194 `rcvsize (0), `shrcvsize (0), ` (0), `dsize (0), `dbbox (0), 195 `ddex (0), `rcvdex (0), `dv (0), `dt (0) 197 `ry ( game , me ); 199 dagh . `ACE_InOvps ( gy , ovp ); 201 * nks = w [ ACEMaxRk ]; 202 dagh . `ACE_InRks ( ignmt , nks ); 204 time_s = w [2* time__d +1]; 205  i =0;i< time__d ;i++) { 206 time_s [2* i ] = 2*i; 207 time_s [2* i +1] = 2*i+1; 209 time_s [2* time__d ] = 2*time_sten_rad; 211 a__d = w [2* gk ]; 212 bwidth = w [2* gk ]; 213 extghowidth = w [2* gk ]; 214  r =0;< gk ;++) { 215 a__d [2* r ] = s ; 216 a__d [2* r +1] = s ; 218 bwidth [2* r ] = bndrywidth [2* nks [r]]; 219 bwidth [2* r +1] = bndrywidth [2* nks [r]+1]; 221 extghowidth [2* r ] = extghwidth [2* nks [r]]; 222 extghowidth [2* r +1] = extghwidth [2* nks [r]+1]; 225 cuime [0] = curtime[1] = 0; 227 i( cag > ACETemeComm ) { 228 me_ag = cag - ACETemeComm ; 229 #ifde DEBUG_PRINT 230 `as ( dagh . gi [ me_ag ]); 232 comm_ag = dagh . gi [ me_ag ]->comm_flag; 235  ui =0; ui< ACEGFVFgNum ; ui++) 236 urags [ ui ] = 0; 238 i( nks de []anks; 240 gfid = gh . `ACE_AddGridFuni (( GridFuniVoid * this ); 242 cڡ  um = comm_rvi :: `oc_num (); 243  p = 0; 246 i( `comm ()) { 247 gho_nd_fo = w GF_Iai ** [ um ]; 248 gho_cv_fo = w GF_Iai ** [ um ]; 249 gho_cv_rv = w GridTabGhoRcv ** [ um ]; 250  p =0;p< um ;p++) { 251 gho_nd_fo [ p ] = 0; 252 gho_cv_fo [ p ] = 0; 253 gho_cv_rv [ p ] = 0; 258 da_cv_rv = w GridTabDaRcv ** [ um ]; 259  p =0;p< um ;p++ da_cv_rv [p] = 0; 262 i( ` ()) { 263 g_nd_fo = w GF_Iai ** [ um ]; 264 g_cv_fo = w GF_Iai ** [ um ]; 265 g_cv_rv = w GridTabGhoRcv ** [ um ]; 266 t_nd_fo = w GF_Iai ** [ um ]; 267 t_cv_fo = w GF_Iai ** [ um ]; 268 t_cv_rv = w GridTabGhoRcv ** [ um ]; 269  p =0;p< um ;p++) { 270 g_nd_fo [ p ] = 0; 271 g_cv_fo [ p ] = 0; 272 g_cv_rv [ p ] = 0; 273 t_nd_fo [ p ] = 0; 274 t_cv_fo [ p ] = 0; 275 t_cv_rv [ p ] = 0; 280 i( `uxes ()) { 281 ux_nd_fo = w GF_Iai ** [ um ]; 282 ux_cv_fo = w GF_Iai ** [ um ]; 283 ux_cv_rv = w GridTabGhoRcv ** [ um ]; 284  p =0;p< um ;p++) { 285 ux_nd_fo [ p ] = 0; 286 ux_cv_fo [ p ] = 0; 287 ux_cv_rv [ p ] = 0; 290 } } 292 gGridFuniVoid :: $GridFuniVoid (cڡ  ty , 293 cڡ  nk , 294 cڡ  me [], 295 cڡ  nms , 296 cڡ  t , 297 cڡ * s , 298 GridHrchy & gh , 299 cڡ  ign , 300 cڡ * bndrywidth , 301 cڡ * extghwidth , 302 cڡ  cag , 303 cڡ  sag , 304 cڡ  pag , 305 cڡ  fag , 306 cڡ  bag , 307 cڡ  adbag , 308 cڡ  extghag ) 309 : `gy ( ty ), `gk ( nk ), `nems ( nms ), 310 `ignmt ( ign ), 311 `bwidth (0), `extghowidth (0), 312 `comm_ag ( cag ), `shadow_ag ( sag ), 313 `bndry_ag ( bag ), `adtbndry_ag ( adbag ), 314 `extgho_ag ( extghag ), `compo_ag ( ACEF ), 315 `me_ag ( ACENu ), 316 `_ag ( ACETrue ), `upde_ag (ACETrue), 317 `g_ag ( ACETrue ), `sh_g_ag (ACETrue), 318 `time_ag ( ACETrue ), `sh_time_ag (ACETrue), 319 `ri_ag ( ACETrue ), 320 `bndry_upde_ag ( ACETrue ), 321 `adtbndry_upde_ag ( ACETrue ), 322 `io_ag ( ACETrue ), `chk_ag (ACETrue), 323 `time__d ( t ), `a__d (0), `time_s (0), 324 `is ( gh . nk , ACEGhoIai , 1), 325 `gho_nd_fo (0), `gho_cv_t (0), `gho_cv_fo (0), 326 `gho_cv_rv (0), `da_cv_rv (0), 327 `_ag ( pag ), 328 `g_nd_fo (0), `g_cv_fo (0), `g_cv_rv (0), 329 `t_nd_fo (0), `t_cv_fo (0), `t_cv_rv (0), 330 `ux_ag ( fag ), `ux_nd_fo (0), `ux_cv_fo (0), 331 `ux_cv_rv (0), 332 `upded ( gh . `updedvue ()), 333 `gt (0), `dagh ( gh ), 334 `rcvsize (0), `shrcvsize (0), ` (0), `dsize (0), `dbbox (0), 335 `ddex (0), `rcvdex (0), `dv (0), `dt (0) 337 `ry ( game , me ); 339 dagh . `ACE_InOvps ( gy , ovp ); 341 * nks = w [ ACEMaxRk ]; 342 dagh . `ACE_InRks ( ignmt , nks ); 344 time_s = w [2* time__d +1]; 345  i =0;i< time__d ;i++) { 346 time_s [2* i ] = 2*i; 347 time_s [2* i +1] = 2*i+1; 349 time_s [2* time__d ] = 2*time_sten_rad; 351 a__d = w [2* gk ]; 352 bwidth = w [2* gk ]; 353 extghowidth = w [2* gk ]; 354  r =0;< gk ;++) { 355 a__d [2* r ] = s [2*r]; 356 a__d [2* r +1] = s [2*r+1]; 358 bwidth [2* r ] = bndrywidth [2* nks [r]]; 359 bwidth [2* r +1] = bndrywidth [2* nks [r]+1]; 361 extghowidth [2* r ] = extghwidth [2* nks [r]]; 362 extghowidth [2* r +1] = extghwidth [2* nks [r]+1]; 365 cuime [0] = curtime[1] = 0; 367 i( cag > ACETemeComm ) { 368 me_ag = cag - ACETemeComm ; 369 #ifde DEBUG_PRINT 370 `as ( dagh . gi [ me_ag ]); 372 comm_ag = dagh . gi [ me_ag ]->comm_flag; 375  ui =0; ui< ACEGFVFgNum ; ui++) 376 urags [ ui ] = 0; 378 i( nks de []anks; 380 gfid = gh . `ACE_AddGridFuni (( GridFuniVoid * this ); 382 cڡ  um = comm_rvi :: `oc_num (); 383  p = 0; 386 i( `comm ()) { 387 gho_nd_fo = w GF_Iai ** [ um ]; 388 gho_cv_fo = w GF_Iai ** [ um ]; 389 gho_cv_rv = w GridTabGhoRcv ** [ um ]; 390  p =0;p< um ;p++) { 391 gho_nd_fo [ p ] = 0; 392 gho_cv_fo [ p ] = 0; 393 gho_cv_rv [ p ] = 0; 398 da_cv_rv = w GridTabDaRcv ** [ um ]; 399  p =0;p< um ;p++ da_cv_rv [p] = 0; 402 i( ` ()) { 403 g_nd_fo = w GF_Iai ** [ um ]; 404 g_cv_fo = w GF_Iai ** [ um ]; 405 g_cv_rv = w GridTabGhoRcv ** [ um ]; 406 t_nd_fo = w GF_Iai ** [ um ]; 407 t_cv_fo = w GF_Iai ** [ um ]; 408 t_cv_rv = w GridTabGhoRcv ** [ um ]; 409  p =0;p< um ;p++) { 410 g_nd_fo [ p ] = 0; 411 g_cv_fo [ p ] = 0; 412 g_cv_rv [ p ] = 0; 413 t_nd_fo [ p ] = 0; 414 t_cv_fo [ p ] = 0; 415 t_cv_rv [ p ] = 0; 420 i( `uxes ()) { 421 ux_nd_fo = w GF_Iai ** [ um ]; 422 ux_cv_fo = w GF_Iai ** [ um ]; 423 ux_cv_rv = w GridTabGhoRcv ** [ um ]; 424  p =0;p< um ;p++) { 425 ux_nd_fo [ p ] = 0; 426 ux_cv_fo [ p ] = 0; 427 ux_cv_rv [ p ] = 0; 430 } } 432 gGridFuniVoid :: $GridFuniVoid (cڡ  me [], 433 cڡ  nk , 434 cڡ  nms , 435 cڡ GridFuniVoid & gfv , 436 cڡ  cag , 437 cڡ  sag , 438 cڡ  pag , 439 cڡ  fag , 440 cڡ  bag , 441 cڡ  adbag , 442 cڡ  extghag ) 443 : `gy ( gfv . gy ), `gk ( nk ), `nems ( nms ), 444 `ignmt ( gfv . ignmt ), 445 `bwidth (0), `extghowidth (0), 446 `comm_ag ( cag ), `shadow_ag ( sag ), 447 `bndry_ag ( bag ), `adtbndry_ag ( adbag ), 448 `extgho_ag ( extghag ), `compo_ag ( ACEF ), 449 `me_ag ( ACENu ), 450 `_ag ( ACETrue ), `upde_ag (ACETrue), 451 `g_ag ( ACETrue ), `sh_g_ag (ACETrue), 452 `time_ag ( ACETrue ), `sh_time_ag (ACETrue), 453 `ri_ag ( ACETrue ), 454 `bndry_upde_ag ( ACETrue ), 455 `adtbndry_upde_ag ( ACETrue ), 456 `io_ag ( ACETrue ), `chk_ag (ACETrue), 457 `time__d ( gfv . time__d ), `a__d (0), 458 `time_s (0), 459 `is ( gfv . dagh . nk , ACEGhoIai , 1), 460 `gho_nd_fo (0), `gho_cv_t (0), `gho_cv_fo (0), 461 `gho_cv_rv (0), `da_cv_rv (0), 462 `_ag ( pag ), 463 `g_nd_fo (0), `g_cv_fo (0), `g_cv_rv (0), 464 `t_nd_fo (0), `t_cv_fo (0), `t_cv_rv (0), 465 `ux_ag ( fag ), `ux_nd_fo (0), `ux_cv_fo (0), 466 `ux_cv_rv (0), 467 `upded ( gfv . dagh . `updedvue ()), 468 `gt (0), `dagh ( gfv . dagh ), 469 `rcvsize (0), `shrcvsize (0), ` (0), `dsize (0), `dbbox (0), 470 `ddex (0), `rcvdex (0), `dv (0), `dt (0) 472 `ry ( game , me ); 474 dagh . `ACE_InOvps ( gy , ovp ); 476 time_s = w [2* time__d +1]; 477  i =0;i< time__d ;i++) { 478 time_s [2* i ] = gfv .time_alias[2*i]; 479 time_s [2* i +1] = gfv .time_alias[2*i+1]; 481 time_s [2* time__d ] = gfv .time_alias[2*time_sten_rad]; 483 cڡ * s = gfv . a__d ; 484 cڡ * bndrywidth = gfv . bwidth ; 485 cڡ * extghwidth = gfv . extghowidth ; 487 a__d = w [2* gk ]; 488 bwidth = w [2* gk ]; 489 extghowidth = w [2* gk ]; 491  r =0;< gk ;++) { 492 a__d [2* r ] = s [2*r]; 493 a__d [2* r +1] = s [2*r+1]; 495 bwidth [2* r ] = bndrywidth [2*r]; 496 bwidth [2* r +1] = bndrywidth [2*r+1]; 498 extghowidth [2* r ] = extghwidth [2*r]; 499 extghowidth [2* r +1] = extghwidth [2*r+1]; 502 cuime [0] = curtime[1] = 0; 504 i( cag > ACETemeComm ) { 505 me_ag = cag - ACETemeComm ; 506 #ifde DEBUG_PRINT 507 `as ( dagh . gi [ me_ag ]); 509 comm_ag = dagh . gi [ me_ag ]->comm_flag; 512  ui =0; ui< ACEGFVFgNum ; ui++) 513 urags [ ui ] = 0; 515 gfid = dagh . `ACE_AddGridFuni (( GridFuniVoid * this ); 517 cڡ  um = comm_rvi :: `oc_num (); 518  p = 0; 521 i( `comm ()) { 522 gho_nd_fo = w GF_Iai ** [ um ]; 523 gho_cv_fo = w GF_Iai ** [ um ]; 524 gho_cv_rv = w GridTabGhoRcv ** [ um ]; 525  p =0;p< um ;p++) { 526 gho_nd_fo [ p ] = 0; 527 gho_cv_fo [ p ] = 0; 528 gho_cv_rv [ p ] = 0; 533 da_cv_rv = w GridTabDaRcv ** [ um ]; 534  p =0;p< um ;p++ da_cv_rv [p] = 0; 537 i( ` ()) { 538 g_nd_fo = w GF_Iai ** [ um ]; 539 g_cv_fo = w GF_Iai ** [ um ]; 540 g_cv_rv = w GridTabGhoRcv ** [ um ]; 541 t_nd_fo = w GF_Iai ** [ um ]; 542 t_cv_fo = w GF_Iai ** [ um ]; 543 t_cv_rv = w GridTabGhoRcv ** [ um ]; 544  p =0;p< um ;p++) { 545 g_nd_fo [ p ] = 0; 546 g_cv_fo [ p ] = 0; 547 g_cv_rv [ p ] = 0; 548 t_nd_fo [ p ] = 0; 549 t_cv_fo [ p ] = 0; 550 t_cv_rv [ p ] = 0; 555 i( `uxes ()) { 556 ux_nd_fo = w GF_Iai ** [ um ]; 557 ux_cv_fo = w GF_Iai ** [ um ]; 558 ux_cv_rv = w GridTabGhoRcv ** [ um ]; 559  p =0;p< um ;p++) { 560 ux_nd_fo [ p ] = 0; 561 ux_cv_fo [ p ] = 0; 562 ux_cv_rv [ p ] = 0; 565 } } 570 gGridFuniVoid ::~ $GridFuniVoid () 572 i( `comm ()) { 573 `GF_DeGhoCommInfo (); 574 i( gho_nd_fo de [] ghost_send_info; 575 gho_nd_fo = 0; 576 i( gho_cv_t de [] ghost_recv_cnt; 577 gho_cv_t = 0; 578 i( gho_cv_fo de [] ghost_recv_info; 579 gho_cv_fo = 0; 580 i( gho_cv_rv de [] ghost_recv_server; 581 gho_cv_rv = 0; 584 `GF_DeDaCommInfo (); 585 i( da_cv_rv de [] data_recv_server; 586 da_cv_rv = 0; 588 i( ` ()) { 589 `GF_DePtCommInfo (); 590 i( g_nd_fo de [] gparent_send_info; 591 g_nd_fo = 0; 592 i( g_cv_fo de [] gparent_recv_info; 593 g_cv_fo = 0; 594 i( g_cv_rv de [] gparent_recv_server; 595 g_cv_rv = 0; 597 i( t_nd_fo de [] sparent_send_info; 598 t_nd_fo = 0; 599 i( t_cv_fo de [] sparent_recv_info; 600 t_cv_fo = 0; 601 i( t_cv_rv de [] sparent_recv_server; 602 t_cv_rv = 0; 605 i( `uxes ()) { 606 `GF_DeFluxCommInfo (); 607 i( ux_nd_fo de [] flux_send_info; 608 ux_nd_fo = 0; 609 i( ux_cv_fo de [] flux_recv_info; 610 ux_cv_fo = 0; 611 i( ux_cv_rv de [] flux_recv_server; 612 ux_cv_rv = 0; 615 i( gt de gt; 617 i( cuime [0] de [] curtime[0]; 618 i( cuime [1] de [] curtime[1]; 619 i( time_s de []ime_alias; 620 i( a__d de [] space_sten_rad; 621 i( bwidth de [] bwidth; 622 i( extghowidth de []xtghostwidth; 624 dagh . `ACE_DGridFuni ( gfid ); 625 } } 630  gGridFuniVoid :: $GF_DeGhoCommInfo () 632 cڡ  um = comm_rvi :: `oc_num (); 634 i( `comm ()) { 635 cڡ  vs = dagh . `tٮvs (); 636 cڡ  t = ACEMaxAxis * ACEMaxDs * vs ; 638  i = 0, j = 0; 640  i = um -1;i>=0;i--) { 641 i( gho_nd_fo [ i ]) { 642  j = t -1;j>=0;j--) { 643 i( gho_nd_fo [ i ] && gho_nd_fo[i][ j ]) { 644 de gho_nd_fo [ i ][ j ]; 645 gho_nd_fo [ i ][ j ] = 0; 648 de [] gho_nd_fo [ i ]; 649 gho_nd_fo [ i ] = 0; 651 i( gho_cv_fo [ i ] || gho_cv_rv [i]) { 652  j = t -1;j>=0;j--) { 653 i( gho_cv_fo [ i ] && gho_cv_fo[i][ j ]) { 654 de gho_cv_fo [ i ][ j ]; 655 gho_cv_fo [ i ][ j ] = 0; 657 i( gho_cv_rv [ i ] && gho_cv_rv[i][ j ]) { 658 de gho_cv_rv [ i ][ j ]; 659 gho_cv_rv [ i ][ j ] = 0; 662 i( gho_cv_fo [ i ] de [] ghost_recv_info[i]; 663 gho_cv_fo [ i ] = 0; 664 i( gho_cv_rv [ i ] de [] ghost_recv_server[i]; 665 gho_cv_rv [ i ] = 0; 669 } } 671  gGridFuniVoid :: $GF_DeDaCommInfo () 673 cڡ  um = comm_rvi :: `oc_num (); 675 cڡ  times = 2* time__d +1; 676  i = um -1;i>=0;i--) { 677 i( da_cv_rv [ i ]) { 678  j = times -1;j>=0;j--) { 679 i( da_cv_rv [ i ][ j ]) { 680 de da_cv_rv [ i ][ j ]; 681 da_cv_rv [ i ][ j ] = 0; 683 de [] da_cv_rv [ i ]; 684 da_cv_rv [ i ] = 0; 688 } } 690  gGridFuniVoid :: $GF_DePtCommInfo () 692 cڡ  um = comm_rvi :: `oc_num (); 694 i( ` ()) { 695 cڡ  t = dagh . `tٮvs (); 697  i = 0, j = 0; 699  i = um -1;i>=0;i--) { 700 i( g_nd_fo [ i ]) { 701  j = t -1;j>=0;j--) { 702 i( g_nd_fo [ i ] && g_nd_fo[i][ j ]) { 703 de g_nd_fo [ i ][ j ]; 704 g_nd_fo [ i ][ j ] = 0; 707 de [] g_nd_fo [ i ]; 708 g_nd_fo [ i ] = 0; 710 i( g_cv_fo [ i ] || g_cv_rv [i]) { 711  j = t -1;j>=0;j--) { 712 i( g_cv_fo [ i ] && g_cv_fo[i][ j ]) { 713 de g_cv_fo [ i ][ j ]; 714 g_cv_fo [ i ][ j ] = 0; 716 i( g_cv_rv [ i ] && g_cv_rv[i][ j ]) { 717 de g_cv_rv [ i ][ j ]; 718 g_cv_rv [ i ][ j ] = 0; 721 i( g_cv_fo [ i ] de [] gparent_recv_info[i]; 722 g_cv_fo [ i ] = 0; 723 i( g_cv_rv [ i ] de [] gparent_recv_server[i]; 724 g_cv_rv [ i ] = 0; 727 i( t_nd_fo [ i ]) { 728  j = t -1;j>=0;j--) { 729 i( t_nd_fo [ i ] && s_nd_fo[i][ j ]) { 730 de t_nd_fo [ i ][ j ]; 731 t_nd_fo [ i ][ j ] = 0; 734 de [] t_nd_fo [ i ]; 735 t_nd_fo [ i ] = 0; 737 i( t_cv_fo [ i ] || t_cv_rv [i]) { 738  j = t -1;j>=0;j--) { 739 i( t_cv_fo [ i ] && s_cv_fo[i][ j ]) { 740 de t_cv_fo [ i ][ j ]; 741 t_cv_fo [ i ][ j ] = 0; 743 i( t_cv_rv [ i ] && s_cv_rv[i][ j ]) { 744 de t_cv_rv [ i ][ j ]; 745 t_cv_rv [ i ][ j ] = 0; 748 i( t_cv_fo [ i ] de [] sparent_recv_info[i]; 749 t_cv_fo [ i ] = 0; 750 i( t_cv_rv [ i ] de [] sparent_recv_server[i]; 751 t_cv_rv [ i ] = 0; 755 } } 757  gGridFuniVoid :: $GF_DeFluxCommInfo () 759 cڡ  um = comm_rvi :: `oc_num (); 761 i( `uxes ()) { 762 cڡ  t = dagh . `tٮvs (); 764  i = 0, j = 0; 766  i = um -1;i>=0;i--) { 767 i( ux_nd_fo [ i ]) { 768  j = t -1;j>=0;j--) { 769 i( ux_nd_fo [ i ] && flux_nd_fo[i][ j ]) { 770 de ux_nd_fo [ i ][ j ]; 771 ux_nd_fo [ i ][ j ] = 0; 774 de [] ux_nd_fo [ i ]; 775 ux_nd_fo [ i ] = 0; 777 i( ux_cv_fo [ i ] || ux_cv_rv [i]) { 778  j = t -1;j>=0;j--) { 779 i( ux_cv_fo [ i ] && flux_cv_fo[i][ j ]) { 780 de ux_cv_fo [ i ][ j ]; 781 ux_cv_fo [ i ][ j ] = 0; 783 i( ux_cv_rv [ i ] && flux_cv_rv[i][ j ]) { 784 de ux_cv_rv [ i ][ j ]; 785 ux_cv_rv [ i ][ j ] = 0; 788 i( ux_cv_fo [ i ] de [] flux_recv_info[i]; 789 ux_cv_fo [ i ] = 0; 790 i( ux_cv_rv [ i ] de [] flux_recv_server[i]; 791 ux_cv_rv [ i ] = 0; 795 } } 801  gGridFuniVoid :: $GF_SGridFuniTy (cڡ  g ) 802 { gy = g ; dagh . `ACE_InOvps (gy, ovp ); } } 808  gGridFuniVoid :: $GF_BoundyWidth (cڡ  width ) 810  r =0;< gk ;++) { 811 bwidth [2* r ] = width ; 812 bwidth [2* r +1] = width ; 814 } } 816  gGridFuniVoid :: $GF_BoundyWidth (cڡ * width ) 818  r =0;< gk ;++) { 819 bwidth [2* r ] = width [2*r]; 820 bwidth [2* r +1] = width [2*r+1]; 822 } } 828  gGridFuniVoid :: $GF_ExGhoWidth (cڡ  width ) 830  r =0;< gk ;++) { 831 extghowidth [2* r ] = width ; 832 extghowidth [2* r +1] = width ; 834 } } 836  gGridFuniVoid :: $GF_ExGhoWidth (cڡ * width ) 838  r =0;< gk ;++) { 839 extghowidth [2* r ] = width [2*r]; 840 extghowidth [2* r +1] = width [2*r+1]; 842 } } 848  gGridFuniVoid :: $GF_SSSnc (cڡ  s_ ) 850  r =0;< gk ;++) { 851 a__d [2* r ] = s_ ; 852 a__d [2* r +1] = s_ ; 854 } } 856  gGridFuniVoid :: $GF_SSSnc (cڡ * s_ ) 858  r =0;< gk ;++) { 859 a__d [2* r ] = s_ [2*r]; 860 a__d [2* r +1] = s_ [2*r+1]; 862 } } 868  gGridFuniVoid :: $GF_STimeSnc (cڡ  t_ ) 870 i( time__d = t_ ) ; 872 time__d = t_ ; 873 i( time_s de []ime_alias; 874 time_s = w [2* time__d +1]; 875  i =0;i< time__d ;i++) 876 { time_s [2* i ] = 2*i;ime_alias[2*i+1] = 2*i+1; } 877 time_s [2* time__d ] = 2*time_sten_rad; 878 } } 883  gGridFuniVoid :: $GF_FeTmpStage () 885 = 0; 886 i( rcvsize de []cvsize; 887 rcvsize = 0; 888 i( shrcvsize de [] shrcvsize; 889 shrcvsize = 0; 890 i( dsize de [] sndsize; 891 dsize = 0; 892 i( dbbox de [] sndbbox; 893 dbbox = 0; 894 i( ddex de [] sndindex; 895 ddex = 0; 896 i( rcvdex de []cvindex; 897 rcvdex = 0; 898 i( dv de [] sndlevel; 899 dv = 0; 900 i( dt de [] sndcnt; 901 dt = 0; 902 } } 907  gGridFuniVoid :: $GF_DeGDBStage (cڡ  t ) 908 { << "Dummy GF_DeGDBStagefuni\n"; } } 914  gGridFuniVoid :: $GF_Compo () 915 { << "Dummy compo funi\n"; } } 917  gGridFuniVoid :: $GF_Recompo (cڡ  omdex , 918 GridBoxLi & li , 919 GridBoxLi & i , 920 GridBoxLi & i , 921 GridBoxLi & i ) 922 { << "Dummyecompo funi\n"; } } 924  gGridFuniVoid :: $GF_CheckpotRecompo () 925 { << "Dummyecompo funi\n"; } } 927  gGridFuniVoid :: $GF_Checkpot ( ofam & ofs ) 928 { << "Dummy GF_Checkpot(ofsfuni\n"; } } 930  gGridFuniVoid :: $GF_CheckpotRet () 931 { << "Dummy GF_Retame, gulfuni\n"; } } 936 #ifde DICE 937  gGridFuniVoid :: GF_GDaSli (cڡ  tim , 938 cڡ  v , 939 #ifde ACEVeGridFuni 940 cڡ  m , 942 cڡ BBox & whe , 943 * bufr , 944 cڡ  idim , 945 cڡ  prv , 946 cڡ  idt ) 947 { g << "Dummy GF_GetDataSlice() function\n"; } 948  gGridFuniVoid :: GF_GMaxV (cڡ  tim , 949 cڡ  v , 950 #ifde ACEVeGridFuni 951 cڡ  m , 953 * bufr , 954 cڡ  idt ) 955 { g << "Dummy GF_GetMaxVal() function\n"; } 957  gGridFuniVoid :: GF_GMV (cڡ  tim , 958 cڡ  v , 959 #ifde ACEVeGridFuni 960 cڡ  m , 962 * bufr , 963 cڡ  idt ) 964 { g << "Dummy GF_GetMinVal() function\n"; } 966  gGridFuniVoid :: GF_GNm (cڡ  tim , 967 cڡ  v , 968 #ifde ACEVeGridFuni 969 cڡ  m , 971 * bufr , 972 cڡ  idt ) 973 { g << "Dummy GF_GetNorm() function\n"; } 980 goam & gݔ <<(oam& gos , cڡ gGridFuniVoid & ggfv ) 982 i(& ggfv =( GridFuniVoid * NULL  os ; 984 gos << "GridFunction " 985 << "[" << ggfv . ggfid << "] " 986 << "[" << ggfv . ggy << "] " 987 << "[" << ggfv . ggk << "] " 988 << "[" << ggfv . ggame << "] " 989 << "[" << ggfv . gignmt << "] " 990 << gdl ; 992 gos << "[Comm:" << ggfv . gcomm_ag << "] " 993 << "[Shadow:" << ggfv . gshadow_ag << "] " 994 << "[Pt:" << ggfv . g_ag << "] " 995 << "[Flux:" << ggfv . gux_ag << "] " 996 << "[Bndry:" << ggfv . gbndry_ag << "] " 997 << "[AdtBndry:" << ggfv . gadtbndry_ag << "] " 998 << "[ExtGho:" << ggfv . gextgho_ag << "] " 999 << gdl ; 1001 gos << "[TSn:" << ggfv . gtime__d << "] " 1004  gr =0;< ggfv . ggk ;++) { 1005 gos << ggfv . ga__d [2* r ] << " " 1006 << ggfv . ga__d [2* r +1] << " "; 1008 gos << "]" << gdl ; 1010 gos << ggfv . gis ; 1012  gos ; 1015 goam & gݔ <<(oam& gos , cڡ gGF_Iai & ggfi ) 1017 i(& ggfi =( GF_Iai * NULL  os ; 1019  gi ; 1021 gos << "GF_Interaction[ "; 1022 gos << ggfi . gt << "["; 1023  gi =0;i< ggfi . gt ;i++ gos << gfi. gsize [ i ] << " "; 1024 gos << "] "; 1025 gos << ggfi . gtsize ; 1026 #ifde ACEVeGridFuni 1027 gos << " ["; 1028  gi =0;i< ggfi . gt ;i++ gos << gfi. gmsize [ i ] << " "; 1029 gos << "] "; 1030 gos << ggfi . gmtsize ; 1032 gos << "]"; 1033  gos ; 1039 gofam & gݔ <<(ofam& gofs , cڡ gGridFuniVoid & ggfv ) 1041 i(& ggfv =( GridFuniVoid * NULL  ofs ; 1045  gofs ; 1049 gifam & gݔ >>(ifam& gifs , gGridFuniVoid & ggfv ) 1051 i(& ggfv =( GridFuniVoid * NULL  ifs ; 1055  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridFunctionVoid.h 1 #ide _uded_GridFuniVoid_h 2  #_uded_GridFuniVoid_h ) 14  ~"ACEPams.h " 15  ~"ACEDeus.h " 17  ~"ACEIai.h " 19  ~"GridTab.h " 20  ~"CommRcvSv.h " 22  ~"GFIai.h " 24 #ide ACEGFVFgTy 25  #ACEGFVFgTy  ) 28 #ide ACEGFVFgNum 29  #ACEGFVFgNum 10 ) 32 #ide GridFuniNameSize 33  #GridFuniNameSize 16 ) 37  ~"DICEInude.h " 39 ass gGridHrchy ; 41 as cGridFuniVoid : public DICEBaObje 43 nd oam & ݔ <<(oam&, cڡ mGridFuniVoid &); 44 nd mofam & mݔ <<(ofam&, cڡ mGridFuniVoid &); 45 nd mifam & mݔ >>(ifam&, mGridFuniVoid &); 48 nd ass mGridHrchy ; 50 meed : 52  gfid ; 53  mgy ; 54  mgk ; 55  mgame [ GridFuniNameSize ]; 57  movp [ ACEMaxRk ]; 60  mignmt ; 63  mnems ; 66 * mbwidth ; 69 * mextghowidth ; 72  mcomm_ag ; 73  mshadow_ag ; 74  mbndry_ag ; 75  madtbndry_ag ; 76  mextgho_ag ; 77  mcompo_ag ; 78  mme_ag ; 81  m_ag ; 82  mupde_ag ; 83  mg_ag ; 84  msh_g_ag ; 85  mtime_ag ; 86  msh_time_ag ; 87  mri_ag ; 88  mbndry_upde_ag ; 89  madtbndry_upde_ag ; 90  mio_ag ; 91  mchk_ag ; 94  mtime__d ; 95 * ma__d ; 98 * mtime_s ; 101 GhoIai mis ; 104 GF_Iai *** mgho_nd_fo ; 105 * mgho_cv_t ; 106 GF_Iai *** mgho_cv_fo ; 107 GridTabGhoRcv *** mgho_cv_rv ; 110 GridTabDaRcv *** mda_cv_rv ; 113  m_ag ; 114 GF_Iai *** mg_nd_fo ; 115 GF_Iai *** mg_cv_fo ; 116 GridTabGhoRcv *** mg_cv_rv ; 117 GF_Iai *** mt_nd_fo ; 118 GF_Iai *** mt_cv_fo ; 119 GridTabGhoRcv *** mt_cv_rv ; 122  mux_ag ; 123 GF_Iai *** mux_nd_fo ; 124 GF_Iai *** mux_cv_fo ; 125 GridTabGhoRcv *** mux_cv_rv ; 128 * mcuime [2]; 134  mupded ; 137 GridTab * mgt ; 140 mGridHrchy & mdagh ; 143 ACEGFVFgTy murags [ ACEGFVFgNum ]; 147 * mrcvsize ; 148 * mshrcvsize ; 150  m ; 151 * mdsize ; 152 BBox * mdbbox ; 153 * mddex ; 154 * mrcvdex ; 155 * mdv ; 156 * mdt ; 158 mpublic : 162 GridFuniVoid (cڡ  ty , 163 cڡ  nk , 164 cڡ me [], 165 cڡ  nms , 166 GridHrchy & gh , 167 cڡ  ign , 168 cڡ * bndrywidth , 169 cڡ * extghwidth , 170 cڡ  cag , 171 cڡ  sag , 172 cڡ  pag , 173 cڡ  fag , 174 cڡ  bag , 175 cڡ  adbag , 176 cڡ  extghag ); 178 GridFuniVoid (cڡ  ty , 179 cڡ  nk , 180 cڡ me [], 181 cڡ  nms , 182 cڡ  t , 183 cڡ  s , 184 GridHrchy & gh , 185 cڡ  ign , 186 cڡ * bndrywidth , 187 cڡ * extghwidth , 188 cڡ  cag , 189 cڡ  sag , 190 cڡ  pag , 191 cڡ  fag , 192 cڡ  bag , 193 cڡ  adbag , 194 cڡ  extghag ); 196 GridFuniVoid (cڡ  ty , 197 cڡ  nk , 198 cڡ me [], 199 cڡ  nms , 200 cڡ  t , 201 cڡ * s , 202 GridHrchy & gh , 203 cڡ  ign , 204 cڡ * bndrywidth , 205 cڡ * extghwidth , 206 cڡ  cag , 207 cڡ  sag , 208 cڡ  pag , 209 cڡ  fag , 210 cڡ  bag , 211 cڡ  adbag , 212 cڡ  extghag ); 214 GridFuniVoid (cڡ me [], 215 cڡ  nk , 216 cڡ  nms , 217 cڡ GridFuniVoid & gfv , 218 cڡ  cag , 219 cڡ  sag , 220 cڡ  pag , 221 cڡ  fag , 222 cڡ  bag , 223 cڡ  adbag , 224 cڡ  extghag ); 228 mvtu ~ GridFuniVoid (); 230 meed : 234  GF_DeGhoCommInfo (); 235  GF_DeDaCommInfo (); 236  GF_DePtCommInfo (); 237  GF_DeFluxCommInfo (); 239 mpublic : 243  GF_SGridFuniTy (cڡ  g ); 248  $GF_SNumIms (cڡ  nms { nems =itms; } 253  `GF_BoundyWidth (cڡ  width ); 254  `GF_BoundyWidth (cڡ * width ); 259  `GF_ExGhoWidth (cڡ  width ); 260  `GF_ExGhoWidth (cڡ * width ); 265  `GF_SSSnc (cڡ  s_ ); 266  `GF_SSSnc (cڡ * s_ ); 272  `GF_STimeSnc (cڡ  t_ ); 277 le  $GF_SAlignmt (cڡ  ign { ignmt =lign; } } 282 le  $GF_STimeAls (cڡ  t , cڡ  s_to ) 283 { `GF_DeGDBStage ( t + time__d ); 284 time_s [ t + time__d ] = ( s_to +time__d); } } 289 le  $GF_SCommTy (cڡ  cag ) 290 { comm_ag = cag ; } } 291 le  $GF_SShadowFg (cڡ  sag ) 292 { shadow_ag = sag ; } } 293 le  $GF_SBoundyTy (cڡ  bag ) 294 { bndry_ag = bag ; } } 295 le  $GF_SAdtBoundyTy (cڡ  adbag ) 296 { adtbndry_ag = adbag ; } } 297 le  $GF_SExGhoFg (cڡ  egag ) 298 { extgho_ag = egag ; } } 303 le  $GF_SInlizeFg (cڡ  ag ) 304 { _ag = ag ; } } 306 le  $GF_SUpdeFg (cڡ  ag ) 307 { upde_ag = ag ; } } 309 le  $GF_SPrgFg (cڡ  ag ) 310 { g_ag = ag ; } } 311 le  $GF_SShadowPrgFg (cڡ  ag ) 312 { sh_g_ag = ag ; } } 314 le  $GF_STimeIpީiFg (cڡ  ag ) 315 { time_ag = ag ; } } 316 le  $GF_SShadowTimeIpީiFg (cڡ  ag ) 317 { sh_time_ag = ag ; } } 319 le  $GF_SReriFg (cڡ  ag ) 320 { ri_ag = ag ; } } 322 le  $GF_SBndryUpdeFg (cڡ  ag ) 323 { bndry_upde_ag = ag ; } } 324 le  $GF_SAdtBndryUpdeFg (cڡ  ag ) 325 { adtbndry_upde_ag = ag ; } } 327 le  $GF_SIOFg (cڡ  ag ) 328 { io_ag = ag ; } } 330 le  $GF_SCheckpotFg (cڡ  ag ) 331 { chk_ag = ag ; } } 333 le  $GF_SPtFg (cڡ  ag ) 334 { _ag = ag ; } } 335 le  $GF_SFluxFg (cڡ  ag ) 336 { ux_ag = ag ; } } 341 le  $GF_Id (cڡ {  ( gfid ); } } 342 le  $GF_Ty (cڡ {  ( gy ); } } 343 le cڡ * $GF_Name (cڡ {  game ; } } 345 le  $GF_NIms (cڡ {  nems ; } } 347 le  $GF_Alignmt (cڡ {  ignmt ; } } 349 le  $comm () const 350 {  ( comm_ag ! ACENoComm ); } } 351 le  $shadow () const 352 {  ( shadow_ag ! ACENoShadow ); } } 353 le  $exboundy () const 354 {  ( bndry_ag ! ACENoBoundy ); } } 355 le  $adtiveboundy () const 356 {  ( adtbndry_ag ! ACENoAdtBoundy ); } } 358 le  $exgho () const 359 {  ( extgho_ag ! ACETrue ); } } 361 le  $compod () const 362 {  ( compo_ag = ACETrue ); } } 364 le  $comm_ty () const 365 {  ( comm_ag ); } } 366 le  $boundy_ty () const 367 {  ( bndry_ag ); } } 368 le  $adtiveboundy_ty () const 369 {  ( adtbndry_ag ); } } 371 le  $lize () const 372 {  _ag = ACETrue ; } } 374 le  $upde () const 375 {  upde_ag = ACETrue ; } } 377 le  $g () const 378 {  g_ag = ACETrue ; } } 379 le  $shadow_g () const 380 {  sh_g_ag = ACETrue ; } } 382 le  $timeީe () const 383 {  time_ag = ACETrue ; } } 384 le  $shadow_timeީe () const 385 {  sh_time_ag = ACETrue ; } } 387 le  $Reri () const 388 {  ri_ag = ACETrue ; } } 390 le  $bndry_upde () const 391 {  bndry_upde_ag = ACETrue ; } } 392 le  $adtbndry_upde () const 393 {  adtbndry_upde_ag = ACETrue ; } } 395 le  $io () const 396 {  io_ag = ACETrue ; } } 398 le  $checkpot () const 399 {  chk_ag = ACETrue ; } } 401 le  $ () const 402 {  _ag = ACETrue ; } } 403 le  $uxes () const 404 {  ux_ag = ACETrue ; } } 411 le cڡ gGridHrchy & $gridhrchy () const 412 {  ( dagh ); } } 417 le  $updedvue (cڡ {  upded ; } } 418 le  $tupdedvue (cڡ  u { upded = u; } } 423 le  $GF_SUrFg (cڡ  id , cڡ ACEGFVFgTy & f ) 424 { `as ( id < ACEGFVFgNum ); urags [id] = f ; } } 426 le ACEGFVFgTy $GF_GUrFg (cڡ  id ) 427 { `as ( id < ACEGFVFgNum );  ( urags [id]); } } 432  GF_FeTmpStage (); 437 vtu  GF_DeGDBStage (cڡ  t ); 448 le vtu  GF_Sync (cڡ  time , 449 cڡ  v , 450 #ifde ACEVeGridFuni 451 cڡ  m , 453 cڡ  idt ) 454 { g << "Dummy GF_Sync(time,evel, ident) function\n"; } 457 le vtu  GF_Sync (cڡ  time , 458 cڡ  v , 459 #ifde ACEVeGridFuni 460 cڡ  m , 462 cڡ  mgl , 463 cڡ  idt ) 464 { g << "Dummy GF_Sync(time,evel, mgl, ident) function\n"; } 467 le vtu  GF_Sync (cڡ  time , 468 cڡ  v , 469 #ifde ACEVeGridFuni 470 cڡ  m , 472 cڡ  axis , 473 cڡ  d , 474 cڡ  idt ) 475 { g << "Dummy GF_Sync(time,evel,xis, dir, ident) function\n"; } 478 le vtu  GF_Sync (cڡ  time , 479 cڡ  v , 480 #ifde ACEVeGridFuni 481 cڡ  m , 483 cڡ  mgl , 484 cڡ  axis , 485 cڡ  d , 486 cڡ  idt ) 487 { g << "Dummy GF_Sync(time,evel, mgl,xis, dir, ident)" 494 le vtu  GF_WreGhos (cڡ  time , 495 cڡ  v , 496 #ifde ACEVeGridFuni 497 cڡ  m , 499 cڡ  idt ) 500 { g << "Dummy GF_WriteGhosts(time,evel, ident) function\n"; } 502 le vtu  GF_WreGhos (cڡ  time , 503 cڡ  v , 504 #ifde ACEVeGridFuni 505 cڡ  m , 507 cڡ  mgl , 508 cڡ  idt ) 509 { g << "Dummy GF_WriteGhosts(time,evel, mgl, ident) function\n"; } 511 le vtu  GF_WreGhos (cڡ  time , 512 cڡ  v , 513 #ifde ACEVeGridFuni 514 cڡ  m , 516 cڡ  axis , 517 cڡ  d , 518 cڡ  idt ) 519 { g << "Dummy GF_WriteGhosts(time,evel,xis, dir, ident)" 522 le vtu  GF_WreGhos (cڡ  time , 523 cڡ  v , 524 #ifde ACEVeGridFuni 525 cڡ  m , 527 cڡ  mgl , 528 cڡ  axis , 529 cڡ  d , 530 cڡ  idt ) 531 { g << "Dummy GF_WriteGhosts(time,evel, mgl,xis, dir, ident)" 538 le vtu  GF_RdGhos (cڡ  time , 539 cڡ  v , 540 #ifde ACEVeGridFuni 541 cڡ  m , 543 cڡ  idt ) 544 { g << "Dummy GF_ReadGhosts(time,evel, ident) function\n"; } 546 le vtu  GF_RdGhos (cڡ  time , 547 cڡ  v , 548 #ifde ACEVeGridFuni 549 cڡ  m , 551 cڡ  mgl , 552 cڡ  idt ) 553 { g << "Dummy GF_ReadGhosts(time,evel, mgl, ident) function\n"; } 555 le vtu  GF_RdGhos (cڡ  time , 556 cڡ  v , 557 #ifde ACEVeGridFuni 558 cڡ  m , 560 cڡ  axis , 561 cڡ  d , 562 cڡ  idt ) 563 { g << "Dummy GF_ReadGhosts(time,evel,xis, dir, ident)" 566 le vtu  GF_RdGhos (cڡ  time , 567 cڡ  v , 568 #ifde ACEVeGridFuni 569 cڡ  m , 571 cڡ  mgl , 572 cڡ  axis , 573 cڡ  d , 574 cڡ  idt ) 575 { g << "Dummy GF_ReadGhosts(time,evel, mgl,xis. dir, ident)" 578 vtu  GF_Compo (); 579 vtu  GF_Recompo (cڡ  omdex , GridBoxLi & li , 580 GridBoxLi & i , GridBoxLi& i , 581 GridBoxLi & i ); 583 vtu  GF_CheckpotRecompo (); 584 vtu  GF_Checkpot ( ofam & ofs ); 585 vtu  GF_CheckpotRet (); 588 le vtu  GF_GhPt (cڡ  time , 589 cڡ  v , 590 #ifde ACEVeGridFuni 591 cڡ  m , 593 cڡ  idt ) 594 { g << "Dummy GF_GatherParent(time,evel, ident) function\n"; } 595 le vtu  GF_GWrePt (cڡ  time , 596 cڡ  v , 597 #ifde ACEVeGridFuni 598 cڡ  m , 600 cڡ  idt ) 601 { g << "Dummy GF_GWriteParent(time,evel, ident) function\n"; } 602 le vtu  GF_GRdPt (cڡ  time , 603 cڡ  v , 604 #ifde ACEVeGridFuni 605 cڡ  m , 607 cڡ  idt ) 608 { g << "Dummy GF_GReadParent(time,evel, ident) function\n"; } 610 le vtu  GF_SPt (cڡ  time , 611 cڡ  v , 612 #ifde ACEVeGridFuni 613 cڡ  m , 615 cڡ  idt ) 616 { g << "Dummy GF_ScatterParent(time,evel, ident) function\n"; } 617 le vtu  GF_SWrePt (cڡ  time , 618 cڡ  v , 619 #ifde ACEVeGridFuni 620 cڡ  m , 622 cڡ  idt ) 623 { g << "Dummy GF_SWriteParent(time,evel, ident) function\n"; } 624 le vtu  GF_SRdPt (cڡ  time , 625 cڡ  v , 626 #ifde ACEVeGridFuni 627 cڡ  m , 629 cڡ  idt ) 630 { g << "Dummy GF_SReadParent(time,evel, ident) function\n"; } 632 le vtu  GF_GhFluxes (cڡ  time , 633 cڡ  v , 634 #ifde ACEVeGridFuni 635 cڡ  m , 637 cڡ  idt ) 638 { g << "Dummy GF_GatherFluxes(time,evel, ident) function\n"; } 639 le vtu  GF_WreFluxes (cڡ  time , 640 cڡ  v , 641 #ifde ACEVeGridFuni 642 cڡ  m , 644 cڡ  idt ) 645 { g << "Dummy GF_WriteFluxes(time,evel, ident) function\n"; } 646 le vtu  GF_RdFluxes (cڡ  time , 647 cڡ  v , 648 #ifde ACEVeGridFuni 649 cڡ  m , 651 cڡ  idt ) 652 { g << "Dummy GF_ReadFluxes(time,evel, ident) function\n"; } 654 #ifde DICE 656 le  $SObjDesti () 657 { << "Dummy SObjDesti f GridFuniVoid\n"; } } 658 le  $SObjVws () 659 { << "Dummy SObjVwf GridFuniVoid\n"; } } 660 le  $SObjCommds () 661 { << "Dummy SObjCommdf GridFuniVoid\n"; } } 662 le  $SFuniPors () 663 { << "Dummy SFuniPorf GridFuniVoid\n"; } } 664 vtu  GF_GDaSli (cڡ  tim , 665 cڡ  v , 666 #ifde ACEVeGridFuni 667 cڡ  m , 669 cڡ BBox & whe , 670 * bufr , 671 cڡ  idim , 672 cڡ  prv , 673 cڡ  idt ); 674 vtu  GF_GMaxV (cڡ  tim , 675 cڡ  v , 676 #ifde ACEVeGridFuni 677 cڡ  m , 679 * bufr , 680 cڡ  idt ); 681 vtu  GF_GMV (cڡ  tim , 682 cڡ  v , 683 #ifde ACEVeGridFuni 684 cڡ  m , 686 * bufr , 687 cڡ  idt ); 688 vtu  GF_GNm (cڡ  tim , 689 cڡ  v , 690 #ifde ACEVeGridFuni 691 cڡ  m , 693 * bufr , 694 cڡ  idt ); 697 give : 699 GridFuniVoid cڡ & ݔ (GridFuniVoid cڡ & h ); 702 goam & gݔ <<(oam& gos , cڡ gGridFuniVoid & ggfv ); 703 gofam & gݔ <<(ofam& gofs , cڡ gGridFuniVoid & ggfv ); 704 gifam & gݔ >>(ifam& gifs , gGridFuniVoid & ggfv ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridHierarchy.cpp 11  ~"GridHrchy.h " 16 ACEIO_InFunc gACEIO_Inlize [ ACEMaxIOTys ]; 17 ACEIO_WreFunc gACEIO_Wre [ ACEMaxIOTys ]; 18 ACEIO_RdFunc gACEIO_Rd [ ACEMaxIOTys ]; 19 ACEIO_FFunc gACEIO_Fize [ ACEMaxIOTys ]; 25 cڡ gfame [] = "GridHierarchy"; 26  $wn (cڡ  msg []) 27 { << fame << ":" << msg << "\n"; } } 28  $abt (cڡ  msg []) 29 { `wn ( msg ); `ex (-1); } } 35 #ide log2 36  #log2 ( x ( `log (x))/og(2.0)) ) 38 #ide pow2 39  #pow2 ( x ((1 << (x)) ) 45 gGridHrchy :: $GridHrchy (cڡ  ndim , 46 cڡ  ty , 47 cڡ  max_v , 48 MPI_Comm comm ) 49 : `nk ( ndim ), `babbox (ndim,1), 50 `daghty ( ty ), 51 `bndryty ( ACEDeuBoundy ), 52 `adtbndryty ( ACEDeuAdtBoundy ), 53 `maxv ( max_v ), `fby ( ACEDeuRefeFa ), `ev (1), 54 `ev (0), `fev (0), `vs (0), `tbbox ( ndim ,1), 55 `upded ( ACENextTime ), 56 `shadowc (2), 57 `diributi_ty ( ACEDeuDiributi ), 58 `diributi ( ACEDeuDiributi ), 59 `mdex (0), `comi (0), `loi (0), 60 `lolbboxy (0), `feag (0), 61 `lolgbl (0), `globgbl (0), 62 `dlolgbl (0), `dglobgbl (0), 63 `gems (1), `gag ( ACEF ), `gffag (ACEFalse), 64 `gum (0), `gi (0), 65 `io_ty (0), `io_comi_rv (0), `io_wre_rv (0), 66 `io_ad_rv (0), `io_d_rv (0), 67 #ifde ACE_IOV 68 `SvPt (0), `Sv (0), `Ci (0), 70 `chkag ( ACEF ), `chkum (0) 72 chkme [0] = '\0'; 74 cuime [0] = 0; 75 cuime [1] = 0; 76 ime [0] = 0; 77 ime [1] = 0; 79  r =0;< nk ;++) { 80 bndrywidth [2* r ] = 0; 81 bndrywidth [2* r +1] = 0; 83 extghowidth [2* r ] = 0; 84 extghowidth [2* r +1] = 0; 87 `ACE_InOvps ( daghty , ovp ); 88 lolbboxy = w BBoxLi *[ max_v ]; 89 feag = w [ max_v ]; 90  i =0;i< max_v ;i++) 91 { lolbboxy [ i ] = 0; feag [i] = ACEF ;} 92 i( max_v == 1) { 93 diributi_ty = ( nk =1? ACEBlockXDiributi : 94 ( nk =2? ACEBlockXYDiributi : ACEBlockADiributi ; 95 diributi . `t_di ( diributi_ty ); 97 `ACE_CommIn ( comm ); 98 } } 103 gGridHrchy ::~ $GridHrchy () 105 cڡ  num = comm_rvi :: `oc_num (); 107  i ; 110 i( cuime [0] de [] curtime[0]; 111 i( cuime [1] de [] curtime[1]; 112 i( ime [0] de []eftime[0]; 113 i( ime [1] de []eftime[1]; 115 i( comi de complist; 116 i( num > 1 && loi de ocallist; 118 i( gi ) { 119  i =0;i< gum ;i++) 120 i( gi [ i ]gi[i] = ( GridFuniVoid * NULL ; 121 de [] gi ; 124 i( globgbl de globalgbl; 125 i( lolgbl de ocalgbl; 127 i( dglobgbl de oldglobalgbl; 128 i( dlolgbl de oldlocalgbl; 130  i =0;i< vs ;i++) { 131 i( lolbboxy &&olbboxy[ i ] de ocalbboxarray[i]; 133 if( lolbboxy de []ocalbboxarray; 134 if( feag de []efineflag; 136 i( io_comi_rv ) { 137 de io_comi_rv ; 138 io_comi_rv = 0; 140 i( io_wre_rv ) { 141 de io_wre_rv ; 142 io_wre_rv = 0; 144 i( io_ad_rv ) { 145 de io_ad_rv ; 146 io_ad_rv = 0; 148 i( io_d_rv ) { 149 de io_d_rv ; 150 io_d_rv = 0; 153 chkme [0] = '\0'; 155 #ifde ACE_IOV 156 i( Sv de Server; Server = 0; 158 cڡ  me = comm_rvi :: `oc_me (); 159 cڡ  pio = comm_rvi :: `oc_io (); 160 cڡ  io_ = comm_rvi :: `io_abd (); 161 i( io_ && me = pio ) { 162 `PlPt ( SvPt , Ci , Sv ); 164 i( Sv ) { 165  buf [2048]; 166 `rtf ( buf ,"Q\n"); 167 Sv -> `wre ( buf ,(buf)); 168 de Sv ; Server = 0; 172 i( SvPt de ServerPort; ServerPort = 0; 173 i( Ci de Connection; Connection = 0; 177 `ACE_CommKl (); 178 } } 186  gGridHrchy :: $ACE_SBaGrid (cڡ * bbox , cڡ * she ) 188  i =0;i< nk ;i++) { 189 decs [ i ]. low = bbox [2*i]; 190 decs [ i ]. high = bbox [2*i+1]; 191 decs [ i ]. n = she [i]; 192 decs [ i ]. h = (decs[i]. high - decs[i]. low / (decs[i]. n ); 193 babbox . `low ( i ) = 0; 194 babbox . `u ( i she [i]-1; 196 } } 198  gGridHrchy :: $ACE_STimeScs (cڡ ime , 199 cڡ time , cڡ  numts ) 201 tecs . low = ime ; 202 tecs . high = time ; 203 tecs . n = numts ; 204 tecs . h = (tecs. high -ecs. low / (tecs. n -1); 205 } } 207  gGridHrchy :: $ACE_SRefeFa (cڡ  r ) 209 fby = r ; 210  tm = ( fby >0? `log2 (()1.0*refby):0; 211 i((1 << ( tm < fby ) 212 `abt ("Refine factorotower ofwo"); 213 ev = ( tm ; 214 } } 219 #ide ACEMge 220  #ACEMge 1 ) 222 #ide ACEMgeWhClu 223  #ACEMgeWhClu 0 ) 228 #ifde ACEUCluMge 229  ~"GridDa.h " 230  Clu3 ( GridDa (3)<>&, , , , BBoxLi &); 231  Clu2 ( GridDa (2)<>&, , , , BBoxLi &); 232  Clu1 ( GridDa (1)<>&, , , , BBoxLi &); 235  gGridHrchy :: $RecursiveMgeGridUns ( GridUnLi & gul , 236 GridBoxLi & gbl , 237 cڡ  v , 238 cڡ  pid , 239 cڡ * ޭ , 240 cڡ  extgh ) 242 cڡ  me = comm_rvi :: `oc_me (); 243 cڡ  num = comm_rvi :: `oc_num (); 245 BBoxLi bbl ; 247 i( num =1 && v = ev ) { 248 bbl . `add ( `whebbox ()); 251 gul . `bboxli ( bbl , v , ޭ , extgh ); 254  BBox * bb = 0; 256 i( ACEMge && ACEMgeWhClu ) { 257  bb = bbl . `f ();bb;bb=bbl. `xt ()) 258 i( bb -> `emy () bbl . `move (); 261 i( bbl . `imy ())  0; 263 #ifde DEBUG_PRINT_GH 264 ( comm_rvi :: `log () << "GridHierarchy::ACE_MergeGridUnits " 265 << "BefܐMged BBox Liv " << v 266 << dl << bbl 267 << dl ). `ush (); 270 i( ACEMge && ACEMgeWhClu && nk == 3) { 271 #ifde ACEUCluMge 272 `Aay (3)<> `ags ( bbl . `du ()); 273 ags = 0; 274  bb = bbl . `f ();bb;bb=bbl. `xt ()) 275 i(! bb -> `emy () ags . `equs (1,*bb); 276 bbl . `emy (); 277 `Clu3 ( ags ,1.0,1,0, bbl ); 280 i( ACEMge && ACEMgeWhClu && nk == 2) { 281 #ifde ACEUCluMge 282 `Aay (2)<> `ags ( bbl . `du ()); 283 ags = 0; 284  bb = bbl . `f ();bb;bb=bbl. `xt ()) 285 i(! bb -> `emy () ags . `equs (1,*bb); 286 bbl . `emy (); 287 `Clu2 ( ags ,1.0,1,0, bbl ); 290 i( ACEMge && ACEMgeWhClu && nk == 1) { 291 #ifde ACEUCluMge 292 `Aay (1)<> `ags ( bbl . `du ()); 293 ags = 0; 294  bb = bbl . `f ();bb;bb=bbl. `xt ()) 295 i(! bb -> `emy () ags . `equs (1,*bb); 296 bbl . `emy (); 297 `Clu1 ( ags ,1.0,1,0, bbl ); 300 i( ACEMge ) { 301 bbl . `mgeboxes ( ޭ ); 304 #ifde DEBUG_PRINT_GH 305 ( comm_rvi :: `log () << "GridHierarchy::ACE_MergeGridUnits " 306 << "Mged BBox Liv " << v 307 << dl << bbl 308 << dl ). `ush (); 311 BBoxLi * gbbl = 0; 312 BBox * gbb = 0; 314 i( v > ev gbbl = lolbboxy [ `vdex ev- ev )]; 339  GridBox * gb = 0; 340  idx = 0; 341 GridUnLi tmpgul ; 342  bb = bbl . `f ();bb;bb=bbl. `xt ()) { 343 i( bb -> `emy ()) ; 344 gb = gbl . `add (); 345 gb -> `SGridBox ( me , pid + idx ,pid, v ,v, ev ,* bb ); 346 tmpgul . `emy (); 347 gul . `r (* bb , v , tmpgul , ޭ , extgh ); 348 gul - tmpgul ; 350 i( v < fev ) { 351  tmpidx = 352 `RecursiveMgeGridUns ( tmpgul , gbl , v + ev , pid + idx , ޭ , extgh ); 353 i( tmpidx > 0 idx +=mpidx - 1; 355 idx ++; 358  idx ; 359 } } 361  gGridHrchy :: $ACE_MgeGridUnsNew () 366  ޭ [ ACEMaxRk ]; 367 `ACE_InOvps ( ACEClCd , ޭ ); 370 cڡ  extgh = 0; 372 GridUnLi gul = * loi ; 373  pid = 0; 374  mid = 0; 376 mid = `RecursiveMgeGridUns ( gul ,* lolgbl , ev , pid , ޭ , extgh ); 378  l =0;l< vs ;l++) { 379 i( lolbboxy [ l ] && !lolbboxy[l]-> `imy ()) 380 lolbboxy [ l ]-> `emy (); 382 } } 384  gGridHrchy :: $ACE_MgeGridUns () 386 cڡ  me = comm_rvi :: `oc_me (); 390  ޭ [ ACEMaxRk ]; 391 `ACE_InOvps ( ACEClCd , ޭ ); 394 cڡ  extgh = 0; 396 i(! lolgbl -> `imy ()lolgbl-> `emy (); 398  GridBox * gb = 0; 399  BBox * bb = 0; 400  idx = 0; 402  l = fev ;l>= ev ;l-= ev ) { 403 BBoxLi * bb͌ = lolbboxy [ `vdex ( l )]; 404 i( bb͌ = BBoxLiNULL || bb͌-> `imy ()) ; 405 BBoxLi & bbl = * bb͌ ; 406 i( ACEMge && ACEMgeWhClu && nk == 3) { 407 #ifde ACEUCluMge 408 `Aay (3)<> `ags ( bbl . `du ()); 409 ags = 0; 410  bb = bbl . `f ();bb;bb=bbl. `xt ()) 411 i(! bb -> `emy () ags . `equs (1,*bb); 412 bbl . `emy (); 413 `Clu3 ( ags ,1.0,1,0, bbl ); 416 i( ACEMge && ACEMgeWhClu && nk == 2) { 417 #ifde ACEUCluMge 418 `Aay (2)<> `ags ( bbl . `du ()); 419 ags = 0; 420  bb = bbl . `f ();bb;bb=bbl. `xt ()) 421 i(! bb -> `emy () ags . `equs (1,*bb); 422 bbl . `emy (); 423 `Clu2 ( ags ,1.0,1,0, bbl ); 426 i( ACEMge && ACEMgeWhClu && nk == 1) { 427 #ifde ACEUCluMge 428 `Aay (1)<> `ags ( bbl . `du ()); 429 ags = 0; 430  bb = bbl . `f ();bb;bb=bbl. `xt ()) 431 i(! bb -> `emy () ags . `equs (1,*bb); 432 bbl . `emy (); 433 `Clu1 ( ags ,1.0,1,0, bbl ); 436 i( ACEMge ) { 437 bbl . `mgeboxes ( ޭ ); 439 #ifde DEBUG_PRINT_GH 440 ( comm_rvi :: `log () << "GridHierarchy::ACE_MergeGridUnits " 441 << "Mged BBox Liv " << l 442 << dl << bbl 443 << dl ). `ush (); 445  bb = bbl . `f ();bb;bb=bbl. `xt ()) { 446 i( bb -> `emy ()) ; 447 gb = lolgbl -> `add (); 448 gb -> `SGridBox ( me , idx ,idx, ev , l , ev ,* bb ); 450 idx ++; 452 i(! bbl . `imy ()bbl. `emy (); 454 } } 459  gGridHrchy :: $ACE_InBBoxAay () 461 GridUnLi & i = * loi ; 464  idx = 0; 465  GridUn * gu = i . `f ();gu;guli. `xt ()) { 466 idx = `vdex ( gu -> `guFeLev ()); 467 i(! lolbboxy [ idx ]lolbboxy[idx] = w BBoxLi ; 468 ( lolbboxy [ idx ])-> `add ( gu -> `guBBox ()); 472 } } 477  gGridHrchy :: $ACE_CompoHrchy () 479 cڡ  me = comm_rvi :: `oc_me (); 480 cڡ  num = comm_rvi :: `oc_num (); 481 cڡ  wnum = comm_rvi :: `oc_wld (); 482 cڡ  io_ = comm_rvi :: `io_abd (); 483 cڡ  pio = comm_rvi :: `oc_io (); 485  d , d ; 486 d = d = decs [0]. n ; 487  i ; 488  i =0;i< nk ;i++) { 489 i( d < decs [ i ]. n )ld = dspecs[i].n; 490 i( d > decs [ i ]. n )td = dspecs[i].n; 492  ldext = ( d >0? ( `o ( `log2 (()1.0*nld)) : 0; 493  tdext = ( d >0? ( `o ( `log2 (()1.0*ntd)) : 0; 495 i((1 << ldext < d )dext++; 496 i((1 << tdext < d )dext++; 498 fev = ev = ldext ; 499 maxv = ev +(maxv-1)* ev ; 500 vs = ( maxv - ev )/ ev +1; 502  i =0;i< nk ;i++) { 503 decs [ i ]. nfe = decs[i]. n *( ev << ( vs -1)); 504 decs [ i ]. hfe = decs[i]. high /(1.0*decs[i]. nfe ) - 505 decs [ i ]. low /(1.0*decs[i]. nfe ); 508 i( vs > 1) { 509 GridUn `whegu ( nk , ev ,0,ev, maxv , ev ,0); 511 cڡ  = ( whegu . `guBaIndex ()). `GDimCdy ( ev ); 512 BBox `whebox ( nk , babbox . `low (),babbox. `u (), ); 513 whebox . `u (* ; 515 tbbox . `tsize ( ); 517 comi = w GridUnLi ; 518 comi -> `add ( whegu ); 519  GridUn * gu = comi -> `f (); 520 BBox bb ; 521 ; gu ;gu= comi -> `xt ()) { 522 bb = gu -> `guBBox ( ev ); 523 i( bb < whebox tbbox += bb; 524 i(!( bb * whebox ). `emy () comi -> `decompo (); 525 comi -> `move (); 528 tbbox . `growubydim ( `daghovp ()); 531 tbbox = babbox ; 532 tbbox . `growubydim ( `daghovp ()); 547 cuime [0] = w [ vs ]; 548 cuime [1] = w [ vs ]; 549  i =0;i< vs ;i++) 550 { cuime [0][ i ] = curtime[1][i] = 0; } 553 ime [0] = w [ vs ]; 554 ime [1] = w [ vs ]; 555  i =0;i< vs ;i++) 556 { ime [0][ i ] =eftime[1][i] = 0; } 559 i( num > 1) { 560 i( vs == 1) { 561 lolbboxy [0] = w BBoxLi ; 562 BBox * mybbox = lolbboxy [0]-> `add (); 563 diributi . `i ( `whebbox (),* mybbox , num , me ); 566 diributi . `i ( comi , loi , num , me , 567 ACEDeuMGUWidth , 568 `daghovp ()); 571 i( vs == 1) { 572 lolbboxy [0] = w BBoxLi ; 573 lolbboxy [0]-> `add ( `whebbox ()); 576 loi = comi ; 580 i(! io_ || me ! pio || wnum == 1) { 581 lolgbl = w GridBoxLi ; 583 i( vs =1 `ACE_MgeGridUns (); 584 i(! loi -> `imy ()) { 585 fev = comi -> `fe (); 586 #ifde ACE_MERGE_OLD 587 `ACE_InBBoxAay (); 588 `ACE_MgeGridUns (); 590 `ACE_MgeGridUnsNew (); 594 fev = comi -> `fe (); 598 i( io_ && wnum > 1 && me = pio ) { 599 io_comi_rv = 600 w `ACEIOSvPg (( ACEIOTag | ACEIOComiReqTag ), 601 * this ,& ACEIO_ComiPgFuni ); 602 io_wre_rv = w `ACEIOSvRcv (( ACEIOTag | ACEIOWreReqTag ), 603 * this , ACEIO_Wre [ io_ty ]); 604 io_ad_rv = w `ACEIOSvSnd (( ACEIOTag | ACEIORdReqTag ), 605 * this , ACEIO_Rd [ io_ty ]); 606 io_d_rv = w `ACEIOSvPg (( ACEIOTag | ACEIOEndReqTag ), 607 * this ,& ACEIO_EndIOPgFuni ); 610 i( wnum == 1) { 611 globgbl = w `GridBoxLi (* lolgbl ); 615  dsize =0, rcvsize =0; 616 * dbuf = ( lolgbl ?olgbl-> `ck ( dsize ) : 0; 617 * rcvbuf = 0; 618 `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize ); 619 globgbl = w `GridBoxLi ( rcvbuf , rcvsize , num ); 620 i( rcvbuf de []cvbuf; 623 #ifde DEBUG_PRINT_GH 624 ( comm_rvi :: `log () << "GridHierarchy::ACE_ComposeHierarchy" << " " 625 << comm_rvi :: `oc_me () << " " 626 << "BaBBox: " << babbox << " " 627 << dl ). `ush (); 629 i( comi ! GridUnLiNULL ) 630 ( comm_rvi :: `log () << "\n************* Composite List *************\n" 631 << * comi 633 ). `ush (); 634 i( loi ! GridUnLiNULL ) 635 ( comm_rvi :: `log () << "\n************* Locallist List *************\n" 636 << * loi 638 ). `ush (); 639 i( globgbl ! GridBoxLiNULL ) 640 ( comm_rvi :: `log () << "\n************* Global GBL *************\n" 641 << * globgbl 643 ). `ush (); 644 i( lolgbl ! GridBoxLiNULL ) 645 ( comm_rvi :: `log () << "\n************* Local GBL *************\n" 646 << * lolgbl 648 ). `ush (); 651 mdex = globgbl -> `maxdex (); 653 #ifde ACE_WRITEBOXES 654 i(( io_ && me = pio ) || (!io_on && me == 0)) { 655 #ifde DEBUG_PRINT_GH 656 ( comm_rvi :: `log (<< "GridHrchy::WreBoxes" << " " << dl ). `ush (); 658 `WreBoxes (* this ,* globgbl ); 662 #ifde ACE_IOV 663 i( io_ && me = pio ) { 664 SvPt = w `RawTCPrv ( ACEIOVPt ); 665 Ci = w PtMux ; 666 Ci -> `tTimeoutSecds ( ACEIOVTimeOut ); 667 Ci -> `addIt ( SvPt ); 669 i( Sv de Server; Server = 0; 670 `PlPt ( SvPt , Ci , Sv ); 672 i( Sv ) { 673 `WreSm (* this , Sv ,* globgbl ); 679 i( io_ && me = pio ) { 680 i( ACEIO_Inlize [ io_ty ]) (ACEIO_Initialize[io_type])(); 683 i( io_ && wnum > 1 && me = pio ) { 684 `ACE_IOSve (); 686 } } 691  gGridHrchy :: $ACE_CompoHrchy (cڡ * me ) 693 cڡ  me = comm_rvi :: `oc_me (); 694 cڡ  num = comm_rvi :: `oc_num (); 695 cڡ  wnum = comm_rvi :: `oc_wld (); 696 cڡ  io_ = comm_rvi :: `io_abd (); 697 cڡ  pio = comm_rvi :: `oc_io (); 699  eag = ACEF ; 700  rdag = ACEF ; 703 `ACE_InChk ( me ); 704 ampos * chkd = 0; 705 * chkmed = 0; 706 ifam ifs ; 707 eag = `ACE_OnChkISm ( me , chkd , chkmed , ifs ); 710 i( eag ! ACETrue ) 711 eag = `ACE_OnChkISm (0, chkd , chkmed , ifs ); 713 rdag = ACETrue ; 715 `as ( eag = ACETrue ); 718 ifs >> * this ; 721 `ACE_CloChkISm ( chkd , chkmed , ifs ); 724 i( chkum ! num || ( io_ && wnum > 1 && me = pio )) { 726 i( dlolgbl de oldlocalgbl; 727 dlolgbl = 0; 728 i( dglobgbl de oldglobalgbl; 729 dglobgbl = 0; 731 i( me ! pio || wnum == 1) { 734 dglobgbl = w `GridBoxLi (* globgbl ); 736 i( num == 1) { 737 i( loi de ocallist;ocallist = 0; 738 loi = comi ; 739 globgbl -> `towr ( me ); 740 globgbl -> `tdex (); 741 * lolgbl = * globgbl ; 744 i( me = pio && wnum > 1) { 745 i( loi de ocallist;ocallist = 0; 746 i( lolgbl de ocalgbl;ocalgbl = 0; 750 i( num > 1) { 751 i( vs == 1) { 752 i(! lolbboxy [0]) 753 lolbboxy [0] = w BBoxLi ; 754 i(! lolbboxy [0]-> `imy ()) 755 lolbboxy [0]-> `emy (); 756 BBox * mybbox = lolbboxy [0]-> `add (); 757 diributi . `i ( `whebbox (),* mybbox , num , me ); 760 diributi . `i ( comi , loi , num , me , 761 ACEDeuMGUWidth , 762 `daghovp ()); 763 i( me ! pio || wnum == 1) { 764 i( vs =1 `ACE_MgeGridUns (); 765 i(! loi -> `imy ()) { 766 fev = comi -> `fe (); 767 #ifde ACE_MERGE_OLD 768 `ACE_InBBoxAay (); 769 `ACE_MgeGridUns (); 771 `ACE_MgeGridUnsNew (); 775 i(! lolgbl -> `imy ()lolgbl-> `emy (); 776 fev = comi -> `fe (); 781 i( rdag = ACEF ) { 782 eag = `ACE_OnChkISm ( me , chkd , chkmed , ifs ); 783 `as ( eag = ACETrue ); 786 ifs >> * this ; 789 `ACE_CloChkISm ( chkd , chkmed , ifs ); 791 i( dlolgbl de oldlocalgbl; 792 dlolgbl = 0; 793 i( dglobgbl de oldglobalgbl; 794 dglobgbl = 0; 797 i( io_ && wnum > 1 && me = pio ) { 798 io_comi_rv = 799 w `ACEIOSvPg (( ACEIOTag | ACEIOComiReqTag ), 800 * this ,& ACEIO_ComiPgFuni ); 801 io_wre_rv = w `ACEIOSvRcv (( ACEIOTag | ACEIOWreReqTag ), 802 * this , ACEIO_Wre [ io_ty ]); 803 io_ad_rv = w `ACEIOSvSnd (( ACEIOTag | ACEIORdReqTag ), 804 * this , ACEIO_Rd [ io_ty ]); 805 io_d_rv = w `ACEIOSvPg (( ACEIOTag | ACEIOEndReqTag ), 806 * this ,& ACEIO_EndIOPgFuni ); 809 i( wnum > 1 && ( io_ || chkum ! num )) { 811  dsize =0, rcvsize =0; 812 * dbuf = ( lolgbl ?olgbl-> `ck ( dsize ) : 0; 813 * rcvbuf = 0; 814 `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize ); 815 i( globgbl de globalgbl; 816 globgbl = w `GridBoxLi ( rcvbuf , rcvsize , num ); 817 i( rcvbuf de []cvbuf; 820 #ifde DEBUG_PRINT_GH 821 ( comm_rvi :: `log () << "GridHierarchy::ACE_ComposeHierarchy" << " " 822 << comm_rvi :: `oc_me () << " " 823 << "BaBBox: " << babbox << " " 824 << dl ). `ush (); 826 i( comi ! GridUnLiNULL ) 827 ( comm_rvi :: `log () << "\n************* Composite List *************\n" 828 << * comi 830 ). `ush (); 831 i( loi ! GridUnLiNULL ) 832 ( comm_rvi :: `log () << "\n************* Locallist List *************\n" 833 << * loi 835 ). `ush (); 836 i( globgbl ! GridBoxLiNULL ) 837 ( comm_rvi :: `log () << "\n************* Global GBL *************\n" 838 << * globgbl 840 ). `ush (); 841 i( lolgbl ! GridBoxLiNULL ) 842 ( comm_rvi :: `log () << "\n************* Local GBL *************\n" 843 << * lolgbl 845 ). `ush (); 848 mdex = globgbl -> `maxdex (); 850 i( io_ && me = pio ) { 851 i( ACEIO_Inlize [ io_ty ]) (ACEIO_Initialize[io_type])(); 854 i( io_ && wnum > 1 && me = pio ) { 855 `ACE_IOSve (); 857 } } 862 #ide GFLiInemt 863  #GFLiInemt (64) ) 866  gGridHrchy :: $ACE_AddGridFuni ( GridFuniVoid * gfv ) 868 i( comm_rvi :: `d ()) 869 `as ( comm_rvi :: `num_comm (= gum ); 871 i(! gi ) { 872 gi = w GridFuniVoid *[ GFLiInemt ]; 873  i =0;i< GFLiInemt ;i++) { 874 gi [ i ] = ( GridFuniVoid * NULL ; 876 i( comm_rvi :: `d ()) 877 comm_rvi :: `c_commy ( GFLiInemt ); 880  idx = gum ; 881  gi [ idx ] !( GridFuniVoid * NULL ) idx--; 882 gi [ idx ] = gfv ; 883 i( comm_rvi :: `d ()) 884 comm_rvi :: `add_comm ( idx ); 885 gum ++; 887 i( gum % GFLiInemt == 0) { 888 GridFuniVoid ** ogi = gi ; 889 gi = w GridFuniVoid *[ gum + GFLiInemt ]; 890  i ; 891  i =0;i< gum ;i++) { 892 gi [ i ] = ogi [i]; 893 ogi [ i ] = ( GridFuniVoid * NULL ; 895  i = gum ;i 1 && vs > 1) { 915  = 0; 916  BBox * bb = 0; 918 BBoxLi mybbl ; 919  =0;< vs ;rl++) { 920 i( lolbboxy [ ] && !lolbboxy[]-> `imy ()) { 921 bb = mybbl . `add (); 922 * bb = BBox :: _emy_bbox ; 923 bb -> nk = -1 * ; 924 mybbl . `combe (* lolbboxy [ ]); 925 lolbboxy [ ]-> `emy (); 929  dsize =0, rcvsize =0; 930 * dbuf = mybbl . `ck ( dsize ); 931 * rcvbuf = 0; 932 `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize , comm_rvi :: `comm ()); 933 BBoxLi * glbbbl = w `BBoxLi ( rcvbuf , rcvsize , num ); 934  bb = glbbbl -> `f ();bb;bb=glbbbl-> `xt ()) { 935 i( bb -> `emy (&& bb-> nk <0 = -1*bb->rank; 936 lolbboxy [ ]-> `add (* bb ); 938 i( glbbbl de glbbbl; 940 } } 945  gGridHrchy :: $ACE_RecompoHrchy () 947 cڡ  me = comm_rvi :: `oc_me (); 948 cڡ  num = comm_rvi :: `oc_num (); 949 cڡ  wnum = comm_rvi :: `oc_wld (); 950 cڡ  io_ = comm_rvi :: `io_abd (); 951 cڡ  pio = comm_rvi :: `oc_io (); 953 cڡ  dwk = ( comi ! GridUnLiNULL ? comi-> `ld (0) : 0; 955 i( `chk_t () `ACE_StChk (); 957  rag = ACEF ; 959 #i `defed ( ACE_GLOBAL_CLUSTER ) 960  =0;< vs ;rl++) { 961 i( lolbboxy [ ] && feag [] = ACETrue ) { 962 comi -> `fhii (* lolbboxy [ ], 963 `vnum ( ), 964 ACEDeuMGUWidth ); 966 feag [ ] = ACEF ; 967 rag = ACETrue ; 972 #i `defed ( ACE_GLOBAL_REFINE ) 973  =0;< vs ;rl++) { 974 `ACE_GhBoxes (); 975 i( lolbboxy [ ] && feag [] = ACETrue ) { 976 comi -> `fhii (* lolbboxy [ ], 977 `vnum ( ), 978 ACEDeuMGUWidth ); 980 feag [ ] = ACEF ; 981 rag = ACETrue ; 986 #i(! `defed ( ACE_GLOBAL_CLUSTER && !defed( ACE_GLOBAL_REFINE )) 987  =0;< vs ;rl++) { 988 i( lolbboxy [ ] && feag [] = ACETrue ) { 989 loi -> `fhii (* lolbboxy [ ], 990 `vnum ( ), 991 ACEDeuMGUWidth ); 992 lolbboxy [ ]-> `emy (); 993 feag [ ] = ACEF ; 994 rag = ACETrue ; 999 i( wnum =1 && rag = ACEF ) ; 1001 i( dglobgbl de oldglobalgbl; 1002 i( dlolgbl de oldlocalgbl; 1003 dlolgbl = lolgbl ;ocalgbl = 0; 1004 dglobgbl = globgbl ; globalgbl = 0; 1006 i( wnum > 1 && io_ && me == 0) { 1007 `ACE_PgIONode ( ACEIOTag | ACEIOComiReqTag , ACETrue ); 1010 #i(! `defed ( ACE_GLOBAL_CLUSTER && !defed( ACE_GLOBAL_REFINE )) 1011 i( wnum > 1) { 1012 i( vs > 1) { 1013  dsize =0, rcvsize =0; 1014 * dbuf = loi -> `ck ( dsize ); 1015 * rcvbuf = 0; 1017 `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize , comm_rvi :: `comm ()); 1018 i( comi de complist; 1019 comi = w `GridUnLi ( rcvbuf , rcvsize , num ); 1020 i( rcvbuf de []cvbuf; 1025 cڡ  wwk = comi -> `ld (0); 1026 cڡ  diffwk = (1.0* `bs ( wwk - dwk ))/(1.0*oldwork); 1029 i( num > 1) { 1030 i( vs == 1) { 1031 i(! lolbboxy [0]) 1032 lolbboxy [0] = w BBoxLi ; 1033 i(! lolbboxy [0]-> `imy ()) 1034 lolbboxy [0]-> `emy (); 1035 BBox * mybbox = lolbboxy [0]-> `add (); 1036 diributi . `i ( `whebbox (),* mybbox , num , me ); 1038 i( diffwk > ACERecompoThshd ) 1039 diributi . `i ( comi , loi , num , me , 1040 ACEDeuMGUWidth , 1041 `daghovp ()); 1044 i( vs == 1) { 1045 i(! lolbboxy [0]) 1046 lolbboxy [0] = w BBoxLi ; 1047 i(! lolbboxy [0]-> `imy ()) 1048 lolbboxy [0]-> `emy (); 1049 lolbboxy [0]-> `add ( `whebbox ()); 1053 loi = 0; 1054 loi = comi ; 1058 lolgbl = w GridBoxLi ; 1060 i( vs == 1) 1061 `ACE_MgeGridUns (); 1062 i(! loi -> `imy ()) { 1063 fev = comi -> `fe (); 1064 #ifde ACE_MERGE_OLD 1065 `ACE_InBBoxAay (); 1066 `ACE_MgeGridUns (); 1068 `ACE_MgeGridUnsNew (); 1072 fev = comi -> `fe (); 1075 i( wnum == 1) { 1076 globgbl = w `GridBoxLi (* lolgbl ); 1079  dsize =0, rcvsize =0; 1080 * dbuf = lolgbl -> `ck ( dsize ); 1081 * rcvbuf = 0; 1082 `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize ); 1083 i( globgbl de globalgbl; 1084 globgbl = w `GridBoxLi ( rcvbuf , rcvsize , num ); 1085 i( rcvbuf de []cvbuf; 1088 #ifde ACE_WRITEBOXES 1089 i(( io_ && me = pio ) || (!io_on && me == 0)) { 1090 #ifde DEBUG_PRINT_GH 1091 ( comm_rvi :: `log (<< "GridHrchy::WreBoxes" << " " << dl ). `ush (); 1093 `WreBoxes (* this ,* globgbl ); 1097 #ifde ACE_IOV 1098 i( io_ && wnum == 1) { 1100 i( Sv de Server; Server = 0; 1101 `PlPt ( SvPt , Ci , Sv ); 1103 i( Sv ) { 1104 `WreSm (* this , Sv ,* globgbl ); 1109 #ifde DEBUG_PRINT_RG 1110 i( comi ! GridUnLiNULL ) 1111 ( comm_rvi :: `log () << "\n************* New Composite List *************\n" 1112 << * comi 1114 ). `ush (); 1115 i( loi ! GridUnLiNULL ) 1116 ( comm_rvi :: `log () << "\n************* New Locallist List *************\n" 1117 << * loi 1119 ). `ush (); 1120 i( globgbl ! GridBoxLiNULL ) 1121 ( comm_rvi :: `log () << "\n************* New Global GBL *************\n" 1122 << * globgbl 1124 ). `ush (); 1125 i( lolgbl ! GridBoxLiNULL ) 1126 ( comm_rvi :: `log () << "\n************* New Local GBL *************\n" 1127 << * lolgbl 1129 ). `ush (); 1132 GridBoxLi rgbl , sgbl , ogbl ; 1133 i( comm_rvi :: `d (&& comm_rvi:: `oc_num () > 1) { 1134 sgbl = * globgbl ; 1135 sgbl ** dlolgbl ; 1136 sgbl -* lolgbl ; 1138 rgbl = * dglobgbl ; 1139 rgbl ** lolgbl ; 1140 rgbl -* dlolgbl ; 1142 ogbl = * dlolgbl ; 1143 ogbl ** lolgbl ; 1145 cڡ  dmdex = mdex ; 1146 mdex = globgbl -> `maxdex (); 1148  i ; 1149  i =0; i< gum ; i++i( gi [i]) { 1150 i( comm_rvi :: `d ()comm_rvi:: `t_comm ( gi [ i ]-> gfid ); 1151 gi [ i ]-> `GF_Recompo ( dmdex +1, * dlolgbl , rgbl , sgbl , ogbl ); 1153  i =0; i< gum ; i++i( gi [i]) { 1154 gi [ i ]-> `GF_FeTmpStage (); 1157 i( dlolgbl de oldlocalgbl; 1158 i( dglobgbl de oldglobalgbl; 1159 dglobgbl = 0; dlolgbl = 0; 1160 } } 1165  gGridHrchy :: $ACE_RecompoHrchy (cڡ * me ) 1167 cڡ  me = comm_rvi :: `oc_me (); 1168 cڡ  num = comm_rvi :: `oc_num (); 1169 cڡ  wnum = comm_rvi :: `oc_wld (); 1170 cڡ  io_ = comm_rvi :: `io_abd (); 1171 cڡ  pio = comm_rvi :: `oc_io (); 1173 i( `chk_t () `ACE_StChk (); 1176 i( dglobgbl de oldglobalgbl; 1177 dglobgbl = 0; 1178 i( dlolgbl de oldlocalgbl; 1179 dlolgbl = 0; 1182 `ACE_InChk ( me ); 1183 ampos * chkd = 0; 1184 * chkmed = 0; 1185 ifam ifs ; 1186  eag = `ACE_OnChkISm ( me , chkd , chkmed , ifs ); 1187 `as ( eag = ACETrue ); 1190 ifs >> * this ; 1193 `ACE_CloChkISm ( chkd , chkmed , ifs ); 1196 i( chkum ! num ) { 1199 dglobgbl = w `GridBoxLi (* globgbl ); 1201 i( num == 1) { 1202 i( loi de ocallist;ocallist = 0; 1203 loi = comi ; 1204 globgbl -> `towr ( me ); 1205 globgbl -> `tdex (); 1206 * lolgbl = * globgbl ; 1208 i( num > 1) { 1210 i( vs == 1) { 1211 i(! lolbboxy [0]) 1212 lolbboxy [0] = w BBoxLi ; 1213 i(! lolbboxy [0]-> `imy ()) 1214 lolbboxy [0]-> `emy (); 1215 BBox * mybbox = lolbboxy [0]-> `add (); 1216 diributi . `i ( `whebbox (),* mybbox , num , me ); 1217 `ACE_MgeGridUns (); 1220 diributi . `i ( comi , loi , num , me , 1221 ACEDeuMGUWidth , 1222 `daghovp ()); 1224 i(! loi -> `imy ()) { 1225 fev = comi -> `fe (); 1226 #ifde ACE_MERGE_OLD 1227 `ACE_InBBoxAay (); 1228 `ACE_MgeGridUns (); 1230 `ACE_MgeGridUnsNew (); 1234 i(! lolgbl -> `imy ()lolgbl-> `emy (); 1240 i( wnum > 1 && ( io_ || chkum ! num )) { 1242 i( io_ && me == 0) { 1243 `ACE_PgIONode ( ACEIOTag | ACEIOComiReqTag , ACETrue ); 1246  dsize =0, rcvsize =0; 1247 * dbuf = 0; 1248 * rcvbuf = 0; 1249 i( vs > 1) { 1250 dbuf = loi -> `ck ( dsize ); 1251 `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize , comm_rvi :: `comm ()); 1253 i( comi de complist; 1254 comi = w `GridUnLi ( rcvbuf , rcvsize , num ); 1255 i( rcvbuf de []cvbuf; 1256 i( num =1 loi = comi ; 1259 dsize =0, rcvsize =0; 1260 dbuf = lolgbl -> `ck ( dsize ); 1261 rcvbuf = 0; 1262 `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize ); 1263 i( globgbl de globalgbl; 1264 globgbl = w `GridBoxLi ( rcvbuf , rcvsize , num ); 1265 i( rcvbuf de []cvbuf; 1268 #ifde DEBUG_PRINT_RG 1269 i( comi ! GridUnLiNULL ) 1270 ( comm_rvi :: `log () << "\n************* New Composite List *************\n" 1271 << * comi 1273 ). `ush (); 1274 i( loi ! GridUnLiNULL ) 1275 ( comm_rvi :: `log () << "\n************* New Locallist List *************\n" 1276 << * loi 1278 ). `ush (); 1279 i( globgbl ! GridBoxLiNULL ) 1280 ( comm_rvi :: `log () << "\n************* New Global GBL *************\n" 1281 << * globgbl 1283 ). `ush (); 1284 i( lolgbl ! GridBoxLiNULL ) 1285 ( comm_rvi :: `log () << "\n************* New Local GBL *************\n" 1286 << * lolgbl 1288 ). `ush (); 1291 cڡ  dmdex = mdex ; 1292 mdex = globgbl -> `maxdex (); 1293  i ; 1294  i =0; i< gum ; i++i( gi [i]) { 1295 i( comm_rvi :: `d ()) 1296 comm_rvi :: `t_comm ( gi [ i ]-> gfid ); 1297 gi [ i ]-> `GF_CheckpotRecompo (); 1300 i( dglobgbl de oldglobalgbl; 1301 dglobgbl = 0; 1302 i( dlolgbl de oldlocalgbl; 1303 dlolgbl = 0; 1305 `ACE_StChk (); 1306 } } 1311  gGridHrchy :: $ACE_Refe (cڡ  v ) 1314 i(! lolbboxy [ v ]) 1315 lolbboxy [ v ] = w BBoxLi ; 1316 lolgbl -> `bboxli (* lolbboxy [ v ], `vnum (lev),0,0); 1318 cuime [0][ v +1] = curtime[1][lev+1] = curtime[0][lev]; 1319 ime [0][ v +1] =eime[1][v+1] = cuime [0][lev]; 1321 feag [ v ] = ACETrue ; 1323 #ifde DEBUG_PRINT_RG 1324 comm_rvi :: `log () 1325 << "\n************* LoLiLev" << v << " *************\n" 1326 << * lolbboxy [ v ] 1328 ). `ush (); 1330 } } 1332  gGridHrchy :: $ACE_Refe ( BBoxLi & bbli , cڡ  v ) 1334 i(! lolbboxy [ v ]) 1335 lolbboxy [ v ] = w `BBoxLi ( bbli ); 1337 * lolbboxy [ v ] = bbli ; 1339 cuime [0][ v +1] = curtime[1][lev+1] = curtime[0][lev]; 1340 ime [0][ v +1] =eime[1][v+1] = cuime [0][lev]; 1342 feag [ v ] = ACETrue ; 1344 #ifde DEBUG_PRINT_RG 1345 comm_rvi :: `log () 1346 << "\n************* LoLiLev" << v << " *************\n" 1347 << * lolbboxy [ v ] 1349 ). `ush (); 1351 } } 1356  gGridHrchy :: $ACE_OnChkISm (cڡ  p , 1357 ifam & ifs ) 1359 `as ( chkag = ACETrue ); 1361  buf [128]; 1362 oram `obuf ( buf ,(buf), ios :: out ); 1363 `chk_fame ( obuf , chkme , p ); 1364 ifs . `ݒ ( buf ); 1365 i(! ifs  ACEF ; 1366 ifs . `ad ((*)& chkum ,()); 1367  ACETrue ; 1369 } } 1371  gGridHrchy :: $ACE_OnChkISm (cڡ  p , 1372 ampos *& chkd , 1373 *& chkmed , 1374 ifam & ifs ) 1376 `as ( chkag = ACETrue ); 1378  buf [128]; 1379 oram `obuf ( buf ,(buf), ios :: out ); 1380 `chk_fame ( obuf , chkme , p ); 1381 ifs . `ݒ ( buf ); 1382 i(! ifs  ACEF ; 1383 ifs . `ad ((*)& chkum ,()); 1385  dnum = 0; 1386 ifs . `ad ((*)& dnum ,()); 1388 cڡ  mednum = ( dnum -1)* ACEBktGFNameWidth ; 1390 chkd = w ampos [ dnum ]; 1391 ifs . `ad ((*) chkd ,( ampos )* dnum ); 1392 chkmed = w [ mednum ]; 1393 ifs . `ad ((*) chkmed ,()* mednum ); 1395 ifs . `ekg ( chkd [ dnum -1]); 1396  ACETrue ; 1397 } } 1399  gGridHrchy :: $ACE_GGFChkISm (cڡ  p , 1400 cڡ * game , 1401 cڡ  gfid , 1402 ifam & ifs ) 1404 `as ( chkag = ACETrue ); 1406  buf [128]; 1407 oram `obuf ( buf ,(buf), ios :: out ); 1408 `chk_fame ( obuf , chkme , p ); 1409 ifs . `ݒ ( buf ); 1410 i(! ifs  ACEF ; 1411 ifs . `ad ((*)& chkum ,()); 1413  dnum = 0; 1414 ifs . `ad ((*)& dnum ,()); 1416 cڡ  mednum = ( dnum -1)* ACEBktGFNameWidth ; 1418 ampos * chkd = w smpos[ dnum ]; 1419 ifs . `ad ((*) chkd ,( ampos )* dnum ); 1420 * chkmed = w [ mednum ]; 1421 ifs . `ad ((*) chkmed ,()* mednum ); 1423 i(! `cmp ( game ,( chkmed + gfid * ACEBktGFNameWidth ), 1424 ACEBktGFNameWidth )) { 1425 ifs . `ekg ( chkd [ gfid ]); 1426  ACETrue ; 1429  i =0; i< dnum -1; i++) 1430 i(! `cmp ( game ,( chkmed + i * ACEBktGFNameWidth ), 1431 ACEBktGFNameWidth )) { 1432 ifs . `ekg ( chkd [ i ]); 1433  ACETrue ; 1436 ifs . `o (); 1437  ACEF ; 1438 } } 1440  gGridHrchy :: $ACE_OnChkOSm (cڡ  p , 1441 ofam & ofs ) 1443 `as ( chkag = ACETrue ); 1445  buf [128]; 1446 oram `obuf ( buf ,(buf), ios :: out ); 1447 `chk_fame ( obuf , chkme , p ); 1448 ofs . `ݒ ( buf ); 1449 i(! ofs  ACEF ; 1450 cڡ  um = comm_rvi :: `oc_num (); 1451 ofs . `wre ((*)& um ,()); 1452  ACETrue ; 1453 } } 1458  gGridHrchy :: $ACE_Checkpot (cڡ * me ) 1460 cڡ  me = comm_rvi :: `oc_me (); 1461 cڡ  num = comm_rvi :: `oc_num (); 1464 `ACE_InChk ( me ); 1465 ofam ofs ; 1466  eag = `ACE_OnChkOSm ( me , ofs ); 1467 `as ( eag = ACETrue ); 1469 cڡ  dnum = gum +1; 1470 cڡ  mednum = gum * ACEBktGFNameWidth ; 1471 ampos * chkd = w smpos[ dnum ]; 1472 * chkmed = w [ mednum ]; 1474 ofs . `wre ((*)& dnum ,()); 1476 cڡ ampos chkdpos = ofs . `p (); 1477 ofs . `wre ((*) chkd ,( ampos )* dnum ); 1478 ofs . `wre ((*) chkmed ,()* mednum ); 1479 chkd [ dnum -1] = ofs . `p (); 1480 ofs << * this ; 1482  i =0; i< gum ; i++) 1483 i( gi [ i ] && gi[i]-> `checkpot ()) { 1484 chkd [ i ] = ofs . `p (); 1485 `y ( chkmed +( i * ACEBktGFNameWidth ), 1486 gi [ i ]-> game , ACEBktGFNameWidth ); 1487 gi [ i ]-> `GF_Checkpot ( ofs ); 1489 chkd [ i ] = 0; 1491 ofs . `ekp ( chkdpos ); 1492 ofs . `wre ((*) chkd ,( ampos )* dnum ); 1493 ofs . `wre ((*) chkmed ,()* mednum ); 1495 i( chkd de [] chkptdir; 1496 i( chkmed de [] chkptnamedir; 1498 `ACE_CloChkOSm ( ofs ); 1499 `ACE_StChk (); 1500 } } 1505  gGridHrchy :: $wlb (* wc ) const 1507 `as ( wc != 0); 1508  i =0;i< nk ;i++) 1509 wc [ i ] = `toWld ( decs [i], babbox . `low (i),babbox. `size (i)); 1510 } } 1512  gGridHrchy :: $wub (* wc ) const 1514 `as ( wc != 0); 1515  i =0;i< nk ;i++) 1516 wc [ i ] = `toWld ( decs [i], babbox . `u (i),babbox. `size (i)); 1517 } } 1519  gGridHrchy :: $b (* lc ) const 1521 `as ( lc != 0); 1522  i =0;i< nk ;i++ lc [i] = babbox . `low (i); 1523 } } 1525  gGridHrchy :: $lub (* lc ) const 1527 `as ( lc != 0); 1528  i =0;i< nk ;i++ lc [i] = babbox . `u (i); 1529 } } 1531  gGridHrchy :: $wldCods (cڡ * lc , cڡ * ls , * wc ) const 1533 `as ( wc != 0); 1534  i =0;i< nk ;i++) 1535 wc [ i ] = `toWld ( decs [i], lc [i], ls [i]); 1536 } } 1537  gGridHrchy :: $wldSp (cڡ * ls , * ws ) const 1539 `as ( ws != 0); 1540  i =0;i< nk ;i++) 1541 ws [ i ] = ls [i] * decs [i]. hfe ; 1542 } } 1544 DCods gGridHrchy :: $wldCods (cڡ * lc , cڡ * ls ) const 1546 DCods `wc ( nk ); 1547  i =0;i< nk ;i++) 1548 `wc ( i `toWld ( decs [i], lc [i], ls [i]); 1550  wc ; 1551 } } 1552 DCods gGridHrchy :: $wldCodsU (cڡ * lc , cڡ * ls ) const 1554 DCods `wc ( nk ); 1555  i =0;i< nk ;i++) 1556 `wc ( i `toWldU ( decs [i], lc [i], ls [i], `daghovp (i)); 1558  wc ; 1559 } } 1560 DCods gGridHrchy :: $wldCodsLow (cڡ * lc , cڡ * ls ) const 1562 DCods `wc ( nk ); 1563  i =0;i< nk ;i++) 1564 `wc ( i `toWldLow ( decs [i], lc [i], ls [i], `daghovp (i)); 1566  wc ; 1567 } } 1568 DCods gGridHrchy :: $wldSp (cڡ * ls ) const 1570 DCods `ws ( nk ); 1571  i =0;i< nk ;i++) 1572 `ws ( i ls [i] * decs [i]. hfe ; 1574  ws ; 1575 } } 1577 Cods gGridHrchy :: $lolCods (cڡ * wc ) const 1579 Cods `lc ( nk ,0); 1580  i =0;i< nk ;i++) 1581 `lc ( i `toLol ( decs [i], wc [i]); 1583  lc ; 1584 } } 1585 Cods gGridHrchy :: $lolSp (cڡ * ws ) const 1587 Cods `ls ( nk ,0); 1588  i =0;i< nk ;i++) 1589 `ls ( i (( ws [i] / decs [i]. hfe ); 1590  ls ; 1591 } } 1592  gGridHrchy :: $lolCods (cڡ * wc , * lc ) const 1594 `as ( lc != 0); 1596  i =0;i< nk ;i++) 1597 lc [ i ] = `toLol ( decs [i], wc [i]); 1598 } } 1599  gGridHrchy :: $lolSp (cڡ * ws , * ls ) const 1601 `as ( ls != 0); 1603  i =0;i< nk ;i++) 1604 ls [ i ] = (( ws [i] / decs [i]. hfe ); 1605 } } 1610  gGridHrchy :: $glb_bboxli ( BBoxLi & bbl , 1611 cڡ  l , 1612 cڡ  ty , 1613 cڡ  idt ) const 1615 cڡ  v = `vnum ( l ); 1616 cڡ  = `dagh ( idt ); 1618  ޭ [ ACEMaxRk ]; 1619 `ACE_InOvps ( ty , ޭ ); 1621 i(! bbl . `imy ()bbl. `emy (); 1623  GridBox * gb = globgbl -> `f ();gb; 1624 gb = globgbl -> `xt ()) { 1625 i(! gb -> `gbCڏs ( v )) ; 1626 bbl . `add ( `crn ( gb -> `gbBBox ( v , ޭ ), )); 1629 } } 1631  gGridHrchy :: $glb_mgedbboxli ( BBoxLi & bbl , 1632 cڡ  l , 1633 cڡ  ty , 1634 cڡ  idt ) const 1636 cڡ  v = `vnum ( l ); 1637 cڡ  = `dagh ( idt ); 1639  ޭ [ ACEMaxRk ]; 1640 `ACE_InOvps ( ty , ޭ ); 1642 i(! bbl . `imy ()bbl. `emy (); 1644  GridBox * gb = globgbl -> `f ();gb; 1645 gb = globgbl -> `xt ()) { 1646 i(! gb -> `gbCڏs ( v )) ; 1647 bbl . `add ( `crn ( gb -> `gbBBox ( v , ޭ ), )); 1650 } } 1652  gGridHrchy :: $glb_bboxli ( BBoxLi & bbl , 1653 cڡ  ml , 1654 cڡ  maxl , 1655 cڡ  ty , 1656 cڡ  idt ) const 1658 cڡ  mv = `vnum ( ml ); 1659 cڡ  maxv = `vnum ( maxl ); 1660 cڡ  = `dagh ( idt ); 1662  ޭ [ ACEMaxRk ]; 1663 `ACE_InOvps ( ty , ޭ ); 1665 i(! bbl . `imy ()bbl. `emy (); 1667  GridBox * gb = globgbl -> `f ();gb; 1668 gb = globgbl -> `xt ()) { 1669 i(! gb -> `gbCڏs ( mv , maxv )) ; 1670 bbl . `add ( `crn ( gb -> `gbBBox ( mv , maxv , ޭ ), )); 1672 } } 1674  gGridHrchy :: $glb_mgedbboxli ( BBoxLi & bbl , 1675 cڡ  ml , 1676 cڡ  maxl , 1677 cڡ  ty , 1678 cڡ  idt ) const 1680 cڡ  mv = `vnum ( ml ); 1681 cڡ  maxv = `vnum ( maxl ); 1682 cڡ  = `dagh ( idt ); 1684  ޭ [ ACEMaxRk ]; 1685 `ACE_InOvps ( ty , ޭ ); 1687 i(! bbl . `imy ()bbl. `emy (); 1689  GridBox * gb = globgbl -> `f ();gb; 1690 gb = globgbl -> `xt ()) { 1691 i(! gb -> `gbCڏs ( mv , maxv )) ; 1692 bbl . `add ( `crn ( gb -> `gbBBox ( mv , maxv , ޭ ), )); 1694 } } 1699  gGridHrchy :: $ACE_MuiGridLevs (cڡ  v , cڡ  idt ) const 1703 cڡ  xt = globgbl -> `smˡ ( `vnum ( v )); 1704 cڡ  ޭ = `daghovpCC__NCC (); 1705 cڡ  mn = 2 + ޭ ; 1707  n = ޭ + xt ; 1708  = 0; 1709 ( n +(1- ޭ ))%2 !0 && > mn { ++; = (n+olap)/2; } 1710  ( ( idt = ACE_Ma ? :l-1); 1711 } } 1717  gGridHrchy :: $ACE_IOSve () 1719 i( comm_rvi :: `comm (&& io_d_rv ) { 1720 #ifde DEBUG_PRINT_COMM_IO 1721 ( comm_rvi :: `log () << "GridHierarchy::ACE_IOServe " 1722 << comm_rvi :: `oc_me () << " " 1724 << dl ). `ush (); 1726 comm_rvi :: `rve (* io_d_rv -> `q ()); 1728 i( ACEIO_Fize [ io_ty ]) (ACEIO_Finalize[io_type])(); 1729 } } 1734 goam & gݔ << (oam& gos , cڡ  gdimec & gds ) 1736 i(& gds =( dimec * NULL  os ; 1737 gos << "[" << gds . glow << "," << ds. ghigh << "," << ds. gh << "," << ds. gn << "]"; 1738  gos ; 1741 goam & gݔ << (oam& gos , cڡ  gMgedGridUn & gmgul ) 1743 gos << "*************** Boundg Box ***************" << gdl ; 1744 gos << gmgul . gbb << gdl ; 1745 gos << "*************** GridUnLi ***************" << gdl ; 1746 gos << gmgul . ggul ; 1747 gos << "*************** ***************" << gdl ; 1748  gos ; 1751 goam & gݔ << (oam& gos , cڡ gGridHrchy & ggh ) 1753 i(& ggh =( GridHrchy * NULL  os ; 1755 gos << "ACE(" << ggh . gnk << ") "; 1756 gos << ggh . gtecs ; 1757  gi ; 1758  gi =0;i< ggh . gnk ;i++ gos << gh. gdecs [ i ]; 1759 gos << gdl ; 1761 gos << "BBBox: " << ggh . gbabbox << " "; 1762 gos << "IBBox: " << ggh . gtbbox << " "; 1763 gos << gdl ; 1765 gos << "Mv: " << ggh . gmaxv << " "; 1766 gos << "Rby: " << ggh . gfby << " "; 1767 gos << "Rv: " << ggh . gev << " "; 1768 gos << gdl ; 1770 gos << "Cv: " << ggh . gev << " "; 1771 gos << "Fv: " << ggh . gfev << " "; 1772 gos << "Levs: " << ggh . gvs << " "; 1773 gos << gdl ; 1775 gos << "BoundyTy: " << ggh . gbndryty << " "; 1776 gos << "AdtBoundyTy: " << ggh . gadtbndryty << " "; 1777 gos << "BoundaryWidth:["; 1778  gi =0;i< ggh . gnk ;i++ gos << " " << gh. gbndrywidth [2* i ] 1779 << " " << ggh . gbndrywidth [2* i +1]; 1780 gos << "] "; 1781 gos << "ExternalGhostWidth:["; 1782  gi =0;i< ggh . gnk ;i++ gos << " " << gh. gextghowidth [2* i ] 1783 << " " << ggh . gextghowidth [2* i +1]; 1784 gos << "] "; 1785 gos << gdl ; 1790 gos << "NumGF: " << ggh . ggum << gdl ; 1791  gi =0;i< ggh . ggum ;i++) 1792 gos << "\t[" << ggh . ggi [ i ]-> GF_Name (<< "] " << gdl ; 1794 gos << gdl ; 1795  gos ; 1801 gofam & gݔ << (ofam& gofs , cڡ gGridHrchy & ggh ) 1804 i(& ggh =( GridHrchy * NULL  ofs ; 1806 gofs . wre ((*)& gh ,( GridHrchy )); 1808 gofs . wre ((*) gh . cuime [0],()*gh. vs ); 1809 gofs . wre ((*) gh . cuime [1],()*gh. vs ); 1810 gofs . wre ((*) gh . ime [0],()*gh. vs ); 1811 gofs . wre ((*) gh . ime [1],()*gh. vs ); 1813 i( ggh . gvs > 1) { 1814 gofs << * ggh . gcomi ; 1815 gofs << * ggh . gloi ; 1817 gofs << * ggh . gglobgbl ; 1818 gofs << * ggh . glolgbl ; 1820  gofs ; 1823 gifam & gݔ >> (ifam& gifs , gGridHrchy & ggh ) 1825 i(& ggh =( GridHrchy * NULL  ifs ; 1827 cڡ  gme = comm_rvi :: oc_me (); 1828 cڡ  gnum = comm_rvi :: oc_num (); 1831 GridUnLi * gtmp_comi = gh . comi ; 1832 GridUnLi * gtmp_loi = gh . loi ; 1834 GridBoxLi * gtmp_globgbl = gh . globgbl ; 1835 GridBoxLi * gtmp_lolgbl = gh . lolgbl ; 1836 GridBoxLi * gtmp_dglobgbl = gh . dglobgbl ; 1837 GridBoxLi * gtmp_dlolgbl = gh . dlolgbl ; 1839 BBoxLi ** gtmp_lolbboxy = gh . lolbboxy ; 1841 cڡ  gtmp_gum = gh . gum ; 1842 GridFuniVoid ** gtmp_gi = gh . gi ; 1844 ACEIOSvPg * gtmp_io_comi_rv = gh . io_comi_rv ; 1845 ACEIOSvRcv * gtmp_io_wre_rv = gh . io_wre_rv ; 1846 ACEIOSvSnd * gtmp_io_ad_rv = gh . io_ad_rv ; 1847 ACEIOSvPg * gtmp_io_d_rv = gh . io_d_rv ; 1849  gd_chkag = gh . chkag ; 1850  gd_chkum = gh . chkum ; 1851  gd_chkme [ ACEChkPtTagNameSize ]; 1852 y ( d_chkme , gh . chkme , ACEChkPtTagNameSize ); 1854 * gtmp_cuime0 = gh . cuime [0]; 1855 * gtmp_cuime1 = gh . cuime [1]; 1857 * gtmp_ime0 = gh . ime [0]; 1858 * gtmp_ime1 = gh . ime [1]; 1860 BBox * gtmp_boxes = gh . diributi . boxes ; 1862 #ifde ACE_IOV 1863 RawTCPrv * gtmp_SvPt = gh . SvPt ; 1864 RawTCPpt * gtmp_Sv = gh . Sv ; 1865 PtMux * gtmp_Ci = gh . Ci ; 1868 gifs . ad ((*)& gh ,( GridHrchy )); 1871 ggh . gcomi = tmp_comi ; 1872 ggh . gloi = tmp_loi ; 1874 ggh . gglobgbl = tmp_globgbl ; 1875 ggh . glolgbl = tmp_lolgbl ; 1876 ggh . gdglobgbl = tmp_dglobgbl ; 1877 ggh . gdlolgbl = tmp_dlolgbl ; 1879 ggh . glolbboxy = tmp_lolbboxy ; 1881 ggh . ggum = tmp_gum ; 1882 ggh . ggi = tmp_gi ; 1884 ggh . gio_comi_rv = tmp_io_comi_rv ; 1885 ggh . gio_wre_rv = tmp_io_wre_rv ; 1886 ggh . gio_ad_rv = tmp_io_ad_rv ; 1887 ggh . gio_d_rv = tmp_io_d_rv ; 1889 ggh . gdiributi . gboxes = tmp_boxes ; 1891 #ifde ACE_IOV 1892 ggh . gSvPt = tmp_SvPt ; 1893 ggh . gSv = tmp_Sv ; 1894 ggh . gCi = tmp_Ci ; 1897 ggh . gchkag = d_chkag ; 1898 ggh . gchkum = d_chkum ; 1899 y ( gh . chkme , d_chkme , ACEChkPtTagNameSize ); 1901 ggh . gcuime [0] = tmp_cuime0 ; 1902 ggh . gcuime [1] = tmp_cuime1 ; 1904 ggh . gime [0] = tmp_ime0 ; 1905 ggh . gime [1] = tmp_ime1 ; 1907  gi ; 1909 i( ggh . gcuime [0] gde [] gh.curtime[0]; 1910 ggh . gcuime [0] = w [ gh . vs ]; 1911 i( ggh . gcuime [1] gde [] gh.curtime[1]; 1912 ggh . gcuime [1] = w [ gh . vs ]; 1913  gi =0;i< ggh . gvs ;i++) 1914 { ggh . gcuime [0][ i ] = gh . cuime [1][i] = 0; } 1917 gifs . ad ((*) gh . cuime [0],()*gh. vs ); 1918 gifs . ad ((*) gh . cuime [1],()*gh. vs ); 1921 i( ggh . gime [0] gde [] gh.reftime[0]; 1922 ggh . gime [0] = w [ gh . vs ]; 1923 i( ggh . gime [1] gde [] gh.reftime[1]; 1924 ggh . gime [1] = w [ gh . vs ]; 1925  gi =0;i< ggh . gvs ;i++) 1926 { ggh . gime [0][ i ] = gh . ime [1][i] = 0; } 1929 gifs . ad ((*) gh . ime [0],()*gh. vs ); 1930 gifs . ad ((*) gh . ime [1],()*gh. vs ); 1932 i( ggh . gvs > 1) { 1934 i( ggh . gcomi gh.comi-> emy (); 1936 ggh . gcomi = w GridUnLi ; 1938 gifs >> * ggh . gcomi ; 1941 i( ggh . gloi gh.loi-> emy (); 1943 ggh . gloi = w GridUnLi ; 1945 gifs >> * ggh . gloi ; 1948 i( ggh . gcomi de gh.complist; 1949 ggh . gcomi = 0; 1950 i( ggh . gloi de gh.locallist; 1951 ggh . gloi = 0; 1955 i( ggh . gglobgbl gh.globgbl-> emy (); 1957 ggh . gglobgbl = w GridBoxLi ; 1959 gifs >> * ggh . gglobgbl ; 1962 i( ggh . glolgbl gh.lolgbl-> emy (); 1964 ggh . glolgbl = w GridBoxLi ; 1966 gifs >> * ggh . glolgbl ; 1968  gifs ; 1971 #ifde ACE_WRITEBOXES 1972  gwrebboxt = 0; 1973  $WreBoxes ( GridHrchy & GH , 1974 cڡ GridBoxLi & cgbl ) 1976 i(& cgbl = GridBoxLiNULL ) ; 1978 GridBoxLi & gbl = (GridBoxLi & cgbl ; 1979  cd * tmpcur = gbl . `cuec (); 1981 FILE * dfe ; 1982 cڡ  ޭ = 0; 1984 cڡ  time = wrebboxt ++; 1986 i(!( dfe = `fݒ ("ACEBoxes", "a")) `ex (-1); 1988  dim = 0, lb [3], ub [3], ext [3]; 1989  c = 0, d = 0; 1990  GridBox * gb = 0; 1991 BBox bb ; 1993  d =0;d<3;d++) { 1994 lb [ d ] = 0; 1995 ub [ d ] = 0; 1996 ext [ d ] = 1; 1999  cuev = 0; cuev < GH . `fevdex (); curlev++) { 2000  c =0, gb = gbl . `f ();gb;++c,gb=gbl. `xt ()) { 2001 bb = gb -> `gbBBox ( GH . `vnum ( cuev ), ޭ ); 2002 i(! bb . `emy ()) { 2003 dim = bb . nk ; 2004  d =0;d< dim ;d++) { 2005 lb [ d ] = bb . `low (d); 2006 ub [ d ] = bb . `u (d); 2007 ext [ d ] = bb . `exs (d); 2009 ; d <3;d++) { 2010 lb [ d ] = 0; 2011 ub [ d ] = 0; 2012 ext [ d ] = 1; 2014 `rtf ( dfe , "%u %u %u %u %u %u %u %u %u %u %u %u %u\n", 2015 time , gb -> `gbOwr (), cuev , c , 2016 ext [0],ext[1],ext[2], 2017 lb [0],lb[1],lb[2], 2018 ub [0],ub[1],ub[2]); 2022 `fo ( dfe ); 2023 gbl . `tcuec ( tmpcur ); 2024 } } 2027 #ifde ACE_IOV 2028  $WreSm ( GridHrchy & GH , RawTCPpt * Sv , 2029 cڡ GridBoxLi & cgbl ) 2031 i(& cgbl = GridBoxLiNULL ) ; 2033 GridBoxLi & gbl = (GridBoxLi & cgbl ; 2034  cd * tmpcur = gbl . `cuec (); 2036  buf [2048]; 2037 oram `os ( buf ,(buf), ios :: out ); 2039 cڡ  time = GH . `gCutTime (GH. `crvdex (), ACE_Ma ); 2040 cڡ  mod = 2; 2041 GridBox * gb = 0; 2042  gb = gbl . `f ();gb;gb=gbl. `xt ()){ 2043  owr = gb -> `gbOwr (); 2044  i = gb -> `gbFeLev ();i<=gb->gbFeLev();i+=gb-> `gbLevSp ()) { 2045 os << time << " "; 2046 os << GH . `vdex ( i ) << " "; 2047 os << mod << " "; 2048 BBox bb = gb -> `gbBBox ( i ); 2049 os << bb . `low (0) << " " 2050 << bb . `low (1) << " "; 2051 os << bb . `u (0+ bb. `size (0) << " " 2052 << bb . `u (1+ bb. `size (1) << " "; 2053 os << bb . `size (0) << " " << bb.stepsize(1) << " "; 2054  c = 0; 2055 c = ((( GH . `vdex ( i )+1<< 16| (( owr +1) << 8) | 0); 2056 os << c ; 2057 os << "\n"; 2061  ~ 2062 Sv -> `wre ( buf ,(buf)); 2063 #ifde DEBUG_PRINT 2064 comm_rvi :: `log (<< "Wrg osock...." << dl << ush ; 2065 comm_rvi :: `log (<< buf << ush ; 2067 gbl . `tcuec ( tmpcur ); 2068 } } 2070  $PlPt ( RawTCPrv * SvPt , 2071 PtMux * Ci , 2072 RawTCPpt *& Sv ) 2074 if( Ci -> ` ()){ 2075 if( Sv de Server; 2076 Sv = SvPt -> `ac (); 2078 } } 2081 #ifde DICE 2092  gGridHrchy :: $SObjDesti () 2094 `rtf ( m_rObjeDesti , 2096 m_nObjeID , m_nObjeTy , nk ); 2097 } } 2099  gGridHrchy :: $SObjVws () 2101 `rtf ( m_rObjeVws ,"START_VIEWS 5 "); 2102 `rt ( m_rObjeVws ,"GlobalBBoxDesc TEXTDISPLAY "); 2105 `rt ( m_rObjeVws ,"GridStructure BBOXLISTPLOT "); 2106 `rt ( m_rObjeVws ,"RefinementInfo TEXTDISPLAY "); 2107 `rt ( m_rObjeVws ,"END_VIEWS"); 2108 } } 2110  gGridHrchy :: $SObjCommds () 2112 `rtf ( m_rObjeCommds ,"START_COMMANDS 3 "); 2113 `rt ( m_rObjeCommds ,"Refine(int) "); 2114 `rt ( m_rObjeCommds ,"Checkpoint "); 2115 `rt ( m_rObjeCommds ,"Rollback "); 2116 `rt ( m_rObjeCommds ,"END_COMMANDS"); 2117 } } 2119  gGridHrchy :: $SFuniPors () 2124 Aay [0] = & GHCmdRefe ; 2125 Aay [1] = & GHCmdCheckpot ; 2126 Aay [2] = & GHCmdRlback ; 2128 VwAay [0] = & GHVwBBoxDesc ; 2131 VwAay [1] = & GHVwBBoxLiPl ; 2132 VwAay [2] = & GHVwRefemtDesc ; 2133 } } 2140 * $GHVwBBoxDesc ( DICEBaObje * theObje ) 2142 cڡ GridHrchy & theGH = *((GridHrchy* theObje ); 2143 cڡ BBox & theBox = theGH . `glbbbox (); 2144 cڡ  nk = theBox .rank; 2146 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 2147 m_rUpdeMsg [0] = '\0'; 2148 cڡ  nVwNum = 0; 2150 oram `updebuf ( m_rUpdeMsg , 2151 DICEUpdeBufrSize , 2152 ios :: out ); 2154 updebuf << "UPDATE_STATE " 2155 << theObje -> m_nObjeID 2157 << nVwNum 2160 updebuf << "GlobalBox: "; 2161 i( theBox . `emy ()) 2162 updebuf << "[(),()]"; 2164 updebuf << "["; 2165 updebuf << theBox . `low (); 2166 updebuf << ","; 2167 updebuf << theBox . `u (); 2168 updebuf << ","; 2169 updebuf << theBox . `size (); 2170 updebuf << "] "; 2173 updebuf << " END_UPDATE_STATE" << dl ; 2175  m_rUpdeMsg ; 2176 } } 2178 * $GHVwBBoxPl ( DICEBaObje * theObje ) 2180 cڡ GridHrchy & theGH = *((GridHrchy* theObje ); 2181 cڡ BBox & theBox = theGH . `glbbbox (); 2182 cڡ  nk = theBox .rank; 2184 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 2185 m_rUpdeMsg [0] = '\0'; 2186 cڡ  nVwNum = 1; 2188 i( nk == 3) 2189 `rtf ( m_rUpdeMsg , 2191 theObje -> m_nObjeID , 2192 nVwNum , 2193 nk , 2194 theBox . `low (0),theBox. `u (0),theBox. `size (0), 2195 theBox . `low (1),theBox. `u (1),theBox. `size (1), 2196 theBox . `low (2),theBox. `u (2),theBox. `size (2)); 2197 i( nk == 2) 2198 `rtf ( m_rUpdeMsg , 2200 theObje -> m_nObjeID , 2201 nVwNum , 2202 nk , 2203 theBox . `low (0),theBox. `u (0),theBox. `size (0), 2204 theBox . `low (1),theBox. `u (1),theBox. `size (1)); 2205 i( nk == 1) 2206 `rtf ( m_rUpdeMsg , 2208 theObje -> m_nObjeID , 2209 nVwNum , 2210 nk , 2211 theBox . `low (0),theBox. `u (0),theBox. `size (0)); 2213  m_rUpdeMsg ; 2214 } } 2216  ~"ACEUCD.h " 2218 * $GHVwUCDPl ( DICEBaObje * theObje ) 2220 cڡ GridHrchy & theGH = *((GridHrchy* theObje ); 2222 cڡ  nk = theGH .rank; 2223 cڡ  mv = theGH . `crvdex (); 2224 cڡ  maxv = theGH . `fevdex (); 2226 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 2227 m_rUpdeMsg [0] = '\0'; 2228 cڡ  nVwNum = 2; 2231 `rtf ( m_rUpdeMsg ,"UPDATE_STATE %d %d UCDPLOT %d ", 2232 theObje -> m_nObjeID , nVwNum , nk ); 2244  numnodes = 0; 2245 ** nodes = 0; 2246  nums = 0; 2247 ** s = 0; 2249 i( nk == 3) { 2250 `ACEUCD (3 `ucd ( mv , maxv , theGH , ACE_Ma ); 2251 ucd . `GUCDInfo ( numnodes , nodes , nums , s , ACELolCods ); 2253 i( nk == 2) { 2254 `ACEUCD (2 `ucd ( mv , maxv , theGH , ACE_Ma ); 2255 ucd . `GUCDInfo ( numnodes , nodes , nums , s , ACELolCods ); 2257 i( nk == 1) { 2258 `ACEUCD (1 `ucd ( mv , maxv , theGH , ACE_Ma ); 2259 ucd . `GUCDInfo ( numnodes , nodes , nums , s , ACELolCods ); 2262  i ; 2263  tmpr [128]; 2265 `rtf ( tmpr ,"%d ", nums ); 2266 `rt ( m_rUpdeMsg , tmpr ); 2268 `rt ( m_rUpdeMsg ,"# vtk DataFile Version 1.0\n"); 2269 `rt ( m_rUpdeMsg ,"AMR Grid Structure\n"); 2270 `rt ( m_rUpdeMsg ,"ASCII\n"); 2271 `rt ( m_rUpdeMsg ,"\n"); 2273 `rtf ( tmpr ,"DATASET UNSTRUCTURED_GRID\n"); 2274 `rt ( m_rUpdeMsg , tmpr ); 2276 `rtf ( tmpr ,"POINTS %d i\n", numnodes ); 2277 `rt ( m_rUpdeMsg , tmpr ); 2278  i =0;i< numnodes ;i++) { 2279 i( nk == 3) { 2280 `rtf ( tmpr ,"%d %d %d ",() nodes [0][ i ],()nodes[1][i],()nodes[2][i]); 2282 i( nk == 2) { 2283 `rtf ( tmpr ,"%d %d 0 ",() nodes [0][ i ],()nodes[1][i]); 2285 i( nk == 1) { 2286 `rtf ( tmpr ,"%d 0 0 ",() nodes [0][ i ]); 2288 `rt ( m_rUpdeMsg , tmpr ); 2289 i( i %50 =0 || i = numnodes -1) 2290 `rt ( m_rUpdeMsg ,"\n"); 2293 i( nk == 3) 2294 `rtf ( tmpr ,"\nCELLS %d %d\n", nums ,9*numcells); 2295 i( nk == 2) 2296 `rtf ( tmpr ,"\nCELLS %d %d\n", nums ,5*numcells); 2297 i( nk == 1) 2298 `rtf ( tmpr ,"\nCELLS %d %d\n", nums ,3*numcells); 2300 `rt ( m_rUpdeMsg , tmpr ); 2301  i =0;i< nums ;i++) { 2302 i( nk == 3) 2303 `rtf ( tmpr ,"8 %d %d %d %d %d %d %d %d\n", 2304 s [ i ][5],cells[i][6], 2305 s [ i ][4],cells[i][7], 2306 s [ i ][1],cells[i][2], 2307 s [ i ][0],cells[i][3]); 2308 i( nk == 2) 2309 `rtf ( tmpr ,"4 %d %d %d %d\n", 2310 s [ i ][1],cells[i][2], 2311 s [ i ][0],cells[i][3]); 2312 i( nk == 1) 2313 `rtf ( tmpr ,"2 %d %d\n", 2314 s [ i ][0],cells[i][1]); 2316 if(( ` ( theObje -> m_rUpdeMsg + sn( tmpr ) + 2) 2317 > DICEUpdeBufrSize ) { 2318 #ifde DEBUG_PRINT 2319 cout <<"Sizoupdbuf㸚suffic"<< dl ; 2322 `rt ( m_rUpdeMsg , tmpr ); 2347 `rt ( m_rUpdeMsg ,"\n END_UPDATE_STATE\n"); 2349 if( nodes ) { 2350  i =0;i< nk ;i++) 2351 i( nodes [ i ]{ de []odes[i];odes[i] = 0; } 2353 de [] nodes ; 2354 nodes = 0; 2357 i( s ) { 2358  i =0;i< nums ;i++) 2359 i( s [ i ]{ de [] cells[i]; cells[i] = 0; } 2361 de [] s ; 2362 s = 0; 2365  m_rUpdeMsg ; 2366 } } 2368 * $GHVwBBoxLiPl ( DICEBaObje * theObje ) 2370 GridHrchy & theGH = *((GridHrchy* theObje ); 2371 GridBoxLi * theCGBL = theGH . `ggbl (); 2373 i( theCGBL = GridBoxLiNULL  NULL ; 2375 GridBoxLi & gbl = (GridBoxLi &* theCGBL ; 2376  cd * tmpcur = gbl . `cuec (); 2379 cڡ BBox & theBox = theGH . `glbbbox (); 2380 cڡ  nk = theBox .rank; 2381 cڡ  time = theGH . `gCutTime heGH. `crvdex (), ACE_Ma ); 2382 cڡ  ޭ = 0; 2384 * m_rUpdeMsg = theObje ->m_strUpdateMsg; 2385 m_rUpdeMsg [0] = '\0'; 2386 cڡ  nVwNum = 3; 2388 oram `updebuf ( m_rUpdeMsg , 2389 DICEUpdeBufrSize , 2390 ios :: out ); 2392 updebuf << "UPDATE_STATE " 2393 << theObje -> m_nObjeID 2395 << nVwNum 2398  dim = 0, lb [3], ub [3], ext [3]; 2399  c = 0, d = 0; 2400  GridBox * gb = 0; 2401 BBox bb ; 2403  d =0;d<3;d++) { 2404 lb [ d ] = 0; 2405 ub [ d ] = 0; 2406 ext [ d ] = 1; 2409  cuev = 0; cuev < theGH . `fevdex (); curlev++) { 2410  c =0, gb = gbl . `f ();gb;++c,gb=gbl. `xt ()) { 2411 bb = gb -> `gbBBox ( theGH . `vnum ( cuev ), ޭ ); 2412 i(! bb . `emy ()) { 2413 dim = bb . nk ; 2414  d =0;d< dim ;d++) { 2415 lb [ d ] = bb . `low (d); 2416 ub [ d ] = bb . `u (d); 2417 ext [ d ] = bb . `exs (d); 2419 ; d <3;d++) { 2420 lb [ d ] = 0; 2421 ub [ d ] = 0; 2422 ext [ d ] = 1; 2424 updebuf << "START_DATA " 2425 << time << " " 2426 << gb -> `gbOwr () << " " 2427 << cuev << " " 2428 << c << " " 2429 << ext [0] << " " <m_strUpdateMsg; 2451 m_rUpdeMsg [0] = '\0'; 2452 cڡ  nVwNum = 4; 2454 oram `updebuf ( m_rUpdeMsg , 2455 DICEUpdeBufrSize , 2456 ios :: out ); 2458 updebuf << "UPDATE_STATE " 2459 << theObje -> m_nObjeID 2461 << nVwNum 2464 updebuf << "FLev = " << theGH . `fevdex (<< dl ; 2465 updebuf << "Cr Lev = " << theGH . `crvdex (<< dl ; 2466 updebuf << "Maximum Lev = " << theGH . `maxvdex (<< dl ; 2467 updebuf << "RefemFa = " << theGH . `fe (<< dl ; 2469 updebuf << " END_UPDATE_STATE" << dl ; 2471  m_rUpdeMsg ; 2472 } } 2481  gthechkame [128] = "DICECHKPT"; 2483 * $GHCmdRefe ( DICEBaObje * theObje , * gv []) 2485 GridHrchy & theGH = *((GridHrchy* theObje ); 2487 i( theGH . `tٮvs (=1 ( `GHVwRefemtDesc ( theObje )); 2489 cڡ  nPam = `oi ( gv [0]);; 2490  = theGH . `fe (); 2491 i( nPam > 0 = `oi ( gv [1]); 2493 cڡ  tvs = / theGH . `fe (); 2494 cڡ  vs = theGH . `maxvdex (-heGH. `fevdex (); 2495 cڡ  ev = ( vs > tvs ) ?orlevels : canrlevels; 2496  v = theGH . `fevdex (); 2498  i =0;i< ev ;i++) { 2499 theGH . `ACE_Refe ( v ++); 2501 theGH . `ACE_RecompoHrchy (); 2504  ( `GHVwRefemtDesc ( theObje )); 2505 } } 2507 * $GHCmdCheckpot ( DICEBaObje * theObje , * gv []) 2509 GridHrchy & theGH = *((GridHrchy* theObje ); 2511 * fame = 0; 2513 i( gv [0] == 0) 2514 fame = thechkame ; 2516 fame = gv [1]; 2517 `ry ( thechkame , fame ); 2519 #ifde DEBUG_PRINT 2520 cout << dl <<"ICmdCheckpot()"< 37  ~ 43  sdimec { 44  mlow ; 45  mhigh ; 46  mh ; 47  mhfe ; 48  mn ; 49  mnfe ; 50 le dimec (): low (0), high (0), h (0), hfe (0), n (0), nfe (0) {} 57  sMgedGridUn { 58 BBox mbb ; 59 GridUnLi mgul ; 66 le  $toWld ( dimec cڡ & ds , cڡ  lc ) 67 {  ( ds . low + ( lc *ds. hfe )); } } 68 le  $toWld ( dimec cڡ & ds , cڡ  lc , 69 cڡ  ) 70 {  ( ds . low + ( lc *ds. hfe )); } } 72 le  $toWldLow ( dimec cڡ & ds , cڡ  lc , 73 cڡ  , cڡ  ޭ ) 74 {  ( ds . high *((1.0* lc )/(1.0*ds. nfe )) + 75 ds . low *(1.0 - (1.0* lc )/(1.0*ds. nfe ))); } } 76 le  $toWldU ( dimec cڡ & ds , cڡ  lc , 77 cڡ  , cڡ  ޭ ) 78 {  ( ds . high *((1.0*( lc +(1- ޭ )* ))/(1.0*ds. nfe )) + 79 ds . low *(1.0 - (1.0*( lc +(1- ޭ )* ))/(1.0*ds. nfe ))); } } 81 le  $toLol ( dimec cڡ & ds , cڡ wc ) 82 {  (((( wc - ds . low )/ds. hfe )); } } 89  ACEIO_ComiPgFuni ( GridHrchy & GH ); 91  ACEIO_EndIOPgFuni ( GridHrchy & GH ); 94 #ifde ACE_IOV 98  PlPt ( RawTCPrv * SvPt , 99 PtMux * Ci , 100 RawTCPpt *& Sv ); 101  WreSm ( GridHrchy & GH , 102 RawTCPpt * Sv , 103 cڡ GridBoxLi & cgbl ); 107 #ifde ACE_WRITEBOXES 111  WreBoxes ( GridHrchy & GH , 112 cڡ GridBoxLi & cgbl ); 116 #ide ACEDeuDiributi 117  #ACEDeuDiributi ( ACEComposeDiributi ) ) 120 #ide ACEDeuMGUWidth 121  #ACEDeuMGUWidth (1) ) 124 #ide ACEDeuBoundy 125  #ACEDeuBoundy ( ACEBoundyRegur ) ) 128 #ide ACEDeuAdtBoundy 129  #ACEDeuAdtBoundy ( ACEAdtBoundyIp ) ) 132 #ide ACEDeuRefeFa 133  #ACEDeuRefeFa (2) ) 136 #ide ACEDeuRefeLev 137  #ACEDeuRefeLev (1) ) 140 #ide ACEMaxIOTys 141  #ACEMaxIOTys (5) ) 144 #ide ACEChkPtTagNameSize 145  #ACEChkPtTagNameSize (16) ) 148 #ide ACERecompoThshd 149  #ACERecompoThshd (0.2) ) 152 as cGridHrchy : public DICEBaObje 154 nd oam & ݔ << (oam& os , cڡ mGridHrchy & ); 155 nd mofam & mݔ << (ofam& mofs , cڡ mGridHrchy &); 156 nd mifam & mݔ >> (ifam& mifs , mGridHrchy &); 158 mpublic : 159 cڡ nk ; 161 mive : 163  dimec decs [ ACEMaxRk ]; 164  dimec mtecs ; 165 BBox mbabbox ; 168  mdaghty ; 169  movp [ ACEMaxRk ]; 172  mbndryty ; 173  madtbndryty ; 174  mbndrywidth [2* ACEMaxRk ]; 178  mextghowidth [2* ACEMaxRk ]; 181  mmaxv ; 182  mev ; 183  mvs ; 185  mfby ; 186  mev ; 189  mfev ; 191 BBox mtbbox ; 194 * mcuime [2]; 195 * mime [2]; 197  mupded ; 199  mshadowc ; 200 mpublic : 202  diributi_ty ; 203 ACEDiributi mdiributi ; 205 mive : 207  mdex ; 208 GridUnLi * mcomi ; 211 GridUnLi * mloi ; 214 GridBoxLi * mlolgbl , * mglobgbl ; 215 GridBoxLi * mdlolgbl , * mdglobgbl ; 217 * mfeag ; 218 BBoxLi ** mlolbboxy ; 223 mive : 225  gems ; 226  mgag ; 227  mgffag ; 229 mpublic : 231  gum ; 232 GridFuniVoid ** mgi ; 235  mio_ty ; 236 ACEIOSvPg * mio_comi_rv ; 237 ACEIOSvRcv * mio_wre_rv ; 238 ACEIOSvSnd * mio_ad_rv ; 239 ACEIOSvPg * mio_d_rv ; 241 mive : 243  chkag ; 244  mchkum ; 245  mchkme [ ACEChkPtTagNameSize ]; 247 #ifde ACE_IOV 248 mive : 249 RawTCPrv * SvPt ; 250 RawTCPpt * mSv ; 251 PtMux * mCi ; 254 mive : 258 GridHrchy (GridHrchy cڡ & h ); 259 GridHrchy cڡ & mݔ (GridHrchy cڡ & h ); 261 mpublic : 265 GridHrchy (cڡ  ndim , 266 cڡ  ty , 267 cڡ  max_v , 268 MPI_Comm comm =0); 273 ~ GridHrchy (); 278 mpublic : 279  ACE_SBaGrid (cڡ * bbox , cڡ * she ); 280  ACE_STimeScs (cڡ ime , 281 cڡ time , 282 cڡ  s ); 284 le  $ACE_SBoundyTy (cڡ  ty ) 285 { bndryty = ty ; } 286 le  $ACE_SAdtBoundyTy (cڡ  ty ) 287 { adtbndryty = ty ; } } 289 le  $ACE_SBoundyWidth (cڡ  width ) 290 {  i =0;i<2* nk ;i++ bndrywidth [i] = width ; } } 291 le  $ACE_SBoundyWidth (cڡ * width ) 292 {  i =0;i<2* nk ;i++ bndrywidth [i] = width [i]; } } 294 le  $ACE_SExGhoWidth (cڡ  width ) 295 {  i =0;i<2* nk ;i++ extghowidth [i] = width ; } } 296 le  $ACE_SExGhoWidth (cڡ * width ) 297 {  i =0;i<2* nk ;i++ extghowidth [i] = width [i]; } } 299  ACE_SRefeFa (cڡ  r ); 301 le  $ACE_SDiributiTy (cڡ  ty ) 302 { diributi_ty = ty ; diributi . `t_di y); } } 303 le  $ACE_SDiributiTy (cڡ  ty , BBoxLi & bbl ) 304 { diributi_ty = ty ; diributi . `t_di y, bbl ); } } 306 le  $ACE_SWkFuni ( WkFunc wf ) 307 { diributi . `t_wkfunc ( wf ); } } 310 le  $ACE_SNumbIms (cڡ  nm ) 311 { gems = nm ; } } 312 le  $ACE_SPtFg (cڡ  p ) 313 { gag = p ; } } 314 le  $ACE_SFluxFg (cڡ  f ) 315 { gffag = f ; } } 320 give : 321  ACE_MgeGridUns (); 322  ACE_MgeGridUnsNew (); 323  ACE_InBBoxAay (); 324  RecursiveMgeGridUns ( GridUnLi & gul , 325 GridBoxLi & gbl , 326 cڡ  v , 327 cڡ  pid , 328 cڡ * ޭ , 329 cڡ  extgh ); 331 gpublic : 332  ACE_CompoHrchy (); 337 gpublic : 338  ACE_AddGridFuni ( GridFuniVoid * gfv ); 339 le  $ACE_DGridFuni (cڡ  gfid ) 341 gi [ gfid ] = ( GridFuniVoid * NULL ; 342 i( comm_rvi :: `d ()comm_rvi:: `de_comm ( gfid ); 343 gum --; 344 } } 346 le  $ACE_CompoGridFunis () 348  i =0; i< gum ; i++) 349 { i( gi [ i ]gi[i]-> `GF_Compo (); } 350 i( `chk_t ()) { 351  i =0; i< gum ; i++) 352 { i( gi [ i ] && gi[i]-> `checkpot ()) 353 gi [ i ]-> `GF_CheckpotRet (); } 355 } } 357 le  $ACE_GridFuniTeme ( GridFuniVoid & gfv ) 358 {  ( ACETemeComm + gfv . gfid ); } } 363 give : 364  ACE_GhBoxes (); 365 gpublic : 366  ACE_RecompoHrchy (); 371 gpublic : 372  ACE_Refe (cڡ  v ); 373  ACE_Refe ( BBoxLi & bbli , cڡ  v ); 378 gpublic : 379 le  $ACE_RediribuHrchy (cڡ  ty ) 380 { diributi . `t_di ( ty ); `ACE_RecompoHrchy (); } } 381 le  $ACE_RediribuHrchy (cڡ  ty , BBoxLi & bbl ) 382 { diributi . `t_di ( ty , bbl ); `ACE_RecompoHrchy (); } } 387 gpublic : 388  ACE_Checkpot (cڡ * me ); 390  ACE_CompoHrchy (cڡ * me ); 391  ACE_RecompoHrchy (cڡ * me ); 393  $ACE_InChk (cڡ * me ) 394 { chkag = ACETrue ; `y ( chkme , me , ACEChkPtTagNameSize ); } } 395  $ACE_StChk () 396 { chkag = ACEF ; chkme [0] = '\0'; chkum = 0; } } 398  ACE_OnChkISm (cڡ  p , 399 ifam & ifs ); 400  $ACE_CloChkISm ( ifam & ifs ) 401 { ifs . `o (); } } 403  ACE_OnChkISm (cڡ  p , 404 ampos *& chkd , 405 *& chkmed , 406 ifam & ifs ); 407  $ACE_CloChkISm ( ampos *& chkd , 408 *& chkmed , 409 ifam & ifs ) 410 { i( chkd de [] chkptdir; 411 i( chkmed de [] chkptnamedir; 412 ifs . `o (); } } 414  ACE_GGFChkISm (cڡ  p , cڡ * game , 415 cڡ  gfid , 416 ifam & ifs ); 418  ACE_OnChkOSm (cڡ  p , 419 ofam & ofs ); 420  $ACE_CloChkOSm ( ofam & ofs ) 421 { ofs . `o (); } } 426 gpublic : 427  ACE_GlbCt (* dda ,  dsize , *& rcvda , 428 & rcvsize , MPI_Comm C =0) const; 432  ACE_PgIONode (cڡ  g ,  g ); 433 gpublic : 434  ACE_CommIn ( MPI_Comm c ); 435  ACE_CommKl (); 440 gpublic : 441  $ACE_InRks (cڡ  ign , * nks ) 442 { i( ign = ACE_A ) 443 { nks [0] = ACE_X ;ks[1] = ACE_Y ;ks[2] = ACE_Z ; } 444 i( ign = ACE_XY ) 445 { nks [0] = ACE_X ;ks[1] = ACE_Y ;ks[2] = ACENu ; } 446 i( ign = ACE_YZ ) 447 { nks [0] = ACE_Y ;ks[1] = ACE_Z ;ks[2] = ACENu ; } 448 i( ign = ACE_XZ ) 449 { nks [0] = ACE_X ;ks[1] = ACE_Z ;ks[2] = ACENu ; } 450 i( ign = ACE_X ) 451 { nks [0] = ACE_X ;ks[1] = ACENu ;anks[2] = ACENull; } 452 i( ign = ACE_Y ) 453 { nks [0] = ACE_Y ;ks[1] = ACENu ;anks[2] = ACENull; } 454 i( ign = ACE_Z ) 455 { nks [0] = ACE_Z ;ks[1] = ACENu ;ks[2] = ACENu; } } } 457  $ACE_InOvps (cڡ  Ty , * ޭ ) 458 { i( Ty = ACEClCd ) 459 { ޭ [0] = 0; olap[1] = 0; olap[2] = 0; } 460 i( Ty = ACEVxCd ) 461 { ޭ [0] = 1; olap[1] = 1; olap[2] = 1; } 462 i( Ty = ACEFaCd_X ) 463 { ޭ [0] = 1; olap[1] = 0; olap[2] = 0; } 464 i( Ty = ACEFaCd_Y ) 465 { ޭ [0] = 0; olap[1] = 1; olap[2] = 0; } 466 i( Ty = ACEFaCd_Z ) 467 { ޭ [0] = 0; olap[1] = 0; olap[2] = 1; } 468 i( Ty = ACEClCd_X ) 469 { ޭ [0] = 0; olap[1] = 1; olap[2] = 1; } 470 i( Ty = ACEClCd_Y ) 471 { ޭ [0] = 1; olap[1] = 0; olap[2] = 1; } 472 i( Ty = ACEClCd_Z ) 473 { ޭ [0] = 1; op[1] = 1; op[2] = 0; } } } 479 give : 480 le  $daghovpCC__NCC () const 481 {  (( daghty == ACEClCd ? 0 : 1); } } 483 le cڡ * $daghovp () const 484 {  ( ovp ); } } 486 le  $daghovp (cڡ  d ) const 487 {  ( ovp [ d ]); } } 491 gpublic : 492  $daghdex (cڡ  idt ) 493 { (( idt == ACE_Ma ? 0 : 1); } } 494  $dagh (cڡ  idt ) 495 { (( idt == ACE_Ma ? 1 : 2); } } 497  $daghovpCC__NCC (cڡ  ty ) 498 { (( ty == ACEClCd ? 0 : 1); } } 500  $daghshadow () 501 { ( shadowc ); } } 502  $tdaghshadow (cڡ  sf ) 503 { shadowc = sf ; } } 505  $daghmuigrid () 506 { (2); } } 511 gpublic : 512 le  $vdex (cڡ  l ) const 513 {  (( l - ev )/ ev ); } } 514 le  $vnum (cڡ  l ) const 515 {  (( l * ev + ev )); } } 517 le  $deu_ignmt (cڡ  r ) const 518 {  (( r = nk ? ACE_A : 519 ( r =3? ACE_A : 520 ( r =2? ACE_XY : ACE_X ); } } 524 gpublic : 525 le  $dagh_ty (cڡ {  daghty ; } } 527 le  $numbems (cڡ {  gems ; } } 528 le  $ag (cڡ {  gag ; } } 529 le  $uxag (cڡ {  gffag ; } } 531 le  $boundyty (cڡ {  bndryty ; } } 532 le  $adtboundyty (cڡ {  adtbndryty ; } } 534 le cڡ * $boundywidth (cڡ {  bndrywidth ; } } 536 le cڡ * $exghowidth (cڡ {  extghowidth ; } } 538 le  $tٮvs (cڡ {  vs ; } } 540 le  $crv (cڡ {  ev ; } } 541 le  $fev (cڡ {  fev ; } } 542 le  $maxv (cڡ {  maxv ; } } 544 le  $crvdex (cڡ {  `vdex ( ev ); } } 545 le  $fevdex (cڡ {  `vdex ( fev ); } } 546 le  $maxvdex (cڡ {  `vdex ( maxv ); } } 548 le  $size (cڡ  l , cڡ  idt = ACE_Ma ) const 549 {  ((()1 << ( maxv - `vnum ( l )))* `dagh ( idt )); } } 551 le  $2v (cڡ  s , cڡ  idt = ACE_Ma ) const 552 {  `vdex ( maxv -()(0.5+ `log2 (1.0*( s / `dagh ( idt ))))); } } 554 le  $time (cڡ  l , cڡ  idt = ACE_Ma ) const 555 { ((()1 << (( vs -1- l )* ev ))* `dagh ( idt )); } } 557 le  $numts (cڡ  l , cڡ  idt = ACE_Ma ) const 558 { ((()1 << ( l * ev ))/ `dagh ( idt )); } } 560 le  $ak (cڡ  t , cڡ  l , 561 cڡ  idt = ACE_Ma ) const 562 {  ( t / `time ( l , idt )); } } 564 le  $d_t (cڡ  l ,cڡ  idt = ACE_Ma ) const 565 {  ( tecs . h / `numts ( l , idt )); } } 567 le  $d_x (cڡ  dim , cڡ  l , 568 cڡ  idt = ACE_Ma ) const 569 {  ( `dagh ( idt )* decs [ dim ]. h / `fedby ( l )); } } 571 le  $fev (cڡ {  ( ev ); } } 572 le  $fe (cڡ {  ( fby ); } } 573 le  $fedby (cڡ  l ) const 574 {  (()1 << ( l * ev )); } } 579 le  $updedvue (cڡ {  upded ; } } 580 le  $tupdedvue (cڡ  u { upded = u; } } 585 le  $chk_fame ( oram & obuf , cڡ * me , 586 cڡ  p ) 587 { obuf << me << "." << p << "." << (()0); } } 588 le  $chk_t () const 589 {  ( chkag = ACETrue ); } } 590 le cڡ * $chk_me () const 591 {  chkme ; } } 592 le  $chk_um () const 593 {  chkum ; } } 594 le  $chk_t () 595 { chkag = ACEF ; chkme [0] = '\0'; chkum = 0; } } 600 gpublic : 601 le  $gCutTime (cڡ  v , 602 cڡ  idt = ACE_Ma ) const 603 {  cuime [ `daghdex ( idt )][ v ] ; } } 604 le  $tCutTime (cڡ  ime , cڡ  v , 605 cڡ  idt = ACE_Ma ) 606 { cuime [ `daghdex ( idt )][ v ] = ime ; } } 607 le  $CutTime (cڡ  v , cڡ  idt = ACE_Ma ) 608 { cuime [ `daghdex ( idt )][ v ] + `time ev,idt); } } 610 le  $gPviousTime (cڡ  v , 611 cڡ  idt = ACE_Ma ) const 612 {  cuime [ `daghdex ( idt )][ v ] - `time ev,idt); } } 613 le  $gNextTime (cڡ  v , cڡ  idt = ACE_Ma ) const 614 {  cuime [ `daghdex ( idt )][ v ] + `time ev,idt); } } 616 le  $gRefeTime (cڡ  v , cڡ  idt = ACE_Ma ) const 617 {  ime [ `daghdex ( idt )][ v ] ; } } 622 gpublic : 623 le  $maxdex (cڡ {  mdex ; } } 625 le GridUnLi * $i ({  ( comi ); } } 626 le GridUnLi * $i ({  ( loi ); } } 628 le GridBoxLi * $lgbl ({  ( lolgbl ); } } 629 le GridBoxLi * $ggbl ({  ( globgbl ); } } 630 le GridBoxLi * $dlgbl ({  ( dlolgbl ); } } 631 le GridBoxLi * $dggbl ({  ( dglobgbl ); } } 634  $b (* lc ) const; 635  $lub (* lc ) const; 637 le Cods $b (cڡ {  ( babbox . `low ()); } } 638 le Cods $lub (cڡ {  ( babbox . `u ()); } } 641  $wlb (* wc ) const; 642  $wub (* wc ) const; 645 DCods $wldCods (cڡ * lc , cڡ * ls ) const; 646 DCods $wldCodsU (cڡ * lc , cڡ * ls ) const; 647 DCods $wldCodsLow (cڡ * lc , cڡ * ls ) const; 648 DCods $wldSp (cڡ * ls ) const; 650  $wldCods (cڡ * lc , cڡ * ls , * wc ) const; 651  $wldSp (cڡ * ls , * ws ) const; 654 Cods $lolCods (cڡ * wc ) const; 655 Cods $lolSp (cڡ * ws ) const; 657  $lolCods (cڡ * wc , * lc ) const; 658  $lolSp (cڡ * ws , * ls ) const; 663 public : 665 le BBox $bbbox (cڡ {  babbox ; } } 666 le BBox $glbbbox (cڡ {  tbbox ; } } 667 le BBox $whebbox () const 668 {  `shrkubydim ( tbbox , `daghovp ()); } } 675  $glb_bboxli ( BBoxLi & bbl , 676 cڡ  l , 677 cڡ  ty = ACEClCd , 678 cڡ  idt = ACE_Ma ) const; 679  $glb_mgedbboxli ( BBoxLi & bbl , 680 cڡ  l , 681 cڡ  ty = ACEClCd , 682 cڡ  idt = ACE_Ma ) const; 684  $glb_bboxli ( BBoxLi & bbl , 685 cڡ  ml , 686 cڡ  maxl , 687 cڡ  ty , 688 cڡ  idt ) const; 689  $glb_mgedbboxli ( BBoxLi & bbl , 690 cڡ  ml , 691 cڡ  maxl , 692 cڡ  ty , 693 cڡ  idt ) const; 697 public : 698  $ACE_MuiGridLevs (cڡ  v , 699 cڡ  idt = ACE_Ma ) const; 704 ive : 705  `ACE_IOSve (); 706 public : 707 le  $ACE_IOTy (cڡ  ty { io_ty =y; } } 708  ACE_IOEnd (); 709 nd  ACEIO_ComiPgFuni ( GridHrchy & GH ); 710 nd  ACEIO_EndIOPgFuni ( GridHrchy & GH ); 715 gpublic : 716 le  ACE_SyncGhoRegis (cڡ  t , 717 cڡ  l , 718 #ifde ACEVeGridFuni 719 cڡ  m , 721 cڡ  idt ) 723  gi ; 724  gi =0; i< ggum ; i++) 725 i( ggi [ i ] && gi[i]-> comm ()) 726 ggi [ i ]-> GF_WreGhos ( t , l , 727 #ifde ACEVeGridFuni 728 m , 730 idt ); 731  gi =0; i< ggum ; i++) 732 i( ggi [ i ] && gi[i]-> comm ()) 733 ggi [ i ]-> GF_RdGhos ( t , l , 734 #ifde ACEVeGridFuni 735 m , 737 idt ); 739 le  ACE_SyncGhoRegis (cڡ  t , 740 cڡ  l , 741 #ifde ACEVeGridFuni 742 cڡ  m , 744 cڡ  mgl , 745 cڡ  idt ) 747  gi ; 748  gi =0; i< ggum ; i++) 749 i( ggi [ i ] && gi[i]-> comm ()) 750 ggi [ i ]-> GF_WreGhos ( t , l , 751 #ifde ACEVeGridFuni 752 m , 754 mgl , idt ); 755  gi =0; i< ggum ; i++) 756 i( ggi [ i ] && gi[i]-> comm ()) 757 ggi [ i ]-> GF_RdGhos ( t , l , 758 #ifde ACEVeGridFuni 759 m , 761 mgl , idt ); 764 le  ACE_SyncGhoRegis (cڡ  t , 765 cڡ  l , 766 #ifde ACEVeGridFuni 767 cڡ  m , 769 cڡ  axis , 770 cڡ  d , 771 cڡ  idt ) 773  gi ; 774  gi =0; i< ggum ; i++) 775 i( ggi [ i ] && gi[i]-> comm ()) 776 ggi [ i ]-> GF_WreGhos ( t , l , 777 #ifde ACEVeGridFuni 778 m , 780 axis , d , idt ); 781  gi =0; i< ggum ; i++) 782 i( ggi [ i ] && gi[i]-> comm ()) 783 ggi [ i ]-> GF_RdGhos ( t , l , 784 #ifde ACEVeGridFuni 785 m , 787 axis , d , idt ); 790 le  ACE_SyncGhoRegis (cڡ  t , 791 cڡ  l , 792 #ifde ACEVeGridFuni 793 cڡ  m , 795 cڡ  mgl , 796 cڡ  axis , 797 cڡ  d , 798 cڡ  idt ) 800  gi ; 801  gi =0; i< ggum ; i++) 802 i( ggi [ i ] && gi[i]-> comm ()) 803 ggi [ i ]-> GF_WreGhos ( t , l , 804 #ifde ACEVeGridFuni 805 m , 807 mgl , axis , d , idt ); 808  gi =0; i< ggum ; i++) 809 i( ggi [ i ] && gi[i]-> comm ()) 810 ggi [ i ]-> GF_RdGhos ( t , l , 811 #ifde ACEVeGridFuni 812 m , 814 mgl , axis , d , idt ); 817 #ifde DICE 819  SObjDesti (); 820  SObjVws (); 821  SObjCommds (); 822  SFuniPors (); 826 goam & gݔ << (oam& , cڡ gGridHrchy &); 827 goam & gݔ << (oam& , cڡ  gdimecs &); 828 goam & gݔ << (oam& , cڡ  gMgedGridUn &); 830 gofam & gݔ << (ofam& , cڡ gGridHrchy &); 831 gifam & gݔ >> (ifam& , gGridHrchy &); 833 #ifde DICE 834 * GHCmdRefe ( DICEBaObje *, * gv []); 835 * GHCmdCheckpot ( DICEBaObje *, * gv []); 836 * GHCmdRlback ( DICEBaObje *, * gv []); 838 * GHVwBBoxDesc ( DICEBaObje *); 839 * GHVwBBoxPl ( DICEBaObje *); 840 * GHVwUCDPl ( DICEBaObje *); 841 * GHVwBBoxLiPl ( DICEBaObje *); 842 * GHVwRefemtDesc ( DICEBaObje *); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridHierarchyCalls.h 1 #ide _uded_GridHrchyCls_h 2  #_uded_GridHrchyCls_h ) 17 le  $SBaGrid ( GridHrchy & GH , 18 cڡ * bbox , 19 cڡ * she ) 20 { GH . `ACE_SBaGrid ( bbox , she ); } } 21 le  $STimeScs ( GridHrchy & GH , cڡ  ime , 22 cڡ  time , cڡ  numts ) 23 { GH . `ACE_STimeScs ( ime , time , numts ); } } 25 le  $SBoundyTy ( GridHrchy & GH , cڡ  ty ) 26 { GH . `ACE_SBoundyTy ( ty ); } } 27 le  $SAdtBoundyTy ( GridHrchy & GH , cڡ  ty ) 28 { GH . `ACE_SAdtBoundyTy ( ty ); } } 30 le  $SBoundyWidth ( GridHrchy & GH , cڡ  width ) 31 { GH . `ACE_SBoundyWidth ( width ); } } 32 le  $SBoundyWidth ( GridHrchy & GH , cڡ * width ) 33 { GH . `ACE_SBoundyWidth ( width ); } } 35 le  $SExGhoWidth ( GridHrchy & GH , cڡ  width ) 36 { GH . `ACE_SExGhoWidth ( width ); } } 37 le  $SExGhoWidth ( GridHrchy & GH , cڡ * width ) 38 { GH . `ACE_SExGhoWidth ( width ); } } 40 le  $SRefeFa ( GridHrchy & GH , cڡ  r ) 41 { GH . `ACE_SRefeFa ( r ); } } 43 le  $SDiributiTy ( GridHrchy & GH , cڡ  ty ) 44 { GH . `ACE_SDiributiTy ( ty ); } } 46 le  $SDiributiTy ( GridHrchy & GH , cڡ  ty , BBoxLi & bbl ) 47 { GH . `ACE_SDiributiTy ( ty , bbl ); } } 49 le  $SWkFuni ( GridHrchy & GH , WkFunc wf ) 50 { GH . `ACE_SWkFuni ( wf ); } } 52 le  $SNumbIms ( GridHrchy & GH , cڡ  nm ) 53 { GH . `ACE_SNumbIms ( nm ); } } 54 le  $SPtFg ( GridHrchy & GH , cڡ  p ) 55 { GH . `ACE_SPtFg ( p ); } } 56 le  $SFluxFg ( GridHrchy & GH , cڡ  f ) 57 { GH . `ACE_SFluxFg ( f ); } } 59 le  $CompoHrchy ( GridHrchy & GH ) 60 { GH . `ACE_CompoHrchy (); } } 62 le  $CompoGridFunis ( GridHrchy & GH ) 63 { GH . `ACE_CompoGridFunis (); } } 65 le  $GridFuniTeme ( GridHrchy & GH , GridFuniVoid & GFV ) 66 {  ( GH . `ACE_GridFuniTeme ( GFV )); } } 71 le  $SCutTime ( GridHrchy & GH , cڡ  ime , cڡ  v , 72 cڡ  idt = ACE_Ma ) 73 { GH . `tCutTime ( ime , v , idt ); } } 74 le  $CutTime ( GridHrchy & GH , cڡ  v , cڡ  idt = ACE_Ma ) 75 {  ( GH . `gCutTime ( v , idt )); } } 76 le  $InCutTime ( GridHrchy & GH , cڡ  v , 77 cڡ  idt = ACE_Ma ) 78 { GH . `CutTime ( v , idt ); } } 80 le  $SpSize ( GridHrchy & GH , cڡ  v , cڡ  idt = ACE_Ma ) 81 { ( GH . `size ( v , idt )); } } 83 le  $TimeSp ( GridHrchy & GH , cڡ  v , cڡ  idt = ACE_Ma ) 84 { ( GH . `time ( v , idt )); } } 86 le  $AbsSpsTak ( GridHrchy & GH , cڡ  v , cڡ  idt = ACE_Ma ) 87 {  ( GH . `ak (GH. `gCutTime ( v , idt ),v,idt)); } } 89 le  $SpsTak ( GridHrchy & GH , cڡ  v , cڡ  idt = ACE_Ma ) 90 {  ( GH . `ak (GH. `gCutTime ( v , idt )- 91 GH . `gRefeTime ( v , idt ),v,idt)); } } 93 le  $RefeFa ( GridHrchy & GH ) 94 {  ( GH . `fe ()); } } 95 le  $RefeLev ( GridHrchy & GH ) 96 {  ( GH . `fev ()); } } 97 le  $RefedBy ( GridHrchy & GH , cڡ  v ) 98 {  ( GH . `fedby ( v )); } } 100 le  $TٮLevs ( GridHrchy & GH ) 101 {  ( GH . `tٮvs ()); } } 102 le  $MaxLev ( GridHrchy & GH ) 103 {  ( GH . `maxvdex ()); } } 104 le  $CrLev ( GridHrchy & GH ) 105 {  ( GH . `crvdex ()); } } 106 le  $FeLev ( GridHrchy & GH ) 107 {  ( GH . `fevdex ()); } } 109 le  $DT ( GridHrchy & GH , cڡ  v , cڡ  idt = ACE_Ma ) 110 {  ( GH . `d_t ( v , idt )); } } 111 le  $DX ( GridHrchy & GH , cڡ  dim , cڡ  v , 112 cڡ  idt = ACE_Ma ) 113 {  ( GH . `d_x ( dim , v , idt )); } } 118 le  $UpdedVueAt ( GridHrchy & GH {  GH. `updedvue (); } } 119 le  $SUpdedVueSp ( GridHrchy & GH , cڡ  u ) 120 { GH . `tupdedvue ( u ); } } 125 le  $ShadowFa ( GridHrchy & GH {  GH. `daghshadow (); } } 126 le  $SShadowFa ( GridHrchy & GH , cڡ  sf ) 127 { GH . `tdaghshadow ( sf ); } } 132 le  $Refe ( GridHrchy & GH , cڡ  v ) 133 { GH . `ACE_Refe ( v ); } } 135 le  $Refe ( GridHrchy & GH , BBoxLi & bbli , cڡ  v ) 136 { GH . `ACE_Refe ( bbli , v ); } } 138 le  $RecompoHrchy ( GridHrchy & GH ) 139 { GH . `ACE_RecompoHrchy (); } } 145 le  $RediribuHrchy ( GridHrchy & GH , cڡ  ty ) 146 { GH . `ACE_RediribuHrchy ( ty ); } } 147 le  $RediribuHrchy ( GridHrchy & GH , cڡ  ty , BBoxLi & bbl ) 148 { GH . `ACE_RediribuHrchy ( ty , bbl ); } } 153 le  $Checkpot ( GridHrchy & GH , cڡ * me ) 154 { GH . `ACE_Checkpot ( me ); } } 156 le  $CompoHrchy ( GridHrchy & GH , 157 cڡ * me ) 158 { GH . `ACE_CompoHrchy ( me ); } } 160 le  $RecompoHrchy ( GridHrchy & GH , 161 cڡ * me ) 162 { GH . `ACE_RecompoHrchy ( me ); } } 167 #ifde ACEVeGridFuni 168 le  $Sync ( GridHrchy & GH , 169 cڡ  t , 170 cڡ  l , 171 cڡ  idt ) 172 { GH . `ACE_SyncGhoRegis ( t , l , ACEA , idt ); } } 175 le  Sync ( GridHrchy & GH , 176 cڡ  t , 177 cڡ  l , 178 #ifde ACEVeGridFuni 179 cڡ  m , 181 cڡ  idt ) 182 { gGH . ACE_SyncGhoRegis ( t , l , 183 #ifde ACEVeGridFuni 184 m , 186 idt ); } 187 le  Sync ( GridHrchy & GH , 188 cڡ  t , 189 cڡ  l , 190 #ifde ACEVeGridFuni 191 cڡ  m , 193 cڡ  mgl , 194 cڡ  idt ) 195 { gGH . ACE_SyncGhoRegis ( t , l , 196 #ifde ACEVeGridFuni 197 m , 199 mgl , idt ); } 200 le  Sync ( GridHrchy & GH , 201 cڡ  t , 202 cڡ  l , 203 #ifde ACEVeGridFuni 204 cڡ  m , 206 cڡ  axis , 207 cڡ  d , 208 cڡ  idt ) 209 { gGH . ACE_SyncGhoRegis ( t , l , 210 #ifde ACEVeGridFuni 211 m , 213 axis , d , idt ); } 214 le  Sync ( GridHrchy & GH , 215 cڡ  t , 216 cڡ  l , 217 #ifde ACEVeGridFuni 218 cڡ  m , 220 cڡ  mgl , 221 cڡ  axis , 222 cڡ  d , 223 cڡ  idt ) 224 { gGH . ACE_SyncGhoRegis ( t , l , 225 #ifde ACEVeGridFuni 226 m , 228 mgl , axis , d , idt ); } 232 le  $MuiGridLevs ( GridHrchy & GH , cڡ  v ) 233 {  ( GH . `ACE_MuiGridLevs ( v )); } } 234 le  $MuiGridLevs ( GridHrchy & GH , cڡ  v , cڡ  idt ) 235 {  ( GH . `ACE_MuiGridLevs ( v , idt )); } } 240 le  $ACEIOTy ( GridHrchy & GH , cڡ  ty ) 241 { GH . `ACE_IOTy ( ty ); } } 242 le  $ACEIOEnd ( GridHrchy & GH ) 243 { GH . `ACE_IOEnd (); } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridHierarchyComm.cpp 9  ~"GridHrchy.h " 11 #ide OyProc 12  #OyProc ( n i( comm_rvi :: `oc_me (=){ ) 15 #ide EndOyProc 16  #EndOyProc } ) 19  gGridHrchy :: ACE_CommIn ( MPI_Comm c ) 22  R = comm_rvi :: ( c ); 23  gR ; 26  gGridHrchy :: ACE_CommKl () 28 #ifde ACE_NO_MPI 33 comm_rvi :: kl (); 36  gGridHrchy :: ACE_IOEnd () 38 #ifde ACE_NO_MPI 40 i( comm_rvi :: io_abd () && 41 comm_rvi :: oc_wld () > 1 && 42 comm_rvi :: oc_me (!comm_rvi:: oc_io ()) { 43 comm_rvi :: brr ( comm_rvi_comp ); 45 cڡ  gde = comm_rvi :: oc_io (); 46 cڡ  gme = comm_rvi :: oc_me (); 47 cڡ gMPI_Comm & gcomm = comm_rvi :: comm_io (); 48 MPI_Reque gq ; 51  gsize = ACENu ; 52  gR = MPI_Ind (& size , 1 , MPI_INT , de , 53 ( ACEIOTag | ACEIOWreReqTag ), 54 comm , & q ); 55 i gMPI_SUCCESS ! R ) 56 comm_rvi :: r_d ("GridHrchy::ACE_IOEnd","MPI_Ind", R ); 58 gR = comm_rvi :: rve q ); 59 i gMPI_SUCCESS ! R ) 60 comm_rvi :: r_d ( "GridHirarchy::ACE_IOEnd" , 61 "comm_rvi::rve" , R ); 64  gdhdr gqhdr ; 65 gqhdr . gty = ACENu ;eqhdr. gowr = me ; 67 gR = MPI_Ind ((*)& qhdr , ( gdhdr ), MPI_BYTE , de , 68 ( ACEIOTag | ACEIORdReqTag ), comm , & q ); 69 i gMPI_SUCCESS ! R ) 70 comm_rvi :: r_d "GridHrchy::ACE_IOEnd" , "MPI_Ind" , R ); 72 gR = comm_rvi :: rve q ); 73 i gMPI_SUCCESS ! R ) 74 comm_rvi :: r_d ( "GridHirarchy::ACE_IOEnd" , 75 "comm_rvi::rve" , R ); 78 ACE_PgIONode ( ACEIOTag | ACEIOComiReqTag , ACEF ); 91 ACE_PgIONode ( ACEIOTag | ACEIOEndReqTag , ACEF ); 92 gcomm_rvi :: t_io_ab (); 98 i( gcomm_rvi :: oc_wld () == 1 && 99 comm_rvi :: oc_me (=comm_rvi:: oc_io ()) { 100 i( ACEIO_Fize [ io_ty ]) (ACEIO_Finalize[io_type])(); 104  gGridHrchy :: ACE_PgIONode (cڡ  g ,  g ) 106 #ifde ACE_NO_MPI 108 i(! gcomm_rvi :: d () || 109 ! comm_rvi :: io_abd () || 110 comm_rvi :: oc_me (=comm_rvi:: oc_io ()) ; 112  giode = comm_rvi :: oc_io (); 113 MPI_Reque gq ; 115 #ifde DEBUG_PRINT_COMM_IO 116 gcomm_rvi :: log () << "GridHierarchy::ACE_PingIONode " 117 << comm_rvi :: oc_me () << " " 119 << "Tag: " << g << " " 121 << "Fg: " << g << " " 122 << dl ). ush (); 126  gR = MPI_Ind (& g , 1, MPI_INT , iode , g , 127 comm_rvi :: comm_io (, & q ); 128 i gMPI_SUCCESS ! R ) 129 comm_rvi :: r_d ("GridHrchy::ACE_PgIONode","MPI_Ind", R ); 131 gR = comm_rvi :: rve q ); 132 i gMPI_SUCCESS ! R ) 133 comm_rvi :: r_d ("GridHierarchy::ACE_PingIONode", 134 "comm_rvi::rve", R ); 138  gGridHrchy :: ACE_GlbCt (* dda ,  dsize , 139 *& rcvda , & rcvsize , 140 MPI_Comm C ) const 142 i(! gcomm_rvi :: d (|| comm_rvi :: oc_wld () == 1) 143 { rcvsize = dsize ; grcvda = dda ; ; } 145 #ifde ACE_NO_MPI 147 MPI_Comm gC ; 148 i( gC =0 C = comm_rvi :: comm_wld (); 149 gC = C ; 151  gme = comm_rvi :: oc_me (); 152  gnum = comm_rvi :: oc_wld (); 154  gR ; 156 gR = MPI_Aλdu (& dsize , & rcvsize , 1, MPI_INT , MPI_MAX , C ); 157 i gMPI_SUCCESS ! R ) 158 comm_rvi :: r_d ("ACE::ACE_GlbCt","MPI_Aλdu", R ); 160 #ifde DEBUG_PRINT_COMM 161 gcomm_rvi :: log () << "ACE::ACE_GlbConcat " 162 << comm_rvi :: oc_me () << " " 164 << rcvsize 166 << dl ). ush (); 170 i( grcvda gde [] (*)rcvdata; 171 grcvda = (* w [ rcvsize * num ]; 173 * gtmpdda = 0; 174  gtmpdsize = 0; 176 #ide MPICH 177 i( gdsize < grcvsize ) { 178 gtmpdda = (* w [ rcvsize ]; 179 memy ( tmpdda , dda , dsize ); 182 gtmpdda = dda ; 184 gtmpdsize = rcvsize ; 186 gtmpdda = dda ; 187 gtmpdsize = dsize ; 190 gR = MPI_Agh ( tmpdda , tmpdsize , MPI_BYTE , rcvda , rcvsize , 191 MPI_BYTE , C ); 192 i gMPI_SUCCESS ! R ) 193 comm_rvi :: r_d "ACE::ACE_GlbCt", "MPI_Agh", R ); 195 #ide MPICH 196 i( gdsize < grcvsize ) { 197 gde [] (*) gtmpdda ; 201 #ifde DEBUG_PRINT_COMM 202 gcomm_rvi :: log () << "ACE::ACE_GlbConcat " 203 << comm_rvi :: oc_me () << " " 205 << rcvsize 207 << dl ). ush (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridHierarchyIndex.h 1 #ide _uded_GridHrchyIndex_h 2  #_uded_GridHrchyIndex_h ) 12  ~"gic.h " 14 #ide fܗchGF 15  #fܗchGF ( gh , gf , DIM , Ty ) { \ 16 cڡ  `me2 ( GF , _GFNUM ( gh ). gum ; \ 17  gfid = 0; gfid < `me2 ( GF , _GFNUM ); gfid++) { \ 18 if(!( gh ). gi [ gfid ]) ; { \ 19 `GridFuni ( DIM )< Ty > & gf = \ 20 *(( `GridFuni ( DIM )< Ty > * gh . gi [ gfid ]); ) 23 #ide d_fܗchGF_sync 24  #d_fܗchGF_sync } } comm_rvi :: `brr (); } ) 27 #ide d_fܗchGF 28  #d_fܗchGF } } } ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridHierarchyPing.cpp 9  ~"GridHrchy.h " 11  $ACEIO_ComiPgFuni ( GridHrchy & GH ) 13  me = comm_rvi :: `oc_me (); 14  num = comm_rvi :: `oc_num (); 16  dsize =0, rcvsize =0; 17 * dbuf = 0; 18 * rcvbuf = 0; 47 dsize =0, rcvsize =0; 48 dbuf = 0; 49 rcvbuf = 0; 50 GH . `ACE_GlbCt ( dbuf , dsize , rcvbuf , rcvsize ); 51 GH . globgbl = w `GridBoxLi ( rcvbuf , rcvsize , num ); 52 i( rcvbuf de [] (*)rcvbuf; 54 #ifde DEBUG_PRINT_RG 55 i( GH . globgbl ! GridBoxLiNULL ) 56 comm_rvi :: `log () << "\n************* New Global GridBoxList *************\n" 57 << * GH . globgbl 59 ). `ush (); 62 GH . fev = GH. globgbl -> `fe (); 64 #ifde ACE_WRITEBOXES 65 #ifde DEBUG_PRINT_RG 67 comm_rvi :: `log (<< "GridHrchy::WreBoxe" << GH . `fevdex (<< dl ). `ush (); 69 `WreBoxes ( GH ,*GH. globgbl ); 72 #ifde ACE_IOV 73 i( GH . Sv de GH.Server; GH.Server = 0; 74 `PlPt ( GH . SvPt , GH. Ci , GH. Sv ); 76 i( GH . Sv ) { 77 `WreSm ( GH ,GH. Sv ,*GH. globgbl ); 80 } } 82  $ACEIO_EndIOPgFuni ( GridHrchy & GH ) 119 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridTable.cpp 19  ~"GridTab.h " 22 gLi < gGridDaBuckVoid *>* gGridTab :: _nuda = ( Li < GridDaBuckVoid *>* NULL ; 28  gGridTab :: $ab () 30  i = 0; 31 if( _da  i =0;i< numts ;i++) 32 i(! _da [ i ]. `imy ()) 33 _da [ i ]. `emy (); 35 cڡ  t = numts * numvs ; 36 if( _ghos  i =0;i< t ;i++) 37 i(! _ghos [ i ]. `imy ()) 38 _ghos [ i ]. `emy (); 39 } } 41  gGridTab :: $tdab () 43  i = 0; 44 if( _da  i =0;i< numts ;i++) 45 i(! _da [ i ]. `imy ()) 46 _da [ i ]. `emy (); 47 } } 49  gGridTab :: $tghob () 51  i = 0; 52 cڡ  t = numts * numvs ; 53 if( _ghos  i =0;i< t ;i++) 54 i(! _ghos [ i ]. `imy ()) 55 _ghos [ i ]. `emy (); 56 } } 61  gGridTab :: $nd (cڡ  g , 62 GridDaBuckVoid * gdbkt , 63 cڡ  de ) 65 #ifde ACE_NO_MPI 67 cڡ  me = comm_rvi :: `oc_me (); 69 #ifde DEBUG_PRINT_COMM 70 comm_rvi :: `log (<< "GridTab::nd: (" << me << ")" 72 << "(" << gfid << ")" 73 << *(( GridDaBuckVoid * gdbkt )-> `hd () 74 << "(" << de << ")" 76 << dl ). `ush (); 79 * ckage = 0;  size ; 80 gdbkt -> `ck ( ckage , size ); 82 #ifde DEBUG_PRINT_COMM 83 comm_rvi :: `log (<< "GridTab::nd: (" << me << ")" 85 << "(Tag:" << g << ")" 86 << "(Size:" << size << ")" 87 << "(De:" << de << ")" 89 << dl ). `ush (); 92 MPI_Reque q ; 93  R = `MPI_Ind ckage , size , MPI_BYTE , de , 94 g , comm_rvi :: `comm ( gfid , & q ); 95 i MPI_SUCCESS ! R ) 96 comm_rvi :: `r_d "GridTab::wre" , "MPI_Ind" , R ); 98 R = comm_rvi :: `rve q ); 99 i MPI_SUCCESS ! R ) 100 comm_rvi :: `r_d ( "GridTable::write" , 101 "comm_rvi::rve" , R ); 103 gdbkt -> ` (); 104 gdbkt = 0; 106  ACE_OK ; 107 } } 113 goam & gݔ <<(oam& gos , cڡ gGridTab & ggt ) 115 i(& ggt = GridTabNULL  os ; 117 gos << "GridTab: " << "(" << ggt . ggfid << ") " 118 << "[NumTimeSps: " << ggt . gnumts << "] " 119 << "[NumLevs: " << ggt . gnumvs << "] " 120 << gdl ; 122  gos ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridTable.h 1 #ide _uded_GridTab_h 2  #_uded_GridTab_h ) 22  ~"ACEPams.h " 24  ~"GridBox.h " 25  ~"GridBoxLi.h " 27  ~"PackedGridDaBuck.h " 29  ~"Li.h " 31  ~"CommSv.h " 33  #GridTabNULL (( GridTab * NULL ) ) 35 as cGridTab 37 nd moam & mݔ <<(oam&, cڡ mGridTab &); 39 mpublic : 40 cڡ  gfid ; 42 mive : 43  numts ; 44  mnumvs ; 45 mLi < mGridDaBuckVoid *>* m_da ; 46 mLi < mGridDaBuckVoid *>* m_ghos ; 48  mLi < mGridDaBuckVoid *>* m_nuda ; 50 mive : 52 GridTab (const GridTable&); 53  mݔ = (cڡ GridTab &); 55 mpublic : 56 le $GridTab (cڡ  gf , 57 cڡ  vs , 58 cڡ  s ) 59 : `gfid ( gf ), `numts ( s ), `numvs ( vs ), 60 `_da (0), `_ghos (0) 61 { _da = w Li < GridDaBuckVoid *>[ numts ]; 62 _ghos = w Li < GridDaBuckVoid *>[ numts * numvs ]; } 64 le ~ $GridTab () 65 { `ab (); i( _da de [] _da; i( _ghos d[] _ghos; } } 67 le gLi < gGridDaBuckVoid *>& $da (cڡ  t ) 68 {  ( _da [ t ]); } } 70 le gLi < gGridDaBuckVoid *>& $ghos (cڡ  t , cڡ  l ) 71 {  ( _ghos [ t * numvs + l ]); } } 73  ab (); 74  tdab (); 75  tghob (); 78  nd (cڡ  g , GridDaBuckVoid * gdbkt , 79 cڡ  de ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridUnit.cpp 26  ~"GridUn.h " 28 #ifde DEBUG_PRINT 29  ~"CommSv.h " 32 le  $ow ( b ,  p ) 34  tmp = 1; 35  p -- tmp * b ; 36  tmp ; 37 } } 60 gGridUn :: $GridUn (cڡ  ndim , cڡ  ev , 61 cڡ * bcods , cڡ  ext , cڡ  mv , 62 cڡ  l , cڡ  ev ) 63 : `owr ( ACENoBody ), `dex ( ACENu ), `nk ( ndim ), 64 `bav ( ev - ext ), 65 `ev ( ev ), `fev (ev+( l * ev )), 66 `maxv ( mv ), `mv ( ev ), `v ( l ), 67 `ex ( ext +( l * ev )), 68 $badex ( ndim , mv ) 70 #ifde DEBUG_PRINT 71 `as ( ev > ext ); 73 badex . `M ( bcods ); 74 #ifde DEBUG_PRINT 75 `as ( ev > ext || badex . `sfcGIndex () == 0); 77 `guSBBox (); 78 } } 80 gGridUn :: $GridUn (cڡ  ndim , cڡ  ev , 81 cڡ  bdex , cڡ  ext , cڡ  mv , 82 cڡ  l , cڡ  ev ) 83 : `owr ( ACENoBody ), `dex ( ACENu ), `nk ( ndim ), 84 `bav ( ev - ext ), 85 `ev ( ev ), `fev (ev+( l * ev )), 86 `maxv ( mv ), `mv ( ev ), `v ( l ), 87 `ex ( ext +( l * ev )), 88 $badex ( ndim , mv ) 90 #ifde DEBUG_PRINT 91 `as ( ev > ext || bdex == 0); 93 #ifde DEBUG_PRINT 94 `as ( bdex < badex . `GCdy ( ev )); 96 badex . `SIndex ( bdex , ev ); 97 `guSBBox (); 98 } } 112 GridUn cڡ & gGridUn :: ݔ (GridUn cڡ & h ) 114 i( this !& h ) 116 owr = h .owner; 117 gdex = h . dex ; 118 gnk = h . nk ; 119 gbav = h . bav ; 120 gev = h . ev ; 121 gfev = h . fev ; 122 gmaxv = h . maxv ; 123 gmv = h . mv ; 124 gv = h . v ; 125 gex = h . ex ; 126 gbadex = h . badex ; 127 gfbb = h . fbb ; 129 (* gthis ); 142  gGridUn :: $guNum (cڡ  ovp ) const 144 cڡ  numv = ( fev - ev )/ v +1; 145  num = 0; 147  i =0;i< numv ;i++) { 148 i(( ex -(() i * v )) >= 0) 149 num + `ow (((1 << ( ex -( i * v )))+ ovp , nk ); 151 num +((1 << ( nk * ovp )); 153  num ; 154 } } 156  gGridUn :: $guWk (cڡ  ovp ) const 158 cڡ  numv = ( fev - ev )/ v +1; 159  wk = 0; 161  i =0;i< numv ;i++) { 162 i(( ex -(() i * v )) >= 0) 163 wk +((1 << ( numv - i -1)* v ) * 164 `ow (((1 << ( ex -( i * v )))+ ovp , nk ); 166 wk +((1 << (( numv - i -1)* v +( ovp * nk ))); 168  wk ; 169 } } 171  gGridUn :: $guNum (cڡ  v , cڡ  ovp ) const 173  (( v <= fev &&ev>= ev && ex >=(fev-v)/ v ) ? 174 `ow ((()1<<( ex -( fev - v )))+ ovp , nk ) : 0); 175 } } 177  gGridUn :: $guWk (cڡ  v , cڡ  ovp ) const 179  (( v <= fev &&ev>= ev && ex >=(fev-v)/ v ) ? 180 (()1<<( v - ev ))* 181 `ow ((()1<<( ex -( fev - v )))+ ovp , nk ) : 0); 182 } } 184  gGridUn :: $guNum (cڡ * ovp ) const 186 cڡ  numv = ( fev - ev )/ v +1; 187  num = 0; 189  i =0;i< numv ;i++) { 190 i(( ex -(() i * v )) >= 0) { 191  um = 1; 192  r =0;r< nk ;r++) 193 um *((1 << ( ex -( i * v )))+ ovp [ r ]; 194 num + um ; 197  um = 1; 198  r =0;r< nk ;r++) 199 um *(1 << ovp [ r ]; 200 num + um ; 203  num ; 204 } } 206  gGridUn :: $guWk (cڡ * ovp ) const 208 cڡ  numv = ( fev - ev )/ v +1; 209  wk = 0; 211  i =0;i< numv ;i++) { 212 i(( ex -(() i * v )) >= 0) { 213  um = 1; 214  r =0;r< nk ;r++) 215 um *((1 << ( ex -( i * v )))+ ovp [ r ]; 216 wk +((1 << ( numv - i -1)* v * um ; 219  um = 0; 220  r =0;r< nk ;r++) 221 um + ovp [ r ]; 222 wk +((1 << (( numv - i -1)* v + um )); 225  wk ; 226 } } 228  gGridUn :: $guNum (cڡ  v , cڡ * ovp ) const 230  um = 1; 231  r =0;r< nk ;r++) 232 um *((1 << ( ex -( fev - v )))+ ovp [ r ]; 233  (( v <= fev &&ev>= ev && ex >=(fev-v)/ v ) ? 234 um : 0); 235 } } 237  gGridUn :: $guWk (cڡ  v , cڡ * ovp ) const 239  um = 1; 240  r =0;r< nk ;r++) 241 um *((1 << ( ex -( fev - v )))+ ovp [ r ]; 242  (( v <= fev &&ev>= ev && ex >=(fev-v)/ v ) ? 243 (()1<<( v - ev ))* um : 0); 244 } } 246 dMIndex gGridUn :: $guMaxIndex (cڡ  v ) const 248 dMIndex `mi ( badex ); 249 i( v < fev ) 250 mi . `SMax ( v , ex -( fev -lev)); 252 mi . `SMax ( v , ex +ev- fev )); 253  ( mi ); 254 } } 256 dMIndex gGridUn :: $guTIndex (cڡ  v ) const 258 dMIndex `ti ( badex ); 259 i( v < fev ) 260 ti . `SBox ( v , ex -( fev -lev)); 262 ti . `SBox ( v , ex +ev- fev )); 263  ( ti ); 264 } } 266  gGridUn :: $guLCods (* c , cڡ  v ) const 268 badex . `GCods ( c , v ); 269 } } 271 Cods gGridUn :: $guLCods (cڡ  v ) const 273 Cods `cods ( nk ,0); 274 badex . `GCods ( `cods (), v ); 275  ( cods ); 276 } } 278  gGridUn :: $guUCods (* c , cڡ  v ) const 280 dMIndex `ti ( badex ); ti . `SBox ( v , `guExAbs (lev)); 281 ti . `GCods ( c , v ); 282 } } 284 Cods gGridUn :: $guUCods (cڡ  v ) const 286 dMIndex `ti ( badex ); ti . `SBox ( v , `guExAbs (lev)); 287 Cods `cods ( nk ,0); 288 ti . `GCods ( `cods (), v ); 289  ( cods ); 290 } } 306  gGridUn :: ݔ =( GridUn cڡ & h ) const 308 i( this =& h )  1; 311 gnk = h . nk && badex == other.baseindex && 312 ( fev - h .fev = ex -other.extent) 318  gGridUn :: ݔ <( GridUn cڡ & h ) const 320 i( this =& h )  1; 321 i( gnk = h . nk && oth. badex <= baseindex) 323 i( h . guMaxIndex ( ev ) >= guMaxIndex(crslev)) {  1; } 329  gGridUn :: ݔ >( GridUn cڡ & h ) const 331 i( this =& h )  1; 332 i( gnk = h . nk && oth. badex >= baseindex) 334 i( h . guMaxIndex ( ev ) <= guMaxIndex(crslev)) {  1; } 349  gGridUn :: $guSBBox () 351  = badex . `GDimCdy ( fev ); 352 Cods `lc ( `guLCods ( fev )); 353 Cods `uc ( `guUCods ( fev )); 354 fbb = `BBox ( lc . `gm ( uc ),uc. `gmax c), ); 355 } } 357 BBox gGridUn :: $guBBoxAbs (cڡ  v , cڡ  ޭ , 358 cڡ  extgh ) const 360 i( fbb . `emy ()) 361  ( BBox :: _emy_bbox ); 362 i( v = fev ) 363  ( ( ޭ ==0 && extgh ==0? fbb : 364 ( extgh ==0? `growu ( fbb , ޭ ) : 365 `grow ( `growu ( fbb , ޭ ), extgh ) ); 366 i( v < fev ) 367  ( ( ޭ ==0 && extgh ==0) ? 368 `crn ( fbb , badex . `GCdy (1, fev - v )) : 369 ( extgh ==0) ? 370 `growu ( `crn ( fbb , badex . `GCdy (1, fev - v )), 371 ޭ ) : 372 `grow ( `growu ( `crn ( fbb , badex . `GCdy (1, fev - v )), 373 ޭ ), extgh ) ); 374 i( v > fev ) 375  ( ( ޭ ==0 && extgh ==0) ? 376 `fe ( fbb , badex . `GCdy (1, fev - v ),1) : 377 ( extgh ==0) ? 378 `growu ( `fe ( fbb , badex . `GCdy (1, fev - v ),1), 379 ޭ ) : 380 `grow ( `growu ( `fe ( fbb , badex . `GCdy (1, fev - v ),1), 381 ޭ ), extgh ) ); 383  ( BBox :: _emy_bbox ); 384 } } 386 BBox gGridUn :: $guBBoxAbs (cڡ  v , cڡ * ޭ , 387 cڡ  extgh ) const 389 i( fbb . `emy ()) 390  ( BBox :: _emy_bbox ); 391 i( v = fev ) 392  ( ( ޭ ==0 && extgh ==0? fbb : 393 ( extgh ==0? `growubydim ( fbb , ޭ ) : 394 `grow ( `growubydim ( fbb , ޭ ), extgh ) ); 395 i( v < fev ) 396  ( ( ޭ ==0 && extgh ==0) ? 397 `crn ( fbb , badex . `GCdy (1, fev - v )) : 398 ( extgh ==0) ? 399 `growubydim ( `crn ( fbb , badex . `GCdy (1, fev - v )), 400 ޭ ) : 401 `grow ( `growubydim ( `crn ( fbb , badex . `GCdy (1, fev - v )), 402 ޭ ), extgh ) ); 403 i( v > fev ) 404  ( ( ޭ ==0 && extgh ==0) ? 405 `fe ( fbb , badex . `GCdy (1, fev - v ),1) : 406 ( extgh ==0) ? 407 `growubydim ( `fe ( fbb , badex . `GCdy (1, fev - v ),1), 408 ޭ ) : 409 `grow ( `growubydim ( `fe ( fbb , badex . `GCdy (1, fev - v ),1), 410 ޭ ), extgh ) ); 412  ( BBox :: _emy_bbox ); 413 } } 415 BBox gGridUn :: $guBBox (cڡ  v , cڡ  ޭ , 416 cڡ  extgh ) const 418 i( fbb . `emy (|| v > fev ||ev < ev ) 419  ( BBox :: _emy_bbox ); 420 i( v = fev ) 421  ( ( ޭ ==0 && extgh ==0? fbb : 422 ( extgh ==0? `growu ( fbb , ޭ ) : 423 `grow ( `growu ( fbb , ޭ ), extgh ) ); 424 i( v < fev ) 425  ( ( ޭ ==0 && extgh ==0) ? 426 `crn ( fbb , badex . `GCdy (1, fev - v )) : 427 ( extgh ==0) ? 428 `growu ( `crn ( fbb , badex . `GCdy (1, fev - v )), 429 ޭ ) : 430 `grow ( `growu ( `crn ( fbb , badex . `GCdy (1, fev - v )), 431 ޭ ), extgh ) ); 432 i( v > fev ) 433  ( ( ޭ ==0 && extgh ==0) ? 434 `fe ( fbb , badex . `GCdy (1, fev - v ),1) : 435 ( extgh ==0) ? 436 `growu ( `fe ( fbb , badex . `GCdy (1, fev - v ),1), 437 ޭ ) : 438 `grow ( `growu ( `fe ( fbb , badex . `GCdy (1, fev - v ),1), 439 ޭ ), extgh ) ); 441  ( BBox :: _emy_bbox ); 442 } } 444 BBox gGridUn :: $guBBox (cڡ  v , cڡ * ޭ , 445 cڡ  extgh ) const 447 i( fbb . `emy (|| v > fev ||ev < ev ) 448  ( BBox :: _emy_bbox ); 449 i( v = fev ) 450  ( ( ޭ ==0 && extgh ==0? fbb : 451 ( extgh ==0? `growubydim ( fbb , ޭ ) : 452 `grow ( `growubydim ( fbb , ޭ ), extgh ) ); 453 i( v < fev ) 454  ( ( ޭ ==0 && extgh ==0) ? 455 `crn ( fbb , badex . `GCdy (1, fev - v )) : 456 ( extgh ==0) ? 457 `growubydim ( `crn ( fbb , badex . `GCdy (1, fev - v )), 458 ޭ ) : 459 `grow ( `growubydim ( `crn ( fbb , badex . `GCdy (1, fev - v )), 460 ޭ ), extgh ) ); 461 i( v > fev ) 462  ( ( ޭ ==0 && extgh ==0) ? 463 `fe ( fbb , badex . `GCdy (1, fev - v ),1) : 464 ( extgh ==0) ? 465 `growubydim ( `fe ( fbb , badex . `GCdy (1, fev - v ),1), 466 ޭ ) : 467 `grow ( `growubydim ( `fe ( fbb , badex . `GCdy (1, fev - v ),1), 468 ޭ ), extgh ) ); 470  ( BBox :: _emy_bbox ); 471 } } 473 BBox gGridUn :: $guBBox (cڡ  ml , cڡ  maxl , 474 cڡ * ޭ , cڡ  extgh ) const 476 i( fbb . `emy (|| ml > fev || maxl < ev ) 477  ( BBox :: _emy_bbox ); 478 i( maxl > fev ) 479  ( ( ޭ ==0 && extgh ==0? fbb : 480 ( extgh ==0? `growubydim ( fbb , ޭ ) : 481 `grow ( `growubydim ( fbb , ޭ ), extgh ) ); 482 i( maxl < fev ) 483  ( ( ޭ ==0 && extgh ==0) ? 484 `crn ( fbb , badex . `GCdy (1, fev - maxl )) : 485 ( extgh ==0) ? 486 `growubydim ( `crn ( fbb , badex . `GCdy (1, fev - maxl )), 487 ޭ ) : 488 `grow ( `growubydim ( `crn ( fbb , badex . `GCdy (1, fev - maxl )), 489 ޭ ), extgh ) ); 491  ( BBox :: _emy_bbox ); 492 } } 494  gGridUn :: $guInside (cڡ BBox & bbox , cڡ  v ) const 496 i( v > fev ||ev< ev )  0; 497 Cods cu , ; 498 badex . `GCods ( ` (), v ); 499 dMIndex `ti ( badex ); ti . `SBox ( v , ex -( fev -lev)); 500 ti . `GCods ( `cu (), v ); 502 i( bbox . `side ( && bbox.side( cu )) { 508 } } 524  gGridUn :: $guRefe (cڡ  vs ) 526 cڡ  vs = vs * v ; 527 #ifde DEBUG_PRINT 528 `as ( fev + vs < maxv ); 531 ex + vs ; 532 fev + vs ; 533 bav = fev - ex ; 534 `guSBBox (); 535 } } 537  gGridUn :: $guRefe ( GridUn & gu , cڡ  vs ) 539 cڡ  vs = vs * v ; 540 #ifde DEBUG_PRINT 541 `as ( fev + vs < maxv ); 544 gu . owr = owner; 545 gu . dex = index; 546 gu . nk =ank; 547 gu . v =evstep; 548 gu . maxv = maxlev; 549 gu . mv = minlev; 551 gu . ev = fev + v ; 552 gu . fev = fev+ vs ; 553 gu . ex =x+ vs ; 554 gu . bav = gu. fev -gu. ex ; 556 gu . badex = baseindex; 557 gu . `guSBBox (); 558 } } 574  gGridUn :: $guCrn (cڡ  vs ) 576 cڡ  vs = vs * v ; 577 #ifde DEBUG_PRINT 578 `as ( fev - vs > ev ); 581 ex - vs ; 582 fev - vs ; 583 bav = fev - ex ; 584 `guSBBox (); 585 } } 587  gGridUn :: $guCrn ( GridUn & gu , cڡ  vs ) 589 cڡ  vs = vs * v ; 590 #ifde DEBUG_PRINT 591 `as ( fev - vs > ev ); 594 gu . owr = owner; 595 gu . dex = index; 596 gu . nk =ank; 597 gu . v =evstep; 598 gu . maxv = maxlev; 599 gu . mv = minlev; 601 gu . ev = crslev; 602 gu . fev = fev- vs ; 603 gu . ex =x- vs ; 604 gu . bav = gu. fev -gu. ex ; 606 gu . badex = baseindex; 607 gu . `guSBBox (); 608 } } 622  gGridUn :: $guDecompo ( GridUn **& gu , & t , 623 cڡ  v ) const 625 i( v =0{ t = 0; ; } 626 cڡ  numv = ( fev - ev )/ v + 1; 627 #ifde DEBUG_PRINT 628 `as ( v > 0 &&ev < ex -( numv -1)* v ); 631 t = badex . `GCdy ( v ); 632  wext = ex - v ; 633  wbv = bav + v ; 636 #ifde DEBUG_PRINT 637 `as (! gu ); 639 gu = w GridUn *[ t ]; 641  i =0;i< t ;i++) { 642 gu [ i ] = w `GridUn (* this ); 643 gu [ i ]-> bav = wbv ; 644 gu [ i ]-> ex = wext ; 646 gu [ i ]-> badex . `SIndex (i, wbv , v ); 647 gu [ i ]-> `guSBBox (); 649 } } 665  gGridUn :: $guDecompoRli ( GridUn **& gu , & t , 666 cڡ  v , 667 cڡ  mext ) const 669 i( v =0{ t = 0; ; } 671 cڡ  numv = ( fev - ev )/ v + 1; 672  wxt = ( ex -( numv -1)* v - v ; 674  wev ; 675 i( wxt >= mext wev = ev ; 676 i(( mext - wxt )% v > 0) 677 wev = ev + (( mext - wxt + v )/levstep)*levstep; 679 wev = ev + mext - wxt ; 681 t = badex . `GCdy ( v ); 682  wext = ex - v ; 683  wbv = bav + v ; 686 #ifde DEBUG_PRINT 687 `as (! gu ); 689 gu = w GridUn *[ t ]; 691  i =0;i< t ;i++) { 692 gu [ i ] = w `GridUn (* this ); 693 gu [ i ]-> bav = wbv ; 694 gu [ i ]-> ex = wext ; 695 gu [ i ]-> badex . `SIndex (i, wbv , v ); 696 i( i != 0) { 697 gu [ i ]-> ev = wev ; 699 gu [ i ]-> `guSBBox (); 701 } } 718  gGridUn :: $guGLevs ( GridUn ** & gu ) const 721 #ifde DEBUG_PRINT 722 `as (! gu ); 724 gu = w GridUn *[( maxv - mv )/ v +1]; 726 cڡ  numv = ( fev - ev )/ v + 1; 727  ext = ex -( numv -1)* v ; 729  offt = ( mv - ev )/ v ; 730  i =0;i< numv ;i++) { 731 gu [ i + offt ] = w `GridUn (* this ); 732 gu [ i + offt ]-> ev = (i* v )+crslev; 733 gu [ i + offt ]-> fev = (i* v )+ ev ; 734 gu [ i + offt ]-> ex = ext ; 735 gu [ i + offt ]-> `guSBBox (); 736 ext + v ; 738 } } 740  gGridUn :: $guGLevs ( GridUn & gu , cڡ  v ) const 742  ext = ex -( fev - v ); 744 gu . owr = owner; 745 gu . dex = index; 746 gu . nk =ank; 747 gu . v =evstep; 748 gu . maxv = maxlev; 749 gu . mv = minlev; 751 gu . ev = v ; 752 gu . fev = v ; 753 gu . ex = ext ; 755 gu . bav = gu. fev -gu. ex ; 756 gu . badex = baseindex; 757 gu . `guSBBox (); 758 } } 760 goam & gݔ << (oam& gos , cڡ gGridUn & gcgu ) 763 i(& gcgu =( GridUn *) NULL  os ; 765 gGridUn & ggu = ( GridUn & cgu ; 767 gos << "Owr: " << ggu . gowr << " "; 768 gos << "Idx: " << ggu . gdex << " "; 769 gos << "Rk: " << ggu . gnk << " "; 770 gos << "Bv: " << ggu . gbav << " "; 771 gos << "CLev: " << ggu . gev << " "; 772 gos << "Fv: " << ggu . gfev << " "; 773 gos << "NLev: " << ggu . guNumLev () << " "; 774 gos << "MLev: " << ggu . gmaxv << " "; 775 gos << "LSp: " << ggu . gv << " "; 776 gos << "Num: " << ggu . guNum (0) << " "; 777 gos << "Wk: " << ggu . guWk (0) << " "; 778 gos << "Ext: " << ggu . gex << " "; 780  gi = gu . ev ;i<=gu. fev ;i+=gu. v ) { 781 os << "\n"; 782 gos << "Lev " << gi << ":"; 783 gos << ggu . guBBox ( i ) << " "; 784 gos << ggu . guBaIndex () << " "; 785 gos << ggu . guTIndex ( i ) << " "; 786 gos << ggu . guMaxIndex ( i ) << " "; 787 gos << ggu . guEx ( i ) << " "; 788 gos << ggu . guNum ( i ,0) << " "; 789 gos << ggu . guWk ( i ,0) << " "; 790 gos << "\n"; 792  gos ; 795 gofam & gݔ << (ofam& gofs , cڡ gGridUn & ggu ) 798 i(& ggu =( GridUn *) NULL  ofs ; 800 gofs . wre ((*)& gu ,( GridUn )); 802  gofs ; 805 gifam & gݔ >> (ifam& gifs , gGridUn & ggu ) 808 i(& ggu =( GridUn *) NULL  ifs ; 810 gifs . ad ((*)& gu ,( GridUn )); 812  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridUnit.h 1 #ide _uded_GridUn_h 2  #_uded_GridUn_h ) 41  ~"ACEPams.h " 42  ~"ACESfc.h " 43  ~"BBox.h " 45  #GridUnNULL (( GridUn * NULL ) ) 47 as cGridUn 49 nd moam & mݔ <<(oam&, cڡ mGridUn &); 50 nd mofam & mݔ <<(ofam&, cڡ mGridUn &); 51 nd mifam & mݔ >>(ifam&, mGridUn &); 52 nd ass mGridUnLi ; 54  mowr ; 55  mdex ; 56  mnk ; 57  mbav ; 59  mev ; 60  mfev ; 61  mmaxv ; 62  mmv ; 63  mv ; 65  mex ; 68 dMIndex mbadex ; 71 BBox mfbb ; 73 mpublic : 75 le $GridUn () 76 : `owr ( ACENoBody ), `dex ( ACENu ), `nk (0), 77 `bav (0), `ev (0), `fev (0), 78 `maxv (0), `mv (0), `v (0), 79 `ex (0) { } 81 `GridUn (cڡ  Īk , cڡ  ev , cڡ * bcods , 82 cڡ  ext , cڡ  mv , cڡ  l , 83 cڡ  ev ); 85 `GridUn (cڡ  Īk , cڡ  ev , cڡ  bdex , 86 cڡ  ext , cڡ  mv , cڡ  l , 87 cڡ  ev ); 89 le $GridUn ( GridUn cڡ & h ) 90 : `owr ( h . owr ), `dex (h. dex ), 91 `nk ( h . nk ), `bav (h. bav ), 92 `ev ( h . ev ), `fev (h. fev ), 93 `maxv ( h . maxv ), `mv (h. mv ), 94 `v ( h . v ), 95 `ex ( h . ex ), `badex (h. badex ), 96 $fbb ( h . fbb ) 97 { } } 99 gle ~ $GridUn ({ } } 101 GridUn cڡ & gݔ (GridUn cڡ & h ); 104 give : 107 public : 108 le  $guRk (cڡ {  ( nk ); } } 109 le  $guBaLev (cڡ {  ( bav ); } } 110 le  $guFeLev (cڡ {  ( fev ); } } 111 le  $guCrsLev (cڡ {  ( ev ); } } 112 le  $guNumLev (cڡ {  (( fev - ev )/ v +1); } } 113 le  $guMaxLev (cڡ {  ( maxv ); } } 114 le  $guMLev (cڡ {  ( mv ); } } 115 le  $guLevSp (cڡ {  ( v ); } } 116 le  $guLevs (cڡ {  (( maxv - mv )/ v +1); } } 118 le  $guEx (cڡ  v ) const 119 {  (( v <= fev &&ev>= ev && ex >=(finelev-lev)) 120 ? ex -( fev - v : 0); } } 121 le  $guExAbs (cڡ  v ) const 122 {  (( ex >=( fev - v )?x-(fev-v: 0); } } 124 le  $guExVue (cڡ  v ) const 125 {  (( v <= fev &&ev>= ev && ex >=(finelev-lev)) 126 ? 1 << ( ex -( fev - v ): 1); } } 127 le  $guExAbsVue (cڡ  v ) const 128 {  (( ex >=( fev - v )? 1 << (ex-(fev-v): 1); } } 130  $guNum (cڡ  ovp ) const; 131  $guWk (cڡ  ovp ) const; 132  $guNum (cڡ  v , cڡ  ovp ) const; 133  $guWk (cڡ  v , cڡ  ovp ) const; 135  $guNum (cڡ * ovp ) const; 136  $guWk (cڡ * ovp ) const; 137  $guNum (cڡ  v , cڡ * ovp ) const; 138  $guWk (cڡ  v , cڡ * ovp ) const; 140 le  $guCڏs (cڡ  v ) const 141 {  ( v <= fev &&ev>= ev ); } } 142 le  $guCڏs (cڡ  mv , cڡ  maxv ) const 143 {  ( mv <= fev && maxv >= ev ); } } 145 le  $guLevIndex (cڡ  v ) const 146 {  (( v - mv )/ v ); } } 149 le  $guSOwr (cڡ  p { owr =; } } 151 le cڡ gdMIndex & $guBaIndex (cڡ {  ( badex ); } } 153 dMIndex $guTIndex (cڡ  v ) const; 154 dMIndex $guMaxIndex (cڡ  v ) const; 156 ive : 157  $guLCods (* c , cڡ  v ) const; 158 Cods $guLCods (cڡ  v ) const; 160  $guUCods (* c , cڡ  v ) const; 161 Cods $guUCods (cڡ  v ) const; 163  `guSBBox (); 165 public : 166 cڡ BBox & $guBBox (cڡ {  ( fbb ); } } 168 BBox guBBox (cڡ  v , cڡ  ޭ =0, cڡ  extgh =0) const; 169 BBox guBBoxAbs (cڡ  v , cڡ  ޭ =0, cڡ  extgh =0) const; 171 BBox guBBox (cڡ  v , cڡ * ޭ , cڡ  extgh =0) const; 172 BBox guBBoxAbs (cڡ  v , cڡ * ޭ , cڡ  extgh =0) const; 174 BBox guBBox (cڡ  ml , cڡ  maxl , 175 cڡ * ޭ , cڡ  extgh =0) const; 177  $guInside (cڡ BBox & bbox , cڡ  v ) const; 180  ݔ =( GridUn cڡ & h ) const; 181  ݔ >( GridUn cڡ & h ) const; 182  ݔ <( GridUn cڡ & h ) const; 185  `guRefe (cڡ  vs = 1); 186  `guRefe ( GridUn & gu , cڡ  vs = 1); 188  `guCrn (cڡ  vs = 1); 189  `guCrn ( GridUn & gu , cڡ  vs = 1); 191  `guDecompo ( GridUn **& gu , & t , cڡ  vs = 1) const; 192  `guDecompoRli ( GridUn **& gu , & t , cڡ  mext , 193 cڡ  vs = 1) const; 198  $guGLevs ( GridUn ** & gu ) const; 199  $guGLevs ( GridUn & gu , cڡ  v ) const; 202 le  $guSDecompo ( GridUn & gu , 203 cڡ  v , 204 cڡ  t ) 205 { gu . bav += v ; gu. ex -=lev; 206 gu . badex . `SIndex ( t ,gu. bav , v ); gu. `guSBBox (); } } 208 le  $guSLevs ( GridUn & gu , 209 cڡ  v ) 210 { gu . ex -=(gu. fev - v ); 211 gu . ev = v ; gu. fev =lev; 212 gu . bav = gu. fev -gu. ex ; gu. `guSBBox (); } } 214 le  guSRefeLev ( GridUn & gu , 215 cڡ  vs =1) 216 { gu . ev =gu. fev +gu. v ; ggu . gfev +=( vs *gu.levstep); 217 ggu . gex += vs * gu . v ; gu. gbav =gu. fev -gu. ex ; 218 ggu . guSBBox (); } 220 le  guSCrn ( GridUn & gu , 221 cڡ  vs =1) 222 { gu . fev -=( vs *gu. v ); ggu . gex -=levs*gu.levstep; 223 ggu . gbav = gu . fev -gu. ex ; gu. guSBBox (); } 225 le  guSRefe ( GridUn & gu , 226 cڡ  vs =1) 227 { gu . fev +=( vs *gu. v ); ggu . gex +=levs*gu.levstep; 228 ggu . gbav = gu . fev -gu. ex ; gu. guSBBox (); } 231 goam & gݔ << (oam& gos , cڡ gGridUn & ggu ); 232 gofam & gݔ << (ofam& gofs , cڡ gGridUn & ggu ); 233 gifam & gݔ >> (ifam& gifs , gGridUn & ggu ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridUnitList.cpp 22  ~"GridUnLi.h " 24 #ifde DEBUG_PRINT 25  ~"CommSv.h " 29 cڡ gfame [] = "GridUnitList.C"; 31  $wn cڡ  msg [] ) 32 { << fame << ":" << msg << "\n"; } } 34  $abt cڡ  msg []) 35 { `wn ( msg ); `ex (-1); } } 46 gGridUnLi :: $GridUnLi ( GridUnLi **& vy ) 47 : Buck < GridUn >( DefBuckSize ), `num (0) 49  GridUnLi * gul = vy [0]; 50 i( gul = GridUnLiNULL || gul-> `imy ()) ; 52  GridUn cڡ * tmpgu = gul -> `f (); 54 #ifde DEBUG_PRINT 55 `as ( tmpgu ! GridUnNULL ); 58 cڡ  ev = tmpgu -> `guLevs (); 60 ; tmpgu ;tmpgu= gul -> `xt () `add (*tmpgu); 62  i =1;i< ev ;i++) { 63 i( vy [ i ] && !vy[i]-> `imy ()) { 64 gul = vy [ i ]; 65 tmpgu = gul -> `f (); 66  GridUn cڡ * gu = `f (); 67 ; tmpgu ;tmpgu= gul -> `xt ()) { 69 ; gu ;gu= `xt ()) { 70 i(* tmpgu =* gu ) 71 { `fe (); gu = `xt (); ; } 72 i(* gu >* tmpgu ) { 73 i( gu -> `guEx (gu-> ev ) <= 0) { 74 `fe (); ; 77 `decompo ( tmpgu -> bav - gu ->baselev); 80 i(* gu <* tmpgu ) 81 { gul -> `decompo ( gu -> bav - tmpgu ->baselev); ; } 83 i( tmpgu && ! gu gu = `f (); 87 } } 97 gGridUnLi & GridUnLi:: ݔ = (cڡ GridUnLi & ch ) 99 GridUnLi & h = (GridUnLi &) ch ; 100  cd * gtmpcur = h . cuec (); 101 i( gnum !0 emy (); 102 GridUn * ggu = 0; 103  ggu = h . f ();gu;gu=h. xt ()) { 104 add (* gu ); 106 #ifde DEBUG_PRINT 107 as ( num == h .num); 109 gh . tcuec ( tmpcur ); 110  * gthis ; 128  gGridUnLi :: ݔ -( GridUnLi cڡ & rhs ) 130 GridUnLi * diff = this ; 131 GridUnLi r ( rhs ); 132  GridUn cڡ * grhsgu = r . f (); 133  GridUn * ggu = diff -> f (); 134 ; grhsgu ;rhsgu= r . xt ()) { 135 ; ggu ;gu= diff -> xt ()) { 136 i(* rhsgu =* gu ) 137 { diff -> move (); ; } 138 i(* ggu >* rhsgu ) 139 diff -> decompo ( rhsgu -> bav - gu ->baselev); 140 i(* ggu <* rhsgu ) 141 { r . decompo ( gu -> bav - rhsgu ->baselev); ; } 143 i(! ggu ) { 144 ggu = diff -> f (); 149 GridUnLi * gGridUnLi :: ݔ - (GridUnLi cڡ & rhs ) 151 GridUnLi * diff = w GridUnLi(* this ); 152 GridUnLi r ( rhs ); 153 GridUnLi gtmpd ; 154  GridUn cڡ * grhsgu = r . f (); 155  GridUn * ggu = diff -> f (); 156 ; grhsgu ;rhsgu= r . xt ()) { 157 ; ggu ;gu= diff -> xt ()) { 158 i(* rhsgu =* gu ) 159 { diff -> move (); ; } 160 i(* ggu >* rhsgu ) 161 diff -> decompo ( rhsgu -> bav - gu ->baselev); 162 i(* ggu <* rhsgu ) 163 { r . decompo ( gu -> bav - rhsgu ->baselev); ; } 165 i(! ggu ) { 166 gtmpd . add (* rhsgu ); 167 ggu = diff -> f (); 170  GridUn cڡ * gtmpgu = tmpd . f (); 171 ggu = diff -> f (); 172 ; gtmpgu ;tmpgu= tmpd . xt ()) { 173 ; ggu ;gu= diff -> xt ()) { 174 i( tmpgu -> guBaIndex (< gu ->guBaseIndex()) 175 { diff -> ev (); gdiff -> (* tmpgu ); ggu = diff-> xt (); ; } 177 i(! ggu gdiff -> add (* tmpgu ); 180  gdiff ; 183  gGridUnLi :: ݔ *( GridUnLi cڡ & rhs ) 185 GridUnLi * r = this ; 186 GridUnLi r ( rhs ); 187  GridUn cڡ * grhsgu = r . f (); 188  GridUn * ggu = r -> f (); 189 ; ggu ;gu= r -> xt ()) { 190 ; grhsgu ;rhsgu= r . xt ()) { 191 i(* rhsgu =* gu ) ; 192 i(* ggu >* rhsgu ) 193 { r -> decompo ( rhsgu -> bav - gu ->baselev); ; } 194 i(* ggu <* rhsgu ) 195 { r . decompo ( gu -> bav - rhsgu ->baselev); } 197 i(! grhsgu ) { 198 gr -> move (); 199 grhsgu = r . f (); 204 GridUnLi * gGridUnLi :: ݔ * (GridUnLi cڡ & rhs ) 206 GridUnLi * r = w GridUnLi(* this ); 207 GridUnLi r ( rhs ); 208  GridUn cڡ * grhsgu = r . f (); 209  GridUn * ggu = r -> f (); 210 ; ggu ;gu= r -> xt ()) { 211 ; grhsgu ;rhsgu= r . xt ()) { 212 i(* rhsgu =* gu ) ; 213 i(* ggu >* rhsgu ) 214 { r -> decompo ( rhsgu -> bav - gu ->baselev); ; } 215 i(* ggu <* rhsgu ) 216 { r . decompo ( gu -> bav - rhsgu ->baselev); } 218 i(! grhsgu ) { 219 gr -> move (); 220 grhsgu = r . f (); 224  gr ; 227 GridUnLi * gGridUnLi :: ݔ + (GridUnLi cڡ & rhs ) 229 GridUnLi * sum = w GridUnLi(* this ); 230 GridUnLi r ( rhs ); 231 GridUnLi gtmpu ; 232  GridUn cڡ * grhsgu = r . f (); 233  GridUn * ggu = sum -> f (); 234 ; grhsgu ;rhsgu= r . xt ()) { 235 ; ggu ;gu= sum -> xt ()) { 236 i(* rhsgu =* gu ) ; 237 i(* ggu >* rhsgu ) 238 sum -> decompo ( rhsgu -> bav - gu ->baselev); 239 i(* ggu <* rhsgu ) 240 { r . decompo ( gu -> bav - rhsgu ->baselev); ; } 242 i(! ggu ) { 243 gtmpu . add (* rhsgu ); 244 ggu = sum -> f (); 248  GridUn cڡ * gtmpgu = tmpu . f (); 249 ggu = sum -> f (); 250 ; gtmpgu ;tmpgu= tmpu . xt ()) { 251 ; ggu ;gu= sum -> xt ()) { 252 i( tmpgu -> guBaIndex (< gu ->guBaseIndex()) 253 { sum -> ev (); gsum -> (* tmpgu ); ggu = sum-> xt (); ; } 255 i(! ggu gsum -> add (* tmpgu ); 258  gsum ; 273  gGridUnLi :: ݔ *( BBox cڡ & rhs ) 275 i( rhs . emy ()) { 276 emy (); 279  GridUn * ggu = f (); 280 BBox gbb ; 281 ; ggu ;gu= xt ()) { 282  v = gu -> guFeLev (); 283 gbb = gu -> guBBox ( v ); 284 i( gbb < rhs ) ; 285 i(!( bb * grhs ). emy () decompo (); 286 move (); 291 GridUnLi * gGridUnLi :: ݔ * ( BBox cڡ & rhs ) 293 GridUnLi * r = w GridUnitList; 295 i(! grhs . emy ()) { 296  GridUn * ggu = f (); 297 BBox gbb ; 298 ; ggu ;gu= xt ()) { 299  v = gu -> guFeLev (); 300 gbb = gu -> guBBox ( v ); 301 i(!( rhs * gbb ). emy ()) { 302 gr -> add (* gu ); 306  gr ; 309 GridUnLi * gGridUnLi :: ݔ * ( BBoxLi cڡ & hs ) 311 BBoxLi & rhs = (BBoxLi & hs ; 312  cd * gtmpcur = rhs . cuec (); 314 GridUnLi * gr = w GridUnitList; 316  BBox * grhsbb = 0; 318 BBox gbb ; 319  gv = 0; 320  GridUn * ggu = f (); 321 ; ggu ;gu= xt ()) { 322 v = gu -> guFeLev (); 323 gbb = gu -> guBBox ( v ); 324  grhsbb = rhs . f ();rhsbb;rhsbbhs. xt ()) { 325 i(! rhsbb -> emy (&& !(*rhsbb * bb ).empty()) { 326 r -> add (* gu ); 331 grhs . tcuec ( tmpcur ); 332  gr ; 335  gGridUnLi :: $r ( BBox cڡ & rhs , cڡ  v , 336 GridUnLi & gul , cڡ  ޭ , 337 cڡ  extgh ) 339 gul . `emy (); 340 i(! rhs . `emy ()) { 341  GridUn * gu = `f (); 342 BBox bb ; 343 ; gu ;gu= `xt ()) { 344 bb = gu -> `guBBox ( v , ޭ , extgh ); 345 i(!( rhs * bb ). `emy ()) { 346 gul . `add (* gu ); 350 } } 352  gGridUnLi :: $r ( BBoxLi cڡ & hs , cڡ  v , 353 GridUnLi & gul , cڡ  ޭ , 354 cڡ  extgh ) 356 BBoxLi & rhs = (BBoxLi & hs ; 357  cd * tmpcur = rhs . `cuec (); 359 gul . `emy (); 361  BBox * rhsbb = 0; 363 BBox bb ; 364  GridUn * gu = `f (); 365 ; gu ;gu= `xt ()) { 366 bb = gu -> `guBBox ( v , ޭ , extgh ); 367 if(! bb . `emy ()) { 368  rhsbb = rhs . `f ();rhsbb;rhsbbhs. `xt ()) { 369 i(! rhsbb -> `emy (&& !(*rhsbb * bb ).empty()) { 370 gul . `add (* gu ); 377 rhs . `tcuec ( tmpcur ); 378 } } 380  gGridUnLi :: $r ( BBox cڡ & rhs , cڡ  v , 381 GridUnLi & gul , cڡ * ޭ , 382 cڡ  extgh ) 384 gul . `emy (); 385 i(! rhs . `emy ()) { 386  GridUn * gu = `f (); 387 BBox bb ; 388 ; gu ;gu= `xt ()) { 389 bb = gu -> `guBBox ( v , ޭ , extgh ); 390 i(!( rhs * bb ). `emy ()) { 391 gul . `add (* gu ); 395 } } 397  gGridUnLi :: $r ( BBoxLi cڡ & hs , cڡ  v , 398 GridUnLi & gul , cڡ * ޭ , 399 cڡ  extgh ) 401 BBoxLi & rhs = (BBoxLi & hs ; 402  cd * tmpcur = rhs . `cuec (); 404 gul . `emy (); 406  BBox * rhsbb = 0; 408 BBox bb ; 409  GridUn * gu = `f (); 410 ; gu ;gu= `xt ()) { 411 bb = gu -> `guBBox ( v , ޭ , extgh ); 412 if(! bb . `emy ()) { 413  rhsbb = rhs . `f ();rhsbb;rhsbbhs. `xt ()) { 414 i(! rhsbb -> `emy (&& !(*rhsbb * bb ).empty()) { 415 gul . `add (* gu ); 422 rhs . `tcuec ( tmpcur ); 423 } } 433  gGridUnLi :: $tdex (cڡ GridUnLi & cgul , cڡ  idx ) 435 GridUnLi & gul = (GridUnLi & cgul ; 436  cd * rhmpcur = gul . `cuec (); 437  cd * tmpcur = `cuec (); 439  GridUn * g = `f (); 440  GridUn * rhsg = 0; 441  rhsg = gul . `f ();hsg ! GridUnNULL ;hsg = gul. `xt () ) 442  ; g ! GridUnNULL ; g = `xt () ) 443 i(* g =* rhsg { g-> dex = idx ; ; } 445 gul . `tcuec ( rhmpcur ); 446 `tcuec ( tmpcur ); 447 } } 449  gGridUnLi :: $towr (cڡ GridUnLi & cgul , cڡ  p ) 451 GridUnLi & gul = (GridUnLi & cgul ; 452  cd * rhmpcur = gul . `cuec (); 453  cd * tmpcur = `cuec (); 455  GridUn * g = `f (); 456  GridUn * rhsg = 0; 457  rhsg = gul . `f ();hsg ! GridUnNULL ;hsg = gul. `xt () ) 458  ; g ! GridUnNULL ; g = `xt () ) 459 i(* g =* rhsg { g-> owr = p ; ; } 461 gul . `tcuec ( rhmpcur ); 462 `tcuec ( tmpcur ); 463 } } 476  gGridUnLi :: $vli ( GridUnLi & gul , cڡ  v ) 478 if(! gul . `imy ()gul. `emy (); 480  GridUn * tmpgu = `f (); 481 ; tmpgu ;tmpgu= `xt ()) { 482 i( tmpgu -> `guCڏs ( v )) { 483 GridUn :: `guSLevs (*( gul . `add (* tmpgu )), v ); 486 } } 488  gGridUnLi :: $vli ( GridUnLi & gul , 489 cڡ  mv , 490 cڡ  maxv ) 492 if(! gul . `imy ()gul. `emy (); 494  ev = 0; 495  ev = 0; 496  GridUn * tmpgu = `f (); 497 ; tmpgu ;tmpgu= `xt ()) { 498 ev = tmpgu -> `guFeLev (); 499 ev = tmpgu -> `guCrsLev (); 500 i( mv > ev || maxv < ev ) ; 501 i( maxv > ev ) { 502 GridUn :: `guSLevs (*( gul . `add (* tmpgu )), ev ); 504 i( maxv < ev ) { 505 GridUn :: `guSLevs (*( gul . `add (* tmpgu )), maxv ); 508 } } 510  gGridUnLi :: $vy ( GridUnLi **& vy , cڡ  vs ) 512 i(! vy ) { 513 vy = w GridUnLi *[ vs ]; 514  i =0;i< vs ;i++) 515 vy [ i ] = GridUnLiNULL ; 518  i =0;i< vs ;i++) 519 i( vy [ i ]vy[i]-> `emy (); 522  idx = 0; 523  GridUn * tmpgu = `f (); 524 ; tmpgu ;tmpgu= `xt ()) { 525  l = tmpgu -> ev ; 526 l <= tmpgu -> fev ;l+mpgu-> v ) { 527 idx = tmpgu -> `guLevIndex ( l ); 528 i(! vy [ idx ]) 529 vy [ idx ] = w `GridUnLi ( SimeBuckVoid :: `blks (),0); 530 GridUn :: `guSLevs (*( vy [ idx ]-> `add (* tmpgu )), l ); 533 } } 542  gGridUnLi :: $bboxlife ( BBoxLi & bbl , 543 cڡ  v ) 545 if(! bbl . `imy ()bbl. `emy (); 547  GridUn * tmpgu = `f (); 548 ; tmpgu ;tmpgu= `xt ()) { 549 i( tmpgu -> `guFeLev (= v ) 550 bbl . `add ( tmpgu -> `guBBox ()); 552 } } 554  gGridUnLi :: $bboxli ( BBoxLi & bbl , cڡ  v , 555 cڡ  ޭ ) 557 cڡ  extgh = 0; 558 if(! bbl . `imy ()bbl. `emy (); 560  GridUn * tmpgu = `f (); 561 ; tmpgu ;tmpgu= `xt ()) { 562 bbl . `add ( tmpgu -> `guBBox ( v , ޭ , extgh )); 564 } } 568  gGridUnLi :: $bboxli ( BBoxLi & bbl , cڡ  v , 569 cڡ  ޭ , cڡ  vid ) 572 cڡ  extgh = 0; 573 if(! bbl . `imy ()bbl. `emy (); 575  GridUn * tmpgu = `f (); 576 ; tmpgu ;tmpgu= `xt ()) { 577 i( tmpgu -> `guCڏs ( v )) 578 bbl . `add ( tmpgu -> `guBBoxAbs ( v - vid , ޭ , extgh )); 580 ( bbl . `add ())-> `my (); 583 } } 585  gGridUnLi :: $bboxli ( BBoxLi & bbl , cڡ  v , 586 cڡ * ޭ , cڡ  extgh ) 588 if(! bbl . `imy ()bbl. `emy (); 590 GridUn vgu ; 591  GridUn * tmpgu = `f (); 592 ; tmpgu ;tmpgu= `xt ()) { 593 bbl . `add ( tmpgu -> `guBBox ( v , ޭ , extgh )); 595 } } 599  gGridUnLi :: $bboxli ( BBoxLi & bbl , cڡ  v , 600 cڡ * ޭ , cڡ  vid , 601 cڡ  extgh ) 603 if(! bbl . `imy ()bbl. `emy (); 605 GridUn vgu ; 606  GridUn * tmpgu = `f (); 607 ; tmpgu ;tmpgu= `xt ()) { 608 i( tmpgu -> `guCڏs ( v )) 609 bbl . `add ( tmpgu -> `guBBoxAbs ( v - vid , ޭ , extgh )); 611 ( bbl . `add ())-> `my (); 614 } } 624 GridUnLi * gGridUnLi :: $fi (cڡ  v , cڡ  vs ) 626 GridUnLi * fgul = w GridUnitList; 628 GridUnLi vgul ; 629 `vli ( vgul , v ); 630  GridUn * vgu = 0; 632  vgu = vgul . `f ();vgu;vguevgul. `xt ()) { 633 GridUn :: `guSRefe (*( fgul -> `add (* vgu )), vs ); 635  fgul ; 636 } } 638 GridUnLi * gGridUnLi :: $fi ( BBoxLi cڡ & cbbli , 639 cڡ  v , 640 cڡ  mw ) 642 BBoxLi & bbli = (BBoxLi &) cbbli ; 643  cd * tmpcur = bbli . `cuec (); 645 GridUnLi * fgul = w GridUnitList; 647 GridUnLi vgul ; 648 `vli ( vgul , v ); 649  GridUn * vgu = 0; 651 BBox vbb ; 652  BBox * bb = 0; 654  vgu = vgul . `f ();vgu;vguevgul. `xt ()) { 655 vbb = vgu -> `guBBox ( v ); 656  bb = bbli . `f ();bb;bb=bbli. `xt ()) { 657 i(! bb -> `emy ()) { 658 BBox `i (* bb * vbb ); 659 i( i . `emy () ) { 661 i(* bb = vbb ) { 662 GridUn :: `guSRefe (*( fgul -> `add (* vgu ))); 663 vgul . `move (); 666 i( i = vbb ) { 667 GridUn :: `guSRefe (*( fgul -> `add (* vgu ))); 668 vgul . `move (); 674 i( i < vbb && 675 vgu -> `guExVue evgu-> `guCrsLev ()< mw ) { 676 GridUn :: `guSRefe (*( fgul -> `add (* vgu ))); 677 vgul . `move (); 679 BBox `sumbb (* bb + vbb ); 680 bb = bbli . ` ( sumbb ); 681 bbli . `ev (); 682 bbli . `move (); 683 bbli . `xt (); 689 i( i < vbb && 690 vgu -> `guExVue evgu-> `guCrsLev ()> mw ) { 691 vgul . `decompo (); 696 bbli . `tcuec ( tmpcur ); 697  fgul ; 698 } } 700  gGridUnLi :: $fhii ( BBoxLi cڡ & cbbli , 701 cڡ  v , 702 cڡ  mw ) 704 i( num == 0) ; 706 BBoxLi & bbli = (BBoxLi &) cbbli ; 707  cd * tmpcur = bbli . `cuec (); 709  GridUn * vgu = `f (); 710 #ifde DEBUG_PRINT 711 `as ( vgu ! GridUnNULL ); 713 cڡ  v = vgu -> `guLevSp (); 715 BBox vbb ; 716  BBox * bb = 0; 717  = 0; 718  vs = 0; 720 ; vgu ;vgu= `xt ()) { 721 i(( = vgu -> `guFeLev ()> v ) { 722 vgu -> `guCrn (( - v )/ v ); 723 = vgu -> `guFeLev (); 725 vs = 1 + ( v - )/ v ; 726 vbb = vgu -> `guBBox ( v ); 727  bb = bbli . `f ();bb;bb=bbli. `xt ()) { 728 i(! bb -> `emy ()) { 729 BBox `i (* bb * vbb ); 730 i( i . `emy () ) { 732 i(* bb = vbb ) { 733 `fe ( vs ); 736 i( i = vbb ) { 737 `fe ( vs ); 740 i( i < vbb && 741 ( vgu -> `guExVue ( v < mw || 742 vgu -> `guExAbsVue evgu-> mv < mw )) { 743 `fe ( vs ); 744 #ifde DEBUG_PRINT 745 comm_rvi :: `log () << "GridUnitList::refinethislist " 747 << * bb << " -> " << (*bb+ vbb ) 748 << dl << ush ; 751 BBox `sumbb (* bb + vbb ); 752 bb = bbli . ` ( sumbb ); 753 bbli . `ev (); 754 bbli . `move (); 755 bbli . `xt (); 758 i( i < vbb && 759 vgu -> `guExVue ( v > mw && 760 vgu -> `guExAbsVue evgu-> mv > mw ) { 761 `decompo (); 766 bbli . `tcuec ( tmpcur ); 767 } } 777  gGridUnLi :: $decompo (cڡ  v ) 779  GridUn * tmpgu = `cut (); 780 i( tmpgu = GridUnNULL ) ; 782  GridUn `gu (* tmpgu ); 784 cڡ  t = 785 ( tmpgu -> `guBaIndex ()). `GCdy ( v ); 787  i = t -1;i>=0;i--) { 788 GridUn :: `guSDecompo (*( ` ( gu )), v , i ); 789 `ev (); 791 `move (); 792 } } 802  gGridUnLi :: $ld (cڡ  ޭ ) 804  ld = 0; 805  cd * tmpcur = `cuec (); 806  GridUn * g = 0; 807  g = `f (); g ! GridUnNULL ; g = `xt () ) 808 { ld + g -> `guWk ( ޭ ); } 809 `tcuec ( tmpcur ); 810  ld ; 811 } } 813  gGridUnLi :: $ld (cڡ  v , cڡ  ޭ ) 815  ld = 0; 816  cd * tmpcur = `cuec (); 817  GridUn * g = 0; 818  g = `f (); g ! GridUnNULL ; g = `xt () ) 819 { ld + g -> `guWk ( v , ޭ ); } 820 `tcuec ( tmpcur ); 821  ld ; 822 } } 824  gGridUnLi :: $numems (cڡ  ޭ ) 826  gem = 0; 827  cd * tmpcur = `cuec (); 828  GridUn * g = 0; 829  g = `f (); g ! GridUnNULL ; g = `xt () ) 830 { gem + g -> `guNum ( ޭ ); } 831 `tcuec ( tmpcur ); 832  gem ; 833 } } 835  gGridUnLi :: $numems (cڡ  v , cڡ  ޭ ) 837  gem = 0; 838  cd * tmpcur = `cuec (); 839  GridUn * g = 0; 840  g = `f (); g ! GridUnNULL ; g = `xt () ) 841 { gem + g -> `guNum ( v , ޭ ); } 842 `tcuec ( tmpcur ); 843  gem ; 844 } } 846  gGridUnLi :: $ld (cڡ * ޭ ) 848  ld = 0; 849  cd * tmpcur = `cuec (); 850  GridUn * g = 0; 851  g = `f (); g ! GridUnNULL ; g = `xt () ) 852 { ld + g -> `guWk ( ޭ ); } 853 `tcuec ( tmpcur ); 854  ld ; 855 } } 857  gGridUnLi :: $ld (cڡ  v , cڡ * ޭ ) 859  ld = 0; 860  cd * tmpcur = `cuec (); 861  GridUn * g = 0; 862  g = `f (); g ! GridUnNULL ; g = `xt () ) 863 { ld + g -> `guWk ( v , ޭ ); } 864 `tcuec ( tmpcur ); 865  ld ; 866 } } 868  gGridUnLi :: $numems (cڡ * ޭ ) 870  gem = 0; 871  cd * tmpcur = `cuec (); 872  GridUn * g = 0; 873  g = `f (); g ! GridUnNULL ; g = `xt () ) 874 { gem + g -> `guNum ( ޭ ); } 875 `tcuec ( tmpcur ); 876  gem ; 877 } } 879  gGridUnLi :: $numems (cڡ  v , cڡ * ޭ ) 881  gem = 0; 882  cd * tmpcur = `cuec (); 883  GridUn * g = 0; 884  g = `f (); g ! GridUnNULL ; g = `xt () ) 885 { gem + g -> `guNum ( v , ޭ ); } 886 `tcuec ( tmpcur ); 887  gem ; 888 } } 890  gGridUnLi :: $vs () 892  vs = 0; 893  cd * tmpcur = `cuec (); 894  GridUn * g = `f (); 895 i( g vs = g-> `guLevs (); 896 `tcuec ( tmpcur ); 897  ( vs ); 898 } } 900  gGridUnLi :: $fe () 902  ev = 0; 903  cd * tmpcur = `cuec (); 904  GridUn * g = 0; 905  g = `f (); g ! GridUnNULL ; g = `xt () ) 906 { ev = ( g -> fev > flev) ? g->finelev : flev; } 907 `tcuec ( tmpcur ); 908  ( ev ); 909 } } 911  gGridUnLi :: $smˡ (cڡ  v ) 913 i( num =0 ACENu ; 914  cd * tmpcur = `cuec (); 915  GridUn * g = `f (); 916  xt = g -> `guExAbs ( v ); 917  e = 0; 918  ; g ! GridUnNULL ; g = `xt () ) 919 { xt = (( e = g -> `guExAbs ( v )) < sext) ? : sext; } 920 `tcuec ( tmpcur ); 921  ( xt ); 922 } } 924  gGridUnLi :: $highebav () 926  low ; 927  cd * tmpcur = `cuec (); 928  GridUn * g = `f (); 929 i( g low = g-> bav ; 930  ; g ! GridUnNULL ; g = `xt () ) 931 { i( g -> bav > low )ow = g->baselev; } 932 `tcuec ( tmpcur ); 933  ( low ); 934 } } 936 dMIndex gGridUnLi :: $lowe () 938 dMIndex low ; 939  cd * tmpcur = `cuec (); 940  GridUn * g = `f (); 941 i( g low = g-> badex ; 942  ; g ! GridUnNULL ; g = `xt () ) 943 { i( g -> badex < low )ow = g->baseindex; } 944 `tcuec ( tmpcur ); 945  ( low ); 946 } } 948 dMIndex gGridUnLi :: $lowe (cڡ  v , cڡ  owr , cڡ  dex ) 950 dMIndex low ; 951  cd * tmpcur = `cuec (); 952  GridUn * g = 0; 953  g = `f (); g ! GridUnNULL ; g = `xt () ) 954 i( g -> owr =owø&& g-> dex == index && 955 g -> `guCڏs ( v )) 956 { low = g -> badex ; ; } 957  ; g ! GridUnNULL ; g = `xt () ) 958 { i( g -> owr == owner && 959 g -> dex == index && 960 g -> `guCڏs ( v ) && 961 g -> badex < low )ow = g->baseindex; } 962 `tcuec ( tmpcur ); 963  ( low ); 964 } } 966  gGridUnLi :: $maxdex () 968 i( num =0 ACENu ; 969  cd * tmpcur = `cuec (); 970  GridUn * g = `f (); 971  mi = g -> dex ; 972  i = 0; 973  ; g ! GridUnNULL ; g = `xt () ) 974 { mi = (( i = g -> dex ) > mi) ? i : mi; } 975 `tcuec ( tmpcur ); 976  ( mi ); 977 } } 979  gGridUnLi :: $tdex () 981  idx = 0; 982  cd * tmpcur = `cuec (); 983  GridUn * g = 0; 984  idx = 0, g = `f (); g ! GridUnNULL ; idx++, g = `xt () ) 985 { g -> dex = idx ; } 986 `tcuec ( tmpcur ); 987 } } 989  gGridUnLi :: $tdex (cڡ  idx ) 991  cd * tmpcur = `cuec (); 992  GridUn * g = 0; 993  g = `f (); g ! GridUnNULL ; g = `xt () ) 994 { g -> dex = idx ; } 995 `tcuec ( tmpcur ); 996 } } 998  gGridUnLi :: $towr (cڡ  p ) 1000  cd * tmpcur = `cuec (); 1001  GridUn * g = 0; 1002  g = `f (); g ! GridUnNULL ; g = `xt () ) 1003 { g -> owr = p ; } 1004 `tcuec ( tmpcur ); 1005 } } 1007  gGridUnLi :: $tbbox () 1009  cd * tmpcur = `cuec (); 1010  GridUn * g = 0; 1011  g = `f (); g ! GridUnNULL ; g = `xt () ) 1012 { g -> `guSBBox (); } 1013 `tcuec ( tmpcur ); 1014 } } 1016  gGridUnLi :: $l ( GridUnLi & gul ) 1018 Buck < GridUn >:: `l ((Buck & gul ); 1019 gul . `ts (); 1020 num - gul .num; 1021 } } 1031 goam & gݔ << (oam& gos , cڡ gGridUnLi & gcgul ) 1033 i(& gcgul = GridUnLiNULL  os ; 1035 gGridUnLi & ggul = ( GridUnLi & cgul ; 1036  cd * gtmpcur = gul . cuec (); 1038 gos << "Num:" << ggul . gnum << " "; 1039 gos << "\n"; 1041 i( ggul . gnum =0 os ; 1043 GridUn * gg = 0; 1044 gos << * ggul . f (); 1045 gos << "\n**********************************\n"; 1047  ( gg = gul . xt ()! GridUnNULL ) { 1048 os << * g ; 1049 gos << "\n**********************************\n"; 1050 gos << gush ; 1053 ggul . tcuec ( tmpcur ); 1055  gos ; 1066 gofam & gݔ << (ofam& gofs , cڡ gGridUnLi & gcgul ) 1068 i(& gcgul = GridUnLiNULL  ofs ; 1070 gGridUnLi & ggul = ( GridUnLi & cgul ; 1071  cd * gtmpcur = gul . cuec (); 1073 gofs . wre ((*)& gul . num ,()); 1075 i( ggul . gnum =0 ofs ; 1077 GridUn * gg = 0; 1078  gg = gul . f (); g ! GridUnNULL ; g = gul. xt ()) 1079 ofs << * g ; 1081 ggul . tcuec ( tmpcur ); 1083  gofs ; 1086 gifam & gݔ >> (ifam& gifs , gGridUnLi & gcgul ) 1088 i(& gcgul = GridUnLiNULL  ifs ; 1090 gGridUnLi & ggul = ( GridUnLi & cgul ; 1091  cd * gtmpcur = gul . cuec (); 1093  gnum ; 1094 gifs . ad ((*)& num ,()); 1096 i( gnum =0 ifs ; 1098  GridUn * ggu = 0; 1099  gn =0;< gnum ;++) { 1100 ggu = gul . add (); 1101 gifs >> * ggu ; 1104 ggul . tcuec ( tmpcur ); 1106  gifs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/GridUnitList.h 1 #ide _uded_GridUnLi_h 2  #_uded_GridUnLi_h ) 25  ~"ACEDeus.h " 26  ~"ACEPams.h " 28  ~"BBoxLi.h " 29  ~"GridUn.h " 30  ~"BuckTy.h " 31  ~"ObjeCou.h " 33 #ide DefGridUnLiSize 34  #DefGridUnLiSize (128) ) 37  #GridUnLiNULL (( GridUnLi * NULL ) ) 43 ass gGridUnLi : public Buck < GridUn >,ubli gObjeCou 45 nd goam & gݔ <<(oam&, cڡ gGridUnLi &); 46 nd gofam & gݔ <<(ofam&, cڡ gGridUnLi &); 47 nd gifam & gݔ >>(ifam&, gGridUnLi &); 49  gnum ; 51 give : 52  le  cytyda ( GridUn * to , GridUn cڡ * om ) 53 { * gto = * om ; } 58 le  ts () 60 gnum = 0; 61  GridUn * gg = f ();g;g= xt () num ++; 64 gpublic : 68 GridUnLi () 69 : Buck < GridUn >( DefGridUnLiSize ), num (0) {} 73 GridUnLi (cڡ  maxnum , cڡ  dumg ) 74 : Buck < GridUn >( maxnum ), num (0) {} 76 GridUnLi (cڡ * ckage , cڡ  dumg ) 77 : Buck < GridUn >( ckage ), num (0{ ts (); } 79 GridUnLi (* ckage , cڡ  dumg ) 80 : Buck < GridUn >( ckage ), num (0{ ts (); } 82 GridUnLi (cڡ * ckage , cڡ  size , 83 cڡ  n ) 84 : Buck < GridUn >( ckage , gsize , gn ), num (0) 85 { ts (); } 87 GridUnLi (cڡ GridUnLi& h ) 88 : Buck < GridUn >( h ), num (other.num) {} 90 give : 91 GridUnLi (GridUnLi**& vy ); 93 gpublic : 97 GridUnLi & ݔ = (const GridUnitList&); 102 gle ~ GridUnLi () {} 107 le GridUnLi * s () 108 { (( gGridUnLi * gObjeCou :: s ()); } 113  gݔ -( GridUnLi cڡ & rhs ); 114  gݔ *( GridUnLi cڡ & rhs ); 115 GridUnLi * gݔ - (GridUnLi cڡ & grhs ); 116 GridUnLi * gݔ * (GridUnLi cڡ & grhs ); 117 GridUnLi * gݔ + (GridUnLi cڡ & grhs ); 122 gpublic : 123  ݔ *( BBox cڡ & rhs ); 124 give : 125 GridUnLi * ݔ * ( BBox cڡ & rhs ); 126 GridUnLi * gݔ * ( BBoxLi cڡ & grhs ); 131 gpublic : 132  r ( BBox cڡ & rhs , cڡ  v , GridUnLi & gul , 133 cڡ  ޭ , cڡ  extgh =0); 134  r ( BBoxLi cڡ & rhs , cڡ  v , GridUnLi & gul , 135 cڡ  ޭ , cڡ  extgh =0); 136  r ( BBox cڡ & rhs , cڡ  v , GridUnLi & gul , 137 cڡ * ޭ , cڡ  extgh =0); 138  r ( BBoxLi cڡ & rhs , cڡ  v , GridUnLi & gul , 139 cڡ * ޭ , cڡ  extgh =0); 144 gpublic : 145 le  imy (cڡ { ( num == 0); } 146 le  numb (cڡ { ( gnum ); } 148  ld (cڡ  ޭ ); 149  ld (cڡ  v , cڡ  ޭ ); 150  numems (cڡ  ޭ ); 151  numems (cڡ  v , cڡ  ޭ ); 153  ld (cڡ * ޭ ); 154  ld (cڡ  v , cڡ * ޭ ); 155  numems (cڡ * ޭ ); 156  numems (cڡ  v , cڡ * ޭ ); 158  vs (); 159  fe (); 160  smˡ (cڡ  v ); 161  highebav (); 162 dMIndex lowe (); 163 dMIndex lowe (cڡ  v , cڡ  owr , cڡ  dex ); 164  maxdex (); 169 give : 170  tdex (); 171  tdex (cڡ  idx ); 172  tdex (cڡ GridUnLi & cgul , cڡ  idx ); 173  tbbox (); 174 gpublic : 175  towr (cڡ  p ); 176  towr (cڡ GridUnLi & cgul , cڡ  p ); 180 le  emy () 181 { gBuck < gGridUn >:: emy (); gnum = 0; } 186 le GridUn * add () 187 { gnum ++;  ( gBuck < gGridUn >:: add ()); } 188 le GridUn * add (GridUn cڡ & gu ) 189 { gnum ++;  ( gBuck < gGridUn >:: add ( gu )); } 190 le GridUn * () 191 { gnum ++;  ( gBuck < gGridUn >:: ()); } 192 le GridUn * (GridUn cڡ & gu ) 193 { gnum ++;  ( gBuck < gGridUn >:: ( gu )); } 194 le  move () 195 { i( cut (){ gnum --; gBuck < gGridUn >:: move (); }} 200  l ( GridUnLi & gul ); 205  vy ( GridUnLi **& vy , cڡ  vs ); 210  vli ( GridUnLi & gul , 211 cڡ  v ); 212  vli ( GridUnLi & gul , 213 cڡ  mv , 214 cڡ  maxv ); 219 gpublic : 220  bboxlife ( BBoxLi & bbl , cڡ  v ); 221  bboxli ( BBoxLi & bbl , cڡ  v , cڡ  ޭ ); 223  bboxli ( BBoxLi & bbl , cڡ  v , cڡ  ޭ , 224 cڡ  vid ); 225  bboxli ( BBoxLi & bbl , cڡ  v , cڡ * ޭ , 226 cڡ  extgh ); 227  bboxli ( BBoxLi & bbl , cڡ  v , cڡ * ޭ , 228 cڡ  vid , cڡ  extgh ); 232 give : 233 GridUnLi * fi (cڡ  v , cڡ  vs =1); 238 give : 239 GridUnLi * fi ( BBoxLi cڡ & bbli , 240 cڡ  v , 241 cڡ  mw ); 243 gpublic : 244  fhii (cڡ BBoxLi & bbli , 245 cڡ  v , 246 cڡ  mw ); 251 give : 252 le  fe (cڡ  v = 1) 253 { ( cut ())-> guRefe ( v ); } 254 le  crn (cڡ  v = 1) 255 { ( cut ())-> guCrn ( v ); } 257 gpublic : 258  decompo (cڡ  v = 1); 268 goam & gݔ << (oam& gos , cڡ gGridUnLi & ggul ); 269 gofam & gݔ << (ofam& gofs , cڡ gGridUnLi & ggul ); 270 gifam & gݔ >> (ifam& gifs , gGridUnLi & ggul ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/IndexGridData1.h 1 #ide _uded_IndexGridDa1_h 2  #_uded_IndexGridDa1_h ) 17  ~"gic.h " 35 #ide f_1 36  #f_1 ( i , r , s ) { \ 37 cڡ  `me2 ( sgni , _L (( r ). `low (0) < 0) ? -1 : 1; \ 38 cڡ  `me2 ( ti , _L ((( r ). `low (0)+ame2( sgni ,_L)*( `s (0)-1)))/s(0))*s(0); \ 39 cڡ  `me2 ( i , _L ame2( ti ,_L)<( r ). `low (0))?ame2i,_L)- `s (0)):name2(ti,_L);\ 40 cڡ  `me2 ( i , _U ( r ). `u (0); \ 41 cڡ  `me2 ( si , _S ( `s (0)); \ 42  i = `me2 (i, _L ); i 14 gLi < gTy >::~ $Li () 16  hd !( LiIm < Ty > *) 0) 18 LiIm < Ty > * tmpem = hd ; 19 hd = hd-> xt ; 21 block . ` ( tmpem ); 23 } } 25 gme < ass gTy > 26  gLi < gTy >:: $emy () 28  hd !( LiIm < Ty > *) 0) 30 LiIm < Ty > * tmpem = hd ; 31 hd = hd-> xt ; 33 block . ` ( tmpem ); 35 n = 0; 36 hd = 0; 37 = 0; 38 } } 40 gme < ass gTy > 41  gLi < gTy >:: $add (cڡ Ty & t ) 43 LiIm < Ty > * em = `w ( block . `loc ()LiIm( t ); 44 i(! hd hd = em ; 45 i( 菞-> xt = em ; 46 = em ; 47 n ++; 48 } } 50 gme < ass gTy > 51  gLi < gTy >:: add (cڡ Li < Ty >& h ) 53  LiIm < Ty > * p = h . hd ; gp ; =-> xt ) 55 LiIm < Ty > * em = w ( block . loc ()LiIm( p ->item); 56 i(! ghd hd = em ; 57 i( g 菞-> gxt = em ; 58 g = em ; 59 gn ++; 63 gme < ass gTy > 64  gLi < gTy >:: $p ( ) 66 i( n > 0) 68 LiIm < Ty > * byebye = hd ; 69 hd = hd-> xt ; 70 i(! hd = 0; 72 block . ` ( byebye ); 73 n --; 75 } } 77 gme < ass gTy > 78  gLi < gTy >:: combe ( Li < Ty >& h ) 80 i( h . n > 0) 82 i( n == 0) 84 hd = h .head; 85 g = h . ; 86 gn = h . n ; 90 g -> gxt = h . hd ; 91 g = h . ; 92 gn + h . n ; 94 gh . gn = 0; 95 gh . ghd = 0; 96 gh . g = 0; 100 gme < ass gTy > 101  gLi < gTy >:: $y ( Ty **& y , & t ) const 103 `as (! y ); 104 t = n ; 105 i( t > 0) { 106 y = w Ty *[ t ]; 107  i = 0; 108 LiIm < Ty > * p = hd ; 109 ; i < t ; p -> xt ,i++) { 110 y [ i ] = w `Ty ( p -> em ); 113 } } 115 gme < ass gTy > 116  gLi < gTy >:: $y ( Ty *& y , & t ) const 118 `as (! y ); 119 t = n ; 120 i( t > 0) { 121 y = w Ty [ t ]; 122  i = 0; 123 LiIm < Ty > * p = hd ; 124 ; i < t ; p -> xt ,i++) { 125 y [ i ] = p -> em ; 128 } } 130 gme < ass gTy > 131  gLi < gTy >:: move ( LiIm < Ty >*& pi , LiIm*& li ) 133 i( gli = hd p (); 135 gpi -> gxt = li -> xt ; 136 gblock . ( li ); 137 i(! gpi -> gxt g = pi ; 138 gn --; 140 gli = pi ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/List.h 1 #ide _uded_Li_h 2  #_uded_Li_h ) 13 #ifde DEC_ALPHA 14  ~ 16  ~ 17  ~"Aoc.h " 19  ~"ACEDeus.h " 21 #ide LiImsAtATime 22  #LiImsAtATime (32) ) 25 gme < ass gTy > cs gLi ; 27 gme < ass gTy > 28 as cLiIm 30 Ty mem ; 31 #i( defed ( _VCPP || defed( VCPP || $defed ( E10K )) 32 LiIm < Ty > * xt ; 34 ass LiIm < Ty > * xt ; 37 le $LiIm (cڡ Ty & t : `em ), `xt (0) { } 38 le * ݔ $w ( size_t size , * buf {  buf; } } 43 nd ass gLi < gTy >; 46 gme < ass gTy > 47 as cLi 49 Aoc mblock ; 51  mn ; 52 mLiIm < mTy > * mhd ; 53 mLiIm < mTy > * m ; 55 mive : 56  ݔ = (cڡ Li < Ty >&); 57 Li (cڡ Li< Ty >&); 59 mpublic : 60 le $Li (: `block (( LiIm < Ty >), LiImsAtATime ), 61 `n (0), `hd (0), ` (0) { } 62 le $Li (cڡ  t ) 63 : `block (( LiIm < Ty >), t ), 64 `n (0), `hd (0), ` (0{ } } 65 le  $numb (cڡ { ( n ); } } 66 le  $imy (cڡ { ( n =0); } } 67 ~ Li (); 70  add (cڡ Ty & t ); 71  add (cڡ Li < Ty >& h ); 72  combe ( Li < Ty >& h ); 73  p (); 74  emy (); 75 le cڡ gTy & $f (cڡ { ( hd -> em ); } } 76  $y ( Ty **& y , & t ) const; 77  $y ( Ty *& y , & t ) const; 78 le  $t ({ n = 0; hd = 0; = 0; } } 81 le gLiIm < gTy > * $Hd (cڡ { ( hd ); } } 82 le gLiIm < gTy > * $Ta (cڡ { ( ); } } 83 le gLiIm < gTy > * Next ( LiIm < Ty > * liem ) const 84 {  ( ( gliem ?iem-> gxt : hd ); } 85 le gTy & Im ( LiIm < Ty > * liem ) const 86 {  ( ( gliem ?iem-> gem : hd -> em ); } 89  move ( LiIm < Ty >*& pi , LiIm*& li ); 92 #i defed ( Wt_c_fes ) 93  ~"Li.c " 96 #ide ACELiLo 97  #ACELiLo ( li , em , Ty ) { \ 98 Li < Ty >& l = li ; \ 99 LiIm < Ty > * li = 0; \ 100 LiIm < Ty > * pi = 0; \ 101  li =( li ). `Hd ();li; pi i,li=i). `Next (li)) { \ 102 ( em &( li ). `Im ( li ); ) 104  #ACELiD (( l ). `move ( pi , li ); ) 105  #ACEEndLo } } ) 108 #ide DAGHLiLo 109  #DAGHLiLo ( li , em , Ty ) { \ 110 Li < Ty >& l = li ; \ 111 LiIm < Ty > * li = 0; \ 112 LiIm < Ty > * pi = 0; \ 113  li =( li ). `Hd ();li; pi i,li=i). `Next (li)) { \ 114 ( em &( li ). `Im ( li ); ) 116  #DAGHLiD (( l ). `move ( pi , li ); ) 117  #DAGHEndLo } } ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ListDum.cpp 10  ~"Li.h " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ObjectCounter.h 1 #ide _uded_ObjeCou_h 2  #_uded_ObjeCou_h ) 29 as cObjeCou 31  mns ; 32 mpublic : 33 le $ObjeCou (: `ns (1) { } 34 le ObjeCou * $s ({ ns ++; ( this ); } } 35 le  $ ({ i(-- ns =0 de this ; } } 37 le gvtu ~ $ObjeCou ({ } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/OldAMRIO.c 1  ~ 2  ~ 3  ~ 4  ~ 6 #i defed ( IO_NCSAIO )||defed( IO_OLDNCSA ) 8  ~"hdf.h " 9 #ifde HDF4 10  ~"mfhdf.h " 12  ~"tcdf.h " 15  schunk { 16  mcompڒame [128]; 17  mpid ; 18  mv ; 19  mcompڒt ; 20  mtime ; 21  mndims ; 22  mdims [3]; 23  mlb [3]; 24  mub [3]; 25  mtٮbys ; 26 } tchunk ; 28  sfeID { 29  mcompڒame [128]; 30  mfame [256]; 31 t32 mid ; 32  feID * mxt ; 33 } tfeID ; 35  feID * gfes = NULL ; 36  gdt =-1, gcmdpt =-1; 38 feID * $NewFeID (* me ) { 39 feID * id =(feID *) `oc ((fileID),1); 40 `ry ( id -> compڒame , me ); 41 `ry ( id -> fame , me ); 42 `rt ( id -> fame ,".hdf"); 46 id ->id= `SDt (id-> fame , DFACC_CREATE ); 48 id -> xt = fes ; 49 fes = id ; 50  id ; 51 } } 53 feID * $fdIDbyCompڒt (* me ) { 54 feID * id ; 55  id = fes ;id!= NULL ;id=id-> xt ) 56 if(! `rcmp ( me , id -> compڒame )) 58  id ; 59 } } 61 feID * $fdIDbyFame (* me ) { 62 feID * id ; 63  id = fes ;id!= NULL ;id=id-> xt ) 64 if(! `rcmp ( me , id -> fame )) 66  id ; 67 } } 70  $FizeIO () 73  fes ){ 75 `SDd ( fes -> id ); 76 fes =fes-> xt ; 78 } } 80  $FlushIO (* compڒame ) 82 feID * id ; 84  id = fes ;id!= NULL ;id=id-> xt ) 85 if(! `rcmp ( compڒame , id ->componentname)) { 86 `SDd ( id ->id); 87 id ->id = `SDt (id-> fame , DFACC_RDWR ); 89 } } 91  WreChunkFlt (* compڒame , 92  pid , 93  v , 94  compڒt , 95  time , 96  ndims , 97  dims [3], 98  lb [3], 99  ub [3], 100  tٮbys , 101 * da ) 104  gb [128], guns [128]; 105 t32 gride [3]={1,1,1}; 106 t32 gig [3]={0,0,0}; 107 t32 gsds_id , gid ; 108  gtmp ; 110 feID * gfe = fdIDbyCompڒt ( compڒame ); 112 t32 gtmpdims [3]; 113 gtmpdims [0] = dims [0]; 114 gtmpdims [1] = dims [1]; 115 gtmpdims [2] = dims [2]; 117 if(! gfe ) { 118 gfe = NewFeID ( compڒame ); 120 gsds_id = SD ( fe -> id , compڒame , DFNT_FLOAT32 , ndims , tmpdims ); 121 rtf ( b ,"Proc %u: Level=%u Component=%u Timestep=%u\0", 122 pid , v , compڒt , time ); 123 rtf ( uns ,"lb[%u][%u][%u] ub[%u][%u][%u]\0", 124 lb [0],lb[1],lb[2], 125 ub [0],ub[1],ub[2]); 128 SDtdars ( sds_id , b , uns , NULL ,NULL); 129 i( SDwreda ( sds_id , ig , ride , tmpdims ,( VOIDP ) da )) { 130 tf ("E iSDwredf %s\n", compڒame ); 132 i( SDdacss ( sds_id )) { 133 tf ("E iSDdacsf %s\n", compڒame ); 137  WreChunkDoub (* compڒame , 138  pid , 139  v , 140  compڒt , 141  time , 142  ndims , 143  dims [3], 144  lb [3], 145  ub [3], 146  tٮbys , 147 * da ) 150  gb [128], guns [128]; 151 t32 gride [3]={1,1,1}; 152 t32 gig [3]={0,0,0}; 153 t32 gsds_id , gid ; 154  gtmp ; 156 feID * gfe = fdIDbyCompڒt ( compڒame ); 158 t32 gtmpdims [3]; 159 gtmpdims [0] = dims [0]; 160 gtmpdims [1] = dims [1]; 161 gtmpdims [2] = dims [2]; 163 if(! gfe ) { 164 gfe = NewFeID ( compڒame ); 166 gsds_id = SD ( fe -> id , compڒame , DFNT_FLOAT64 , ndims , tmpdims ); 167 rtf ( b ,"Proc %u: Level=%u Component=%u Timestep=%u\0", 168 pid , v , compڒt , time ); 169 rtf ( uns ,"lb[%u][%u][%u] ub[%u][%u][%u]\0", 170 lb [0],lb[1],lb[2], 171 ub [0],ub[1],ub[2]); 174 SDtdars ( sds_id , b , uns , NULL ,NULL); 175 i( SDwreda ( sds_id , ig , ride , tmpdims ,( VOIDP ) da )) { 176 tf ("E iSDwredf %s\n", compڒame ); 178 i( SDdacss ( sds_id )) { 179 tf ("E iSDdacsf %s\n", compڒame ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/PackedDataBucketVoid.cpp 8  ~"PackedDaBuckVoid.h " 10 #ifde DEBUG_PRINT_DBKT 11  ~"CommSv.h " 14 gDaBuckVoid :: $DaBuckVoid (cڡ hsize , cڡ dsize ) 15 : `hdsize (0), `dasize (0), `t (1), `hs (0), `ds (0), `bkt (0) 17 hs = w [1]; 18 ds = w [1]; 20 #ifde DEBUG_PRINT_DBKT_MEMORY 21 ACEMemyT :: `loc (()*1); 22 ACEMemyT :: `loc (()*1); 25 hdsize = hsize + ( dbkthdr ); 26  ign = (( hdsize > 8) ? 16 : ((headsize > 4) ? 8 : 4)); 27 hdsize = (hdsize+ ign -1) & (~(align-1)); 28 hs [0] = 0; 30 ign = (( dsize > 8) ? 16 : ((dsize > 4) ? 8 : 4)); 31 dasize = ( dsize + ign -1) & (~(align-1)); 32 ds [0] = hdsize ; 34 * chunk ; 35 `as (( chunk = w [ hdsize + dasize ]) != (*) 0); 37 #ifde DEBUG_PRINT_DBKT_MEMORY 38 ACEMemyT :: `loc (()*( hdsize + dasize )); 41 bkt = ( dcd * chunk ; 42 bkt -> hd . hdsize = headsize; 43 bkt -> hd . dasize = datasize; 44 bkt -> hd . t = cnt; 46 #ifde DEBUG_PRINT_DBKT 47 comm_rvi :: `log () << "\n************* Grid Data Bucket *************\n" 48 << "C: " << t << " " 49 << "HSize: " << hdsize << " " 50 << "DSize: " << dasize << " " 51 << "\n" ). `ush (); 52  db_i =0;db_i< t ;db_i++) { 53 comm_rvi :: `log (<< "[" << hs [ db_i ] << " , " << ds [db_i] << "]\n"); 55 comm_rvi :: `log () << "\n************* ***************** *************\n" 56 ). `ush (); 58 } } 60 gDaBuckVoid :: $DaBuckVoid (* hsize , * dsize , cڡ n ) 61 : `hdsize (0), `dasize (0), `t ( n ), `hs (0), `ds (0), `bkt (0) 63 hs = w [ t ]; 64 ds = w [ t ]; 66 #ifde DEBUG_PRINT_DBKT_MEMORY 67 ACEMemyT :: `loc (()* t ); 68 ACEMemyT :: `loc (()* t ); 71  h = 0, d = 0; 72  s = ( dbkthdr ); 73  a = 0; 74  i ; 75  i =0;i< t ;i++) { 76 hs [ i ] = hdsize + dasize ; 78 h = hsize [ i ] + s ; 79 a = (( h > 8) ? 16 : ((h > 4) ? 8 : 4)); 80 h = (h+ a -1) & (~(a-1)); 81 hdsize + h ; 83 ds [ i ] = hdsize + dasize ; 85 a = (( dsize [ i ] > 8) ? 16 : ((dsize[i] > 4) ? 8 : 4)); 86 d = ( dsize [ i ]+ a -1) & (~(a-1)); 87 dasize + d ; 89 hsize [ i ] = h ; 90 dsize [ i ] = d ; 93 * chunk ; 94 `as (( chunk = w [ hdsize + dasize ]) != (*) 0); 96 #ifde DEBUG_PRINT_DBKT_MEMORY 97 ACEMemyT :: `loc (()*( hdsize + dasize )); 100 bkt = ( dcd * chunk ; 102  i =0;i< t ;i++) { 103 (( dcd *)((*)( bkt )+ hs [ i ]))-> hd . hdsize = hsize [i]; 104 (( dcd *)((*)( bkt )+ hs [ i ]))-> hd . dasize = dsize [i]; 105 (( dcd *)((*)( bkt )+ hs [ i ]))-> hd . t = cnt; 107 #ifde DEBUG_PRINT_DBKT 108 comm_rvi :: `log () << "\n************* Grid Data Bucket *************\n" 109 << "C: " << t << " " 110 << "HSize: " << hdsize << " " 111 << "DSize: " << dasize << " " 112 << "\n" ). `ush (); 113  db_i =0;db_i< t ;db_i++) { 114 comm_rvi :: `log (<< "[" << hs [ db_i ] << " , " << ds [db_i] << "]\n"); 116 comm_rvi :: `log () << "\n************* ***************** *************\n" 117 ). `ush (); 119 } } 121 gDaBuckVoid :: $DaBuckVoid ( hsize , * dsize , cڡ n ) 122 : `hdsize (0), `dasize (0), `t ( n ), `hs (0), `ds (0), `bkt (0) 124 hs = w [ t ]; 125 ds = w [ t ]; 127 #ifde DEBUG_PRINT_DBKT_MEMORY 128 ACEMemyT :: `loc (()* t ); 129 ACEMemyT :: `loc (()* t ); 132  h = 0, d = 0; 133  s = ( dbkthdr ); 134  a = 0; 136 h = hsize + s ; 137 a = (( h > 8) ? 16 : ((h > 4) ? 8 : 4)); 138 h = (h+ a -1) & (~(a-1)); 139 hsize = h ; 141  i ; 142  i =0;i< t ;i++) { 143 hs [ i ] = hdsize + dasize ; 145 hdsize + h ; 147 ds [ i ] = hdsize + dasize ; 149 a = (( dsize [ i ] > 8) ? 16 : ((dsize[i] > 4) ? 8 : 4)); 150 d = ( dsize [ i ]+ a -1) & (~(a-1)); 151 dasize + d ; 153 dsize [ i ] = d ; 156 * chunk ; 157 `as (( chunk = w [ hdsize + dasize ]) != (*) 0); 159 #ifde DEBUG_PRINT_DBKT_MEMORY 160 ACEMemyT :: `loc (()*( hdsize + dasize )); 163 bkt = ( dcd * chunk ; 165  i =0;i< t ;i++) { 166 (( dcd *)((*)( bkt )+ hs [ i ]))-> hd . hdsize = hsize ; 167 (( dcd *)((*)( bkt )+ hs [ i ]))-> hd . dasize = dsize [i]; 168 (( dcd *)((*)( bkt )+ hs [ i ]))-> hd . t = cnt; 170 #ifde DEBUG_PRINT_DBKT 171 comm_rvi :: `log () << "\n************* Grid Data Bucket *************\n" 172 << "C: " << t << " " 173 << "HSize: " << hdsize << " " 174 << "DSize: " << dasize << " " 175 << "\n" ). `ush (); 176  db_i =0;db_i< t ;db_i++) { 177 comm_rvi :: `log (<< "[" << hs [ db_i ] << " , " << ds [db_i] << "]\n"); 179 comm_rvi :: `log () << "\n************* ***************** *************\n" 180 ). `ush (); 182 } } 184 gDaBuckVoid :: $DaBuckVoid ( dcd cڡ * ckage ) 185 : `hdsize (0), `dasize (0), `t (0), `hs (0), `ds (0), `bkt (0) 187 t = ckage -> hd .cnt; 188 hs = w [ t ]; 189 ds = w [ t ]; 191 #ifde DEBUG_PRINT_DBKT_MEMORY 192 ACEMemyT :: `loc (()* t ); 193 ACEMemyT :: `loc (()* t ); 196  i ; 197  i =0;i< t ;i++) { 198 hs [ i ] = hdsize + dasize ; 199 hdsize +(( dcd *)((*)( ckage )+ hs [ i ]))-> hd .headsize; 200 ds [ i ] = hdsize + dasize ; 201 dasize +(( dcd *)((*)( ckage )+ hs [ i ]))-> hd .datasize; 204 * nchunk , * ochunk ; 205 ochunk = (* ckage ; 206 `as (( nchunk = w [ hdsize + dasize ]) != (*) 0); 208 #ifde DEBUG_PRINT_DBKT_MEMORY 209 ACEMemyT :: `loc (()*( hdsize + dasize )); 215 `memy ((*) nchunk , (*) ochunk , hdsize + dasize ); 217 bkt = ( dcd * nchunk ; 218 #ifde DEBUG_PRINT_DBKT 219 comm_rvi :: `log () << "\n************* Grid Data Bucket *************\n" 220 << "C: " << t << " " 221 << "HSize: " << hdsize << " " 222 << "DSize: " << dasize << " " 223 << "\n" ). `ush (); 224  db_i =0;db_i< t ;db_i++) { 225 comm_rvi :: `log (<< "[" << hs [ db_i ] << " , " << ds [db_i] << "]\n"); 227 comm_rvi :: `log () << "\n************* ***************** *************\n" 228 ). `ush (); 230 } } 232 gDaBuckVoid :: $DaBuckVoid ( dcd * ckage ) 233 : `hdsize (0), `dasize (0), `t (0), `hs (0), `ds (0), `bkt (0) 235 t = ckage -> hd .cnt; 236 hs = w [ t ]; 237 ds = w [ t ]; 239 #ifde DEBUG_PRINT_DBKT_MEMORY 240 ACEMemyT :: `loc (()* t ); 241 ACEMemyT :: `loc (()* t ); 244  i =0;i< t ;i++) { 245 hs [ i ] = hdsize + dasize ; 246 hdsize +(( dcd *)((*)( ckage )+ hs [ i ]))-> hd .headsize; 247 ds [ i ] = hdsize + dasize ; 248 dasize +(( dcd *)((*)( ckage )+ hs [ i ]))-> hd .datasize; 251 #ifde DEBUG_PRINT_DBKT_MEMORY 252 ACEMemyT :: `loc (()*( hdsize + dasize )); 255 bkt = ckage ; 256 #ifde DEBUG_PRINT_DBKT 257 comm_rvi :: `log () << "\n************* Grid Data Bucket *************\n" 258 << "C: " << t << " " 259 << "HSize: " << hdsize << " " 260 << "DSize: " << dasize << " " 261 << "\n" ). `ush (); 262  db_i =0;db_i< t ;db_i++) { 263 comm_rvi :: `log (<< "[" << hs [ db_i ] << " , " << ds [db_i] << "]\n"); 265 comm_rvi :: `log () << "\n************* ***************** *************\n" 266 ). `ush (); 268 } } 270 gDaBuckVoid :: $DaBuckVoid ( dcd cڡ * ckage , cڡ n ) 271 : `hdsize (0), `dasize (0), `t (0), `hs (0), `ds (0), `bkt (0) 273 `as ( n < ckage -> hd . t ); 275 t = 1; 276 hs = w [1]; 277 ds = w [1]; 279 #ifde DEBUG_PRINT_DBKT_MEMORY 280 ACEMemyT :: `loc (()*1); 281 ACEMemyT :: `loc (()*1); 284  hoff = 0; 285  i ; 286  i =0;i< n ;i++) { 287 hdsize = (( dcd *)((*)( ckage )+ hoff ))-> hd .headsize; 288 dasize = (( dcd *)((*)( ckage )+ hoff ))-> hd .datasize; 289 hoff +( hdsize + dasize ); 291 hdsize = (( dcd *)((*)( ckage )+ hoff ))-> hd .headsize; 292 dasize = (( dcd *)((*)( ckage )+ hoff ))-> hd .datasize; 294 hs [0] = 0; 295 ds [0] = hdsize ; 297 * nchunk , * ochunk ; 298 ochunk = (*((*)( ckage )+ hoff ); 299 `as (( nchunk = w [ hdsize + dasize ]) != (*) 0); 301 #ifde DEBUG_PRINT_DBKT_MEMORY 302 ACEMemyT :: `loc (()*( hdsize + dasize )); 307 `memy ((*) nchunk , (*) ochunk , hdsize + dasize ); 309 bkt = ( dcd * nchunk ; 310 bkt -> hd . t = cnt; 312 #ifde DEBUG_PRINT_DBKT 313 comm_rvi :: `log () << "\n************* Grid Data Bucket *************\n" 314 << "C: " << t << " " 315 << "HSize: " << hdsize << " " 316 << "DSize: " << dasize << " " 317 << "\n" ). `ush (); 318  db_i =0;db_i< t ;db_i++) { 319 comm_rvi :: `log (<< "[" << hs [ db_i ] << " , " << ds [db_i] << "]\n"); 321 comm_rvi :: `log () << "\n************* ***************** *************\n" 322 ). `ush (); 324 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/PackedDataBucketVoid.h 1 #ide _uded_PackedDaBuckVoid_h 2  #_uded_PackedDaBuckVoid_h ) 11  ~ 12  ~ 13  ~ 14 usg mea gd ; 16 #ifde DEBUG_PRINT_DBKT_MEMORY 17  ~"ACEMemyT.h " 20  sdbkthdr 21 {  mhdsize ;  mdasize ;  mt ; }; 23  sdbkthdrda 25  mhdsize ;  mdasize ;  mt ; 26  mda [1]; 29  udcd 31  dbkthdr mhd ; 32  dbkthdrda mc ; 35 as cDaBuckVoid 37  mhdsize ; 38  mdasize ; 39  mt ; 40 * mhs ; 41 * mds ; 42  dcd * mbkt ; 44 mive : 45 DaBuckVoid (const DataBucketVoid&); 46  mݔ = (cڡ DaBuckVoid &); 48 mpublic : 49 le $DaBuckVoid () 50 : `hdsize (0), `dasize (0), `t (0), `hs (0), `ds (0), `bkt (0) {} 52 `DaBuckVoid (cڡ hsize , cڡ dsize ); 53 `DaBuckVoid (* hsize , * dsize , cڡ n ); 54 `DaBuckVoid ( hsize , * dsize , cڡ n ); 55 `DaBuckVoid ( dcd cڡ * ckage ); 56 `DaBuckVoid ( dcd * ckage ); 57 `DaBuckVoid ( dcd cڡ * ckage , cڡ n ); 59 le ~ $DaBuckVoid () 62 #ifde DEBUG_PRINT_DBKT_MEMORY 63 ACEMemyT :: ` (()* t ); 64 ACEMemyT :: ` (()* t ); 65 ACEMemyT :: ` (()*( hdsize + dasize )); 68 i( hs de [] hs; 69 i( ds de [] ds; 70 i( bkt de [] ((*)bkt); 71 } } 73 le  $num () const 74 {  ( t ); } } 75 le  $num () 76 {  ( t ); } } 78 le * $hd () 79 {  ((*(( dcd *)((*)( bkt )+ hs [0]))-> c . da ); } } 80 le cڡ * $hd () const 81 {  ((*(( dcd *)((*)( bkt )+ hs [0]))-> c . da ); } } 83 le * $hd (cڡ i ) 84 { `as ( i < t ); 85  ((*(( dcd *)((*)( bkt )+ hs [ i ]))-> c . da ); } } 86 le cڡ * $hd (cڡ i ) const 87 { `as ( i < t ); 88  ((*(( dcd *)((*)( bkt )+ hs [ i ]))-> c . da ); } } 90 le * $da () 91 {  ((*((*)( bkt )+ ds [0])); } } 92 le cڡ * $da () const 93 {  ((*((*)( bkt )+ ds [0])); } } 95 le * $da (cڡ i ) 96 { `as ( i < t ); 97  ((*((*)( bkt )+ ds [ i ])); } } 98 le cڡ * $da (cڡ i ) const 99 { `as ( i < t ); 100  ((*((*)( bkt )+ ds [ i ])); } } 102 le * $ck (& size ) 103 { size = hdsize + dasize ; ((* bkt ); } } 104 le  $ck (*& ckage , & size ) 105 { size = hdsize + dasize ; ckage = (* bkt ; } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/PackedGridDataBucket.cpp 8  ~"PackedGridDaBuck.h " 11 ggdhdr :: $gdhdr ( gdhdr & h ) 12 : `ty ( h . ty ), `owr (h. owr ), 13 `gfid ( h . gfid ), `gfdy (h. gfdy ), 14 `gfaggty ( h . gfaggty ), 15 `bbox ( h . bbox ), `nems (h. nems ), 16 `time ( h . time ), `v (h. v ), 17 `dex ( h . dex ), `em (h. em ), 18 `idt ( h . idt ), $badex ( h . badex ) 20 `y ( game , h .game, ACEBktGFNameWidth -1); 21 game [ ACEBktGFNameWidth -1] = '\0'; 22 } } 24 ggdhdr :: $gdhdr (cڡ BBox & bb , 25 cڡ  nm , 26 cڡ  gf , 27 cڡ  g , 28 cڡ  gfs , 29 cڡ * g , 30 cڡ  t , 31 cڡ  l , 32 cڡ  idx , 33 cڡ  m , 34 cڡ  who , 35 cڡ dMIndex & bdex , 36 cڡ  which , 37 cڡ  bky ) 38 : `ty ( bky ), `owr ( who ), 39 `gfid ( gf ), `gfdy ( g ), `gfaggty ( gfs ), 40 `bbox ( bb ), `nems ( nm ), 41 `time ( t ), `v ( l ), `dex ( idx ), `em ( m ), 42 `idt ( which ), $badex ( bdex ) 44 `y ( game , g , ACEBktGFNameWidth -1); 45 game [ ACEBktGFNameWidth -1] = '\0'; 46 } } 48 ggdhdr :: $gdhdr (cڡ BBox & bb , 49 cڡ  nm , 50 cڡ  gf , 51 cڡ  g , 52 cڡ  gfs , 53 cڡ * g , 54 cڡ  t , 55 cڡ  l , 56 cڡ  idx , 57 cڡ  m , 58 cڡ  who , 59 cڡ  which , 60 cڡ  bky ) 61 : `ty ( bky ), `owr ( who ), 62 `gfid ( gf ), `gfdy ( g ), `gfaggty ( gfs ), 63 `bbox ( bb ), `nems ( nm ), 64 `time ( t ), `v ( l ), `dex ( idx ), `em ( m ), 65 $idt ( which ) 69 `y ( game , g , ACEBktGFNameWidth -1); 70 game [ ACEBktGFNameWidth -1] = '\0'; 71 } } 73  ggdhdr :: $gdbsize (cڡ  dsize ) 75  hsize = ( gdhdr + ( dbkthdr ); 76  ign = (( hsize > 8) ? 16 : ((hsize > 4) ? 8 : 4)); 77  hdsize = ( hsize + ign -1) & (~(align-1)); 79 ign = (( dsize > 8) ? 16 : ((dsize > 4) ? 8 : 4)); 80  dasize = ( dsize + ign -1) & (~(align-1)); 82  ( hdsize + dasize ); 83 } } 86 gGridDaBuckVoid :: $GridDaBuckVoid (cڡ BBox & bb , 87 cڡ  nm , 88 cڡ  gf , 89 cڡ  time , 90 cڡ  v , 91 cڡ  dex , 92 cڡ  m , 93 cڡ  who , 94 cڡ dMIndex & bdex , 95 cڡ  dasize , 96 cڡ  idt , 97 cڡ  ty ) 98 : `bky ( ty ), `DaBuckVoid (( gdhdr ), nm * dasize * bb . $size ()) 100  gdhdr * gdh = (gdhd* DaBuckVoid :: `hd (); 101 gdh -> ty = bky ; 102 gdh -> owr = ( who ; 103 gdh -> gfid = ( gf ; 104 gdh -> gfdy = ACENu ; 105 gdh -> gfaggty = ACENu ; 106 gdh -> game [0] = '\0'; 107 gdh -> bbox = bb ; 108 gdh -> nems = nm ; 109 gdh -> time =ime; 110 gdh -> v =evel; 111 gdh -> dex = index; 112 gdh -> em = m ; 113 gdh -> idt = ident; 114 gdh -> badex = bdex ; 115 } } 117 gGridDaBuckVoid :: $GridDaBuckVoid (cڡ BBox & bb , 118 cڡ  nm , 119 cڡ  gf , 120 cڡ  gfdty , 121 cڡ  gfy , 122 cڡ * game , 123 cڡ  time , 124 cڡ  v , 125 cڡ  dex , 126 cڡ  m , 127 cڡ  who , 128 cڡ dMIndex & bdex , 129 cڡ  dasize , 130 cڡ  idt , 131 cڡ  ty ) 132 : `bky ( ty ), `DaBuckVoid (( gdhdr ), nm * dasize * bb . $size ()) 134  gdhdr * gdh = (gdhd* DaBuckVoid :: `hd (); 135 gdh -> ty = bky ; 136 gdh -> owr = ( who ; 137 gdh -> gfid = ( gf ; 138 gdh -> gfdy = gfdty ; 139 gdh -> gfaggty = gfy ; 140 `y ( gdh -> game ,game, ACEBktGFNameWidth -1); 141 gdh -> game [ ACEBktGFNameWidth -1] = '\0'; 142 gdh -> bbox = bb ; 143 gdh -> nems = nm ; 144 gdh -> time =ime; 145 gdh -> v =evel; 146 gdh -> dex = index; 147 gdh -> em = m ; 148 gdh -> idt = ident; 149 gdh -> badex = bdex ; 150 } } 152 gGridDaBuckVoid :: $GridDaBuckVoid (cڡ  gdhdr & h , 153 cڡ  dasize ) 154 : `bky ( h . ty ), `DaBuckVoid (( gdhdr ), 155 h . nems * dasize *h. bbox . $size ()) 157  gdhdr * gdh = (gdhd* DaBuckVoid :: `hd (); 158 gdh -> ty = h .type; 159 gdh -> owr = h .owner; 160 gdh -> gfid = h .gfid; 161 gdh -> gfdy = h .gfdatatype; 162 gdh -> gfaggty = h .gfstaggertype; 163 `y ( gdh -> game , h .game, ACEBktGFNameWidth -1); 164 gdh -> game [ ACEBktGFNameWidth -1] = '\0'; 165 gdh -> bbox = h .bbox; 166 gdh -> nems = h .nitems; 167 gdh -> time = h .time; 168 gdh -> v = h .level; 169 gdh -> dex = h .index; 170 gdh -> em = h .item; 171 gdh -> idt = h .ident; 172 gdh -> badex = h .baseindex; 173 } } 175  gGridDaBuckVoid :: $add (cڡ BBox & bb , 176 cڡ  nm , 177 cڡ  gf , 178 cڡ  time , 179 cڡ  v , 180 cڡ  dex , 181 cڡ  m , 182 cڡ  who , 183 cڡ  idt , 184 cڡ  n ) 186 dMIndex bi ; 187  gdhdr * gdh = (gdhd* DaBuckVoid :: `hd ( n ); 188 gdh -> ty = bky ; 189 gdh -> owr = ( who ; 190 gdh -> gfid = ( gf ; 191 gdh -> gfdy = ACENu ; 192 gdh -> gfaggty = ACENu ; 193 gdh -> game [0] = '\0'; 194 gdh -> bbox = bb ; 195 gdh -> nems = nm ; 196 gdh -> time =ime; 197 gdh -> v =evel; 198 gdh -> dex = index; 199 gdh -> em = m ; 200 gdh -> idt = ident; 201 gdh -> badex = bi ; 202 } } 204  gGridDaBuckVoid :: $add (cڡ BBox & bb , 205 cڡ  nm , 206 cڡ  gf , 207 cڡ  time , 208 cڡ  v , 209 cڡ  dex , 210 cڡ  m , 211 cڡ  who , 212 cڡ dMIndex & bdex , 213 cڡ  idt , 214 cڡ  n ) 216  gdhdr * gdh = (gdhd* DaBuckVoid :: `hd ( n ); 217 gdh -> ty = bky ; 218 gdh -> owr = ( who ; 219 gdh -> gfid = ( gf ; 220 gdh -> gfdy = ACENu ; 221 gdh -> gfaggty = ACENu ; 222 gdh -> game [0] = '\0'; 223 gdh -> bbox = bb ; 224 gdh -> nems = nm ; 225 gdh -> time =ime; 226 gdh -> v =evel; 227 gdh -> dex = index; 228 gdh -> em = m ; 229 gdh -> idt = ident; 230 gdh -> badex = bdex ; 231 } } 233  gGridDaBuckVoid :: $add (cڡ BBox & bb , 234 cڡ  nm , 235 cڡ  gf , 236 cڡ  gfdty , 237 cڡ  gfy , 238 cڡ * game , 239 cڡ  time , 240 cڡ  v , 241 cڡ  dex , 242 cڡ  m , 243 cڡ  who , 244 cڡ dMIndex & bdex , 245 cڡ  idt , 246 cڡ  n ) 248  gdhdr * gdh = (gdhd* DaBuckVoid :: `hd ( n ); 249 gdh -> ty = bky ; 250 gdh -> owr = ( who ; 251 gdh -> gfid = ( gf ; 252 gdh -> gfdy = gfdty ; 253 gdh -> gfaggty = gfy ; 254 `y ( gdh -> game ,game, ACEBktGFNameWidth -1); 255 gdh -> game [ ACEBktGFNameWidth -1] = '\0'; 256 gdh -> bbox = bb ; 257 gdh -> nems = nm ; 258 gdh -> time =ime; 259 gdh -> v =evel; 260 gdh -> dex = index; 261 gdh -> em = m ; 262 gdh -> idt = ident; 263 gdh -> badex = bdex ; 264 } } 266 goam & gݔ << (oam& gos , cڡ  ggdhdr & ghdr ) 269 i(& ghdr =( gdhdr *) NULL  os ; 271 gos << "[Ty:" << ghdr . gty << "]"; 272 gos << "[Owr:" << ghdr . gowr << "]"; 273 gos << "[GFid:" << ghdr . ggfid << "]"; 274 gos << "[" << ghdr . ggfdy << "]"; 275 gos << "[" << ghdr . ggfaggty << "]"; 276 gos << "[" << ghdr . ggame << "]"; 277 gos << "[Time:" << ghdr . gtime << "]"; 278 gos << "[Lev:" << ghdr . gv << "]"; 279 gos << "[Index:" << ghdr . gdex << "]"; 280 gos << "[Idt:" << ghdr . gidt << "]"; 281 gos << "[Im:" << ghdr . gem << "]"; 283 gos << "[BBox:" << ghdr . gbbox << "]"; 284 gos << "[NIms:" << ghdr . gnems << "]"; 286 gos << "[BaIndex:" << ghdr . gbadex << "]"; 288  gos ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/PackedGridDataBucket.h 1 #ide _uded_PackedGridDaBuck_h 2  #_uded_PackedGridDaBuck_h ) 11  ~"ACEPams.h " 12  ~"ACEDeus.h " 14  ~"ACESfc.h " 15  ~"BBox.h " 17  ~"PackedDaBuckVoid.h " 18  ~"ObjeCou.h " 21  #ACESg (1) ) 22  #ACEPacked (2) ) 24 #ide ACEBktGFNameWidth 25  #ACEBktGFNameWidth (8) ) 28  sgdhdr 30 nd moam & mݔ << (oam& mos , cڡ  mgdhdr & mhdr ); 32  mty ; 33  mowr ; 34  mgfid ; 35  mgfdy ; 36  mgfaggty ; 37  mgame [ ACEBktGFNameWidth ]; 38 BBox mbbox ; 39  mnems ; 40  mtime ; 41  mv ; 42  mdex ; 43  mem ; 44  midt ; 45 dMIndex mbadex ; 47 le gdhdr () {}; 48 gdhdr (gdhdr& h ); 50 gdhdr (cڡ BBox & bb , 51 cڡ  nm , 52 cڡ  gf , 53 cڡ  g , 54 cڡ  gfs , 55 cڡ * g , 56 cڡ  t , 57 cڡ  l , 58 cڡ  dex , 59 cڡ  m , 60 cڡ  who , 61 cڡ dMIndex & bdex , 62 cڡ  which , 63 cڡ  ty ); 65 gdhdr (cڡ BBox & bb , 66 cڡ  nm , 67 cڡ  gf , 68 cڡ  g , 69 cڡ  gfs , 70 cڡ * g , 71 cڡ  t , 72 cڡ  l , 73 cڡ  dex , 74 cڡ  m , 75 cڡ  who , 76 cڡ  which , cڡ  ty ); 78  gdbsize (cڡ  dsize ); 81  #GridDaBuckVoidNULL (( GridDaBuckVoid *) NULL ) ) 83 ass gGridDaBuckVoid : public DaBuckVoid ,ubli gObjeCou 85  gbky ; 87 give : 88 GridDaBuckVoid (const GridDataBucketVoid&); 89  gݔ = (cڡ GridDaBuckVoid &); 91 gpublic : 92 le GridDaBuckVoid * s () 93 { (( GridDaBuckVoid * ObjeCou :: s ()); } 95 GridDaBuckVoid (cڡ BBox & bb , 96 cڡ  nm , 97 cڡ  gf , 98 cڡ  time , 99 cڡ  v , 100 cڡ  dex , 101 cڡ  m , 102 cڡ  who , 103 cڡ dMIndex & bdex , 104 cڡ  dasize , 105 cڡ  idt , 106 cڡ  ty ); 108 GridDaBuckVoid (cڡ BBox & bb , 109 cڡ  nm , 110 cڡ  gf , 111 cڡ  gfdty , 112 cڡ  gfy , 113 cڡ * game , 114 cڡ  time , 115 cڡ  v , 116 cڡ  dex , 117 cڡ  m , 118 cڡ  who , 119 cڡ dMIndex & bdex , 120 cڡ  dasize , 121 cڡ  idt , 122 cڡ  ty ); 124 le GridDaBuckVoid (cڡ  n , 125 * dsizes , 126 cڡ  ty ) 127 : bky ( ty ), DaBuckVoid (( gdhdr ), dsizes , n ) {} 129  add (cڡ BBox & bb , 130 cڡ  nm , 131 cڡ  gf , 132 cڡ  time , 133 cڡ  v , 134 cڡ  dex , 135 cڡ  m , 136 cڡ  who , 137 cڡ  idt , 138 cڡ  n ); 140  add (cڡ BBox & bb , 141 cڡ  nm , 142 cڡ  gf , 143 cڡ  time , 144 cڡ  v , 145 cڡ  dex , 146 cڡ  m , 147 cڡ  who , 148 cڡ dMIndex & bdex , 149 cڡ  idt , 150 cڡ  n ); 152  add (cڡ BBox & bb , 153 cڡ  nm , 154 cڡ  gf , 155 cڡ  gfdty , 156 cڡ  gfy , 157 cڡ * game , 158 cڡ  time , 159 cڡ  v , 160 cڡ  dex , 161 cڡ  m , 162 cڡ  who , 163 cڡ dMIndex & bdex , 164 cڡ  idt , 165 cڡ  n ); 167 le GridDaBuckVoid (cڡ * ckage ) 168 : DaBuckVoid ((cڡ  dcd * ckage ) 169 { bky = (( gdhdr * DaBuckVoid :: hd ())-> ty ; } 171 le GridDaBuckVoid (* ckage ) 172 : DaBuckVoid (( dcd * ckage ) 173 { bky = (( gdhdr * DaBuckVoid :: hd ())-> ty ; } 175 le GridDaBuckVoid (cڡ * ckage , cڡ  n ) 176 : DaBuckVoid ((cڡ  dcd * ckage , n ) 177 { gbky = (( gdhdr * DaBuckVoid :: hd ())-> ty = ACESg ; } 179 GridDaBuckVoid (cڡ  gdhdr & h , cڡ  dasize ); 181 le  ty (cڡ {  ( gbky ); } 183 le  gdhdr * hd () 184 {  ( ( ggdhdr * gDaBuckVoid :: hd () ); } 185 le  gdhdr * hd (cڡ  i ) 186 {  ( ( ggdhdr * gDaBuckVoid :: hd ( i ) ); } 188 le BBox cڡ & bbox () const 189 {  ((( ggdhdr * gDaBuckVoid :: hd ())-> bbox ); } 190 le BBox cڡ & bbox (cڡ  i ) const 191 {  ((( ggdhdr * gDaBuckVoid :: hd ( i ))-> bbox ); } 193 le  nems () const 194 {  ((( ggdhdr * gDaBuckVoid :: hd ())-> nems ); } 195 le  nems (cڡ  i ) const 196 {  ((( ggdhdr * gDaBuckVoid :: hd ( i ))-> nems ); } 198 le  owr () const 199 {  ((( ggdhdr * gDaBuckVoid :: hd ())-> owr ); } 200 le  owr (cڡ  i ) const 201 {  ((( ggdhdr * gDaBuckVoid :: hd ( i ))-> owr ); } 203 le  time () const 204 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> time ); } 205 le  time (cڡ  i ) const 206 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> time ); } 208 le  v () const 209 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> v ); } 210 le  v (cڡ  i ) const 211 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> v ); } 213 le  dex () const 214 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> dex ); } 215 le  dex (cڡ  i ) const 216 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> dex ); } 218 le  em () const 219 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> em ); } 220 le  em (cڡ  i ) const 221 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> em ); } 223 le  idt () const 224 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> idt ); } 225 le  idt (cڡ  i ) const 226 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> idt ); } 228 le  gfid () const 229 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> gfid ); } 230 le  gfid (cڡ  i ) const 231 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> gfid ); } 233 le  gfdy () const 234 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> gfdy ); } 235 le  gfdy (cڡ  i ) const 236 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> gfdy ); } 238 le  gfaggty () const 239 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> gfaggty ); } 240 le  gfaggty (cڡ  i ) const 241 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> gfaggty ); } 243 le * game () const 244 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> game ); } 245 le * game (cڡ  i ) const 246 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> game ); } 248 le  tgame (cڡ * me ) const 249 { y ((( gdhdr *) DaBuckVoid :: hd ())-> game , 250 me , ACEBktGFNameWidth -1); } 251 le  tgame (cڡ * me , cڡ  i ) const 252 { y ((( gdhdr *) DaBuckVoid :: hd ( i ))-> game , 253 me , ACEBktGFNameWidth -1); } 255 le dMIndex cڡ & badex () const 256 {  ( (( ggdhdr * gDaBuckVoid :: hd ())-> badex ); } 257 le dMIndex cڡ & badex (cڡ  i ) const 258 {  ( (( ggdhdr * gDaBuckVoid :: hd ( i ))-> badex ); } 261 gme < ass gTy > 262 as cGridDaBuck : public GridDaBuckVoid 264 ive : 265 GridDaBuck (cڡ GridDaBuck< Ty >&); 266  mݔ = (cڡ GridDaBuck < Ty >&); 268 mpublic : 269 le $GridDaBuck (cڡ BBox & bb , 270 cڡ  nm , 271 cڡ  gf , 272 cڡ  time , 273 cڡ  v , 274 cڡ  dex , 275 cڡ  m , 276 cڡ  who , 277 cڡ dMIndex & bdex , 278 cڡ  idt = ACE_Ma , 279 cڡ  ty = ACESg ) 280 : `GridDaBuckVoid ( bb , nm , gf , 281 time , v , dex , m , 282 who , bdex , ( Ty ), idt , ty ) {} 284 le $GridDaBuck (cڡ BBox & bb , 285 cڡ  nm , 286 cڡ  gf , 287 cڡ  gfdty , 288 cڡ  gfy , 289 cڡ * game , 290 cڡ  time , 291 cڡ  v , 292 cڡ  dex , 293 cڡ  m , 294 cڡ  who , 295 cڡ dMIndex & bdex , 296 cڡ  idt = ACE_Ma , 297 cڡ  ty = ACESg ) 298 : `GridDaBuckVoid ( bb , nm , gf , gfdty , gfy , game , 299 time , v , dex , m , 300 who , bdex , ( Ty ), idt , ty { } } 302 le $GridDaBuck (cڡ * ckage ) 303 : $GridDaBuckVoid ( ckage { } } 305 le $GridDaBuck (* ckage ) 306 : $GridDaBuckVoid ( ckage { } } 308 le $GridDaBuck (cڡ * ckage , cڡ  n ) 309 : $GridDaBuckVoid ( ckage , n { } } 311 le $GridDaBuck (cڡ  n , * dsizes , 312 cڡ  ty ) 313 : $GridDaBuckVoid ( n , dsizes , ty { } } 315 le Ty cڡ * $da () const 316 {  ( ( Ty * DaBuckVoid :: `da (); } } 317 le Ty * $da () 318 {  ( ( Ty * DaBuckVoid :: `da (); } } 320 le Ty cڡ * $da (cڡ  i ) const 321 {  ( ( Ty * DaBuckVoid :: `da ( i ); } } 322 le Ty * $da (cڡ  i ) 323 {  ( ( Ty * DaBuckVoid :: `da ( i ); } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/PeanoHilbert.cpp 17  ~"PnoHbt.h " 33  gPnoHbt :: $phGy (cڡ  v ) 35  tmp = `sfcGDig ( v ); 36 tmp ^=(tmp>>1); 37 `sfcSDig ( v , tmp ); 39  tmp ; 40 } } 42  gPnoHbt :: $phGv (cڡ  v ) 44  tmp = `sfcGDig ( v ); 45  tmp1 = tmp ; 46  tmp1 > 0 ) { 47 tmp1 >>= 1 ; 48 tmp ^ tmp1 ; 50 `sfcSDig ( v , tmp ); 52  tmp ; 53 } } 68  gPnoHbt :: $Invt (* cods , cڡ  dex ) 70 `sfcSIndex ( dex ); 71 `Invt ( cods ); 72 } } 88  gPnoHbt :: $Invt (* cods , cڡ  dex , 89 cڡ  idxv ) 91 `sfcSIndex ( dex , idxv ); 92 `Invt ( cods ); 93 } } 110  gPnoHbt :: $Invt (* cods , cڡ  dex , 111 cڡ  idxv , cڡ  ev ) 113 `sfcSIndex ( dex , idxv , ev ); 114 `Invt ( cods ); 115 } } 129  gPnoHbt :: $RetBa (cڡ  v , cڡ  ex ) 131 #ifde DEBUG_PRINT 132 `as ( ex >0 && v >ex &&ev < sfevs ); 135  i = v - ex +1;i<= sfevs ;i++) 136 `sfcSDig ( i ,()0); 138 } } 155  gPnoHbt :: $phOr (cڡ  v , cڡ  pos ) 158 #ifde DEBUG_PRINT 159 `as ( sfcdim <= 3); 162  sfcdim ) 167  pos ) 170 `phR٩e ( v ,1,2); 175 `phR٩e ( v ,1,2); 176 `phTne ( v ,1); 177 `phSwD ( v ,2); 184  pos ) 187 `phR٩e ( v ,1,3); 190 `phR٩e ( v ,1,2); 193 `phTne ( v ,2); 194 `phTne ( v ,3); 197 `phR٩e ( v ,1,3); 198 `phTne ( v ,1); 199 `phSwD ( v ,3); 202 `phR٩e ( v ,1,2); 203 `phTne ( v ,1); 204 `phSwD ( v ,2); 211 } } 225  gPnoHbt :: $M (cڡ * cods ) 228  cmax = `GDimMax ( sfevs ); 229  i , j ; 230 #ifde DEBUG_PRINT 231  i =0;i< sfcdim ;i++) 232 `as ( cods [ i ] < cmax ); 238  ph_pos = -1; 240 `sfcCeLocNum ( cods ); 242  i =1;i<= sfevs ;i++) { 243  j = i ;j<= sfevs ;j++) 244 `phOr ( j , ph_pos ); 246 ph_pos = `sfcGDig ( i ); 247 `phGv ( i ); 249 } } 264  gPnoHbt :: $Invt (* cods ) const 267 #ifde DEBUG_PRINT 268 `as ( cods != 0); 272 PnoHbt `phtmp (* this ); 274  i , j ; 275  i = sfevs ;i>0;i--) 276 phtmp . `phGy ( i ); 278  i = sfevs ;i>0;i--) 279  j = i -1;j>0;j--) 280 phtmp . `phOr ( i ,phtmp. `sfcGDig ( j )); 282 phtmp . `sfcGCods ( cods ); 284 } } 304 PnoHbt * gPnoHbt :: $GBox (cڡ  v , cڡ  ev ) const 307 #ifde DEBUG_PRINT 308 `as ( ev >0 && v >ev &&ev < sfevs ); 309 `as ( sfcdim <= 3); 312 PnoHbt * phtmp = w `PnoHbt (* this ); 314 if( ev =0 phtmp ; 316  i ; 317  sfcdim ) 330 phtmp -> `sfcSDig ( v - ev +1,5); 331  i = v - ev +2;i<=lev;i++) 332 phtmp -> `sfcSDig ( i ,1); 341  i = v - ev +1;i<=lev;i++) 342 phtmp -> `sfcSDig ( i ,2); 347  i = v - ev +1;i<=lev;i++) 348 phtmp -> `sfcMaxDig ( i ); 353  phtmp ; 354 } } 356  gPnoHbt :: $SBox (cڡ  v , cڡ  ev ) 359 #ifde DEBUG_PRINT 360 `as ( ev >0 && v >ev &&ev < sfevs ); 361 `as ( sfcdim <= 3); 364 if( ev == 0) ; 366  i ; 367  sfcdim ) 370 sfcIndex :: `sfcSDig ( v - ev +1,5); 371  i = v - ev +2;i0 && v >ev &&ev < sfevs ); 408 PnoHbt * phtmp = w `PnoHbt (* this ); 410 if( ev =0 phtmp ; 412  i = v - ev +1;i<=lev;i++) 413 phtmp -> `sfcMaxDig ( i ); 415  phtmp ; 416 } } 418  gPnoHbt :: $SMax (cڡ  v , cڡ  ev ) 420 #ifde DEBUG_PRINT 421 `as ( ev >0 && v >ev &&ev < sfevs ); 423 if( ev == 0) ; 424  i ; 425  i = v - ev +1;i 0 &&ev < sfevs ); 448  h = `GDimCdy ( v ); 450 `Invt ( cods ); 452  i =0;i< sfcdim ;i++) { 453 cods [ i ] = (cods[i]/ h )*h; 456 } } 458 * gPnoHbt :: $GCods (cڡ  v ) const 460 #ifde DEBUG_PRINT 461 `as ( v > 0 &&ev < sfevs ); 464  h = `GDimCdy ( v ); 465 * cods = w [ sfcdim ]; 467 `Invt ( cods ); 469  i =0;i< sfcdim ;i++ cods [i] = (cods[i]/ h )*h; 471  ( cods ); 472 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/PeanoHilbert.h 1 #ide _uded_PnoHbt_h 2  #_uded_PnoHbt_h ) 21  ~"sfcIndex.h " 23 #ide PnoHibtBa 24  #PnoHibtBa (2) ) 27 as cPnoHbt : public sfcIndex 30 public : 33 le $PnoHbt () 34 : $sfcIndex () {} 37 le $PnoHbt (cڡ  dim , cڡ  vs ) 38 : $sfcIndex ( dim , vs , PnoHibtBa ) 39 { `as ( dim <=3); } } 42 le $PnoHbt ( PnoHbt cڡ & h ) 43 : `sfcIndex (( sfcIndex cڡ &) h { } } 46 ive : 47  $Invt (* cods ) const; 49 public : 50 le  $SIndex (cڡ  dex , cڡ  idxv ) 51 { `sfcSIndex ( dex , idxv ); } } 52 le  $SIndex (cڡ  dex , cڡ  idxv , 53 cڡ  ev ) 54 { `sfcSIndex ( dex , idxv , ev ); } } 56  M (cڡ * cods ); 57  Invt (* cods , cڡ  dex ); 58  Invt (* cods , cڡ  dex , cڡ  idxv ); 59  Invt (* cods , cڡ  dex , 60 cڡ  idxv , cڡ  ev ); 64 PnoHbt * $GBox (cڡ  v , cڡ  ev ) const; 65  `SBox (cڡ  v , cڡ  ev ); 69 PnoHbt * $GMax (cڡ  v , cڡ  ev ) const; 70  `SMax (cڡ  v , cڡ  ev ); 73  `RetBa (cڡ  v , cڡ  ev ); 76  `GCods (* cods , cڡ  v = 1) const; 77 * `GCods (cڡ  v = 1) const; 80 le  $GCdy (cڡ  dim , cڡ  v ) const 81 { ()1<<( v * dim ); } } 82 le  $GCdy (cڡ  v ) const 83 { ()1<<( v * sfcdim ); } } 86 le  $GDimCdy (cڡ  v ) const 87 { ()1<<( sfevs - v ); } } 90 le  $GDimMax (cڡ  v ) const 91 { ((()1<< v )-1)*(()1<<( sfevs -v)); } } 93 give : 120 le  $phSwD (cڡ  v , cڡ  axis ) 121 { `sfcToggDigWd ( v , axis -1); } } 122 le  $phTne (cڡ  v , cڡ  axis ) 123 { `sfcToggDigWd ( v , axis -1); } } 124 le  $phR٩e (cڡ  v , cڡ  om_axis , 125 cڡ  to_axis ) 126 { `sfcSwDigWd ( v , om_axis -1, to_axis -1); } } 128  phOr (cڡ  v , cڡ  pos ); 129  phGy (cڡ  v ); 130  phGv (cڡ  v ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/SimpleBucketVoid.cpp 8  ~"SimeBuckVoid.h " 10  #MINALLOC (1) ) 12  le  $max (cڡ  a , cڡ  b ) 13 { (( a > b ? : b); } } 15 gbkt :: $bkt (cڡ blksize , cڡ nblks ) 16 : `hd (0) 18 * chunk , * d ; 19 `as (( chunk = w [ blksize * nblks ]) != (*) 0); 21 #ifde DEBUG_PRINT_BKT_MEMORY 22 ACEMemyT :: `loc (()* blksize * nblks ); 25 d = chunk +( nblks -1)* blksize ; 27 * p = chunk ; 30 (( cd * p )-> bhdr . blksize = blksize; 31 (( cd * p )-> bhdr . nblks =blks; 32 (( cd * p )-> bhdr . hdoff = () 1; 33 (( cd * p )-> bhdr . off = NuRec ; 34 (( cd * p )-> bhdr . off = 1; 35 (( cd * p )-> bhdr . t = 0; 38 p + blksize ; 41  i = 1; 42 ; p < d ; + blksize , i ++) { 43 (( cd * p )-> hdr . mysize = 0; 44 (( cd * p )-> hdr . myoff = ( i ; 45 (( cd * p )-> hdr . noff = ( i +1; 46 (( cd * p )-> hdr . poff = ( i -1; 47 (( cd * p )-> hdr . hd = ( por chunk ; 48 (( cd * p )-> lk . xt = ( i +1; 50 (( cd * d )-> hdr . mysize = 0; 51 (( cd * d )-> hdr . myoff = ( i ; 52 (( cd * d )-> hdr . noff = NuRec ; 53 (( cd * d )-> hdr . poff = ( i -1; 54 (( cd * d )-> hdr . hd = ( por chunk ; 55 (( cd * d )-> lk . xt = NuRec ; 58 hd = ( cd * chunk ; 59 } } 61 gbkt :: $bkt ( bkt cڡ & h ) 62 : `hd (0) 64  bsize = h . hd -> bhdr . blksize ; 65  nb = h . hd -> bhdr . nblks ; 67 * ochunk , * nchunk , * d ; 68 `as (( nchunk = w [ bsize * nb ]) != (*) 0); 70 #ifde DEBUG_PRINT_BKT_MEMORY 71 ACEMemyT :: `loc (()* bsize * nb ); 74 d = nchunk +( nb -1)* bsize ; 75 ochunk = (* h . hd ; 79 `memy ((*) nchunk , (*) ochunk , nb * bsize ); 81 * p = (*( nchunk + bsize ); 83 ; p < d ; + bsize ) { 84 (( cd * p )-> hdr . hd = ( por nchunk ; 86 (( cd * d )-> hdr . hd = ( por nchunk ; 88 hd = ( cd * nchunk ; 89 } } 91 gbkt :: $bkt ( cd cڡ * hdr ) 92 : `hd (0) 94  bsize = hdr -> bhdr . blksize ; 95  nb = hdr -> bhdr . nblks ; 97 * ochunk , * nchunk , * d ; 98 `as (( nchunk = w [ bsize * nb ]) != (*) 0); 100 #ifde DEBUG_PRINT_BKT_MEMORY 101 ACEMemyT :: `loc (()* bsize * nb ); 104 d = nchunk +( nb -1)* bsize ; 105 ochunk = (* hdr ; 109 `memy ((*) nchunk , (*) ochunk , nb * bsize ); 111 * p = (*( nchunk + bsize ); 113 ; p < d ; + bsize ) { 114 (( cd * p )-> hdr . hd = ( por nchunk ; 116 (( cd * d )-> hdr . hd = ( por nchunk ; 118 hd = ( cd * nchunk ; 119 } } 121 gbkt :: $bkt ( cd * hdr ) 122 : `hd (0) 124  nb = hdr -> bhdr . nblks ; 125  bsize = hdr -> bhdr . blksize ; 128 * chunk = (* hdr ; 130 #ifde DEBUG_PRINT_BKT_MEMORY 131 ACEMemyT :: `loc (()* bsize * nb ); 134 * d = chunk +( nb -1)* bsize ; 135 * p = (*( chunk + bsize ); 138 ; p < d ; + bsize ) 139 { (( cd * p )-> hdr . hd = ( por chunk ; } 140 (( cd * d )-> hdr . hd = ( por chunk ; 143 hd = ( cd * chunk ; 144 } } 146 gSimeBuckVoid :: $SimeBuckVoid (cڡ size , 147 cڡ num ) 148 : `blksize (0), `nblks (0), `bk (0), `off (0) 150 `as ( num < FuBkt ); 155 cڡ  block = `max (( cd ), 156 ( size + ( chdr ))); 159 cڡ  ign = (( size > 8) ? 16 : ((size > 4) ? 8 : 4)); 160 blksize = ( block + ign -1) & (~(align-1)); 163 nblks = 1 + `max ( num , MINALLOC ); 165 bk = w  `bkt ( blksize , nblks ); 166 off = 1; 167 } } 169 gSimeBuckVoid :: $SimeBuckVoid ( SimeBuckVoid cڡ & h ) 170 : `blksize (0), `nblks (0), `bk (0), `off (0) 172 bk = w  `bkt (* h .bktptr); 173 blksize = h .blksize; 174 nblks = h .nblks; 175 off = h .freeoff; 176 } } 178 gSimeBuckVoid :: $SimeBuckVoid ( cd cڡ * hdr ) 179 : `blksize (0), `nblks (0), `bk (0), `off (0) 181 blksize = hdr -> bhdr .blksize; 182 nblks = hdr -> bhdr .nblks; 183 bk = w  `bkt ( hdr ); 184 off = ( bk -> hd -> bhdr .freeoff; 185 } } 187 gSimeBuckVoid :: $SimeBuckVoid ( cd cڡ * hdr , 188 cڡ size , cڡ n ) 189 : `blksize (0), `nblks (0), `bk (0), `off (0) 191 blksize = hdr -> bhdr .blksize; 192 nblks = hdr -> bhdr .nblks; 193 bk = w  `bkt ( hdr ); 194 off = ( bk -> hd -> bhdr .freeoff; 196  i =1; i< n ;i++) { 197  cd * nhdr = (cd *)((cڡ *)( hdr )+ i * size ); 198  bsize = nhdr -> bhdr . blksize ; 199  cd * c = 200 ( cd *((*)( nhdr )+( bsize *nhdr-> bhdr . hdoff )); 201  j =0; j< nhdr -> bhdr . t ; j++) { 202  cd * wc = `addc ((cd *) c ); 203 c = ( cd *((*)( nhdr )+( bsize *c-> hdr . noff )); 206 } } 208 gSimeBuckVoid :: $SimeBuckVoid ( cd * hdr ) 209 : `blksize (0), `nblks (0), `bk (0), `off (0) 211 blksize = hdr -> bhdr .blksize; 212 nblks = hdr -> bhdr .nblks; 213 bk = w  `bkt ( hdr ); 214 off = ( bk -> hd -> bhdr .freeoff; 215 } } 217  gSimeBuckVoid :: $locbkt (cڡ ) 219  bkt * b = w  `bkt ( blksize , nblks + ); 220  cd * = `bktGHdRec ( bk -> hd ); 221 ; ;= `xec r) `bkddc ( b -> hd ,tr); 222 off = `bktGoff ( b -> hd ); 223 de bk ; 224 bk = b ; 225 nblks =blks+ ; 226 } } 228  cd * gSimeBuckVoid :: $bkddc ( cd * bhd ) 230 `as ( `bktGoff ( bhd ! NuRec ); 232  cd * c = `bktGFeRec ( bhd ); 233 `bktSoff ( bhd , c -> hdr . myoff ); 234 `bktSoff ( bhd , c -> lk . xt ); 235 `bktInt ( bhd ); 236 c -> hdr . mysize = 1; 237 ( c ); 238 } } 240  gSimeBuckVoid :: $bkdd ( cd * bhd , cd * c ) 242 i(( c -> lk . noff =ec->lk. xt = `bktGoff ( bhd )! NuRec ) { 243  cd * = `bktGFeRec ( bhd ); 244 i(( c -> lk . poff = -> hdr .poff! NuRec ) 245 ( `cPvRec ( ))-> hdr . noff = c -> lk . myoff ; 246 -> hdr . poff = c -> lk . myoff ; 248 `bktSoff ( bhd , c -> hdr . myoff ); 249 c -> hdr . mysize = 0; 250 `bktDet ( bhd ); 251 } } 253  cd * gSimeBuckVoid :: $addc () 255 i( off = NuRec `locbkt (); 257  cd * hd = bk -> hd ; 258  cd * c = `bktGFeRec ( hd ); 259 `bktSoff ( hd , c -> hdr . myoff ); 260 `bktSoff ( hd , c -> lk . xt ); 261 `bktInt ( hd ); 262 c -> hdr . mysize = 1; 264 off = c -> lk . xt ; 266 `as ( c != 0); 267 ( c ); 268 } } 270  cd * gSimeBuckVoid :: $c ( cd *& a ) 273 i( a = `c (|| `cou () == 0) 274 {  ( `addc () ); } 276  cd * c = 0; 278 i( off = NuRec ) { 279  bkt * b = w  `bkt ( blksize , nblks + DefInemt ); 280 `as ( b != 0); 281  cd * = `bktGHdRec ( bk -> hd ); 282 i( a =0 c = `bkddc ( b -> hd ); 283  cd * tmec = 0; 284 ; ;= `xec (tr)) { 285 tmec = `bkddc ( b -> hd , ); 286 i( = a ) { 287 `as ( c == 0); 288 c = `bkddc ( b -> hd ); 289 a = tmec ; 292 i( c =0 `bkddc ( b -> hd ); 293 off = `bktGoff ( b -> hd ); 294 de bk ; 295 bk = b ; 296 nblks =blks+ DefInemt ; 297 `as ( c != 0); 298  ( c ); 301 c = `addc (); 303 if( c -> hdr . poff ! NuRec ) 304 ( `cPvRec ( c ))-> hdr . noff =ec->hdr.noff; 305 if( c -> hdr . noff ! NuRec ) 306 ( `cNextRec ( c ))-> hdr . poff =ec->hdr.poff; 308 `bktSoff ( bk -> hd , c -> hdr . poff ); 310 if a ! cdNULL ) { 311 c -> hdr . poff = a ->hdr. myoff ; 312 c -> hdr . noff = a ->hdr.noff; 313 if( a -> hdr . noff ! NuRec ) 314 ( `cNextRec ( a ))-> hdr . poff = c ->hdr. myoff ; 315 a -> hdr . noff = c ->hdr. myoff ; 318  cd * hc = `hdc (); 319 c -> hdr . poff = 0; 320 c -> hdr . noff = hc ->hdr. myoff ; 321 hc -> hdr . poff = c ->hdr. myoff ; 322 `bktShdoff ( bk -> hd , c -> hdr . myoff ); 324 `as ( c != 0); 325 ( c ); 326 } } 328  gSimeBuckVoid :: $movec ( cd * c ) 330  cd * hd = (cd *)( c -> hdr . hd ); 332 c -> hdr . mysize = 0; 335 i( c -> hdr . poff ! NuRec ) 336 ( `cPvRec ( c ))-> hdr . noff =ec->hdr.noff; 337 i( c -> hdr . noff ! NuRec ) 338 ( `cNextRec ( c ))-> hdr . poff =ec->hdr.poff; 341 i( `bktGhdoff ( hd = c -> hdr . myoff && hd-> bhdr . t > 1) 342 `bktShdoff ( hd , c -> hdr . noff ); 346 i( `bktGoff ( hd = c -> hdr . myoff ) 347 `bktSoff ( hd , c -> hdr . poff ); 350 i( c -> lk . noff =ec->lk. xt = `bktGoff ( hd )! NuRec ) { 351  cd * = `bktGFeRec ( hd ); 352 i(( c -> lk . poff = -> hdr .poff! NuRec ) 353 ( `cPvRec ( ))-> hdr . noff = c -> lk . myoff ; 354 -> hdr . poff = c -> lk . myoff ; 356 i( c -> lk . poff =ec->lk.pof `bktGoff ( hd )! NuRec ) { 357  cd * = `bktGTaRec ( hd ); 358 -> hdr . noff = c -> lk . myoff ; 361 `bktSoff ( hd , c -> hdr . myoff ); 362 off = c -> hdr . myoff ; 363 `bktDet ( hd ); 364 } } 366  gSimeBuckVoid :: $ck (*& ckage , & size ) 368 size = blksize * nblks ; 369 bk -> hd -> c . da [1] = ( size ; 370 ckage = (* bk -> hd ; 371 } } 373 * gSimeBuckVoid :: $ck (& size ) 375  cd * tmkg = bk -> hd ; 376 size = blksize * nblks ; 377 tmkg -> c . da [1] = ( size ; 378  ( (*) tmkg ); 379 } } 381  gSimeBuckVoid :: $ck (*& ckage , & size ) 383 size = blksize * nblks ; 384 bk -> hd -> c . da [1] = size ; 385 ckage = (* bk -> hd ; 386 } } 388 * gSimeBuckVoid :: $ck (& size ) 390  cd * tmkg = bk -> hd ; 391 size = blksize * nblks ; 392 tmkg -> c . da [1] = size ; 393  ( (*) tmkg ); 394 } } 396  gSimeBuckVoid :: $emybkt () 398 i( bk -> hd -> bhdr . t == 0) ; 400  cd * tmec = `hdc (); 401 ; tmec ;tmec= `xec (tmprec)) { 402 tmec -> hdr . mysize = 0; 403 tmec -> lk . xt =mec->lk. noff ; 405 bk -> hd -> bhdr . off = NuRec ; 406 bk -> hd -> bhdr . off = bk->hd->bhdr. hdoff ; 407 bk -> hd -> bhdr . t = 0; 409 off = bk -> hd -> bhdr .freeoff; 410 } } 412  gSimeBuckVoid :: $lbkt ( SimeBuckVoid & sbv ,  cd * c ) 414 i( c = cdNULL || 415 `bktGhdoff (( cd *) c -> hdr . hd =c->hdr. myoff ) 417 sbv . blksize = blksize; 418 sbv . nblks =blks; 419 sbv . off = freeoff; 420 i( sbv . bk !0 de sbv.bktptr; 422 sbv . bk = bktptr; 424  bkt * nbkt = w  `bkt ( blksize , nblks ); 426 bk = nbkt ; 427 off = nbkt -> hd -> bhdr .freeoff; 431  bkt * nbkt = w  `bkt ( blksize , nblks ); 432  cd * nhd = (cd *)( nbkt -> hd ); 433  cd * = `cPvRec ( c ); 434  cd * tmec ; 435  tmec = c ;tmec;tmec= `xec ( )) { 436 `bkddc ( nhd , tmec ); 437 `movec ( tmec ); 440 sbv . blksize = blksize; 441 sbv . nblks =blks; 442 sbv . off = nbkt -> hd -> bhdr .freeoff; 443 i( sbv . bk !0 de sbv.bktptr; 444 sbv . bk = nbkt ; 446 } } 448 goam & gݔ <<(oam& gos ,  gbkt & gb ) 450 i(& gb = bktNULL  os ; 452 gos << "Bucket ["; 453 gos << gb . ghd -> gbhdr . gblksize << " "; 454 gos << gb . ghd -> gbhdr . gnblks << " "; 455 gos << gb . ghd -> gbhdr . ghdoff << " "; 456 gos << gb . ghd -> gbhdr . goff << " "; 457 gos << gb . ghd -> gbhdr . goff << " "; 458 gos << gb . ghd -> gbhdr . gt << " "; 459 gos << "]"; 461  gos ; 464 goam & gݔ <<(oam& gos ,  gcd & gr ) 466 i(& gr = cdNULL  os ; 468 gos << "Record ["; 469 gos << gr . ghdr . gmysize << " "; 470 gos << gr . ghdr . gmyoff << " "; 471 gos << gr . ghdr . gnoff << " "; 472 gos << gr . ghdr . gpoff << " "; 473 gos << gr . ghdr . ghd << " "; 474 gos << "]"; 476  gos ; 479 goam & gݔ << (oam& gos , gSimeBuckVoid & gsbv ) 481 i(& gsbv = SimeBuckVoidNULL  os ; 483 gos << "BlkSize:" << gsbv . gblksize << " "; 484 gos << "NumBlks:" << gsbv . gnblks << " "; 485 gos << "FeOff:" << gsbv . goff << " "; 486 gos << "\n"; 488 gos << * gsbv . gbk ; 489 gos << "\n**********************************\n"; 491  cd * gr = sbv . bktGHdRec (sbv. bk -> hd ); 492  gr ! cdNULL ) { 493 os << * r ; 494 gos << "\n**********************************\n"; 495 gos << gush ; 496 gr = sbv . cNextRec ( r ); 498  gos ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/SimpleBucketVoid.h 2 #ide _uded_SimeBuckVoid_h 3  #_uded_SimeBuckVoid_h ) 12  ~ 13  ~ 14  ~ 15  ~ 16  ~ 17 usg mea gd ; 19 #ifde DEBUG_PRINT_BKT_MEMORY 20  ~"ACEMemyT.h " 23  ~"Syem.h " 24  ~"ACEDeus.h " 26 #ide DefBuckSize 27  #DefBuckSize (256) ) 30 #ide DefInemt 31  #DefInemt (128) ) 34  #NuRec (((0)) ) 35  #EmyBkt (((0)) ) 36  #FuBkt (((-1)) ) 38  schdr 40  mmysize ;  mmyoff ; 41  mnoff ;  mpoff ; 42 por mhd ; 45  sk 47  mmysize ;  mmyoff ; 48  mnoff ;  mpoff ; 49 por mhd ; 50  mxt ; 53  scda 55  mmysize ;  mmyoff ; 56  mnoff ;  mpoff ; 57 por mhd ; 58  mda [2]; 61  sbkthdr 63  mblksize ;  mnblks ; 64  mhdoff ;  moff ; 65  moff ;  mt ; 68  ucd 70  bkthdr mbhdr ; 71  chdr mhdr ; 72  k mlk ; 73  cda mc ; 74  mda [1]; 76 le  imy ({  ( mhdr . mmysize == 0); } 77 nd moam & mݔ <<(oam&,  mcd &); 80  sbkt 82  cd * mhd ; 84 le bkt (: hd (0) {} 85 bkt (cڡ blksize , cڡ nblks ); 86 bkt (bkcڡ & h ); 87 bkt ( cd cڡ * hdr ); 88 bkt ( cd * hdr ); 89 mle ~ bkt () 92 #ifde DEBUG_PRINT_BKT_MEMORY 93 mACEMemyT :: (()* hd -> bhdr . blksize *hd->bhdr. nblks ); 96 mde [] ((*) mhd ); 99 nd moam & mݔ <<(oam&,  mbkt &); 102  #cdNULL (( cd *0) ) 103  #bkthdrNULL (( bkthdr *0) ) 104  #bktNULL (( bkt *0) ) 105  #SimeBuckVoidNULL (( ass SimeBuckVoid *0) ) 107 as cSimeBuckVoid 109 nd moam & mݔ <<(oam&, mSimeBuckVoid &); 111  mblksize ; 112  mnblks ; 114  bkt * mbk ; 115  moff ; 117  mݔ = (cڡ SimeBuckVoid &); 119 mpublic : 120 le $SimeBuckVoid () 121 : `blksize (0), `nblks (0), `bk (0), `off (0) {} 123 `SimeBuckVoid (cڡ bktsize , cڡ bkum ); 124 `SimeBuckVoid ( cd * hdr ); 125 `SimeBuckVoid ( cd cڡ * hdr ); 126 `SimeBuckVoid ( cd cڡ * hdr , cڡ size , cڡ n ); 127 `SimeBuckVoid (cڡ SimeBuckVoid &); 129 le ~ $SimeBuckVoid ({ de bk ; } } 131 give : 132  locbkt (cڡ = DefInemt ); 134 le  cd * $cyda ( cd * to , cڡ cd * om ) 136 `memy ((*)(((*) to )+( chdr )), 137 (*)(((cڡ *) om )+( chdr )), 138 blksize -( chdr )); 141  ( to ); 142 } } 146 le  cd * $bktGHdRec ( cd cڡ * bhd ) const 147 {  (( cd *) 148 ((cڡ *)( bhd )+( blksize *bhd-> bhdr . hdoff ))); } } 150 le  cd * $bktGTaRec ( cd cڡ * bhd ) const 151 {  (( cd *) 152 ((cڡ *)( bhd )+( blksize *bhd-> bhdr . off ))); } } 154 le  cd * $bktGFeRec ( cd cڡ * bhd ) const 155 {  (( cd *) 156 ((cڡ *)( bhd )+( blksize *bhd-> bhdr . off ))); } } 158 le  cd * $bktGAtRec ( cd cڡ * bhd , 159 cڡ off ) const 160 {  (( cd *) 161 ((cڡ *)( bhd )+( blksize * off ))); } } 163 le  $bktGhdoff ( cd cڡ * bhd ) const 164 {  ( bhd -> bhdr . hdoff ); } } 165 le  $bktShdoff ( cd * bhd , cڡ off ) 166 { bhd -> bhdr . hdoff = off ; } } 168 le  $bktGoff ( cd cڡ * bhd ) const 169 {  ( bhd -> bhdr . off ); } } 170 le  $bktSoff ( cd * bhd , cڡ off ) 171 { bhd -> bhdr . off = off ; } } 173 le  $bktGoff ( cd cڡ * bhd ) const 174 {  ( bhd -> bhdr . off ); } } 175 le  $bktSoff ( cd * bhd , cڡ off ) 176 { bhd -> bhdr . off = off ; } } 178 le  $bktGt ( cd cڡ * bhd ) const 179 {  ( bhd -> bhdr . t ); } } 180 le  $bktSt ( cd * bhd , cڡ t ) 181 { bhd -> bhdr . t = c; } } 182 le  $bktInt ( cd * bhd ) 183 { bhd -> bhdr . t ++; } } 184 le  $bktDet ( cd * bhd ) 185 { bhd -> bhdr . t --; } } 189 le  cd * $cPvRec ( cd cڡ * c ) const 191  ( ( c -> hdr . poff ! NuRec ) ? 192 ( cd *((*)( c -> hdr . hd )+( blksize *c->hdr. poff )) : 193 ( cd *) (0) ); 194 } } 196 le  cd * $cNextRec ( cd cڡ * c ) const 198  ( ( c -> hdr . noff ! NuRec ) ? 199 ( cd *((*)( c -> hdr . hd )+( blksize *c->hdr. noff )) : 200 ( cd *) (0) ); 201 } } 203 le  cd * $cAtRec ( cd cڡ * c , 204 cڡ off ) const 206  ( ( off ! NuRec ) ? 207 ( cd *((*)( c -> hdr . hd )+( blksize * off )) : 208 ( cd *) (0) ); 209 } } 211  cd * bkddc (cd * bhd ); 212 le  cd * $bkddc ( cd * bhd , cڡ cd * c ) 217  ( `cyda ( `bkddc ( bhd ), c ) ); 218 } } 220  bkdd ( cd * bhd , cd * c ); 222 geed : 223 le  $blks ({  ( nblks -1); } } 224 le  $bsize ({  ( blksize ); } } 226  cd * addc (); 227 give : 228 le  cd * $addc (cڡ  cd * c ) 234 #ifde SAFE 241  ( `cyda ( `addc (), c ) ); 243  ( `cyda ( `addc (), c ) ); 245 } } 247 geed : 248  cd * c (cd*& a ); 249 give : 269 eed : 270  movec ( cd * c ); 273 le  cd * $xec ( cd cڡ * c ) const 276 ( c -> hdr . myoff ! `bktGoff (( cd *ec->hdr. hd )) ? 277 ( cd *((*)( c -> hdr . hd )+( blksize *c->hdr. noff )) : 278 ( cd *) (0) ); 279 } } 281 le  cd * $evc ( cd cڡ * c ) const 284 ( c -> hdr . myoff ! `bktGhdoff (( cd *ec->hdr. hd )) ? 285 ( cd *((*)( c -> hdr . hd )+( blksize *c->hdr. poff )) : 286 ( cd *) (0) ); 287 } } 289 le  cd * $hdc () const 291  ( ( bk -> hd -> bhdr . t > 0) ? 292 `bktGHdRec ( bk -> hd : cdNULL ); 293 } } 295 le  cd * $c () const 297  ( ( bk -> hd -> bhdr . t > 0) ? 298 `bktGTaRec ( bk -> hd : cdNULL ); 299 } } 301 le  $cou () const 302 {  ( `bktGt ( bk -> hd )); } } 304 gpublic : 306 le  $imybkt ({  ( bk -> hd -> bhdr . t =0); } } 307  emybkt (); 309  lbkt ( SimeBuckVoid & sbv ,  cd * c ); 311 * ck (& size ); 312  ck (*& ckage , & size ); 313 * ck (& size ); 314  ck (*& ckage , & size ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/Str.h 1 #ide S_h 2  #S_h ) 3  ~ 4 usg mea gd ; 5  ~"r.h " 15 cڡ gSGrowSize = 10; 16 as cSambuf : public ambuf { 17 r <> da ; 18  mn ; 19  mpos ; 20 mpublic : 21 $Sambuf (: `pos (0), `n ( SGrowSize ), $da ( SGrowSize ) {} 22 ~ $Sambuf ({ } } 23  $ovow ( c ) { 24 if( pos +1 > n ) { 25  ƒ = n + SGrowSize ; 26 r <> `nda ( ƒ ); 27  i =0;i< pos ;i++) 28 nda [ i ]= da [i]; 29 da = nda ; 30 n = ƒ ; 32 da [ pos ]= c ; 33 pos ++; 35 } } 36 ݔ *() { 37 gda [ pos ]=0; 38  gda ; 40 ݔ gr <>() { 41 gda [ pos ]=0; 42  gda ; 44  $t () { 45 pos = 0; 46 da [ pos ] = 0; 47 } } 48 nd ass gS ; 56 as cS : public oam { 57 public : 58 Sambuf sb ; 59 $S (: $oam (& sb ) {} 60 ~ $S ({ } } 61 ݔ *({  sb ; } 62 ݔ gr <>({  gsb ; } 65 le goam & gݔ <<(oam& go , gS & gs ) { 66  go << ((*) gs ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/StringTokenizer.cpp 13  ~"SgTokiz.h " 15 gSgTokiz :: $SgTokiz (cڡ * rMesge ) 17  nSgIndex = 0; 18  nTokIndex = 0; 20  i =0;i< MAXTOKENS ;i++) 21 `ry ( rToks [ i ],""); 23 nNumToks = 0; 25 #ifde DEBUG_PRINT 26 cout <<"Sgecvd f܁okizg :" << rMesge << dl ; 29 nTokNumb = 0; 31 if( ` ( rMesge ) > 0) { 32  rMesge [ nSgIndex ] != '\0' && 33 nSgIndex < ` ( rMesge )) { 35  rMesge [ nSgIndex ] != '\n' && 36 rMesge [ nSgIndex ] != '\t' && 37 rMesge [ nSgIndex ] != ' ' && 38 rMesge [ nSgIndex ] != '\r' && 39 rMesge [ nSgIndex ] != '\0') { 40 rToks [ nNumToks ][ nTokIndex ++] = rMesge [ nSgIndex ++]; 42 rToks [ nNumToks ][ nTokIndex ] = '\0'; 44 nSgIndex ++; 45 nTokIndex = 0; 47 #ifde DEBUG_PRINT 48 cout <<"Tokumb" << nNumToks << "\t Token : " 49 << rToks [ nNumToks ]<< dl ; 51 nNumToks ++; 54 } } 56 * gSgTokiz :: $GNextTok () 58  rToks [ nTokNumb ++]; 59 } } 61 bo gSgTokiz :: $IsEmy () 63 if( nTokNumb > nNumToks ) 67 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/StringTokenizer.h 1 #ide _STRINGTOKENIZER_H 2  #_STRINGTOKENIZER_H ) 16  ~"DICEDefs.h " 18 as cSgTokiz 20 mpublic : 22  rToks [ MAXTOKENS ][ MAXTOKENSIZE ]; 23  mnNumToks ; 24  mnTokNumb ; 26 mpublic : 28 SgTokiz (const *); 29 mle ~ $SgTokiz () {} 30 bo `IsEmy (); 31 * `GNextTok (); 32 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/System.h 1 #ide _uded_Syem_h 2  #_uded_Syem_h ) 11  tpor ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/amrsds.c 1  ~ 2  ~ 3  ~ 4  ~ 6  ~"amrsds.h " 7  ~"sds.h " 9 #i defed ( IO_NCSAIO )||defed( IO_OLDNCSA ) 96  #DEFAULT_ANNOTATION_SZ 512 ) 97  gAmrDebug =0; 98  AMRީ gAMRdeuIp = PchR ; 157  $AMRgLoti (* fame , t32 * v ,t32 * gridID ,t32 * ) 159 `SDSadArib ( fame ,"AMRv",1,( VOIDP ) v ); 160 `SDSadArib ( fame ,"AMRgridID",1,( VOIDP ) gridID ); 161 `SDSadArib ( fame ,"AMRtime",1,( VOIDP ) ); 163 } } 263  $AMRwreAribs (* fame , 264 t32 v ,t32 gridID ,t32 , t64 Time , 265 t32 nk ,t32 * ig ,t32 * suti ) 267 `SDSwreArib ( fame ,"AMRv", DFNT_INT32 ,1,& v ); 268 `SDSwreArib ( fame ,"AMRgridID", DFNT_INT32 ,1,& gridID ); 269 `SDSwreArib ( fame ,"AMRtime", DFNT_INT32 ,1,& ); 270 `SDSwreArib ( fame ,"AMRnk", DFNT_INT32 ,1,& nk ); 271 `SDSwreArib ( fame ,"AMRig", DFNT_INT32 , nk , ig ); 272 `SDSwreArib ( fame ,"AMRsuti", DFNT_INT32 , nk +1, suti ); 273 `SDSwreArib ( fame ,"AMRtime", DFNT_FLOAT64 ,1,& Time ); 275 } } 381  $AMRwreDa (* fame ,* dame , t32 v ,t32 gridID , 382 t32 , t64 Time , 383 t32 nk ,t32 * dims ,t32 * ig ,t32 * suti ,* da ) 385 if( `SDSwreDa ( fame , dame , nk , dims , da )<0) 387 if( AmrDebug `rtf ( dr ,"AMRaddDa: DFSDaddDa(ed f %s\n", fame ); 390 `AMRwreAribs ( fame , v , gridID , , Time , nk , ig , suti ); 392 } } 494  $AMRadAribs (* fame ,* dame , 495 t32 * v ,t32 * gridID ,t32 * , t64 * Time , 496 t32 * nk ,t32 * dims ,t32 * ig ,t32 * suti ) 498 `SDSgDims ( fame , dame , nk , dims ); 499 `SDSadArib ( fame ,"AMRv",1, v ); 500 `SDSadArib ( fame ,"AMRgridID",1, gridID ); 501 `SDSadArib ( fame ,"AMRtime",1, ); 502 `SDSadArib ( fame ,"AMRnk",1, nk ); 503 `SDSadArib ( fame ,"AMRig",* nk , ig ); 504 `SDSadArib ( fame ,"AMRsuti",* nk +1, suti ); 505 `SDSadArib ( fame ,"AMRtime",1, Time ); 507 } } 553  $AMRadDa (* fame , t32 nk ,t32 * dims ,* da ) 555  `SDSadDa ( fame , nk , dims , da ); 556 } } 609  $AMRekTime (* fame , t64 time ,* mchty ) 613 t64 ; 614 t32 ef , i , nk ; 615 t32 dims [8]; 616 t32 ev , tgridID , t ; 617  n٩i [ DEFAULT_ANNOTATION_SZ ]; 618 t32 nsds = `SDSgNumDats ( fame )+1; 619 t32 t = `SDSgIndex ( fame ); 621  i = t ;i<= nsds ;i++){ 622 `SDSek ( fame , i ); 623 if( `SDSisCod ( fame )) 625 if( `SDSadArib ( fame ,"AMRtime",1,& )<0) 627 if( AmrDebug `rtf ( dr , 628 "AMRek: (AMRrLoti faed f܇٩i %s\n", n٩i ); 631 if(! mchty ){ 632 if( time >= ) 635 if( mchty [0]=='='){ 636 if( == time ) 639 if( mchty [0]=='<'){ 640 if( mchty [1]=='='){ 641 if( <= time ) 645 if( < time ) 649 if( mchty [0]=='>'){ 650 if( mchty [1]=='='){ 651 if( >= time ) 655 if( > time ) 660 `rtf ( dr ,"AMRseekRealTime: Don't understand matchtype of %s\n", 661 mchty ); 665  i =0;i<=( t -1);i++) 667 `SDSek ( fame , i ); 668 if( `SDSisCod ( fame )) 670 if( `SDSadArib ( fame ,"AMRtime",1,& )<0) 672 if( AmrDebug `rtf ( dr , 673 "AMRek: (AMRrLoti faed f܇٩i %s\n", n٩i ); 675 }if( `SDSadArib ( fame ,"AMRtime",1,& )<0) 677 if( AmrDebug `rtf ( dr , 678 "AMRek: (AMRrLoti faed f܇٩i %s\n", n٩i ); 681 if(! mchty ){ 682 if( time >= ) 685 if( mchty [0]=='='){ 686 if( == time ) 689 if( mchty [0]=='<'){ 690 if( mchty [1]=='='){ 691 if( <= time ) 695 if( < time ) 699 if( mchty [0]=='>'){ 700 if( mchty [1]=='='){ 701 if( >= time ) 705 if( > time ) 710 `rtf ( dr ,"AMRseekRealTime: Don't understand matchtype of %s\n", 711 mchty ); 715 `SDSek ( fame , t ); 717 } } 776  $AMRek (* fame , t32 v ,t32 gridID ,t32 ) 779  ef , i , nk ; 780 t32 dims [8]; 781 t32 ev , tgridID , t ; 782  n٩i [ DEFAULT_ANNOTATION_SZ ]; 783  nsds = `SDSgNumDats ( fame )+1; 784  t = `SDSgIndex ( fame ); 786  i = t ;i<= nsds ;i++){ 787 `SDSek ( fame , i ); 788 if( `SDSisCod ( fame )) 790 `SDSgDaName ( fame , n٩i ); 791 if( `AMRgLoti ( n٩i ,& ev ,& tgridID ,& t )) 793 if( AmrDebug `rtf ( dr , 794 "AMRek: (AMRrLoti faed f܇٩i %s\n", n٩i ); 797 if(( v == AMR_ANYVAL || ev ==level) && 798 ( gridID == AMR_ANYVAL || tgridID ==gridID) && 799 ( == AMR_ANYVAL || t ==step)) 802  i =0;i<=( t -1);i++) 804 `SDSek ( fame , i ); 805 if( `SDSisCod ( fame )) 807 `SDSgDaName ( fame , n٩i ); 808 if( `AMRgLoti ( n٩i ,& ev ,& tgridID ,& t )) 810 if( AmrDebug `rtf ( dr , 811 "AMRek: (AMRrLoti faed f܇٩i %s\n", n٩i ); 814 if(( v == AMR_ANYVAL || ev ==level) && 815 ( gridID == AMR_ANYVAL || tgridID ==gridID) && 816 ( == AMR_ANYVAL || t ==step)) 819 `SDSek ( fame , t ); 821 } } 823  $AMRgRegi (* fame , t32 v ,t32 ,t32 nk , 824 t32 * lb ,t32 * ub ,t32 * dims ,* da ) 827 } } 829  $RegiOvp (* nk , 830 t32 * sourDims ,t32 * sourOrig ,t32 * sourResuti , 831 t32 * deDims ,t32 * deOrig ,t32 * deResuti ) 835  i ; 836  i =0;i<* nk ;i++) 838  nmSrc , nmD , nStSrc , nStD , nEndSrc , nEndD ; 839  maxs =()(( sourResuti [ i ]> deResuti [i])? 840 ( sourResuti [ i ]):( deResuti [i])); 841 nmSrc = ()( sourResuti [ i ]/ maxs ; 842 nmD = ()( deResuti [ i ]/ maxs ; 843 nStSrc = nmSrc * ()( sourOrig [ i ]); 844 nStD = nmD * ()( deOrig [ i ]); 845 nEndSrc = nStSrc + ()( sourDims [ i ]* nmSrc ; 846 nEndD = nStD + ()( deDims [ i ]* nmD ; 847 if( nStSrc > nEndD || nStD > nEndSrc ) 851 } } 853  $AMRtIpީ ( AMRީ ) 855 AMRdeuIp = ; 856 } } 858  $PchR ( t32 * nk , 859 t32 * sourDims ,t32 * sourOrig ,t32 * sourResuti , 860 * sourda , 861 t32 * dedims ,t32 * deOrig ,t32 * deResuti , 862 * deda ) 864 * sNm =(*) `mloc (()** nk ); 865  i ; 866 if(! sNm { ` ("PatchReplace: malloc failed"); ;} 868  i =0;i<* nk ;i++) 869 sNm [ i ]=()( deResuti [i])/()( sourResuti [i]); 870  i =0;i<* nk ;i++) 872 ` ( sNm ); 873 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/amrsds.h 1 #ide __AMRSDS_H_ 2  #__AMRSDS_H_ ) 4 #i defed ( IO_NCSAIO )||defed( IO_OLDNCSA ) 9 #ide ANSI 10 #i defed ( __STDC__ ||defed( __lulus )||defed( _LANGUAGE_C_PLUS_PLUS ) 11  #ANSI ) 15 #ifde ANSI 16  #CPROTO ( x ) x 18  #CPROTO ( x () ) 21  ~ 22  AmrDebug ; 93  AMRwreDa CPROTO ((* fame , 94 * dame , 95 t32 v , 96 t32 gridID , 97 t32 , 98 t64 Time , 99 t32 nk , 100 t32 * dims , 101 t32 * ig , 102 t32 * suti , 103 * da )); 112  AMRadAribs CPROTO ((* fame , 113 * dame , 114 t32 * v , 115 t32 * gridID , 116 t32 * , 117 t64 * time , 118 t32 * nk , 119 t32 * dims , 120 t32 * ig , 121 t32 * suti )); 130  AMRadDa CPROTO ((* fame , 131 t32 nk , 132 t32 * dims , 133 * da )); 151  AMRek CPROTO ((* fame , 152 t32 v , 153 t32 gridID , 154 t32 )); 156  AMRekTime CPROTO ((* fame , 157 t64 time , 158 * mchty )); 162  AMRgRegi CPROTO ((* fame , 163 t32 v , 164 t32 , 165 t32 nk , 166 t32 * dims , 167 t32 * lb , 168 t32 * ub , 169 * da )); 172  RegiOvp CPROTO ((* nk , 173 t32 * sourDims , 174 t32 * sourOrig , 175 t32 * sourResuti , 176 t32 * deDims , 177 t32 * deOrig , 178 t32 * deResuti )); 185 (* tAMRީ tCPROTO (( tt32 * tnk , 186 tt32 * tsourDims , 187 tt32 * tsourOrig , 188 tt32 * tsourResuti , 189 * tsourda , 190 tt32 * tdedims , 191 tt32 * tdeOrig , 192 tt32 * tdeResuti , 193 * tdeda )); 196  AMRtIpީ `CPROTO (( AMRީ )); 207  PchR `CPROTO (( t32 * nk , 208 t32 * sourDims , 209 t32 * sourOrig , 210 t32 * sourResuti , 211 * sourda , 212 t32 * dedims , 213 t32 * deOrig , 214 t32 * deResuti , 215 * deda )); 217  #AMR_ANYVAL -1 ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/double.cpp 1  ~"DAGH.h " 5 #ide NO_DOUBLE_LIB 6 #ifde DEC_ALPHA 7 #agm t GridFuni1 <> 8 #agm t GridFuni2 <> 9 #agm t GridFuni3 <> 11 #agm t GridDa1 <> 12 #agm t GridDa2 <> 13 #agm t GridDa3 <> @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/fastAlloc.cpp 18  ~"Aoc.h " 20  #MINALLOC (1) ) 22 le  $max (cڡ  a , cڡ  b ) 24 (( a > b ) ? : b); 25 } } 44 gAoc :: $Aoc (cڡ  size , cڡ  ime ) 46 cڡ  block = `max ( size , ( lk *)); 47 cڡ  ign = (( block > 8) ? 16 : ((block > 4) ? 8 : 4)); 48 blocksize = ( block + ign -1) & (~(align-1)); 49 nblocks = `max ( ime , MINALLOC ); 50 hd = (( lk *) 0); 51 t = w lglk ; 52 cur = t ; 53 } } 66  gAoc :: $mloc () 68 * chunk , * d ; 70 chunk = w [ blocksize * nblocks ]; 71 `as ( chunk != 0); 73 d = chunk +( nblocks -1)* blocksize ; 74 * p = chunk ; < d ; + blocksize ) 75 (( lk * p )-> xt = (lk *+ blocksize ); 77 cur -> em = hd = ( lk * chunk ; 78 i(! cur -> xt cur->x w lglk ; 79 cur = cur-> xt ; 80 (( lk * d )-> xt = ((link *) 0); 81 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/fastAlloc.h 1 #ide _uded_Aoc_h 2  #_uded_Aoc_h ) 20  ~ 22 as cAoc 24 mpublic : 25  slk {  lk * xt ; }; 26  slglk { 27  lk * gem ;  lglk * gxt ; 28 le lglk (: em (0), xt (0) {} 29 gle ~ lglk () { 30 i( gem gde [] (*) item; 31 i( gxt de ext; 34 give : 35  blocksize ; 36  gnblocks ; 37 lk * ghd ; 38 lglk * gt ; 39 lglk * gcur ; 40 Aoc (const fastAlloc&); 41  gݔ = (cڡ Aoc &); 42  mloc (); 43 gpublic : 44 Aoc (cڡ  size , cڡ  ime ); 45 gle ~ $Aoc ({ de t ; } } 47 le * $loc () 49 i( hd =(( lk *0) `mloc (); 50  lk * block = hd ; 51 hd = block -> xt ; 52 ( block ); 53 } } 55 le  $ (* block ) 57 (( lk * block )-> xt = hd ; 58 hd = ( lk * block ; 59 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/generic.h 19 #ide gic_h 20  #gic_h 1 ) 26  #me2 ( a , b `gEnErIc2 ,b) ) 27  #gEnErIc2 ( a , b ## ) b 29  #me3 ( a , b , c `gEnErIc3 ,b,c) ) 30  #gEnErIc3 ( a , b , c ## b ## ) c 32  #me4 ( a , b , c , d `gEnErIc4 ,b,c,d) ) 33  #gEnErIc4 ( a , b , c , d ## b ## c ## ) d 35  #GENERIC_STRING ( a `gEnErIcStRiNg ) ) 36  #gEnErIcStRiNg ( a #a ) 38  #dee ( as , t `me2 (as, dee )) ) 39  #dee2 ( as , t1 , t2 `me2 (as, dee2 )1,t2) ) 41  #imemt ( as , t `me2 (as, imemt )) ) 42  #imemt2 ( as , t1 , t2 `me2 (as, imemt2 )1,t2) ) 45 (* tGPT )(,*); 47  #t_hdr ( g , ty , x `me4 ( t_ ,ty,g, _hdr )(x) ) 49  #rhdr ( g , ty `me3 y,g, hdr ) ) 51  #Δr ( g , ty , a , b (* `rhdr (g,ty)),b) ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/lparx_copyright.h @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/ptr.h 2 #ide r_h 3  #r_h ) 4  ~ 5 usg mea gd ; 6  ~ 8 gme < ass gT > cs gr ; 17 gme < ass gT > 18 as crGuts { 19 T * mda ; 20  mft ; 21  mnsize ; 22 mpublic : 23 $rGuts ( T * t , n : `da ), `nsize ), `ft (1) {} 24 ~ $rGuts ({ `as ( da ! NULL ); de [] da; d0; } } 25 nd ass gr < gT >; 45 gme < ass gT > 46 as cr { 47 mrGuts < mT > * mpg ; 48  $d () { 52 `as ( pg ! NULL ); 53 `as ( pg -> da ! NULL ); 54 `as ( pg -> ft > 0); 55 if( pg && --pg-> ft == 0) { 56 de pg ; 57 pg = 0; 60 public : 61 $r () { 62 T * t = w T[1]; 63 pg = w rGuts < T >( t ,1); 64 `as ( pg != 0); 65 } } 66 $r ( n ) { 67 T * t = w T[ n ]; 68 `as ( t != 0); 69 pg = w rGuts < T >( t , n ); 70 `as ( pg != 0); 71 `as ( n > 0); 72 } } 73 r (cڡ< T >& t { gpg . pg ;g-> gft ++; } 74 ~ $r ({ `d (); } } 75 gr < gT >& gݔ =( r < T >& p ) { 76 d (); 77 gpg = p . pg ; 78 gpg -> gft ++; 79  * gthis ; 81 gT & gݔ *() { 82  gݔ [](0); 84 gT & gݔ []( gi ) { 85 as ( pg ! NULL ); 86 as ( pg -> da ! NULL ); 87 as ( i >0 && i < pg -> nsize ); 88  ( gpg -> gda )[ i ]; 90 ݔ gT *({ as ( pg ! NULL );  gpg -> gda ; } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/sds.c 1  ~ 2  ~ 4  ~ 5  ~ 7 #i defed ( IO_NCSAIO )||defed( IO_OLDNCSA ) 9  ~"sds.h " 27  t32 gDeuNumbTy = DFNT_FLOAT32 ; 28  t32 gnfes =0, gmaxfes =54; 32  sfeID { 33  mcompڒame [128]; 34  mfame [256]; 35  msds_me [ MAX_NC_NAME ]; 36 t32 mid , msds_id , msdumb , mnsds , mljrib , mnumbty ; 37 t32 macssags ; 38 ock_t mϡacss ; 39  feID * mxt ; 40 } tfeID ; 42  feID * gfes = NULL ; 61  $diveOldFes () 63 feID * tmpid ; 64  i , imes ; 65 ock_t * wܡ_times ; 66 imes = maxfes >>3; 67 imes =ntimes?ntimes:1; 69 wܡ_times =( ock_t *) `oc ( imes ,(clock_t)); 71  tmpid = fes ;tmpid;tmpidmpid-> xt ){ 72 ock_t t = tmpid -> ϡacss ; 73 if( tmpid -> id <0) ; 74  i =0;i< imes ;i++){ 75 if( t <= wܡ_times [ i ]){ 76 ock_t tmp = wܡ_times [ i ]; 77 wܡ_times [ i ]= t ; 78 t = tmp ; 83  tmpid = fes ;tmpid;tmpidmpid-> xt ) 84 if( tmpid -> id &&mpid-> ϡacss <= wܡ_times [ imes -1]) 85 `SDSdive ( tmpid -> fame ); 86 ` ( wܡ_times ); 87 } } 115 feID * $NewFeID (* me ,* acss ) { 116 feID * id =(feID *) `oc ((fileID),1); 117 `ry ( id -> compڒame , me ); 118 `ry ( id -> fame , me ); 120 if( nfes == maxfes ) 121 `diveOldFes (); 124 if(* acss =='r'){ 125 if( acss [1]=='w'){ 126 id ->id= `SDt (id-> fame ,id-> acssags = DFACC_RDWR ); 127 if( id ->id<0){ 129 id ->id= `SDt (id-> fame ,id-> acssags = DFACC_CREATE ); 131 `SDfefo ( id ->id,&(id-> nsds ),&(id-> ljrib )); 132 id -> sdumb =0; 133 if( id -> acssags != DFACC_CREATE ) 134 id -> sds_id = `SD (id->id,0); 136 id -> sds_id =-1; 138 i( acss [1]=='a' ||ccess[1]=='+') { 139 id ->id= `SDt (id-> fame ,id-> acssags = DFACC_RDWR ); 140 nfes ++; 141 if( id ->id<0){ 143 id ->id= `SDt (id-> fame ,id-> acssags = DFACC_CREATE ); 145 `SDfefo ( id ->id,&(id-> nsds ),&(id-> ljrib )); 146 id -> sdumb =id-> nsds ; 147 if( id -> acssags != DFACC_CREATE ) 148 id -> sds_id = `SD (id->id,id-> sdumb ); 150 id -> sds_id =-1; 153 id ->id= `SDt (id-> fame ,id-> acssags = DFACC_RDONLY ); 154 `SDfefo ( id ->id,&(id-> nsds ),&(id-> ljrib )); 155 id -> sdumb =0; 156 id -> sds_id = `SD (id->id,id-> sdumb ); 159 if(* acss =='w'){ 160 if( acss [1]=='\0'){ 161 id ->id= `SDt (id-> fame ,id-> acssags = DFACC_CREATE ); 162 id -> sdumb =id-> nsds =0; 163 id -> sds_id =-1; 166 id ->id= `SDt (id-> fame ,id-> acssags = DFACC_ALL ); 167 `SDfefo ( id ->id,&(id-> nsds ),&(id-> ljrib )); 168 id -> sdumb =id-> nsds ; 169 id -> sds_id = `SD (id->id,id-> sdumb ); 172 if( id ->id >= 0) 173 nfes ++; 174 id -> ϡacss = `ock (); 175 id -> numbty = DeuNumbTy ; 176 id -> xt = fes ; 177 fes = id ; 178  id ; 179 } } 202 feID * $fdIDbyCompڒt (* me ) 204 feID * id ; 205  id = fes ;id!= NULL ;id=id-> xt ) 206 if(! `rcmp ( me , id -> compڒame )) 208  id ; 209 } } 232 feID * $fdIDbyFame (* me ) 234 feID * id ; 235  id = fes ;id!= NULL ;id=id-> xt ) 236 if(! `rcmp ( me , id -> fame )) 238  id ; 239 } } 260  $moveFeID (* fame ) 262 feID * id ,* ϡid ; 264  ϡid =0, id = fes ;id;ϡid=id,id=id-> xt ) { 265 if(! `rcmp ( id -> fame ,filename)){ 266 if(! ϡid ){ 267 fes = id -> xt ; 270 ϡid -> xt = id ->next; 272 ` ( id ); id = NULL ; 277 i id = NULL )  ; 279 } } 310  $SDScompuSize ( t32 nk ,t32 * dims ,t32 dy ) 312  i , n ; 313  nbys ; 314  nbys =1, n = nk , i =0;i xt ; 340 if( id -> sds_id >=0) 341 `SDdacss ( id -> sds_id ); 342 id -> sds_id =-1; 343 if( id ->id>=0){ 344 nfes --; 345 `SDd ( id ->id); 347 id ->id=-1; 348 ` ( id ); 350 fes = NULL ; 351 } } 379  $SDSdive (* fame ) 381 feID * id = `fdIDbyFame ( fame ); 382 if( id ){ 383 if( id -> sds_id ) 384 `SDdacss ( id -> sds_id ); 385 `SDd ( id ->id); 386 id ->id=-1; 387 nfes --; 388 if( id -> acssags == DFACC_CREATE ) 389 id -> acssags = DFACC_RDWR ; 392 } } 416  $SDSaive (* fame ) 418 feID * id = `fdIDbyFame ( fame ); 419 if( id && id->id < 0){ 420 id ->id= `SDt ( fame ,id-> acssags ); 421 if( id ->id) 422 nfes ++; 423 if( id -> sds_id >=0) 424 id -> sds_id = `SD (id->id,id-> sdumb ); 426 } } 448  $SDSo (* fame ) 450 feID * id = `fdIDbyFame ( fame ); 451 if( id ) { 452 `SDd ( id ->id); 453 nfes --; 454 `moveFeID ( fame ); 456 } } 487 feID * $gFeID (* fame ) 489 feID * id = `fdIDbyFame ( fame ); 490 if(! id ) 491 id = `NewFeID ( fame ,"rw"); 493 id -> ϡacss = `ock (); 494 if( id ->id<0) 495 `SDSaive ( fame ); 496  id ; 497 } } 524  $SDSݒ (* fame ,* acss ) 526 feID * id = `fdIDbyFame ( fame ); 527 if(! id ) 528 id = `NewFeID ( fame , acss ); 529 } } 553  $SDSush (* fame ) 555 feID * id = `fdIDbyFame ( fame ); 556 if( id && id-> sds_id >=0) 557 `SDdacss ( id -> sds_id ); 562 } } 586  $SDSpurge (* fame ) 588 `SDSo ( fame ); 589 `SDSݒ ( fame ,"w"); 590 } } 616  $SDSek (* fame , um ) 618 feID * id = `gFeID ( fame ); 619 id -> sdumb = um ; 620 id -> sds_id = `SD (id->id,id-> sdumb ); 621 } } 647 t32 $SDSekName (* fame ,* dame ) 649 feID * id = `gFeID ( fame ); 650 id -> sdumb = `SDmodex (id->id, dame ); 651 id -> sds_id = `SD (id->id,id-> sdumb ); 652  id -> sdumb ; 653 } } 675 t32 $SDSgNT (* fame ) 677 t32 numbty , ibs , nk , dims [ MAX_VAR_DIMS ]; 678 feID * id = `gFeID ( fame ); 679 if( id -> sds_id <0) 680 id -> sds_id = `SD (id->id,id-> sdumb ); 681 if( id -> sds_id <0) 683 `SDgfo ( id -> sds_id , NULL ,& nk , dims ,& numbty ,& ibs ); 684 id -> numbty =numbertype; 685  numbty ; 686 } } 712 t32 $SDSisCod (* fame ) 714 feID * id = `gFeID ( fame ); 715 if( id -> sds_id <0) 716 id -> sds_id = `SD (id->id,id-> sdumb ); 717 if( id -> sds_id <0) 719  `SDiscodv ( id -> sds_id ); 720 } } 756  $SDStNT (* fame , t32 numbty ) 758 feID * id = `gFeID ( fame ); 759 id -> numbty =numbertype; 760 } } 805  $SDSgDims (* fame ,* dame , t32 * nk ,t32 * dims ) 807 t32 numbty , ibs ; 808  us ; 809 feID * id = `gFeID ( fame ); 810 if( id -> sds_id >=0) 811 `SDdacss ( id -> sds_id ); 812 id -> sds_id = `SD (id->id,(id-> sdumb )++); 813 if( id -> sds_id <0) 815 us = `SDgfo ( id -> sds_id , dame , nk , dims ,& numbty ,& ibs ); 816 if( us >=0){ 817 id -> numbty =numbertype; 818 id -> ljrib = ibs ; 819 `SDScompuSize (* nk , dims , numbty ); 824 } } 867  $SDSadDa (* fame , t32 nk ,t32 * dims , VOIDP da ) 869  t32 igS [5]={0,0,0,0,0},* ig ; 870 t32 lj , ; 871  us ; 872 feID * id = `gFeID ( fame ); 873 if( id -> sds_id <0) 874 id -> sds_id = `SD (id->id,id-> sdumb ); 876 if( nk > 5) { 877 ig =( t32 *) `oc ((), nk ); 880 ig = igS ; 881 if( id -> sds_id <0) 882 id -> sds_id = `SD (id->id,id-> sdumb ); 883 if( id -> sds_id <0) 886 us = `SDadda ( id -> sds_id , ig , NULL , dims , da ); 887 if( ig != igS ) 888 ` ( ig ); 889 if( us >=0) 890  `SDScompuSize ( nk , dims , id -> numbty ); 893 } } 956  $SDSadChunk (* fame , t32 nk ,t32 * dims , 957 t32 * ig ,t32 * ride , VOIDP da ) 959  t32 igS [5]={0,0,0,0,0}; 960 t32 lj , ; 961  us ; 962  me [ MAX_NC_NAME ]; 963 feID * id = `gFeID ( fame ); 964 if(! ig ){ 965 if( nk > 5) { 966 ig =( t32 *) `oc ((), nk ); 969 ig = igS ; 971 if( id -> sds_id <0){ 972 id -> sds_id = `SD (id->id,id-> sdumb ); 973 if( id -> sds_id <0) 975 `SDgfo ( id -> sds_id , me ,& nk , dims ,&(id-> numbty ),&(id-> ljrib )); 977 us = `SDadda ( id -> sds_id , ig , ride , dims , da ); 978 if( ig != igS ) 979 ` ( ig ); 980  us ; 981 } } 1014  $SDSgFeInfo (* fame , t32 * nsds ,t32 * ljrib ) 1016 feID * id = `gFeID ( fame ); 1017 if( nsds ) 1018 * nsds = id ->nsds; 1019 if( ljrib ) 1020 * ljrib = id ->nattrib; 1021 } } 1046 t32 $SDSgDaName (* fame ,* me ) 1048 t32 us ; 1049 t32 nk , dims [ MAX_NC_DIMS ]; 1050 feID * id = `gFeID ( fame ); 1051 if( id -> sds_id <0) 1052 id -> sds_id = `SD (id->id,id-> sdumb ); 1053 if( id -> sds_id <0) 1055 us = `SDgfo ( id -> sds_id , me ,& nk , dims , 1056 &( id -> numbty ), 1057 &( id -> ljrib )); 1058  us ; 1059 } } 1079 t32 $SDSgIndex (* fame ) 1081 feID * id = `gFeID ( fame ); 1082  id -> sdumb ; 1083 } } 1129 t32 $SDSgDaSs (* fame ,* b ,* uns , 1130 * fm ,* codsys , maxn ) 1132 feID * id = `gFeID ( fame ); 1133 if( id -> sds_id <0) 1134 id -> sds_id = `SD (id->id,id-> sdumb ); 1135 if( id -> sds_id <0) 1137  `SDgdars ( id -> sds_id , b , uns , fm , codsys , maxn ); 1138 } } 1158 t32 $SDSgNumDats (* fame ) 1160 feID * id = `gFeID ( fame ); 1161  id -> nsds ; 1162 } } 1201 t32 $SDSloDat (* fame ,* dame , t32 nk ,t32 * dims ) 1203  t32 igS [5]={0,0,0,0,0}; 1204  us ; 1205 feID * id = `gFeID ( fame ); 1206 if( id -> acssags == DFACC_RDONLY ) 1208 if( id -> sds_id >=0) 1209 `SDdacss ( id -> sds_id ); 1211 id -> sds_id = `SD (id->id, dame ,id-> numbty , nk , dims ); 1212 if( id -> sds_id >=0) 1213 ( id -> nsds )++; 1215  id -> sdumb = `SDodex (id->id, `SDidtef (id-> sds_id )); 1216 } } 1255  $SDSwreChunk (* fame , t32 nk ,t32 * dims , 1256 t32 * ig ,t32 * ride , VOIDP da ) 1258  t32 igS [5]={0,0,0,0,0}; 1259  us ; 1260 feID * id = `gFeID ( fame ); 1261 if( id -> acssags == DFACC_RDONLY ) 1264 if(! ig ){ 1265 if( nk > 5) { 1266 ig =( t32 *) `oc ((t32), nk ); 1269 ig = igS ; 1271 if( id -> sds_id <0) 1277 if( id -> sds_id >=0) 1278 ( id -> nsds )++; 1279 id -> sdumb = `SDodex (id->id, `SDidtef (id-> sds_id )); 1280 us = `SDwreda ( id -> sds_id , ig , ride , dims , da ); 1282 if( ig != igS ) 1283 ` ( ig ); 1284  us ; 1285 } } 1334  $SDSwreDa (* fame ,* dame , t32 nk , 1335 t32 * dims , VOIDP da ) 1337  t32 igS [5]={0,0,0,0,0},* ig ; 1338  us ; 1339 feID * id = `gFeID ( fame ); 1340 if( id -> acssags == DFACC_RDONLY ) 1342 if( id -> sds_id >=0) 1343 `SDdacss ( id -> sds_id ); 1345 if( nk > 5) { 1346 ig =( t32 *) `oc ((t32), nk ); 1349 ig = igS ; 1351 id -> sds_id = `SD (id->id, dame ,id-> numbty , nk , dims ); 1352 if( id -> sds_id >=0) 1353 ( id -> nsds )++; 1354 id -> sdumb = `SDodex (id->id, `SDidtef (id-> sds_id )); 1355 us = `SDwreda ( id -> sds_id , ig , NULL , dims , da ); 1357 if( ig != igS ) 1358 ` ( ig ); 1359  us ; 1360 } } 1382 t32 $SDSgA٩iSize (* fame ) 1384 t32 f ; 1385 feID * id = `gFeID ( fame ); 1386 if( id -> acssags == DFACC_RDONLY ) 1388 if( id -> sds_id <0) 1389 id -> sds_id = `SD (id->id,id-> sdumb ); 1390 f = `SDidtef ( id -> sds_id ); 1391  `DFANgbn ( id -> fame , DFTAG_NDG , f ); 1392 } } 1424 t32 $SDSgA٩i (* fame ,* n٩i , t32 maxn ) 1426 t32 f ; 1427 feID * id = `gFeID ( fame ); 1428 if( id -> acssags == DFACC_RDONLY ) 1430 if( id -> sds_id <0) 1431 id -> sds_id = `SD (id->id,id-> sdumb ); 1432 f = `SDidtef ( id -> sds_id ); 1433  `DFANgb ( id -> fame , DFTAG_NDG , f , n٩i , maxn ); 1434 } } 1460 t32 $SDSaddA٩i (* fame ,* n٩i ) 1462 t32 f ; 1463 feID * id = `gFeID ( fame ); 1464 if( id -> acssags == DFACC_RDONLY ) 1466 if( id -> sds_id <0) 1467 id -> sds_id = `SD (id->id,id-> sdumb ); 1468 f = `SDidtef ( id -> sds_id ); 1469  `DFANpuab ( id -> fame , DFTAG_NDG , f , n٩i ); 1470 } } 1495 t32 $SDSgNumAribs (* fame ) 1497  ljribs ; 1498 feID * id = `gFeID ( fame ); 1499 if( id -> sds_id >=0) 1500  id -> ljrib ; 1503 } } 1552 t32 $SDSwreArib (* fame ,* ibme , 1553 t32 numbty ,t32 mts , VOIDP bufr ) 1555 t32 f ; 1556 feID * id = `gFeID ( fame ); 1557 if( id -> acssags == DFACC_RDONLY ) 1559 if( id -> sds_id <0) 1566  `SDr ( id -> sds_id , ibme , numbty , mts , bufr ); 1567 } } 1620 t32 $SDSadArib (* fame ,* ibme , t32 mts , VOIDP bufr ) 1622  us ; 1623 t32 f ; 1624  dex ; 1625 t32 , cou , v ; 1626 feID * id = `gFeID ( fame ); 1627 if( id -> sds_id <0) 1628 id -> sds_id = `SD (id->id,id-> sdumb ); 1629 if( id -> sds_id <0) 1631 dex = `SDfd ( id -> sds_id , ibme ); 1634 us = `SDfo ( id -> sds_id , dex , ibme ,& ,& cou ); 1635 if( us <0) 1636  us ; 1637 if( cou > mts ){ 1638 * tmpda =(*) `mloc ( cou * `DFKNTsize ( )); 1639 v = `SDad ( id -> sds_id , dex , tmpda ); 1640 `bcy ( tmpda , bufr , `DFKNTsize ( )* mts ); 1641 ` ( tmpda ); 1648 v = `SDad ( id -> sds_id , dex , bufr ); 1649  ( v >=0)? cou :rtval; 1650 } } 1695 t32 $SDSfdAribInfo (* fame ,* ibme , 1696 t32 * numbty ,t32 * mts ) 1698 t32 f ; 1699  dex ; 1700 feID * id = `gFeID ( fame ); 1701 if( id -> sds_id <0) 1702 id -> sds_id = `SD (id->id,id-> sdumb ); 1703 if( id -> sds_id <0) 1705 dex = `SDfd ( id -> sds_id , ibme ); 1706  `SDfo ( id -> sds_id , dex , ibme , numbty , mts ); 1707 } } 1756 t32 $SDSgAribInfo (* fame , t32 dex ,* ibme , 1757 t32 * numbty ,t32 * mts ) 1759 t32 f ; 1760 feID * id = `gFeID ( fame ); 1761 if( id -> sds_id <0) 1762 id -> sds_id = `SD (id->id,id-> sdumb ); 1763 if( id -> sds_id <0) 1765  `SDfo ( id -> sds_id , dex , ibme , numbty , mts ); 1766 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/sds.h 1 #ide __SDS_H_ 2  #__SDS_H_ ) 4 #i defed ( IO_NCSAIO )||defed( IO_OLDNCSA ) 6 #ide ANSI 7 #i defed ( __STDC__ ||defed( __lulus )||defed( _LANGUAGE_C_PLUS_PLUS ) 8  #ANSI ) 12 #ifde ANSI 13  #CPROTO ( x ) x 15  #CPROTO ( x () ) 18  ~ 20  ~ 30  SDSdive CPROTO ((* fame )); 31  SDSaive CPROTO ((* fame )); 37  SDSݒ CPROTO ((* fame ,* acss )); 38  SDSo CPROTO ((* fame )); 39  SDSoA CPROTO (()); 40  SDSush CPROTO ((* fame )); 41  SDSpurge CPROTO ((* fame )); 48  SDSek CPROTO ((* fame , um )); 49 t32 SDSekName CPROTO ((* fame ,* me )); 50  #SDSgLoti ( x `SDSgIndex (x) ) 51 t32 SDSgIndex CPROTO ((* fame )); 52 t32 SDSisCod CPROTO ((* fame )); 60  SDSgFeInfo CPROTO ((* fame , t32 * nsds , i32 * ljrib )); 61 t32 SDSgDaName CPROTO ((* fame ,* me )); 62 t32 SDSgNumDats CPROTO ((* fame )); 63  SDSgDims CPROTO ((* fame ,* dame , 64 t32 * nk ,t32 * dims )); 65 t32 SDSgNT CPROTO ((* fame )); 66  SDStNT CPROTO ((* fame , t32 numbty )); 67  SDScompuSize CPROTO (( t32 nk ,t32 * dims ,t32 numbty )); 74  SDSadDa CPROTO ((* fame , 75 t32 nk ,t32 * dims , VOIDP da )); 76  SDSadChunk CPROTO ((* fame , t32 nk ,t32 * dims , 77 t32 * ig ,t32 * ride , VOIDP da )); 82 t32 SDSloDat CPROTO ((* fame ,* dame , 83 t32 nk ,t32 * dims )); 84  SDSwreDa CPROTO ((* fame ,* dame , 85 t32 nk ,t32 * dims , VOIDP da )); 86  SDSwreChunk CPROTO ((* fame , 87 t32 nk ,t32 * dims , 88 t32 * ig ,t32 * ride , VOIDP da )); 91 t32 SDSaddA٩i CPROTO ((* fame ,* n٩i )); 92 t32 SDSgA٩iSize CPROTO ((* fame )); 93 t32 SDSgA٩i CPROTO ((* fame ,* n٩i ,t32 maxn )); 97 t32 SDSgNumAribs CPROTO ((* fame )); 98 t32 SDSwreArib CPROTO ((* fame ,* ibme , 99 t32 numbty ,t32 mts , VOIDP bufr )); 102 t32 SDSadArib CPROTO ((* fame ,* ibme , 103 t32 mts , VOIDP bufr )); 104 t32 SDSfdAribInfo CPROTO ((* fame ,* ibme , 105 t32 * numbty , i32 * mts )); 106 t32 SDSgAribInfo CPROTO ((* fame ,t32 dex ,* ibme , 107 t32 * numbty , i32 * mts )); 109 t32 SDSgDaSs CPROTO ((* fame ,* b ,* uns , 110 * fm , * codsys ,  n )); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/sfcIndex.cpp 18  ~"sfcIndex.h " 32 sfcIndex cڡ & gsfcIndex :: ݔ (sfcIndex cڡ & h ) 34 if( this !& h ) 36 BVec :: ݔ =( h ); 37 gsfcdim = h . sfcdim ; 38 gsfevs = h . sfevs ; 39 gsfcba = h . sfcba ; 40 gsfcbaw = h . sfcbaw ; 41 gsfcdigw = h . sfcdigw ; 44 (* gthis ); 59  gsfcIndex :: ݔ =( sfcIndex cڡ & h ) const 61 #ifde DEBUG_PRINT 62 as ( sfcdim = h .sfcdim && 63 sfevs = h .sfclevs && 64 sfcba = h .sfcbase); 66 if( gthis =& h ) (1); 67  ( ( gBVec :: ݔ ==( h )) ? 1 : 0 ); 82  gsfcIndex :: ݔ > ( sfcIndex cڡ & h ) const 84 #ifde DEBUG_PRINT 85 as ( sfcdim = h .sfcdim && 86 sfevs = h .sfclevs && 87 sfcba = h .sfcbase); 89 if( gthis =& h ) (0); 90  ( ( gBVec :: ݔ >( h )) ? 1 : 0 ); 105  gsfcIndex :: ݔ < ( sfcIndex cڡ & h ) const 107 #ifde DEBUG_PRINT 108 as ( sfcdim = h .sfcdim && 109 sfevs = h .sfclevs && 110 sfcba = h .sfcbase); 112 if( gthis =& h ) (0); 113  ( ( gBVec :: ݔ <( h )) ? 1 : 0 ); 128  gsfcIndex :: ݔ !( sfcIndex cڡ & h ) const 130 #ifde DEBUG_PRINT 131 as ( sfcdim = h .sfcdim && 132 sfevs = h .sfclevs && 133 sfcba = h .sfcbase); 135 if( gthis =& h ) (0); 136  ( ( gBVec :: ݔ !=( h )) ? 1 : 0 ); 151  gsfcIndex :: ݔ >( sfcIndex cڡ & h ) const 153 #ifde DEBUG_PRINT 154 as ( sfcdim = h .sfcdim && 155 sfevs = h .sfclevs && 156 sfcba = h .sfcbase); 158 if( gthis =& h ) (1); 159  ( ( gBVec :: ݔ >=( h )) ? 1 : 0 ); 174  gsfcIndex :: ݔ <( sfcIndex cڡ & h ) const 176 #ifde DEBUG_PRINT 177 as ( sfcdim = h .sfcdim && 178 sfevs = h .sfclevs && 179 sfcba = h .sfcbase); 181 if( gthis =& h ) (1); 182  ( ( gBVec :: ݔ <=( h )) ? 1 : 0 ); 200  gsfcIndex :: $sfcGDig (cڡ  v ) const 202 #ifde DEBUG_PRINT 203 `as ( v >0 &&ev<= sfevs ); 205  dig = `IsީeB (( v -1)* sfcdigw ,sfcdigitw); 206  dig ; 207 } } 225  gsfcIndex :: $sfcSDig (cڡ  v , 226 cڡ  dig ) 228 #ifde DEBUG_PRINT 229 `as ( v >0 &&ev<= sfevs ); 232  i =0;i< sfcdigw ;i++) 233 if(( dig >>( sfcdigw -1- i ) & 1)) 234 `sfcSDigB ( v , i ); 236 `sfcUntDigB ( v , i ); 237 } } 255  gsfcIndex :: $sfcUntDig (cڡ  v ) 257 #ifde DEBUG_PRINT 258 `as ( v >0 &&ev<= sfevs ); 261  i =0;i< sfcdigw ;i++) 262 `sfcUntDigB ( v , i ); 263 } } 281  gsfcIndex :: $sfcMaxDig (cڡ  v ) 283 #ifde DEBUG_PRINT 284 `as ( v >0 &&ev<= sfevs ); 287  i =0;i< sfcdigw ;i++) 288 `sfcSDigB ( v , i ); 289 } } 309  gsfcIndex :: $sfcSwDigWd (cڡ  v , 310 cڡ  pos1 , 311 cڡ  pos2 ) 314 #ifde DEBUG_PRINT 315 `as ( v >0 &&ev<= sfevs && 316 pos1 >=0 &&os1<=( sfcdigw - sfcbaw ) && 317 pos2 >=0 &&os2<=( sfcdigw - sfcbaw )); 320 i( pos1 = pos2 ) ; 322  off1 = (( v -1)* sfcdim + pos1 )* sfcbaw ; 323  off2 = (( v -1)* sfcdim + pos2 )* sfcbaw ; 325  i =0;i< sfcbaw ;i++) 326 `SwB ( off1 + i , off2 +i); 327 } } 346  gsfcIndex :: $sfcToggDigWd (cڡ  v , 347 cڡ  pos ) 350 #ifde DEBUG_PRINT 351 `as ( v >0 &&ev<= sfevs && 352 pos >=0 &&os<= sfcdigw - sfcbaw ); 355  i =0;i< sfcbaw ;i++) 356 `sfcToggDigB ( v , pos + i ); 357 } } 372  gsfcIndex :: $sfcGDigAay (* digs ) const 374  i =1;i<= sfevs ;i++) 375 digs [ i -1] = `sfcGDig (i); 376 } } 391  gsfcIndex :: $sfcGIndex () const 393  dig = 0; 394 if( sfcba == 2) 396  i =1;i<= sfevs ;i++) 397 dig = (dig<< sfcdim | `sfcGDig ( i ); 401  off = 0; 402  i = 0, j = 0; 403  i =1;i<= sfevs ;i++) { 404 off = ( i -1)* sfcdigw ; 405  j =0;j< sfcdim ;j++) 406 dig = dig* sfcba + 407 `IsީeB ( off +( j * sfcbaw ),sfcbasew); 411  dig ; 412 } } 428  gsfcIndex :: $sfcGIndex (cڡ  v ) const 430 #ifde DEBUG_PRINT 431 `as ( v > 0 &&ev < sfevs ); 434  dig = 0; 435 if( sfcba == 2) 437  i =1;i<= v ;i++) 438 dig = (dig<< sfcdim | `sfcGDig ( i ); 440  ( dig ); 448  off = 0; 449  i = 0, j = 0; 450  i =1;i<= v ;i++) { 451 off = ( i -1)* sfcdigw ; 452  j =0;j< sfcdim ;j++) 453 dig = dig* sfcba + 454 `IsީeB ( off +( j * sfcbaw ),sfcbasew); 463  dig ; 465 } } 480  gsfcIndex :: $sfcGIndex (cڡ  v , cڡ  ev ) const 482 #ifde DEBUG_PRINT 483 `as ( v > 0 &&ev < sfevs ); 486  dig = 0; 487 if( sfcba == 2) 489  i = v - ev +1;i<=lev;i++) 490 dig = (dig<< sfcdim | `sfcGDig ( i ); 492  dig ; 496  off = 0; 497  i = 0, j = 0; 498  i = v - ev +1;i<=lev;i++) { 499 off = ( i -1)* sfcdigw ; 500  j =0;j< sfcdim ;j++) 501 dig = dig* sfcba + 502 `IsީeB ( off +( j * sfcbaw ),sfcbasew); 505  dig ; 507 } } 522  gsfcIndex :: $sfcSIndex (cڡ  dex ) 524  mask = ~((~0)<< sfcdigw ); 526  i =1;i<= sfevs ;i++) 527 `sfcSDig ( i ,( dex >> sfcdigw *( sfevs -i))& mask ); 528 } } 543  gsfcIndex :: $sfcSIndex (cڡ  dex , cڡ  v ) 545 #ifde DEBUG_PRINT 546 `as ( v > 0 &&ev < sfevs ); 549  mask = ~((~0)<< sfcdigw ); 551  i =1;i<= v ;i++) 552 `sfcSDig ( i ,( dex >> sfcdigw *( v -i))& mask ); 553 } } 569  gsfcIndex :: $sfcSIndex (cڡ  dex , cڡ  v , 570 cڡ  ev ) 572 #ifde DEBUG_PRINT 573 `as ( v > ev &&ev <= sfevs ); 576  mask = ~((~0)<< sfcdigw ); 578  i = ev -1;i>=0;i--) 579 `sfcSDig ( v - i ,( dex >>( sfcdigw *i))& mask ); 580 } } 592  gsfcIndex :: $sfcMaxIndex (cڡ  v ) 594 #ifde DEBUG_PRINT 595 `as ( v > 0 &&ev < sfevs ); 597  i =1;i<= v ;i++ `sfcMaxDig (i); 598 } } 619  gsfcIndex :: $sfcCeLocNum (cڡ * cods ) 621 `RetVec (); 622  i = 0, j = 0, k = 0; 623  i = sfevs ;i>0;i--) 624  j =0;j< sfcdim ;j++) 625  k =0;k< sfcbaw ;k++) 626 i( cods [ j ]>>(( sfevs - i )* sfcbaw +(sfcbaw- k -1)) & ()1) 627 `sfcSDigB ( i , j * sfcbaw + k ); 628 } } 650  gsfcIndex :: $sfcGCods (* cods ) const 652  i = 0, j = 0; 653  i =0;i< sfcdim ;i++) 654 cods [ i ] = 0; 656  off =0; 657  i =1;i<= sfevs ;i++) { 658 off = ( i -1)* sfcdigw ; 659  j =0;j< sfcdim ;j++) { 660 cods [ j ] = ((cods[j])<< sfcbaw ) | 661 `IsީeB ( off +( j * sfcbaw ),sfcbasew); 664 } } 666 goam & gݔ << (oam& gos , sfcIndex cڡ & gsi ) 668 i(& gsi =( sfcIndex *) NULL  os ; 669  gi =1;i<= si . sfevs ;i++) 670 gos << gsi . sfcGIndex ( i ,1); 671  gos ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/src/sfcIndex.h 1 #ide _uded_sfcIndex_h 2  #_uded_sfcIndex_h ) 21  ~"BVec.h " 22  ~ 24 #ide log2 25  #log2 ( x ( `log (x))/og(2.0)) ) 28 #ide STAND_ALONE 29  ~"ACEDeus.h " 32 #ide sfcBa 33  #sfcBa (2) ) 36 as csfcIndex : public BVec 38 nd oam & ݔ <<(oam&, sfcIndex const &); 40  msfcbaw ; 41  msfcdigw ; 43 meed : 44  sfcba ; 45  msfcdim ; 46  msfevs ; 48 mpublic : 49 le $sfcIndex () 50 : `BVec (), 51 `sfcdim (0), `sfevs (0), `sfcba (0), 52 `sfcbaw (0), `sfcdigw (0) {} 54 le $sfcIndex (cڡ  dim , cڡ  vs , 55 cڡ  ba = sfcBa ) 56 : `BVec ( vs * dim *() ` ( `log2 (() ba ))), 57 `sfcdim ( dim ), `sfevs ( vs ), $sfcba ( ba ) 58 { sfcbaw = () ` ( `log2 (() ba )); 59 sfcdigw = sfcdim * sfcbaw ; } } 61 le $sfcIndex ( sfcIndex cڡ & h ) 62 : `BVec (( BVec cڡ &) h ), 63 `sfcdim ( h . sfcdim ), `sfevs (h. sfevs ), 64 `sfcba ( h . sfcba ), `sfcbaw (h. sfcbaw ), 65 $sfcdigw ( h . sfcdigw { } } 67 sfcIndex cڡ & gݔ (sfcIndex cڡ & h ); 69  gݔ =( sfcIndex cڡ & h ) const; 70  gݔ !( sfcIndex cڡ & h ) const; 71  gݔ > ( sfcIndex cڡ & gh ) const; 72  gݔ < ( sfcIndex cڡ & gh ) const; 73  gݔ >( sfcIndex cڡ & h ) const; 74  gݔ <( sfcIndex cڡ & h ) const; 77  $sfcGDig (cڡ  v ) const; 78  `sfcSDig (cڡ  v , cڡ  dig ); 79  `sfcUntDig (cڡ  v ); 80  `sfcMaxDig (cڡ  v ); 83  `sfcSwDigWd (cڡ  v , cڡ  pos1 , cڡ  pos2 ); 84  `sfcToggDigWd (cڡ  v , cڡ  pos ); 87  $sfcGIndex () const; 88  $sfcGIndex (cڡ  v ) const; 89  $sfcGIndex (cڡ  v , cڡ  ev ) const; 91  `sfcSIndex (cڡ  dex ); 92  `sfcSIndex (cڡ  dex , cڡ  v ); 93  `sfcSIndex (cڡ  dex , cڡ  v , cڡ  ev ); 94  `sfcMaxIndex (cڡ  v ); 97  `sfcCeLocNum (cڡ * cods ); 98  $sfcGCods (* cods ) const; 99  $sfcGDigAay (* digs ) const; 102 le  $sfcGBaW () const 103 { sfcbaw ; } } 104 le  $sfcGDigW () const 105 { sfcdigw ; } } 107 give : 108 le  $sfcSDigB (cڡ  v , cڡ  pos ) 109 { `SB (( v -1)* sfcdigw + pos ); } } 110 le  $sfcUntDigB (cڡ  v , cڡ  pos ) 111 { `UntB (( v -1)* sfcdigw + pos ); } } 112 le  $sfcToggDigB (cڡ  v , cڡ  pos ) 113 { `ToggB (( v -1)* sfcdigw + pos ); } } 117 oam & ݔ << (oam& os , sfcIndex cڡ & si ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/utilities/InitChar.c 1 #ide _uded_InCh_c 2  #_uded_InCh_c ) 36  ~"InCh.h " 41 gme < ass gGFTy > 42  InChGF (3)( gGridHrchy & gGH , 43 GridFuni (3)< gGFTy >& gGF , 44 cڡ  gIDENT ) 46 cڡ  gpf = GF . g (); 47 SPrgFg ( GF , ACEF ); 48 cڡ  gnk = 3; 49 cڡ  gum = comm_rvi :: oc_num (); 50 cڡ  gmaxdex = GH . maxdex ()+1; 51 GDB_Iai ** ggdb_ad_fo = 0; 52 GDB_Iai * ggdbi = 0; 54  gv =0;ev < FeLev ( GH );evel++) { 55 cڡ  gtime = CutTime ( GH , v ); 56 fܮl ( GF , time , v , c ) { 57 GF ( time , v , c , ACE_Ma ( GFTy ACEF ; 58 GridDaBlock (3)< gGFTy >& ggdb = GF . mygdb ( time , v , c ); 59  gr =0;r<2* gnk ;r++) { 60 cڡ gBBox & gbb = gdb . bndrybox ( r , IDENT ); 61 i( gv > 0 && ggdb . has_adtiveboundy ( r )) { 62 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACE_AdtiveBoundy , bb ); 64 i( ggdb . has_exboundy ( r )) { 65 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACE_ExBoundy , bb ); 67 i( gv > 0 && ggdb . g_gho ( r )) { 68 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACENu , 69 gdb . g_ghobox ( r , IDENT )); 70 cڡ  gidx1 = ( ACEMaxDs * maxdex * r ) + ( maxindex * 0 ); 71 cڡ  gidx2 = ( ACEMaxDs * maxdex * r ) + ( maxindex * 1 ); 91 } d_fܮl 92 Sync ( GF , time , v , IDENT ); 94 SPrgFg ( GF , pf ); 100 gme < ass gGFTy > 101  InChGF (2)( gGridHrchy & gGH , 102 GridFuni (2)< gGFTy >& gGF , 103 cڡ  gIDENT ) 105 cڡ  gpf = GF . g (); 106 SPrgFg ( GF , ACEF ); 107 cڡ  gnk = 2; 108 cڡ  gum = comm_rvi :: oc_num (); 109 cڡ  gmaxdex = GH . maxdex ()+1; 110 GDB_Iai ** ggdb_ad_fo = 0; 111 GDB_Iai * ggdbi = 0; 113  gv =0;ev < FeLev ( GH );evel++) { 114 cڡ  gtime = CutTime ( GH , v ); 115 fܮl ( GF , time , v , c ) { 116 GF ( time , v , c , ACE_Ma ( GFTy ACEF ; 117 GridDaBlock (2)< gGFTy >& ggdb = GF . mygdb ( time , v , c ); 118  gr =0;r<2* gnk ;r++) { 119 cڡ gBBox & gbb = gdb . bndrybox ( r , IDENT ); 120 i( gv > 0 && ggdb . has_adtiveboundy ( r )) { 121 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACE_AdtiveBoundy , bb ); 123 i( ggdb . has_exboundy ( r )) { 124 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACE_ExBoundy , bb ); 126 i( gv > 0 && ggdb . g_gho ( r )) { 127 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACENu , 128 gdb . g_ghobox ( r , IDENT )); 129 cڡ  gidx1 = ( ACEMaxDs * maxdex * r ) + ( maxindex * 0 ); 130 cڡ  gidx2 = ( ACEMaxDs * maxdex * r ) + ( maxindex * 1 ); 150 } d_fܮl 151 Sync ( GF , time , v , IDENT ); 153 SPrgFg ( GF , pf ); 159 gme < ass gGFTy > 160  InChGF (1)( gGridHrchy & gGH , 161 GridFuni (1)< gGFTy >& gGF , 162 cڡ  gIDENT ) 164 cڡ  gpf = GF . g (); 165 SPrgFg ( GF , ACEF ); 166 cڡ  gnk = 1; 167 cڡ  gum = comm_rvi :: oc_num (); 168 cڡ  gmaxdex = GH . maxdex ()+1; 169 GDB_Iai ** ggdb_ad_fo = 0; 170 GDB_Iai * ggdbi = 0; 172  gv =0;ev < FeLev ( GH );evel++) { 173 cڡ  gtime = CutTime ( GH , v ); 174 fܮl ( GF , time , v , c ) { 175 GF ( time , v , c , ACE_Ma ( GFTy ACEF ; 176 GridDaBlock (1)< gGFTy >& ggdb = GF . mygdb ( time , v , c ); 177  gr =0;r<2* gnk ;r++) { 178 cڡ gBBox & gbb = gdb . bndrybox ( r , IDENT ); 179 i( gv > 0 && ggdb . has_adtiveboundy ( r )) { 180 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACE_AdtiveBoundy , bb ); 182 i( ggdb . has_exboundy ( r )) { 183 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACE_ExBoundy , bb ); 185 i( gv > 0 && ggdb . g_gho ( r )) { 186 ( ggdb . gridda ( IDENT )). equs (( GFTy ) ACENu , 187 gdb . g_ghobox ( r , IDENT )); 188 cڡ  gidx1 = ( ACEMaxDs * maxdex * r ) + ( maxindex * 0 ); 189 cڡ  gidx2 = ( ACEMaxDs * maxdex * r ) + ( maxindex * 1 ); 209 } d_fܮl 210 Sync ( GF , time , v , IDENT ); 212 SPrgFg ( GF , pf ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/utilities/InitChar.h 1 #ide _uded_InCh_h 2  #_uded_InCh_h ) 36  ~ 38 #ide InChGFName 39  #InChGF ( ty `me2 ( InChGF ,ty) ) 40  #InChGFName ) 46 gme < ass gGFTy > 47  InChGF (3)( gGridHrchy & gGH , 48 GridFuni (3)< gGFTy >& gGF , 49 cڡ  gIDENT ); 54 gme < ass gGFTy > 55  InChGF (2)( gGridHrchy & gGH , 56 GridFuni (2)< gGFTy >& gGF , 57 cڡ  gIDENT ); 62 gme < ass gGFTy > 63  InChGF (1)( gGridHrchy & gGH , 64 GridFuni (1)< gGFTy >& gGF , 65 cڡ  gIDENT ); 67 #i defed ( Wt_c_fes || (!defed( RS6000 && !defed( SPX )) 68  ~"InCh.c " @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/GrACE/utilities/generic.h 19 #ide gic_h 20  #gic_h 1 ) 26  #me2 ( a , b `gEnErIc2 ,b) ) 27  #gEnErIc2 ( a , b ## ) b 29  #me3 ( a , b , c `gEnErIc3 ,b,c) ) 30  #gEnErIc3 ( a , b , c ## b ## ) c 32  #me4 ( a , b , c , d `gEnErIc4 ,b,c,d) ) 33  #gEnErIc4 ( a , b , c , d ## b ## c ## ) d 35  #GENERIC_STRING ( a `gEnErIcStRiNg ) ) 36  #gEnErIcStRiNg ( a #a ) 38  #dee ( as , t `me2 (as, dee )) ) 39  #dee2 ( as , t1 , t2 `me2 (as, dee2 )1,t2) ) 41  #imemt ( as , t `me2 (as, imemt )) ) 42  #imemt2 ( as , t1 , t2 `me2 (as, imemt2 )1,t2) ) 45 (* tGPT )(,*); 47  #t_hdr ( g , ty , x `me4 ( t_ ,ty,g, _hdr )(x) ) 49  #rhdr ( g , ty `me3 y,g, hdr ) ) 51  #Δr ( g , ty , a , b (* `rhdr (g,ty)),b) ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/include/DefaultBC.h 2 #ide __DeuBCHSn__ 3  #__DeuBCHSn__ ) 10  my_deu_bc_route * da , cڡ * low_bound , 11 cڡ * u_bound , cڡ * she , 12 cڡ * nv , 13 cڡ * wdow_low_bound , 14 cڡ * wdow_u_bound , 15 cڡ * wdow_she , 16 * ur_def_da , * ur_def_gc ) ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/include/DefaultInterp.h 9 #ide __DeuIpHSn__ 10  #__DeuIpHSn__ ) 12  my_deu_gi_route * dac , cڡ * low_boundc , 13 cڡ * u_boundc , cڡ * shec , 14 cڡ * nvc , 15 * daf , cڡ * low_boundf , 16 cڡ * u_boundf , cڡ * shef , 17 cڡ * nvsf , 18 cڡ * wdow_low_bound , 19 cڡ * wdow_u_bound , 20 cڡ * wdow_she , cڡ * em_li , 21 * ur_def_da , cڡ * ur_def_gc ) ; 24  my_deu_rii_route * daf , cڡ * low_boundf , 25 cڡ * u_boundf , cڡ * shef , 26 cڡ * nvf , 27 * dac , cڡ * low_boundc , 28 cڡ * u_boundc , cڡ * shec , 29 cڡ * nvsc , 30 cڡ * wdow_low_bound , 31 cڡ * wdow_u_bound , 32 cڡ * wdow_she , cڡ * em_li , 33 * ur_def_da , cڡ * ur_def_gc ) ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/include/DefaultTimeInterp.h 2 #ide __DeuTimeIpHSn__ 3  #__DeuTimeIpHSn__ ) 11  my_deu_TimeIp_route * de , cڡ * bc , cڡ * pubc , 12 cڡ * s , cڡ * nems1 , 13 * da_d , cڡ * _d , 14 cڡ * pu_d , cڡ * s_d , 15 cڡ * nems_d , cڡ * ac_o , 16 * da_w , cڡ * _w , 17 cڡ * pu_w , cڡ * s_w , 18 cڡ * nems_w , cڡ * ac_w , 19 cڡ * b_w , cڡ * pub_w , cڡ * s_w , 20 cڡ * do_em ) ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/include/GraceComponent.h 20 #ide __GCompڒtHSn__ 21  #__GCompڒtHSn__ ) 24  ~"c.h " 25  ~"dPts.h " 28  ~"jc++/jc++.h " 29  ~"jc++/ut/jc++ut.h " 30  ~"ms/msSr.h " 31  ~"pt/sutIs.h " 34  ~"GLib.h " 40  ~"VeFldVb_JRIm.h " 43  ~ 44  ~ 45  ~ 46 usg mea gd ; 49  ~"IpީiPt.h " 50  ~"BCPt.h " 51  ~"TimeIpީiPt.h " 54  ~"AMRPt.h " 61 as cVeFldVbRecd 63 mive : 64 rg me_of_VFV ; 65 VeFldVb_JR * mpVb ; 67 mpublic : 75 $VeFldVbRecd () 76 { pVb = NULL ; me_of_VFV . `nd (""); } 81 $VeFldVbRecd cڡ * pName , VeFldVb_JR * pVFV ) 82 { pVb = pVFV ; me_of_VFV . `nd pName ) ; } } 89 ~ $VeFldVbRecd () 90 { de & me_of_VFV ; d pVb ; } } 93 rg $g_me () 94 {  ( me_of_VFV ) ; } } 97 VeFldVb * $g_VeFldVb () 98 { VeFldVb * = dymic_ ( pVb ) ; 99  ) ; } } 104  ~"CONV_NS.h " 110 ass gGCompڒt : public vtu CONV_NS ( Compڒt ), 111 public vtu gAMRPt 113 gpublic : 115 GCompڒt (); 116 gvtu ~ GCompڒt (); 117 vtu  tSvis CONV_NS ( Svis * pSvc ); 122  GC_g_oc_me () ; 123  GC_g_oc_wld () ; 124 bo GC_is_a_compu_node () ; 125 bo GC_is__io_node () ; 126 bo GC_is_this_a_compu_node ( oc_id ) ; 127 bo GC_is_this__io_node ( oc_id ) ; 128  GC_g_ma_node_nk () ; 134  GC_tup_GridHrchy  dim ,  maxvs , MeshClotiTy m ) ; 137  GC_t_ba_grid * pBb , * pShe ); 148 VeFldVb * GC_tup_ve cڡ * pName ,  t_ ,  s_ , 149  nvs , MeshClotiTy T , 150  time_s_high ,  time_s_low , 151 GridShadowTy has_shadow ); 153 vtu  GC_g_time_c () ; 155 vtu  GC_g_a_c () ; 157 vtu  GC_g_grid_cou () ; 161  GC_t_femt_  ); 165 * GC_g_doma_exs () ; 168 * GC_g_cr_suti () ; 171  GC_g_femt_ () ; 174  GC_g_fe_v () ; 177  GC_g_max_vs () ; 180  GC_g_dimsi () ; 187  GC_t_gi_func_deu Ipުt pPF ) ; 189  GC_t_rii_func_deu Ipުt pRF ) ; 196  GC_compo_hrchy () ; 200  GC_compo_hrchy (); 204  GC_checkpot_to_fe (* pCome_fame ); 207  GC_t_om_fe * pFame ); 213  GC_cut_time  grid_v ,  idt ); 216  GC_time_size  grid_v ,  idt ); 219  GC_s_comed  grid_v ,  idt ); 222  GC_t_cut_time  time ,  grid_v ,  idt ); 225  GC_emt_time_v  grid_v ,  idt ); 234  GC_Sync  time ,  grid_v ) ; 237  gGCompڒt :: GC_Shutdown_IO () ; 242  GC_grid_above_thshd VeFldVb * E ,  grid_v , 243  thshd ); 258 TyOfBC GC_g_boundy_ty_deu (); 262  GC_g_boundy_width_deu (); 271  GC_g_adt_boundy_width_deu (); 275 TyOfAdtBoundy GC_g_adt_boundy_ty_deu () ; 278 MPI_Comm GC_g_compu_nodes_communit () ; 280 give : 283 GridHrchy * pGH ; 289 gve < gVeFldVbRecd *> gAayOfVFV ; 290  gdimsis , gmax_vs ; 293  gdoma_exs [6] ; 294  gcr_s [3] ; 297 bo gis_lized , ggi_lized , grii_lized ; 298 bo gis_hod ; 299 bo gboundy_cdi_funi_lized ; 304  gmesh_cloc_ty ; 305  gdeu_boundy_width ; 306 TyOfBC gdeu_boundy_cdi ; 307 TyOfAdtBoundy gdeu_adtive_bndry_ty ; 310 CONV_NS ( Svis * gpSvc ; 311 IpީiPt * gpIpPt ; 312 BoundyCdiPt * gpBCPt ; 313 TimeIpީiPt * gpTIPt ; 316  gblock_width , gbufr_width ; 317  gm_eff ; 318  gtime_c , ga_c , ggrid_cou ; 321 CfigubPamPt * g ; 322 IPam * gDeu_Boundy_Cdi_Ty_Pam , * gBndry_Width_Pam , 323 * gDeu_Adtive_Bndry_Ty_Pam , * gBlock_Width_Pam , 324 * gBufr_Width_Pam ; 325 DoubPam * gM_Eff_Pam ; 333  tupPams (); 336  () ; 343  GC_Clu VeFldVb * E ,  time ,  v ,  thshd , 344 BBoxLi & bbli , BBoxList& bblist); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/include/GraceLib.h 4 #ide __GLibHSn__ 5  #__GLibHSn__ ) 8  ~"GrACE.h " 11  ~"GrACEIO.h " 14  ~ 15  ~ @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/include/VectorFieldVariable_JRImpl.h 31  ~"VeFldVb.h " 32  ~"GCompڒt.h " 34 #ide __VeFldVb_JR__ 35  #__VeFldVb_JR__ ) 37  ~ 38 usg mea gd ; 45 as cVeFldVb_JR : public vtu VeFldVb 47 public : 49 nd ass GCompڒt ; 54 VeFldVb_JR (cڡ * me ,  dim , GridHrchy * pGH ,  nvs , 55  t_ ,  s_ , MeshClotiTy T , 56  maxvs ,  time_s_high , 57  time_s_low ,  has_shadow = ACEHasShadow , 58  deu_bc = ZoGdNeumn , 59  deu_ad_bndry_ty = Ipީed ); 62 mvtu ~ VeFldVb_JR () ; 68 bo exis  t ,  v , 69  c ) ; 72  g_numb_of_comp_grids () ; 75  g_dims () ; 78  g_ve_size () ; 90 cڡ * g_low_bbc ( time ,  v ,  compڒt ,  idt ) ; 93 cڡ * g_u_bbc ( time ,  v ,  compڒt ,  idt ) ; 96 cڡ * g_da_y_size ( time ,  v ,  compڒt ,  idt ) ; 99 * g_da ( time ,  v ,  compڒt ,  idt ); 102 MeshClotiTy g_mesh_cloti_ty (); 104 cڡ * $g_me () const ; 108 TyOfBC `g_boundy_cdi_ty () ; 110  `t_boundy_cdi_ty TyOfBC T ) ; 112  `t_cڡ_v_dicht_bc  vue ) ; 116  `t_boundy_cdi_funi BoundyCdFuni BC_Func ) ; 119  `g_boundy_width () ; 122  `boundy_upde  time ,  v ,  idt ) ; 130  `g_adt_boundy_width (); 136  `t_gi_func Ipުt g_func ) ; 139  `t_rii_func Ipުt ri_func ) ; 142  `t_time_ުt TimeIpުt time__func ) ; 145  `ri ( time1 ,  v1 ,  time2 ,  v2 , * gs , 146  gt ,  idt ); 150  `g_cut_time ( f_v ,  idt ) ; 153  `emt_time  f_v ,  idt ) ; 160  `sw_time_vs  f_v ,  t1 ,  t2 ) ; 163  `cye_time_vs  v ) ; 166  `synchri ( time ,  f_v ,  idt ) ; 174  `wre_out_to_fe  cut_time , 175  cut_v , 176  compڒt , 177  idt ) ; 182  `lock (); 183  `uock (); 189  `fl_wh_cڡt  vue ,  t ,  v ,  idt ) ; 192  `add_cڡt  vue ,  t ,  v ,  idt ) ; 195  `muɝly_by_cڡt  vue ,  t ,  v ,  idt ); 198  $max_v cڡ  t , cڡ  v , cڡ  iv , cڡ  idt ) const ; 201  $m_v cڡ  t , cڡ  v , cڡ  iv , cڡ  idt ) const ; 204  $cd_nm cڡ  t , cڡ  v , cڡ  iv , cڡ  idt ) const ; 207  `g_max_ve (* max_vs , * size ) ; 210  `g_m_ve (* m_vs , * size ) ; 213  `g_abs_max_ve (* abs_max_vs , * size ) ; 216  `g_abs_m_ve (* abs_m_vs , * size ) ; 219  `g_max_ve__v (* max_vs , * size ,  v ) ; 222  `g_m_ve__v (* m_vs , * size ,  v ) ; 225  `g_abs_max_ve__v (* abs_max_vs , * size ,  v ) ; 228  `g_abs_m_ve__v (* abs_m_vs , * size ,  v ) ; 230 ive : 233 `GridFuni (1)<> * $g_1d_GridFuni () 234 {  ( pGf1d ) ; } 237 `GridFuni (2)<> * $g_2d_GridFuni () 238 {  ( pGf2d ) ; } } 241 GridFuni (3)<> * $g_3d_GridFuni () 242 {  ( pGf3d ) ; } } 250  lc_max__tch (* p_da , cڡ * p_s ) ; 252  lc_m__tch (* p_da , cڡ * p_s ) ; 254  lc_abs_max__tch (* p_da , cڡ * p_s ) ; 256  lc_abs_m__tch (* p_da , cڡ * p_s ) ; 258  $fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 260  ( iv * nz * ny * nx + k *ny*nx + j *nx + i ) ; 261 } } 271 bo gis_lized , gis_locked ; 272 * gexeme_vues ; 273  gdimsi , gboundy_width , gadt_boundy_width , gnumb_of_vs ; 274 MeshClotiTy gmesh_ty ; 275 TyOfBC gbc_ty ; 276 TyOfAdtBoundy gadt_boundy_ty ; 277 bo gis_hod ; 285 GridFuni (1)<> * gpGf1d ; 286 GridFuni (2)<> * gpGf2d ; 287 GridFuni (3)<> * gpGf3d ; 288 GridFuniVoid * gpGFV ; 292  t_grid_funi GridFuniVoid * pGF ) ; 294 Cods gCods_ubbc , gCods_lbbc , gCods_she ; 297 GridHrchy * gp_GridHrchy ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/Cluster1.cpp 22  ~"GrACE.h " 60  Clu1 ( GridDa (1)<> & ag , 61  Efficncy , 62  MWidth , 63  BufrWidth , 64 BBoxLi & su ) { 65 GridDa (1)<> wag ( ag . bbox ()); 66  gl =-1, gu =-1; 69 gwag = 0; 71 f_1 ( i , ag . bbox (),ag.bbox(). size ()) 72 i( ag ( i )) { 73 BBox whe (1, i ,i, ag . bbox (). size (0)); 74 gwhe . grow ( BufrWidth ); 75 gwag . equs (1.0, whe ); 77 gd_f ; 81 i( wag ewag. bbox (). low (0))) { 82 gl = wag . bbox (). low (0); 84  gi ; 85  gi = wag . bbox (). low (0)+wag.bbox(). size (0); 86 gi < gwag . bbox (). u (0); 87 gi + wag . bbox (). size (0)) { 88 i( wag ( i && !wag(i-wag. bbox (). size (0))) { 89 l = i ; 91 i(! wag ( i &&ewag(i-wag. bbox (). size (0))) { 92 gu = i - wag . bbox (). size (0); 93 i( gu - gl > MWidth ) { 94 BBox add (1, l , u , wag . bbox (). size (0)); 95 gsu . add (add); 99 i( gu < gl ) { 100 gu = wag . bbox (). u (0); 101 BBox add (1, l , u , wag . bbox (). size (0)); 102 gsu . add (add); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/Cluster3.cpp 20  ~"GrACE.h " 52  Clu2 ( GridDa (2)<> & ag , 53  Efficncy , 54  MWidth , 55  BufrWidth , 56 BBoxLi & Resu ) { 57 BBoxLi gResu3D ; 58 BBox _3d (3, ag . bbox (). low (0),flag.bbox().lower(1),0, 59 ag . bbox (). u (0),flag.bbox().upper(1),0, 60 ag . bbox (). size (0),flag.bbox().stepsize(1),1); 61 GridDa (2)<> wag ( ag . bbox ()); 62 GridDa (3)<> u_this ( _3d ); 63  Clu3R ( GridDa (3)<> & ag , , , BBoxLi &); 64  gagged_pots = 0; 65 gwag = 0; gu_this = 0; 67 BBox gbufr_bbox = ag . bbox (); 68 gbufr_bbox . grow (- BufrWidth ); 69 f_2 ( i , j , bufr_bbox , ag . size ()) 70 i( ag ( i , j )) { 71 gagged_pots ++; 72 BBox whe (2, i , j ,i,j, 73 ag . bbox (). size (0), 74 ag . bbox (). size (1)); 75 gwhe . grow ( BufrWidth ); 76 gwag . equs (1, whe ); 78 gd_f ; 80 i( gagged_pots ) { 81 f_2 ( i , j , ag . bbox (),ag. size ()) 82 u_this ( i , j ,0 wag (i,j); 83 gd_f ; 84 Clu3R ( u_this , Efficncy , MWidth , Resu3D ); 93  BBox * gtmpbb = Resu3D . f ();tmpbb;tmpbb=Resu3D. xt ()) { 94 BBox tmp2d (2, tmpbb -> low (),tmpbb-> u (),mpbb-> size ()); 95 gResu . add ( tmp2d ); 127  Clu3 ( GridDa (3)<> & ag , 128  Efficncy , 129  MWidth , 130  BufrWidth , 131 BBoxLi & Resu ) { 132 BBoxLi gtmesu , gsu ; 133 GridDa (3)<> wag ( ag . bbox ()); 134  Clu3R ( GridDa (3)<> & ag , , , BBoxLi &); 135  gagged_pots = 0; 136 gwag = 0; 139 BBox gbufr_bbox = ag . bbox (); 140 gbufr_bbox . grow (- BufrWidth ); 141 f_3 ( i , j , k , bufr_bbox , ag . size ()) 142 i( ag ( i , j , k )) { 143 gagged_pots ++; 144 BBox whe (3, i , j , k ,i,j,k, 145 ag . bbox (). size (0), 146 ag . bbox (). size (1), 147 ag . bbox (). size (2)); 148 gwhe . grow ( BufrWidth ); 149 gwag . equs (1, whe ); 151 gd_f ; 153 i( gagged_pots ) { 154 Clu3R ( wag , Efficncy , MWidth , Resu ); 187  Clu3R ( GridDa (3)<> & ag , 188  Efficncy , 189  MWidth , 190 BBoxLi & curOnThis ) { 191  Clu3R ( GridDa (3)<> & ag , , , BBoxLi &); 192  Clu_Pru ( GridDa (1)<> & sig , *, *, ); 193  Clu_Sli ( GridDa (1)<> & sig , *, *, ); 195  gBiggeEx = MWidth ; 196 BBoxLi gsu , gtmesu ; 198  gl [3], gu [3], gs [3]; 200  gi ; 201  gi =0;i<3;i++ gs [ i ] = ag . bbox (). size (i); 207 Aay (1)<> i_sig ( ag . bbox (). low (0), 208 ag . bbox (). u (0), 209 ag . bbox (). size (0)); 210 Aay (1)<> j_sig ( ag . bbox (). low (1), 211 ag . bbox (). u (1), 212 ag . bbox (). size (1)); 213 Aay (1)<> k_sig ( ag . bbox (). low (2), 214 ag . bbox (). u (2), 215 ag . bbox (). size (2)); 216 gi_sig = 0; 217 gj_sig = 0; 218 gk_sig = 0; 219 f_3 ( i , j , k , ag . bbox (), fg. size ()) 220 i_sig ( i + ag (i, j , k ); 221 j_sig ( j + ag ( i ,j, k ); 222 k_sig ( k + ag ( i , j ,k); 223 gd_f ; 226  gl , gu , gj , gjpu , gk , gkpu ; 227 Clu_Pru ( i_sig ,& l ,& u , BiggeEx * ag . bbox (). size (0)); 228 Clu_Pru ( j_sig ,& j ,& jpu , BiggeEx * ag . bbox (). size (1)); 229 Clu_Pru ( k_sig ,& k ,& kpu , BiggeEx * ag . bbox (). size (2)); 231 Cods (3, l , j , k ); 232 Cods pu (3, u , jpu , kpu ); 234 i(! (( g = ag . bbox (). low ()) && 235 ( pu = ag . bbox (). u ()))) { 236 Cods ps = Cods(3, s ); 237 BBox wB ( , pu , ps ); 238 GridDa (3)<> subgridag ( wB ); 241 gsubgridag = ag ; 243  gagged = 0; 244 f_3 ( i , j , k , subgridag . bbox (), subgridag. size ()) 245 gagged + subgridag ( i , j , k ); 246 d_f 247 i((() gagged / () gwB . size ()> Efficncy ) { 248 curOnThis . add ( wB ); 251 Clu3R ( subgridag , Efficncy , MWidth , curOnThis ); 257  gir =-1, gjr =-1, gkr =-1; 258  gii =-1, gji =-1, gki =-1; 259 Clu_Sli ( i_sig , & ii , & ir , BiggeEx * ag . bbox (). size (0)); 260 Clu_Sli ( j_sig , & ji , & jr , BiggeEx * ag . bbox (). size (1)); 261 Clu_Sli ( k_sig , & ki , & kr , BiggeEx * ag . bbox (). size (2)); 266 i( gii + gji + gki == -3) { 268 curOnThis . add ( ag . bbox ()); 273 BBox gdivme = ag . bbox (); 274 i( gir > gjr && i> gkr ) { 275 gl [0] = divme . low (0);[1]= divme.lower(1);[2] = divme.lower(2); 276 gu [0] = ii ; u[1] divme . u (1); u[2] = divme.upper(2); 277 gtmesu . add ( BBox (3, l , u , s )); 278 gl [0] = ii + s [0];[1] divme . low (1);[2] = divme.lower(2); 279 gu [0] = divme . u (0); u[1]= divme.upper(1); u[2] = divme.upper(2); 280 gtmesu . add ( BBox (3, l , u , s )); 281 } i( gjr > gkr ) { 282 gl [0] = divme . low (0);[1]= divme.lower(1);[2] = divme.lower(2); 283 gu [0] = divme . u (0); u[1] ji ; u[2] = divme.upper(2); 284 gtmesu . add ( BBox (3, l , u , s )); 285 gl [0] = divme . low (0);[1] ji + s [1];[2] = divme.lower(2); 286 gu [0] = divme . u (0); u[1]= divme.upper(1); u[2] = divme.upper(2); 287 gtmesu . add ( BBox (3, l , u , s )); 289 gl [0] = divme . low (0);[1]= divme.lower(1);[2] = divme.lower(2); 290 gu [0] = divme . u (0); u[1]divme.u(1); u[2] = ki ; 291 gtmesu . add ( BBox (3, l , u , s )); 292 gl [0] = divme . low (0);[1]divme.low(1);[2] = ki + s [2]; 293 gu [0] = divme . u (0); u[1]= divme.upper(1); u[2] = divme.upper(2); 294 gtmesu . add ( BBox (3, l , u , s )); 298  BBox * gwB = tmesu . f ();ewB;ewB =mesu. xt ()) { 300 GridDa (3)<> subgridag (* wB ); 302 gsubgridag = ag ; 303  gagged = 0; 304  gmyEff ; 305 f_3 ( i , j , k , subgridag . bbox (), subgridag. size ()) 308 gagged + subgridag ( i , j , k ); 309 d_f 310 gmyEff = () agged /()((* wB ). size ()); 312 i( gagged ) { 317 i( gmyEff > Efficncy || 318 (((* wB ). size ()) < 8) || 319 ( ii + ji + ki == -3)) { 322  add = 1; 323  BBox * gtmp = curOnThis . f ();mp; 324 gtmp = curOnThis . xt ()) { 325 i((* tmp ). side ((* wB ). low ()) && 326 (* tmp ). side ((* wB ). u ()) add = 0; 328 i( gadd ) { 331 gcurOnThis . add (* wB ); 338 BBoxLi gsubu ; 339 Clu3R ( subgridag , Efficncy , 340 MWidth , subu ); 341  BBox * gme = subu . f (); me; msubu. xt ()) 342 curOnThis . add (* me ); 362  Clu_Pru ( GridDa (1)<> & sig , * , * pu , 363  bw ) { 364 * g = sig . bbox (). low (0); 365 * gpu = sig . bbox (). u (0); 366 i(* gpu - * g < bw ) { 369  sig (* =0 && * < sig. bbox (). u (0)) 370 * + sig . bbox (). size (0); 371  sig (* pu =0 && *pu > sig. bbox (). low (0)) 372 * pu - sig . bbox (). size (0); 373 i(* gpu - * g < gbw ) { 374  gdiff = bw - (* pu - * ); 375  gaddl , gaddu ; 376  gudi = sig . bbox (). u (0- * pu ; 377  gldi = * - sig . bbox (). low (0); 379 gaddl = (( diff / sig . bbox (). size (0))/2) * sig.bbox().stepsize(0); 380 gaddu = diff - addl ; 381 i( gaddu > gudi ) { 382 gaddu = udi ; 383 gaddl = diff - addu ; 385 i( gaddl > gldi ) { 386 gaddl = ldi ; 387 gaddu = diff - addu ; 390 * gpu + addu ; 391 * g - addl ; 407  Clu_Sli ( GridDa (1)<> & sig , * i , * r , 408  bw ) { 409  gi , gl , gu , gs , gt , ga ; 410 gl = sig . bbox (). low (0); 411 gu = sig . bbox (). u (0); 412 gs = sig . bbox (). size (0); 414 GridDa (1)<> p ( l , u , s ); 418 i( gu - gl < 2* gbw ) { 419 * gr = -1; 420 * gi = -1; 424 gt = -1; 425 ga = -1; 428  gi = l ;i<= u - s ;i+=s) { 429 i( sig ( i ) == 0) { 430  di = ( i - l < u -i ? i-l : u-i); 431 i( gdi > gt ) { 432 ga = i ; 433 gt = di ; 437 i( ga != -1) { 438 * i = a ; 439 * gr = 10000; 442 gt = -1; 443 ga = -1; 446  gm = 0; 447  gi = l + s ; i<= u -s; i+=s) { 448 p ( i sig (i+ s ) + sig(i-s) - 2*sig(i); 449 i( abs ( p ( i )> gm ) malap =bs(lap(i)); 453 i( gm > 0) { 457  gi = l + bw ; i<= u -bw; i+= s ) 458 i( p ( i + s )*lap(i) <= 0) { 460  ts = abs ( p ( i + s )-lap(i)); 461 i( gts > gt ) { 462 gt = ts ; 463 ga = i ; 470 * gi = a ; 471 * gr = t ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/DefaultBC.cpp 6  ~ 7  ~"DeuBC.h " 10  ~"BCPt.h " 11 BoundyCdiPt * pDeuBCPt_JR ; 16  $my_deu_bc_route * da , cڡ * low_bound , 17 cڡ * u_bound , cڡ * she , 18 cڡ * nv , 19 cڡ * wdow_low_bound , 20 cڡ * wdow_u_bound , 21 cڡ * wdow_she , 22 * ur_def_da , * ur_def_gc ) 25 pDeuBCPt_JR -> `SWdow wdow_low_bound , wdow_u_bound , wdow_she ) ; 27 pDeuBCPt_JR -> `compu da , low_bound , u_bound , she , * nv ); 28 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/DefaultInterp.cpp 3  ~ 4  ~"DeuIp.h " 5 usg mea gd ; 9  ~"IpީiPt.h " 10 IpީiPt * pDeuPrgReriPt_JR ; 19  $my_deu_gi_route * dac , cڡ * low_boundc , 20 cڡ * u_boundc , cڡ * shec , 21 cڡ * nvc , 22 * daf , cڡ * low_boundf , 23 cڡ * u_boundf , cڡ * shef , 24 cڡ * nvsf , 25 cڡ * wdow_low_bound , 26 cڡ * wdow_u_bound , 27 cڡ * wdow_she , cڡ * em_li , 28 * ur_def_da , cڡ * ur_def_gc ) 30 i pDeuPrgReriPt_JR == 0 ) 32 << " my_default_prolongation_routine() :ointero interpolation " 33 << " compڒiNULL. Doghg " << dl ; 37 cڡ  nems = * nvc ; cڡ  nems2 = * nvsf ; 39 i nems ! nems2 ) 41 << " my_default_prolongation_routine() : finend coarse " 43 << dl ; 47 pDeuPrgReriPt_JR -> `g ( dac , low_boundc , u_boundc , shec , 48 daf , low_boundf , u_boundf , shef , 49 wdow_low_bound , wdow_u_bound , 50 wdow_she , nems , em_li ) ; 51 } } 54  $my_deu_rii_route * daf , cڡ * low_boundf , 55 cڡ * u_boundf , cڡ * shef , 56 cڡ * nvf , 57 * dac , cڡ * low_boundc , 58 cڡ * u_boundc , cڡ * shec , 59 cڡ * nvsc , 60 cڡ * wdow_low_bound , 61 cڡ * wdow_u_bound , 62 cڡ * wdow_she , cڡ * em_li , 63 * ur_def_da , cڡ * ur_def_gc ) 65 i pDeuPrgReriPt_JR == 0 ) 67 << " my_default_restriction_routine() :ointero interpolation " 68 << " compڒiNULL. Doghg " << dl ; 72 cڡ  nems = * nvsc ; cڡ  nems2 = * nvf ; 73 i nems ! nems2 ) 75 << " my_default_restriction_routine() : finend coarse " 77 << dl ; 81 pDeuPrgReriPt_JR -> `ri ( daf , low_boundf , u_boundf , shef , 82 dac , low_boundc , u_boundc , shec , 83 wdow_low_bound , wdow_u_bound , 84 wdow_she , nems , em_li ) ; 85 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/DefaultTimeInterp.cpp 6  ~ 7  ~"DeuTimeIp.h " 10  ~"TimeIpީiPt.h " 11 TimeIpީiPt * pDeuTimeIpPt_JR ; 17  $my_deu_TimeIp_route * de , cڡ * bc , cڡ * pubc , 18 cڡ * s , cڡ * nems1 , 19 * da_d , cڡ * _d , 20 cڡ * pu_d , cڡ * s_d , 21 cڡ * nems_d , cڡ * ac_o , 22 * da_w , cڡ * _w , 23 cڡ * pu_w , cڡ * s_w , 24 cڡ * nems_w , cڡ * ac_w , 25 cڡ * b_w , cڡ * pub_w , cڡ * s_w , 26 cڡ * do_em ) 29  t_d = 0.0, t_w = 1.0, t_q = * ac_w ; 32 pDeuTimeIpPt_JR -> `SPch ( t_d , da_d , _d , pu_d , s_d , 33 * nems_d ) ; 36 pDeuTimeIpPt_JR -> `SPch ( t_w , da_w , _w , pu_w , s_w , 37 * nems_w ) ; 40 pDeuTimeIpPt_JR -> `SWdow ( b_w , pub_w , s_w ) ; 43 pDeuTimeIpPt_JR -> `compu ( t_q , de , bc , pubc , s , do_em ) ; 44 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_VFV.cpp 10  ~ 11  ~"GCompڒt.h " 14  ~"DeuIp.h " 15  ~"DeuBC.h " 16  ~"DeuTimeIp.h " 20 VeFldVb * gGCompڒt :: $GC_tup_ve cڡ * pName , 21  t_ ,  s_ , 22  nvs , 23 MeshClotiTy T , 24  time_s_high , 25  time_s_low , 26 GridShadowTy has_shadow ) 29 i is_lized = l ) 31 << " Did you cGC_tup_GridHrchy(befܐ? " << dl ; 32 << " Stghicompڒtbunub. " << dl ; 33 is_hod = ue ; 36 `as is_hod = l ); 38 i is_hod = ue ) 40 << "GCompڒt::GC_tup_ve(: Obje unsuab;u NULL " << dl ; 41  ( NULL ) ; 44 time_c = t_ ; 45 a_c = s_ ; 47  shadow ; 48 i has_shadow = GRID_HAS_SHADOW ) 49 shadow = ACEHasShadow ; 51 shadow = ACENoShadow ; 57 TyOfBC dbc ; 58 i deu_boundy_cdi = ETBC ) 60 << " From GraceComponent::GC_setup_vector() : " 62 << " Tmg ..." << dl << ush ; 63 `rme () ; 65 i deu_boundy_cdi = BCCompڒt ) 66 dbc = UrDefedTBC ; 68 dbc = deu_boundy_cdi ; 70 i deu_adtive_bndry_ty = ETAB ) 72 << " From GraceComponent::GC_setup_vector() : " 74 << " sE. Tmg ..." << dl << ush ; 75 `rme () ; 78 cout << "GCompڒt::GC_tup_ve(: Stg " << pName << dl ; 79 VeFldVb_JR * pVFVJ = w `VeFldVb_JR ( pName , dimsis , 80 pGH , nvs , t_ , 81 s_ , T , max_vs , 82 time_s_high , 83 time_s_low , 84 shadow , 85 dbc , 86 deu_adtive_bndry_ty ) ; 88 i pVFVJ = NULL ) 90 << "E :_VFVJ i NULL " << dl ; 91 << dl ; 94 VeFldVbRecd * pVFVR = w `VeFldVbRecd pName , pVFVJ ); 95 AayOfVFV . `push_back pVFVR ); 98 i deu_boundy_cdi = BCCompڒt ) 100 pVFVJ -> `t_boundy_cdi_ty deu_boundy_cdi ) ; 101 pVFVJ -> `t_boundy_cdi_funi &( my_deu_bc_route ) ); 105 pVFVJ -> `t_gi_func &( my_deu_gi_route ) ) ; 106 pVFVJ -> `t_rii_func &( my_deu_rii_route ) ) ; 109 i pTIPt != 0 ) 110 pVFVJ -> `t_time_ުt &( my_deu_TimeIp_route ) ) ; 113 `MPI_Brr comm_rvi :: `comm () ); 115  dymic_ < VeFldVb *> ( pVFVJ ) ); 117 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_checkpoint.cpp 10  ~ 11  ~ 12  ~"GCompڒt.h " 16  gGCompڒt :: $GC_compo_hrchy () 19 `as is_hod = l ); 20 i is_hod = ue ) 22 << "GCompڒt::GC_compo_hrchy(: Obje unsuab;u -1 " << dl ; 26 pGH -> `ACE_CompoHrchy () ; 28 } } 30  gGCompڒt :: $GC_compo_hrchy () 32 `as is_hod = l ); 33 i is_hod = ue ) 35 << "GraceComponent::GC_recompose_hierarchy() : " 36 << "Obje unsuab;u -1 " << dl ; 40 pGH -> `ACE_RecompoHrchy () ; 43 } } 50  gGCompڒt :: $GC_checkpot_to_fe (* pCome_fame ) 54 `as is_hod = l ); 55 i is_hod = ue ) 57 << "GCompڒt::GC_checkpot_to_fe(: Obje unsuab;u -1 " << dl ; 61 pGH -> `ACE_Checkpot pCome_fame ); 63 } } 65  gGCompڒt :: $GC_t_om_fe * pFame ) 68 `MPI_Brr `GC_g_compu_nodes_communit () ) ; 75 `as is_hod = l ); 77 i is_hod = ue ) 79 << "GraceComponent::GC_restart_from_file() : Object unsuable;eturn -1 " 80 << dl ; 84 pGH -> `ACE_RecompoHrchy pFame ) ; 89 ve < VeFldVbRecd *>:: pVFVR ; 90  pVFVR = AayOfVFV . `beg ();VFVR !AayOfVFV. `d ();VFVR++) 92 rg dummy = (* pVFVR )-> `g_me () ; 93   i = 0; i < pGH -> gum ; i++) 95 i!( pGH -> gi [ i ]) ) 99 GridFuniVoid * pGF = pGH -> gi [ i ] ; 100 rg `gf_me pGF -> `GF_Name () ); 101 i dummy = gf_me ) 103 VeFldVb * p = (* pVFVR )-> `g_VeFldVb (); 104 VeFldVb_JR * pI = dymic_ ( p ) ; 106 i pI == 0 ) 108 << " From GC_restart_from_file : cast of VectorFieldVariable * " 110 << dl ; 111 << " Tmg " << dl ; 112 `rme (); 114 pI -> `t_grid_funi pGF ); 121 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_communicator.cpp 1  ~ 2  ~ 3  ~"GCompڒt.h " 9 MPI_Comm gGCompڒt :: $GC_g_compu_nodes_communit () 11 MPI_Comm dummy = comm_rvi :: `comm () ; 12 i dummy == 0 ) 14 << " comm_service::commeturned NULL in " 16 << dl << ush ; 17 `rme () ; 19  dummy ) ; 20 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_proc.cpp 1  ~ 2  ~"GCompڒt.h " 9  gGCompڒt :: $GC_g_oc_me () 11 `as is_hod = l ); 12 i is_hod = ue ) 14 << " GCompڒt::GC_g_oc_me(): Obje unsuab,u -1 " << dl ; 18  comm_rvi :: `oc_me () ) ; 19 } } 21  gGCompڒt :: $GC_g_oc_wld () 23 `as is_hod = l ); 24 i is_hod = ue ) 26 << " GCompڒt::GC_g_oc_wld(): Obje unsuab,u -1 " << dl ; 30  comm_rvi :: `oc_wld () ) ; 31 } } 33 bo gGCompڒt :: $GC_is_a_compu_node () 35 `as is_hod = l ); 36 i is_hod = ue ) 38 << " GraceComponent::GC_is_a_compute_node(): " 39 << " Obje unsuab. STOP COMPUTING." << dl ; 42 bo su ; 43 i( comm_rvi :: `oc_wld () == 1) || 44 ( comm_rvi :: `oc_me (!comm_rvi:: `oc_io ()) 46 su = ue ; 48 su = l ; 50  su ) ; 51 } } 53 bo gGCompڒt :: $GC_is__io_node () 55 `as is_hod = l ); 56 i is_hod = ue ) 58 << " GraceComponent::GC_is_an_io_node(): " 59 << " Obje unsuab. STOP COMPUTING" << dl ; 62 bo su ; 63 i( comm_rvi :: `oc_wld () == 1) || 64 ( comm_rvi :: `oc_me (=comm_rvi:: `oc_io ()) 66 su = ue ; 68 su = l ; 70  su ) ; 71 } } 73 bo gGCompڒt :: $GC_is_this_a_compu_node ( oc_id ) 75 bo su ; 77 i oc_id ! comm_rvi :: `oc_io () ) 78 su = ue ; 80 su = l ; 82  su ); 83 } } 85 bo gGCompڒt :: $GC_is_this__io_node ( oc_id ) 87 bo su ; 89 i oc_id = comm_rvi :: `oc_io () ) 90 su = ue ; 92 su = l ; 94  su ); 95 } } 97  gGCompڒt :: $GC_g_ma_node_nk () 103 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_query.cpp 8  ~ 9  ~"GCompڒt.h " 14 TyOfBC gGCompڒt :: $GC_g_boundy_ty_deu () 16 `as is_hod = l ) ; 17 i is_hod = ue ) 19 << " GraceComponent::GC_get_boundary_type_default(): " 20 << " Obje mked unub,u ETBC " << dl ; 21  ( ETBC ); 24  ( deu_boundy_cdi ); 25 } } 27  gGCompڒt :: $GC_g_boundy_width_deu () 29 `as is_hod = l ) ; 30 i is_hod = ue ) 32 << " GraceComponent::GC_get_boundary_width_default(): " 33 << " Obje mked unub,u -1" << dl ; 37  deu_boundy_width ) ; 38 } } 40  gGCompڒt :: $GC_g_adt_boundy_width_deu () 42 `as is_hod = l ) ; 43 i is_hod = ue ) 45 << " GraceComponent::GC_get_adapt_boundary_width_default(): " 46 << " Obje mked unub,u -1" << dl ; 50  a_c ) ; 51 } } 53 TyOfAdtBoundy gGCompڒt :: $GC_g_adt_boundy_ty_deu () 55 `as is_hod = l ) ; 56 i is_hod = ue ) 58 << " GraceComponent::GC_get_adapt_boundary_type_default(): " 59 << " Obje mked unub,u ETAB" << dl ; 60  ( ETAB ); 63  ( deu_adtive_bndry_ty ) ; 64 } } 66 * gGCompڒt :: $GC_g_doma_exs () 68  doma_exs ) ; 69 } } 71 * gGCompڒt :: $GC_g_cr_suti () 73  cr_s ) ; 74 } } 76  gGCompڒt :: $GC_g_femt_ () 78 ( pGH -> `fe ()) ) ; 79 } } 81  gGCompڒt :: $GC_g_max_vs () 83  max_vs ) ; 84 } } 86  gGCompڒt :: $GC_g_fe_v () 88  pGH -> `fevdex () ) ) ; 89 } } 91  gGCompڒt :: $GC_g_dimsi () 93  ( dimsis ) ; 94 } } 96  gGCompڒt :: $GC_g_time_c () 98  ( time_c ) ; 99 } } 101  gGCompڒt :: $GC_g_a_c () 103  ( a_c ) ; 104 } } 106  gGCompڒt :: $GC_g_grid_cou () 108  ( grid_cou ) ; 109 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_refine.cpp 10  ~ 11  ~"GCompڒt.h " 14  gGCompڒt :: $GC_grid_above_thshd VeFldVb * E , 15  grid_v , 16  thshd ) 18 `as ( is_hod = l ); 19 i is_hod = ue ) 21 << " GraceComponent::GC_regrid_above_threshold(): " 22 << " Obje mked unub,ug -1 " << dl ; 26  fe_v = pGH -> `fevdex () ; 27  v = 0 ; 30 BBoxLi bbli ; 35 i fe_v =0 ) v = 0; 36 i fe_v =( max_vs -1) ) 37 v = fe_v - 1; 39 v = fe_v ; 41  ; v > grid_v ;evel--) 43  Time = `GC_cut_time v , ACE_Ma ); 45 `GC_Clu E , Time , v , thshd , bbli , bblist); 47 pGH -> `ACE_Refe ( bbli , v ); 50 `GC_compo_hrchy (); 51 grid_cou ++; 54  = grid_v ;< pGH -> `fevdex () ;l++) 56  = `GC_cut_time ( , ACE_Ma ) ; 57 `GC_Sync ( , ) ; 59  ii = 0; i< AayOfVFV . `size (); ii++) 61 VeFldVbRecd * p = AayOfVFV [ ii ] ; 62 VeFldVb * = p -> `g_VeFldVb () ; 63 -> `boundy_upde , , ACE_Ma ) ; 68 } } 70  gGCompڒt :: $GC_Clu VeFldVb * E ,  Time ,  v , 71  thshd , BBoxLi & bbli , 72 BBoxLi & bbli1 ) 75 `as ( is_hod = l ); 76 i is_hod = ue ) 78 << " GCompڒt::GC_Clu(): Obje mked unub,ug -1 " << dl ; 82 VeFldVb_JR * pI = dymic_ ( E ) ; 84 i pI == 0 ) 86 << " From GC_Cluster : cast of VectorFieldVariable * " 88 << dl ; 89 << " Tmg " << dl ; 90 `rme (); 93 i( dimsis == 1) 95 `GridFuni (1)<> * r = pI -> `g_1d_GridFuni (); 96 #ide NDEBUG 97 i r == 0 ) 99 << "GCompڒt::GC_Clu( E 1d. Tme()" << dl ; 100 `rme (); 103 `GrACEClu1d (* r ), Time , v , block_width , bufr_width , m_eff , 104 thshd , bbli , bbli, ACE_Ma ); 107 i( dimsis == 2) 109 `GridFuni (2)<> * r = pI -> `g_2d_GridFuni (); 110 #ide NDEBUG 111 i r == 0 ) 113 << "GCompڒt::GC_Clu( E 2d. Tme()" << dl ; 114 `rme (); 117 `GrACEClu2d (* r ), Time , v , block_width , bufr_width , m_eff , 118 thshd , bbli , bbli, ACE_Ma ); 121 i( dimsis == 3) 123 `GridFuni (3)<> * r = pI -> `g_3d_GridFuni (); 124 #ide NDEBUG 125 i r == 0 ) 127 << "GCompڒt::GC_Clu( E 3d. Tme()" << dl ; 128 `rme (); 131 `GrACEClu3d (* r ), Time , v , block_width , bufr_width , m_eff , 132 thshd , bbli , bbli, ACE_Ma ); 136 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_setup.cpp 10  ~ 11  ~"GCompڒt.h " 13  ~"IpީiPt.h " 14 IpީiPt * gpDeuPrgReriPt_JR = 0; 16  ~"BCPt.h " 17 BoundyCdiPt * gpDeuBCPt_JR = 0; 19  ~"TimeIpީiPt.h " 20 TimeIpީiPt * gpDeuTimeIpPt_JR = 0; 23  gGCompڒt :: $GC_tup_GridHrchy  dim ,  maxvs , 24 MeshClotiTy m ) 26 dimsis = dim ; 27 max_vs = maxvs ; 29  m ) 31 ( ClCd ) : 32 mesh_cloc_ty = ACEClCd ; 34 ( VxCd ) : 35 mesh_cloc_ty = ACEVxCd ; 37 ( FaCdX ) : 38 mesh_cloc_ty = ACEFaCd_X ; 40 ( FaCdY ) : 41 mesh_cloc_ty = ACEFaCd_Y ; 43 ( FaCdZ ) : 44 mesh_cloc_ty = ACEFaCd_Z ; 47 << "GraceComponent::GC_setup_GridHierarchy() : Wrong mesh collocationype " 48 << "DeuɚgVxCd. " << dl ; 49 mesh_cloc_ty = ACEVxCd ; 53 pGH = 0 ; 54 pGH = w `GridHrchy ( dim , mesh_cloc_ty , maxvs ); 55 i pGH == 0 ) 57 << "From GCompڒt::GC_tup_GridHrchy(" << dl 59 << dl << ush ; 60 `rme () ; 64 `ACEIOTy (* pGH ), ACEIO_HDF_NCSA ); 66 ` () ; 68 } } 70  gGCompڒt :: $ () 74  Deu_Boundy_Cdi_Ty_Pam -> vue ) 77 deu_boundy_cdi = DichtCڡt ; 80 deu_boundy_cdi = ZoGdNeumn ; 83 deu_boundy_cdi = UrDefedTBC ; 86 deu_boundy_cdi = BCCompڒt ; 89 deu_boundy_cdi = ETBC ; 92 deu_boundy_width = Bndry_Width_Pam -> vue ; 95  Deu_Adtive_Bndry_Ty_Pam -> vue ) 98 deu_adtive_bndry_ty = Ipީed ; 101 deu_adtive_bndry_ty = UrDefedTAB ; 104 deu_adtive_bndry_ty = ETAB ; 109 block_width = Block_Width_Pam -> vue ; 110 bufr_width = Bufr_Width_Pam -> vue ; 111 m_eff = M_Eff_Pam -> vue ; 112 is_lized = ue ; 115 pIpPt = dymic_ < IpީiPt *> pSvc -> `gPt ("Interpolations") ); 117 i pIpPt != 0 ) 120 boޗn _comp_check = ue ; 122  dummy ; 123 pIpPt -> `GPrݔty ("Dimsi", dummy ) ; 124 i dummy < dimsis ) _comp_check = l ; 126  dummyl ; 127 pIpPt -> `GPrݔty ("MeshClotiTy", dummyl ) ; 128 i dummyl ! mesh_cloc_ty ) _comp_check = l ; 133 i _comp_check = ue ) 135 pDeuPrgReriPt_JR = pIpPt ; 136 is_lized = ue ; 140 << " GraceComponent::init(): Your Interpolation component cannot " 141 << " hdˇ " << dimsis << "D grid why " << mesh_cloc_ty 142 << " cloti. Doghg" << dl ; 143 is_lized = l ; 149 pBCPt = dymic_ < BoundyCdiPt *> pSvc -> `gPt ("BoundaryConds") ) ; 150 i( pBCPt =0&& ( deu_boundy_cdi = BCCompڒt ) ) 152 is_lized = l ; 153 is_hod = ue ; 154 << " GraceComponent::init() Your default BCeeds BC component but " 155 << " Im cede. " << dl ; 156 << " Rug wh -1 ;nd mkghiobje unub " << dl ; 159 i pBCPt != 0 ) 161 bo bc_compڒt_by = ue ; 163  dummy ; pBCPt -> `GPrݔty ("Dimension", dummy) ; 164 i dummy < dimsis ) bc_compڒt_by = l ; 166 i bc_compڒt_by = ue ) 168 pDeuBCPt_JR = pBCPt ; 169 is_lized = ue ; 173 << " GraceComponent::init(): Your Boundary Condition component cannot " 174 << " hdˇ " << dimsis << "D grid. Doghg" << dl ; 175 is_lized = l ; 179 pTIPt = dymic_ < TimeIpީiPt *> ( pSvc -> `gPt ("TimeInterp") ) ; 180 pDeuTimeIpPt_JR = pTIPt ; 182 } } 184  gGCompڒt :: $GC_t_ba_grid * pBb , * pShe ) 187 `as is_hod = l ); 188 i is_hod = ue ) 190 << " GraceComponent::GC_set_base_grid() : Object marked unusable " 191 << " Ru -1 " << dl ; 195 pGH -> `ACE_SBaGrid ( pBb , pShe ) ; 198   idim = 0 ; idim < 3; idim++ ) 200 doma_exs [ 2* idim ] = 0.0 ; domain_extents[ 2*idim+1 ] = 0.0 ; 201 cr_s [ idim ] = 1 ; 204   idim = 0; idim < dimsis ; idim++) 206 doma_exs [ 2* idim ] = pBb [ 2*idim ] ; 207 doma_exs [ 2* idim + 1 ] = pBb [ 2*idim + 1 ] ; 208 cr_s [ idim ] = pShe [ idim ] ; 212  deu_boundy_cdi ) 214  DichtCڡt ) : 215 pGH -> `ACE_SBoundyTy ACEBoundyCڡ ) ; 217  ZoGdNeumn ) : 218 pGH -> `ACE_SBoundyTy ACEBoundyShi ); 220  UrDefedTBC ) : 221 pGH -> `ACE_SBoundyTy ACEBoundyUrDef ) ; 223  BCCompڒt ) : 224 pGH -> `ACE_SBoundyTy ACEBoundyUrDef ) ; 227 << " Somhg wrg iBoundy Cdiڠ" << dl ; 228 << " GC_tup_ba_grid(). " << dl ; 229 << " Mkg GComڒunub,u wh -1" << dl ; 230 is_hod = ue ; 234 pGH -> `ACE_SBoundyWidth deu_boundy_width ) ; 237  deu_adtive_bndry_ty ) 239  Ipީed ) : 240 pGH -> `ACE_SAdtBoundyTy ACEAdtBoundyIp ) ; 242  UrDefedTAB ) : 243 pGH -> `ACE_SAdtBoundyTy ACEAdtBoundyUrDef ) ; 246 << " Somhg wrg iG cȚީiځy" << dl ; 247 << " GC_tup_ba_grid(). Tmg " << dl ; 248 << " Mkghcompڒunub,u wh -1" << dl ; 249 is_hod = ue ; 255 } } 257  gGCompڒt :: $GC_t_femt_  r ) 260 `as is_hod = l ); 261 i is_hod = ue ) 263 << " GraceComponent::GC_set_refinement_factor() : Object marked unusable " 264 << " Ru -1 " << dl ; 268 pGH -> `ACE_SRefeFa ( r ) ; 271 } } 273  gGCompڒt :: $GC_t_gi_func_deu Ipުt pPF ) 276 `as is_hod = l ); 277 i is_hod = ue ) 279 << " GraceComponent::GC_set_prolongation_func_default : " 280 << " Obje mked unub Ru -1 " << dl ; 284 << " Thiassocgi funiځخVeFldVbˠ" << dl ; 285 << " deedde. ThiwNOTfny VeFldVbˠ" << dl ; 286 << " deed ha. You whavtdth muly " << dl ; 288 ve < VeFldVbRecd *>:: i ; 289  i = AayOfVFV . `beg (); i !AayOfVFV. `d (); i++) 291 << " From: GC_set_prolongation_func: Setting for VFVamed : " 292 << (* i )-> `g_me (<< dl ; 293 VeFldVb * pVFV = (* i )-> `g_VeFldVb () ; 294 pVFV -> `t_gi_func pPF ); 298 } } 300  gGCompڒt :: $GC_t_rii_func_deu Ipުt pRF ) 303 `as is_hod = l ); 304 i is_hod = ue ) 306 << " GraceComponent::GC_set_restriction_func_default() : Object marked unusable " 307 << " Ru -1 " << dl ; 311 << " Thiassocrii funiځخVeFldVbˠ" << dl ; 312 << " deedde. ThiwNOTfny VeFldVbˠ" << dl ; 313 << " deed ha. You whavtdth muly " << dl ; 315 ve < VeFldVbRecd *>:: i ; 316  i = AayOfVFV . `beg (); i !AayOfVFV. `d (); i++) 318 << " From: GC_set_restriction_func: Setting for VFVamed : " 319 << (* i )-> `g_me (<< dl ; 320 VeFldVb * pVFV = (* i )-> `g_VeFldVb () ; 321 pVFV -> `t_rii_func pRF ); 325 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_sync.cpp 10  ~ 11  ~"GCompڒt.h " 14  gGCompڒt :: $GC_Sync ( time ,  grid_v ) 16 `as ( is_hod = l ); 17 i is_hod = ue ) 19 << " GCompڒt::GC_Sync(: Obje mked unub,u -1" << dl ; 23  idt = ACE_Ma ; 24 pGH -> `ACE_SyncGhoRegis ( time , grid_v , ACEA , idt ) ; 27 } } 29  gGCompڒt :: $GC_Shutdown_IO () 31 pGH -> `ACE_IOEnd () ; 32 `ACEIO_HDF_NCSA_Fize () ; 35 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComp_time.cpp 7  ~ 8  ~"GCompڒt.h " 10  gGCompڒt :: $GC_cut_time  grid_v ,  idt ) 12 `as ( is_hod = l ); 13 i( is_hod = ue ) 15 << " GraceComponent::GC_current_time(). Object marked unusable" 16 << " Ru -1" << dl ; 20  pGH -> `gCutTime grid_v , idt ) ) ; 21 } } 23  gGCompڒt :: $GC_time_size  grid_v ,  idt ) 25 `as ( is_hod = l ); 26 i( is_hod = ue ) 28 << " GraceComponent::GC_timestep_size(). Object marked unusable " 29 << " Ru -1" << dl ; 33  pGH -> `time grid_v , idt ) ) ; 34 } } 36  gGCompڒt :: $GC_s_comed  grid_v ,  idt ) 38 `as ( is_hod = l ); 39 i( is_hod = ue ) 41 << " GraceComponent::GC_steps_completed(). Object marked unusable " 42 << " Ru -1" << dl ; 46  a = pGH -> `gCutTime grid_v , idt ); 47  b = pGH -> `gRefeTime grid_v , idt ); 49  pGH -> `ak a - b , grid_v , idt ) ); 50 } } 52  gGCompڒt :: $GC_t_cut_time  time ,  grid_v , 53  idt ) 55 `as ( is_hod = l ); 56 i( is_hod = ue ) 58 << " GraceComponent::GC_current_time(). Object marked unusable " 59 << " Ru -1" << dl ; 63 pGH -> `tCutTime ( time , grid_v , idt ) ; 66 } } 68  gGCompڒt :: $GC_emt_time_v  grid_v ,  idt ) 70 `as ( is_hod = l ); 71 i( is_hod = ue ) 73 << " GraceComponent::GC_current_time(). Object marked unusable" 74 << " Ru -1" << dl ; 78 pGH -> `CutTime grid_v , idt ) ; 81 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComponent.cpp 8  ~ 9  ~"GCompڒt.h " 11 gGCompڒt :: $GCompڒt () 14  gc ; 15 ** gv ; 18 `ACEIOIn (); 20 Deu_Boundy_Cdi_Ty_Pam = w `IPam ("Default_Bndry_Cond_Param", 25 Deu_Adtive_Bndry_Ty_Pam = w `IPam ( "Default_Adapt_Bndry_Type_Param", 30 Bndry_Width_Pam = w `IPam ( "Bndry_Width_Param", 34 Block_Width_Pam = w `IPam ( "Block_Width_Param", 39 Bufr_Width_Pam = w `IPam ( "Buffer_Width_Param", 43 M_Eff_Pam = w `DoubPam ( "Min_Eff_Param", 48 is_lized = l ; 49 gi_lized = l ; 50 rii_lized = l ; 51 boundy_cdi_funi_lized = l ; 52 is_hod = l ; 55 a_c = 1 ; 56 time_c = 1 ; 57 grid_cou = 0; 60 mesh_cloc_ty = ACEVxCd ; 61 } } 63 gGCompڒt ::~ $GCompڒt () 66 `GC_Shutdown_IO (); 67 comm_rvi :: `n () ; 70 ve < VeFldVbRecd *>:: p ; 71  p = AayOfVFV . `beg (); !AayOfVFV. `d ();++) 72 `de (* p ) ; 73 AayOfVFV . `r () ; 75 de ; 77 de pGH ; 79 pSvc = NULL ; 81 is_lized = l ; 83 } } 85  gGCompڒt :: tSvis CONV_NS ( Svis * svc ) 87 i svc = NULL ) 89 pSvc -> moveProvidesPt ("GracePort") ; 90 gpSvc -> moveProvidesPt ("CONFIG") ; 91 gpSvc -> aPt ("Interpolations") ; 92 gpSvc -> aPt ("BoundaryConds") ; 93 gpSvc -> aPt ("TimeInterp") ; 98 gthis -> gpSvc = svc ; 101 gsvc -> giUsPt svc -> PtInfo ("cSvc", 103 CfigubPamFay * gf = 104 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 105 CHECKDC f ); 106 g = = f -> CfigubPamPt (); 107 gsvc -> addProvidesPt ( , svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 108 tupPams () ; 111 gsvc -> addProvidesPt ( this , svc -> PtInfo ("GracePort", "AMRPort", 0) ); 114 gsvc -> giUsPt pSvc -> PtInfo ("Interpolations", "InterpolationPort", 0) ); 115 gsvc -> giUsPt pSvc -> PtInfo ("BoundaryConds", 117 gsvc -> giUsPt pSvc -> PtInfo ("TimeInterp", 121 gsvc -> aPt ("cSvc"); 122 gsvc -> uegiUsPt ("cSvc"); 125  gGCompڒt :: $tupPams () 127 -> `tBchT (" GrACEComponent Parameters " ); 128 -> `tGroupName ( " Default Boundary Condition Parameters" ); 129 -> `addReque Deu_Boundy_Cdi_Ty_Pam ); 130 -> `addReque Bndry_Width_Pam ); 131 -> `tGroupName ( " Default Adaptive Boundary Type " ); 132 -> `addReque Deu_Adtive_Bndry_Ty_Pam ); 133 -> `tGroupName ( " Clustering Parameters"); 134 -> `addReque Block_Width_Pam ); 135 -> `addReque Bufr_Width_Pam ); 136 -> `addReque M_Eff_Pam ); 137 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/GraceComponent_wrapper.cpp 1  ~"GCompڒt.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _GCompڒt () 8 CONV_NS ( Compڒt * wk ; 9 GCompڒt * compڒt ; 10 compڒt = w GCompڒt (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_GraceComponent GraceComponent"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_adapt.cpp 9  ~ 10  ~"VeFldVb_JRIm.h " 12  gVeFldVb_JR :: $g_adt_boundy_width () 14 `as is_hod = l ); 15 i is_hod = ue ) 17 << " VectorFieldVariable_JR::get_adapt_boundary_width() " 18 << " Obje mked unub, Rug -1 " << dl ; 22  ( adt_boundy_width ) ; 23 } } 25  gVeFldVb_JR :: $t_gi_func Ipުt pPF ) 27 `as is_hod = l ); 28 i is_hod = ue ) 30 << " VectorFieldVariable_JR::set_prolongation_func() " 31 << " Obje mked unub, Rug -1 " << dl ; 35 i dimsi =1 ) pGf1d -> `GF_SPrgFunc (* pPF ); 36 i dimsi =2 ) pGf2d -> `GF_SPrgFunc (* pPF ); 37 i dimsi =3 ) pGf3d -> `GF_SPrgFunc (* pPF ); 40 } } 42  gVeFldVb_JR :: $t_rii_func Ipުt pRF ) 44 `as is_hod = l ); 45 i is_hod = ue ) 47 << " VectorFieldVariable_JR::set_restriction_func() " 48 << " Obje mked unub, Rug -1 " << dl ; 52 i dimsi =1 ) pGf1d -> `GF_SReriFunc (* pRF ); 53 i dimsi =2 ) pGf2d -> `GF_SReriFunc (* pRF ); 54 i dimsi =3 ) pGf3d -> `GF_SReriFunc (* pRF ); 57 } } 59  gVeFldVb_JR :: $t_time_ުt TimeIpުt pTIF ) 61 `as is_hod = l ) ; 62 i is_hod = ue ) 64 << " VectorFieldVariable_JR::set_time_interpolant() " 65 << " Obje mked unub, Rug -1 " << dl ; 69 i dimsi =1 ) pGf1d -> `GF_STimeIpީiFunc (* pTIF ); 70 i dimsi =2 ) pGf2d -> `GF_STimeIpީiFunc (* pTIF ); 71 i dimsi =3 ) pGf3d -> `GF_STimeIpީiFunc (* pTIF ); 74 } } 76  gVeFldVb_JR :: $ri ( time1 ,  v1 ,  time2 ,  v2 , 77 * gs ,  gt ,  idt ) 79 `as is_hod = l ); 80 i is_hod = ue ) 82 << " VectorFieldVariable_JR::restrict() " 83 << " Obje mked unub, Rug -1 " << dl ; 87  sw ; 88  dimsi ) 91 pGf1d -> `GF_Reri ( time1 , v1 , time2 , v2 , ACEA , gs , gt , idt ) ; 92 `Sync (* pGf1d ), time2 , v2 , idt ) ; 93 sw = 0 ; 96 pGf2d -> `GF_Reri ( time1 , v1 , time2 , v2 , ACEA , gs , gt , idt ) ; 97 `Sync (* pGf2d ), time2 , v2 , idt ) ; 98 sw = 0 ; 101 pGf3d -> `GF_Reri ( time1 , v1 , time2 , v2 , ACEA , gs , gt , idt ) ; 102 `Sync (* pGf3d ), time2 , v2 , idt ) ; 103 sw = 0 ; 106 << "VectorFieldVariable_JR::restrict(). Something wrong with dimension " 107 << " Ru wh -1 " << dl ; 108 sw = - 1 ; 111  sw ); 112 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_bc.cpp 10  ~ 11  ~"VeFldVb_JRIm.h " 13 TyOfBC gVeFldVb_JR :: $g_boundy_cdi_ty () 15 `as is_hod = l ); 16 i is_hod = ue ) 18 << "VectorFieldVariable_JR::get_boundary_condition_type() " 19 << "Obje mked unsuab,u ETBC " << dl ; 20  ETBC ); 23  bc_ty ); 24 } } 26  gVeFldVb_JR :: $t_boundy_cdi_ty TyOfBC T ) 29 `as is_hod = l ); 30 i is_hod = ue ) 32 << "VectorFieldVariable_JR::set_boundary_condition_type() " 33 << "Obje mked unsuab,u -1 " << dl ; 37 bc_ty = T ; 39  dummy ; 40  T ) 43 dummy = ACEBoundyCڡ ; 46 dummy = ACEBoundyShi ; 49 dummy = ACEBoundyUrDef ; 52 dummy = ACEBoundyUrDef ; 55 << " Something wrong in VectorFieldVariable_JR::set_boundary_condition() " 56 << dl ; 57 << " Mkghiobje unub " << dl ; 58 is_hod = ue ; 61 pGFV -> `GF_SBoundyTy dummy ) ; 64 } } 66  gVeFldVb_JR :: $t_cڡ_v_dicht_bc  vue ) 68 `as is_hod = l ); 69 i is_hod = ue ) 71 << "VectorFieldVariable_JR::set_const_val_dirichlet_bc()" 72 << "Obje mked unsuab,u -1 " << dl ; 76 i bc_ty ! DichtCڡt ) 78 << " This VectorFieldVariable was NOT declaredo have Dirichlet " 80 << dl ; 81 << " From VectorFieldVariable_JR::set_const_val_dirichlet_bc() " 82 << dl ; 83 << " Ignܚghicomy, mkg obje unubˇndug -1 " << dl ; 84 is_hod = ue ; 87 i dimsi =1 ) pGf1d -> `GF_SBoundyVue vue ); 88 i dimsi =2 ) pGf2d -> `GF_SBoundyVue vue ); 89 i dimsi =3 ) pGf3d -> `GF_SBoundyVue vue ); 92 } } 94  gVeFldVb_JR :: $t_boundy_cdi_funi BoundyCdFuni BC_Func ) 96 `as is_hod = l ); 97 i is_hod = ue ) 99 << "VectorFieldVariable_JR::set_boundary_condition_function()" 100 << "Obje mked unsuab,u -1 " << dl ; 104 i dimsi =1 ) pGf1d -> `GF_SBndryUpdeFunc (* BC_Func ) ; 105 i dimsi =2 ) pGf2d -> `GF_SBndryUpdeFunc (* BC_Func ) ; 106 i dimsi =3 ) pGf3d -> `GF_SBndryUpdeFunc (* BC_Func ) ; 109 } } 111  gVeFldVb_JR :: $g_boundy_width () 113 `as is_hod = l ); 114 i is_hod = ue ) 116 << "VectorFieldVariable_JR::get_boundary_width() " 117 << "Obje mked unsuab,u -1 " << dl ; 121  ( boundy_width ) ; 122 } } 124  gVeFldVb_JR :: $boundy_upde ( time ,  v ,  idt ) 126 `as is_hod = l ); 127 i is_hod = ue ) 129 << "VectorFieldVariable_JR::boundary_update()" 130 << "Obje mked unsuab,u -1 " << dl ; 134 i dimsi =1 ) pGf1d -> `GF_BndryUpde ( time , v , 0, 0, idt ) ; 135 i dimsi =2 ) pGf2d -> `GF_BndryUpde ( time , v , 0, 0, idt ) ; 136 i dimsi =3 ) pGf3d -> `GF_BndryUpde ( time , v , 0, 0, idt ) ; 139 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_data.cpp 10  ~ 11  ~ 12  ~"VeFldVb_JRIm.h " 14  gVeFldVb_JR :: $fl_wh_cڡt  vue ,  t ,  v , 15  idt ) 17 i dimsi =1 ) pGf1d -> `GF_Fl ( vue , t , v , idt ) ; 18 i dimsi =2 ) pGf2d -> `GF_Fl ( vue , t , v , idt ) ; 19 i dimsi =3 ) pGf3d -> `GF_Fl ( vue , t , v , idt ) ; 21 } } 23  gVeFldVb_JR :: $add_cڡt  vue ,  t ,  v ,  idt ) 25 i dimsi =1 ) pGf1d -> `GF_us ( t , v , vue , idt ) ; 26 i dimsi =2 ) pGf2d -> `GF_us ( t , v , vue , idt ) ; 27 i dimsi =3 ) pGf3d -> `GF_us ( t , v , vue , idt ) ; 28 } } 30  gVeFldVb_JR :: $muɝly_by_cڡt  vue ,  t ,  v , 31  idt ) 33 i dimsi =1 ) pGf1d -> `GF_muɝly ( t , v , vue , idt ) ; 34 i dimsi =2 ) pGf2d -> `GF_muɝly ( t , v , vue , idt ) ; 35 i dimsi =3 ) pGf3d -> `GF_muɝly ( t , v , vue , idt ) ; 36 } } 38  gVeFldVb_JR :: $max_v cڡ  t , cڡ  v , cڡ  iv , 39 cڡ  idt ) const 41  sw ; 42  dimsi ) 45 sw = (* pGf1d ). `GF_maxv t , v , iv , idt ) ; 48 sw = (* pGf2d ). `GF_maxv t , v , iv , idt ) ; 51 sw = (* pGf3d ). `GF_maxv t , v , iv , idt ) ; 54 << "VectorFieldVariable_JR::max_val() : something wrong with dimension " 55 << "Ru wh -1.0" << dl ; 56 sw = -1 ; 58  ( sw ); 59 } } 61  gVeFldVb_JR :: $m_v cڡ  t , cڡ  v , cڡ  iv , 62 cڡ  idt ) const 64  sw ; 65  dimsi ) 68 sw = (* pGf1d ). `GF_mv ( t , v , iv , idt ) ; 71 sw = (* pGf2d ). `GF_mv t , v , iv , idt ) ; 74 sw = (* pGf3d ). `GF_mv ( t , v , iv , idt ) ; 77 << "VectorFieldVariable_JR::min_val() : something wrong with dimension " 78 << "Ru wh -1.0" << dl ; 79 sw = -1 ; 81  ( sw ); 82 } } 84  gVeFldVb_JR :: $cd_nm cڡ  t , cڡ  v , cڡ  iv , 85 cڡ  idt ) const 87  sw ; 88  dimsi ) 91 sw = `Nm2 (* pGf1d ), t , v , iv , idt ) ; 94 sw = `Nm2 (* pGf2d ), t , v , iv , idt ) ; 97 sw = `Nm2 (* pGf3d ), t , v , iv , idt ) ; 100 << "VectorFieldVariable_JR::second_norm() : something wrong with dimension " 101 << "Ru wh -1.0" << dl ; 102 sw = -1 ; 104  ( sw ); 105 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_io.cpp 10  ~ 11  ~"VeFldVb_JRIm.h " 13  gVeFldVb_JR :: $wre_out_to_fe  time ,  v ,  vb_no , 14  idt ) 16 `as is_hod = l ); 17 i is_hod = ue ) 19 << "VectorFieldVariable_JR::write_out_to_file() " 20 << "Obje mked unsuab,u -1 " << dl ; 24  sw ; 25  dimsi ) 28 pGf1d -> `GF_Wre ( time , v , vb_no , ACENu , idt , ACE_Doub ) ; 29 sw = 0 ; 32 pGf2d -> `GF_Wre ( time , v , vb_no , ACENu , idt , ACE_Doub ) ; 33 sw = 0 ; 36 pGf3d -> `GF_Wre ( time , v , vb_no , ACENu , idt , ACE_Doub ) ; 37 sw = 0 ; 40 << " VectorFieldVariable_JR::write_out_to_file() : " 42 << dl ; 43 sw = -1 ; 46  sw ); 47 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_lock.cpp 13  ~ 14  ~"VeFldVb_JRIm.h " 16  gVeFldVb_JR :: $lock () 18 `as ( is_hod = l ); 19 i( is_hod = ue ) 21 << "VeFldVb_JR::lock(Obje mked unsuab,u -1" << dl ; 25 is_locked = ue ; 28 } } 30  gVeFldVb_JR :: $uock () 32 `as ( is_hod = l ); 33 i( is_hod = ue ) 35 << "VectorFieldVariable_JR::unlock() " 36 << " Obje mked unsuab,u -1" << dl ; 40 is_locked = l ; 43 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_query.cpp 10  ~ 11  ~"VeFldVb_JRIm.h " 13 bo gVeFldVb_JR :: $exis  time ,  v ,  c ) 15 `as is_hod = l ); 16 i is_hod = ue ) 18 << "VectorFieldVariable_JR::exists() " 19 << "Obje mked unsuab,u f " << dl ; 20  l ); 23 bo su ; 24 #ide M2002 25 i dimsi =1 ) su = pGf1d -> `exis ( time , v , c ) ; 26 i dimsi =2 ) su = pGf2d -> `exis ( time , v , c ) ; 27 i dimsi =3 ) su = pGf3d -> `exis ( time , v , c ) ; 29 i dimsi =1 ) su = pGf1d -> `exis ( time , v , c , ACEMa ) ; 30 i dimsi =2 ) su = pGf2d -> `exis ( time , v , c , ACEMa ) ; 31 i dimsi =3 ) su = pGf3d -> `exis ( time , v , c , ACEMa ) ; 33  su ) ; 34 } } 36  gVeFldVb_JR :: $g_numb_of_comp_grids () 38 `as is_hod = l ); 39 i is_hod = ue ) 41 << "VectorFieldVariable_JR::get_number_of_comp_grids() " 42 << "Obje mked unsuab,u -1 " << dl ; 46  su ; 47 i dimsi =1 ) su = pGf1d -> `n () ; 48 i dimsi =2 ) su = pGf2d -> `n () ; 49 i dimsi =3 ) su = pGf3d -> `n () ; 51  su ) ; 52 } } 54  gVeFldVb_JR :: $g_dims () 56 `as is_hod = l ); 57 i is_hod = ue ) 59 << " VectorFieldVariable_JR::get_dims(). " 60 << " Obje mked unsuab,u -1 " << dl ; 64  dimsi ) ; 65 } } 67  gVeFldVb_JR :: $g_ve_size () 69 `as is_hod = l ); 70 i is_hod = ue ) 72 << " VectorFieldVariable_JR::get_vector_size(). " 73 << " Obje mked unsuab,u -1 " << dl ; 77  numb_of_vs ); 78 } } 80 cڡ * gVeFldVb_JR :: $g_low_bbc ( time ,  v , 81  compڒt ,  idt ) 83 `as is_hod = l ); 84 i is_hod = ue ) 86 << " VectorFieldVariable_JR::get_lower_bbc. " 87 << " Obje mked unsuab,u NULL " << dl ; 88  NULL ); 91 i dimsi =1 ) Cods_lbbc = ((* pGf1d )( time , v , compڒt , idt )). `low () ; 92 i dimsi =2 ) Cods_lbbc = ((* pGf2d )( time , v , compڒt , idt )). `low () ; 93 i dimsi =3 ) Cods_lbbc = ((* pGf3d )( time , v , compڒt , idt )). `low () ; 95 cڡ * p_lbbc = `Cods_lbbc (); 97 #ide NDEBUG 98 cout << " VeFldVb_JR::g_low_bbc(: " << pGFV -> `GF_Name () 99 << "ow " << * p_lbbc << " " << *_lbbc+1<< " " << *_lbb+ 2<< dl ; 102  ( p_lbbc ) ; 103 } } 105 cڡ * gVeFldVb_JR :: $g_u_bbc ( time ,  v ,  compڒt ,  idt ) 107 `as is_hod = l ); 108 i is_hod = ue ) 110 << " VectorFieldVariable_JR::get_upper_bbc. " 111 << " Obje mked unsuab,u NULL " << dl ; 112  NULL ); 115 i dimsi =1 ) Cods_ubbc = ((* pGf1d )( time , v , compڒt , idt )). `u () ; 116 i dimsi =2 ) Cods_ubbc = ((* pGf2d )( time , v , compڒt , idt )). `u () ; 117 i dimsi =3 ) Cods_ubbc = ((* pGf3d )( time , v , compڒt , idt )). `u () ; 119 cڡ * pubbc = `Cods_ubbc (); 120 #ide NDEBUG 121 cout << " VeFldVb_JR::g_u_bbc(: " << pGFV -> `GF_Name () 122 << " u " << * pubbc << " " << *ubbc+1<< " " << *ubb+ 2<< dl ; 125  pubbc ); 126 } } 128 cڡ * gVeFldVb_JR :: $g_da_y_size ( time ,  v ,  compڒt , 129  idt ) 131 `as is_hod = l ); 132 i is_hod = ue ) 134 << " VectorFieldVariable_JR::get_data_array_size() " 135 << " Obje mked unsuab,u NULL " << dl ; 136  NULL ); 139 i dimsi =1 ) Cods_she = ((* pGf1d )( time , v , compڒt , idt )). `exs () ; 140 i dimsi =2 ) Cods_she = ((* pGf2d )( time , v , compڒt , idt )). `exs () ; 141 i dimsi =3 ) Cods_she = ((* pGf3d )( time , v , compڒt , idt )). `exs () ; 143 cڡ * pshe = `Cods_she (); 144 #ide NDEBUG 145 cout << " VeFldVb_JR::g_da_y_size(: " << pGFV -> `GF_Name () 146 << " sh " << * pshe << " " << *she+1<< " " << *sh+ 2<< dl ; 149  pshe ) ; 150 } } 153 * gVeFldVb_JR :: $g_da ( time ,  v ,  compڒt , 154  idt ) 156 `as is_hod = l ); 157 i is_hod = ue ) 159 << " VectorFieldVariable_JR::get_data() " 160 << " Obje mked unsuab,u NULL " << dl ; 161  NULL ); 164 i is_locked = ue ) 166 << " Someonelse is changing data inhis VectorFieldVariableamed " 167 << pGFV -> `GF_Name (<< dl ; 168 << " checked iVeFldVb_JR::g_da(" << dl ; 169 << " Rug NULL" << dl ; 170  NULL ); 173 i dimsi =1 ) (*((* pGf1d )( time , v , compڒt , idt )). `da () ); 174 i dimsi =2 ) (*((* pGf2d )( time , v , compڒt , idt )). `da () ); 175 i dimsi =3 ) (*((* pGf3d )( time , v , compڒt , idt )). `da () ); 176 } } 178 cڡ * gVeFldVb_JR :: $g_me () const 180 `as is_hod = l ); 181 i is_hod = ue ) 183 << " VectorFieldVariable_JR::get_name() " 184 << " Obje mked unsuab,u NULL " << dl ; 185  NULL ); 188  pGFV -> `GF_Name () ) ; 189 } } 193 MeshClotiTy gVeFldVb_JR :: $g_mesh_cloti_ty () 195  mesh_ty ) ; 196 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_stats.cpp 10  ~ 11  ~"VeFldVb_JRIm.h " 13  #BIG 9.99e+200 ) 14  #SMALL -9.99e+200 ) 16  gVeFldVb_JR :: $g_max_ve (* max_vs , * size ) 18  nvs = numb_of_vs ; 19  max_v_now = p_GridHrchy -> `fevdex () ; 20  ngrids = `g_numb_of_comp_grids () ; 21 i* size < numb_of_vs ) 23 cout << " VectorFieldVariable_JR::get_max_vector() for VFVamed " 24 << `g_me (<< " Nكnough s icomgay. Exg " << dl << ush ; 25 `rme () ; 28 * size = numb_of_vs ; 33   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 35   i = 0 ; i < nvs ; i++ exeme_vues [i] = SMALL ; 36  Time = p_GridHrchy -> `gCutTime v , ACEMa ); 37   igrid = 0; igrid < ngrids ; igrid++) 39 i `exis ( Time , v , igrid = ue ) 41 cڡ * s = `g_da_y_size ( Time , v , igrid , ACEMa ) ; 42 * p_da = `g_da ( Time , v , igrid , ACEMa ); 43 `lc_max__tch ( p_da , s ) ; 49 MPI_Comm comm_mp = comm_rvi :: `comm () ; 50 `MPI_Aλdu ( exeme_vues , max_vs , nvs , MPI_DOUBLE , MPI_MAX , comm_mp ); 53 } } 57  gVeFldVb_JR :: $g_m_ve (* m_vs , * size ) 59  nvs = numb_of_vs ; 60  max_v_now = p_GridHrchy -> `fevdex () ; 61  ngrids = `g_numb_of_comp_grids () ; 62 i* size < numb_of_vs ) 64 cout << " VectorFieldVariable_JR::get_min_vector() for VFVamed " 65 << `g_me (<< " Nكnough s icomgay. Exg " << dl << ush ; 66 `rme () ; 69 * size = numb_of_vs ; 74   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 76   i = 0 ; i < nvs ; i++ exeme_vues [i] = BIG ; 77  Time = p_GridHrchy -> `gCutTime v , ACEMa ); 78   igrid = 0; igrid < ngrids ; igrid++) 80 i `exis ( Time , v , igrid = ue ) 82 cڡ * s = `g_da_y_size ( Time , v , igrid , ACEMa ) ; 83 * p_da = `g_da ( Time , v , igrid , ACEMa ); 84 `lc_m__tch ( p_da , s ) ; 90 MPI_Comm comm_mp = comm_rvi :: `comm () ; 91 `MPI_Aλdu ( exeme_vues , m_vs , nvs , MPI_DOUBLE , MPI_MIN , comm_mp ); 94 } } 98  gVeFldVb_JR :: $g_abs_max_ve (* abs_max_vs , * size ) 100  nvs = numb_of_vs ; 101  max_v_now = p_GridHrchy -> `fevdex () ; 102  ngrids = `g_numb_of_comp_grids () ; 103 i* size < numb_of_vs ) 105 cout << " VectorFieldVariable_JR::get_abs_max_vector() for VFVamed " 106 << `g_me (<< " Nكnough s icomgay. Exg " << dl << ush ; 107 `rme () ; 110 * size = numb_of_vs ; 115   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 117   i = 0 ; i < nvs ; i++ exeme_vues [i] = SMALL ; 118  Time = p_GridHrchy -> `gCutTime v , ACEMa ); 119   igrid = 0; igrid < ngrids ; igrid++) 121 i `exis ( Time , v , igrid = ue ) 123 cڡ * s = `g_da_y_size ( Time , v , igrid , ACEMa ) ; 124 * p_da = `g_da ( Time , v , igrid , ACEMa ); 125 `lc_abs_max__tch ( p_da , s ) ; 131 MPI_Comm comm_mp = comm_rvi :: `comm () ; 132 `MPI_Aλdu ( exeme_vues , abs_max_vs , nvs , MPI_DOUBLE , MPI_MAX , comm_mp ); 135 } } 138  gVeFldVb_JR :: $g_abs_m_ve (* abs_m_vs , * size ) 140  nvs = numb_of_vs ; 141  max_v_now = p_GridHrchy -> `fevdex () ; 142  ngrids = `g_numb_of_comp_grids () ; 143 i* size < numb_of_vs ) 145 cout << " VectorFieldVariable_JR::get_abs_min_vector() for VFVamed " 146 << `g_me (<< " Nكnough s icomgay. Exg " << dl << ush ; 147 `rme () ; 150 * size = numb_of_vs ; 155   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 157   i = 0 ; i < nvs ; i++ exeme_vues [i] = BIG ; 158  Time = p_GridHrchy -> `gCutTime v , ACEMa ); 159   igrid = 0; igrid < ngrids ; igrid++) 161 i `exis ( Time , v , igrid = ue ) 163 cڡ * s = `g_da_y_size ( Time , v , igrid , ACEMa ) ; 164 * p_da = `g_da ( Time , v , igrid , ACEMa ); 165 `lc_abs_m__tch ( p_da , s ) ; 171 MPI_Comm comm_mp = comm_rvi :: `comm () ; 172 `MPI_Aλdu ( exeme_vues , abs_m_vs , nvs , MPI_DOUBLE , MPI_MIN , comm_mp ); 175 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_stats_level.cpp 10  ~ 11  ~"VeFldVb_JRIm.h " 13  #BIG 9.99e+200 ) 14  #SMALL -9.99e+200 ) 16  gVeFldVb_JR :: $g_max_ve__v (* max_vs , * size ,  v ) 18  nvs = numb_of_vs ; 19  max_v_now = p_GridHrchy -> `fevdex () ; 20  ngrids = `g_numb_of_comp_grids () ; 21 i* size < numb_of_vs ) 23 cout << " VectorFieldVariable_JR::get_max_vector_on_level() for VFVamed " 24 << `g_me (<< " Nكnough s icomgay. Exg " << dl << ush ; 25 `rme () ; 28 * size = numb_of_vs ; 33   i = 0 ; i < nvs ; i++ exeme_vues [i] = SMALL ; 34  Time = p_GridHrchy -> `gCutTime v , ACEMa ); 35   igrid = 0; igrid < ngrids ; igrid++) 37 i `exis ( Time , v , igrid = ue ) 39 cڡ * s = `g_da_y_size ( Time , v , igrid , ACEMa ) ; 40 * p_da = `g_da ( Time , v , igrid , ACEMa ); 41 `lc_max__tch ( p_da , s ) ; 46 MPI_Comm comm_mp = comm_rvi :: `comm () ; 47 `MPI_Aλdu ( exeme_vues , max_vs , nvs , MPI_DOUBLE , MPI_MAX , comm_mp ); 50 } } 54  gVeFldVb_JR :: $g_m_ve__v (* m_vs , * size ,  v ) 56  nvs = numb_of_vs ; 57  max_v_now = p_GridHrchy -> `fevdex () ; 58  ngrids = `g_numb_of_comp_grids () ; 59 i* size < numb_of_vs ) 61 cout << " VectorFieldVariable_JR::get_min_vector_on_level() for VFVamed " 62 << `g_me (<< " Nكnough s icomgay. Exg " << dl << ush ; 63 `rme () ; 66 * size = numb_of_vs ; 71   i = 0 ; i < nvs ; i++ exeme_vues [i] = BIG ; 72  Time = p_GridHrchy -> `gCutTime v , ACEMa ); 73   igrid = 0; igrid < ngrids ; igrid++) 75 i `exis ( Time , v , igrid = ue ) 77 cڡ * s = `g_da_y_size ( Time , v , igrid , ACEMa ) ; 78 * p_da = `g_da ( Time , v , igrid , ACEMa ); 79 `lc_m__tch ( p_da , s ) ; 84 MPI_Comm comm_mp = comm_rvi :: `comm () ; 85 `MPI_Aλdu ( exeme_vues , m_vs , nvs , MPI_DOUBLE , MPI_MIN , comm_mp ); 88 } } 92  gVeFldVb_JR :: $g_abs_max_ve__v (* abs_max_vs , * size ,  v ) 94  nvs = numb_of_vs ; 95  max_v_now = p_GridHrchy -> `fevdex () ; 96  ngrids = `g_numb_of_comp_grids () ; 97 i* size < numb_of_vs ) 99 cout << " VectorFieldVariable_JR::get_abs_max_vector_on_level() for VFVamed " 100 << `g_me (<< " Nكnough s icomgay. Exg " << dl << ush ; 101 `rme () ; 104 * size = numb_of_vs ; 108   i = 0 ; i < nvs ; i++ exeme_vues [i] = SMALL ; 109  Time = p_GridHrchy -> `gCutTime v , ACEMa ); 110   igrid = 0; igrid < ngrids ; igrid++) 112 i `exis ( Time , v , igrid = ue ) 114 cڡ * s = `g_da_y_size ( Time , v , igrid , ACEMa ) ; 115 * p_da = `g_da ( Time , v , igrid , ACEMa ); 116 `lc_abs_max__tch ( p_da , s ) ; 121 MPI_Comm comm_mp = comm_rvi :: `comm () ; 122 `MPI_Aλdu ( exeme_vues , abs_max_vs , nvs , MPI_DOUBLE , MPI_MAX , comm_mp ); 125 } } 129  gVeFldVb_JR :: $g_abs_m_ve__v (* abs_m_vs , * size ,  v ) 131  nvs = numb_of_vs ; 132  max_v_now = p_GridHrchy -> `fevdex () ; 133  ngrids = `g_numb_of_comp_grids () ; 134 i* size < numb_of_vs ) 136 cout << " VectorFieldVariable_JR::get_abs_min_vector_on_level() for VFVamed " 137 << `g_me (<< " Nكnough s icomgay. Exg " << dl << ush ; 138 `rme () ; 141 * size = numb_of_vs ; 146   i = 0 ; i < nvs ; i++ exeme_vues [i] = BIG ; 147  Time = p_GridHrchy -> `gCutTime v , ACEMa ); 148   igrid = 0; igrid < ngrids ; igrid++) 150 i `exis ( Time , v , igrid = ue ) 152 cڡ * s = `g_da_y_size ( Time , v , igrid , ACEMa ) ; 153 * p_da = `g_da ( Time , v , igrid , ACEMa ); 154 `lc_abs_m__tch ( p_da , s ) ; 159 MPI_Comm comm_mp = comm_rvi :: `comm () ; 160 `MPI_Aλdu ( exeme_vues , abs_m_vs , nvs , MPI_DOUBLE , MPI_MIN , comm_mp ); 163 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_stats_patch.cpp 16  ~ 17  ~"VeFldVb_JRIm.h " 19  #MAX ( A , B (A> (B? (A: (B) ) 20  #MIN ( A , B (A< (B? (A: (B) ) 29  #JR_DEBUG ) 30  gVeFldVb_JR :: $lc_max__tch (* p_da , cڡ * p_s ) 32  nx = p_s [0];  ny =_s[1] ;  nz =_s[2] ;  nvs = numb_of_vs ; 33 i nx <0 )x = 1 ; i ny <0 )y = 1 ; i nz <= 0 )z = 1 ; 35   k = 0; k < nz ; k++ ) 36   j = 0 ; j < ny ; j++ ) 37   i = 0; i < nx ; i++ ) 38   iv = 0; iv < nvs ; ivar++ ) 40  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 41 exeme_vues [ iv ] = `MAX exeme_vues[iv], p_da [ dex ] ) ; 43 } } 45  gVeFldVb_JR :: $lc_m__tch (* p_da , cڡ * p_s ) 47  nx = p_s [0];  ny =_s[1] ;  nz =_s[2] ;  nvs = numb_of_vs ; 48 i nx <0 )x = 1 ; i ny <0 )y = 1 ; i nz <= 0 )z = 1 ; 50   k = 0; k < nz ; k++ ) 51   j = 0 ; j < ny ; j++ ) 52   i = 0; i < nx ; i++ ) 53   iv = 0; iv < nvs ; ivar++ ) 55  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 56 exeme_vues [ iv ] = `MIN exeme_vues[iv], p_da [ dex ] ) ; 58 } } 60  gVeFldVb_JR :: $lc_abs_max__tch (* p_da , cڡ * p_s ) 62  nx = 1, ny = 1, nz = 1, nvs = numb_of_vs ; 63 i( dimsi > 0 ) nx = p_s [0] ; i(dimsi > 1 ) ny =_res[1] ; 64 i( dimsi > 2 ) nz = p_s [2] ; 66   k = 0; k < nz ; k++ ) 67   j = 0 ; j < ny ; j++ ) 68   i = 0 ; i < nx ; i++ ) 69   iv = 0; iv < nvs ; ivar++ ) 71  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 72 exeme_vues [ iv ] = `MAX exeme_vues[iv], `bs p_da [ dex ] ) ) ; 74 } } 76  gVeFldVb_JR :: $lc_abs_m__tch (* p_da , cڡ * p_s ) 78  nx = p_s [0];  ny =_s[1] ;  nz =_s[2] ;  nvs = numb_of_vs ; 79 i nx <0 )x = 1 ; i ny <0 )y = 1 ; i nz <= 0 )z = 1 ; 81   k = 0; k < nz ; k++ ) 82   j = 0 ; j < ny ; j++ ) 83   i = 0; i < nx ; i++ ) 84   iv = 0; iv < nvs ; ivar++ ) 86  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 87 exeme_vues [ iv ] = `MIN exeme_vues[iv], `bs p_da [ dex ] ) ) ; 89 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_sync.cpp 10  ~ 11  ~"VeFldVb_JRIm.h " 13  gVeFldVb_JR :: $sw_time_vs  f_v ,  t1 ,  t2 ) 15 `as is_hod = l ); 16 i is_hod = ue ) 18 << "VectorFieldVariable_JR::swap_time_levels()" 19 << "Obje mked unsuab,u -1 " << dl ; 23 #ide M2002 24 i dimsi =1 ) pGf1d -> `GF_SwTimeLevs ( f_v , t1 , t2 ) ; 25 i dimsi =2 ) pGf2d -> `GF_SwTimeLevs ( f_v , t1 , t2 ) ; 26 i dimsi =3 ) pGf3d -> `GF_SwTimeLevs ( f_v , t1 , t2 ) ; 28 i dimsi =1 ) pGf1d -> `GF_SwTimeLevs ( f_v , t1 , t2 , ACEMa ) ; 29 i dimsi =2 ) pGf2d -> `GF_SwTimeLevs ( f_v , t1 , t2 , ACEMa ) ; 30 i dimsi =3 ) pGf3d -> `GF_SwTimeLevs ( f_v , t1 , t2 , ACEMa ) ; 33 } } 35  gVeFldVb_JR :: $cye_time_vs  v ) 37 `as is_hod = l ); 38 i is_hod = ue ) 40 << "VectorFieldVariable_JR::cycle_time_levels()" 41 << "Obje mked unsuab,u -1 " << dl ; 45 #ide M2002 46 i dimsi =1 ) pGf1d -> `GF_CyeTimeLevs ( v ) ; 47 i dimsi =2 ) pGf2d -> `GF_CyeTimeLevs ( v ) ; 48 i dimsi =3 ) pGf3d -> `GF_CyeTimeLevs ( v ) ; 50 i dimsi =1 ) pGf1d -> `GF_CyeTimeLevs ( v , ACEMa ) ; 51 i dimsi =2 ) pGf2d -> `GF_CyeTimeLevs ( v , ACEMa ) ; 52 i dimsi =3 ) pGf3d -> `GF_CyeTimeLevs ( v , ACEMa ) ; 55 } } 57  gVeFldVb_JR :: $synchri  time ,  f_v ,  idt ) 59 `as is_hod = l ); 60 i is_hod = ue ) 62 << "VectorFieldVariable_JR::synchronise()" 63 << "Obje mked unsuab,u -1 " << dl ; 67 i dimsi =1 ) pGf1d -> `GF_Sync ( time , f_v , idt ) ; 68 i dimsi =2 ) pGf2d -> `GF_Sync ( time , f_v , idt ) ; 69 i dimsi =3 ) pGf3d -> `GF_Sync ( time , f_v , idt ) ; 72 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VFV_JR_time.cpp 10  ~ 11  ~"VeFldVb_JRIm.h " 13  gVeFldVb_JR :: $g_cut_time ( f_v ,  idt ) 15 `as is_hod = l ); 16 i is_hod = ue ) 18 << "VectorFieldVariable_JR::get_current_time() " 19 << "Obje mked unsuab,u -1 " << dl ; 23  dummy ; 24 i dimsi =1 ) dummy = pGf1d -> `GF_CutTime f_v , idt ) ; 25 i dimsi =2 ) dummy = pGf2d -> `GF_CutTime f_v , idt ) ; 26 i dimsi =3 ) dummy = pGf3d -> `GF_CutTime f_v , idt ) ; 27  dummy ); 28 } } 30  gVeFldVb_JR :: $emt_time ( f_v ,  idt ) 32 `as is_hod = l ); 33 i is_hod = ue ) 35 << "VectorFieldVariable_JR::increment_time() " 36 << "Obje mked unsuab,u -1 " << dl ; 40 i dimsi =1 ) pGf1d -> `GF_InCutTime f_v , idt ) ; 41 i dimsi =2 ) pGf2d -> `GF_InCutTime f_v , idt ) ; 42 i dimsi =3 ) pGf3d -> `GF_InCutTime f_v , idt ) ; 45 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/VectorFieldVariable_JRImpl.cpp 41  ~ 42  ~"VeFldVb_JRIm.h " 44 gVeFldVb_JR :: $VeFldVb_JR cڡ * me ,  dim , 45 GridHrchy * pGH ,  nvs , 46  t_ ,  s_ , 47 MeshClotiTy T ,  maxvs , 48  time_s_high , 49  time_s_low , 50  shadow_ag ,  deu_bc , 51  deu_ad_bndry_ty ) 53 pGf1d = 0 ; pGf2d = 0 ; pGf3d = 0 ; 55 is_lized = ue ; 56 is_locked = l ; 57 dimsi = dim ; 58 mesh_ty = T ; 59 boundy_width = s_ ; 60 adt_boundy_width = s_ ; 61 numb_of_vs = nvs ; 62 is_hod = l ; 63 p_GridHrchy = pGH ; 64 exeme_vues = w [ nvs ] ; 66  dummy ; 67  T ) 70 dummy = ACEClCd ; 73 dummy = ACEVxCd ; 76 dummy = ACEFaCd_X ; 79 dummy = ACEFaCd_Y ; 82 dummy = ACEFaCd_Z ; 85 << " From VectorFieldVariable_JR() : Wrong meshype. " 86 << T << dl ; 87 << " NO WORK DONE,ug NULL " << dl ; 88 is_hod = ue ; 92  deu_bc_ACE ; 93  deu_bc ) 96 deu_bc_ACE = ACEBoundyCڡ ; 99 deu_bc_ACE = ACEBoundyShi ; 102 deu_bc_ACE = ACEBoundyUrDef ; 105 << " Something wrong in VectorFieldVariable_JR::VectorFieldVariable_JR() " 106 << " ithdeu boundy cdiځy." << dl ; 107 << " Mkghiobje unub " << dl ; 108 is_hod = ue ; 112  deu_ad_bndry_ty_ACE ; 113  deu_ad_bndry_ty ) 115  Ipީed ) : 116 deu_ad_bndry_ty_ACE = ACEAdtBoundyIp ; 118  UrDefedTAB ) : 119 deu_ad_bndry_ty_ACE = ACEAdtBoundyUrDef ; 122 << " Somhg wrg iG cȚީiځy " << dl ; 123 << " VeFldVb_JR::VeFldVb_JR(). Tmg " << dl ; 124 << " Mkghcompڒunub,u wh -1" << dl ; 125 is_hod = ue ; 129 pGH -> `ACE_SNumbIms nvs ); 130 i dimsi == 1 ) 132 pGf1d = w `GridFuni (1)<>( me , t_ , s_ , (* pGH ), 133 dummy , ACECommFaOy , shadow_ag , 134 deu_bc_ACE , deu_ad_bndry_ty_ACE , 135 ACENoExGho ) ; 136 i pGf1d == 0 ) 138 << " VectorFieldVariable_JR::VectorFieldVariable_JR() " 140 << dl ; 141 `rme () ; 143 pGFV = dymic_ < GridFuniVoid *> ( pGf1d ) ; 144 pGFV -> `GF_STimeAls ( time_s_high , time_s_low ); 147 i dimsi == 2 ) 149 pGf2d = w `GridFuni (2)<>( me , t_ , s_ , (* pGH ), 150 dummy , ACECommFaOy , shadow_ag , 151 deu_bc_ACE , deu_ad_bndry_ty_ACE , 152 ACENoExGho ) ; 153 `as pGf2d != 0 ) ; 154 i pGf2d == 0 ) 156 << " VectorFieldVariable_JR::VectorFieldVariable_JR() " 158 << dl ; 159 `rme () ; 161 pGFV = dymic_ < GridFuniVoid *> ( pGf2d ) ; 162 pGFV -> `GF_STimeAls ( time_s_high , time_s_low ); 165 i dimsi == 3 ) 167 pGf3d = w `GridFuni (3)<>( me , t_ , s_ , (* pGH ), 168 dummy , ACECommFaOy , shadow_ag , 169 deu_bc_ACE , deu_ad_bndry_ty_ACE , 170 ACENoExGho ) ; 171 `as pGf3d != 0 ) ; 172 i pGf3d == 0 ) 174 << " VectorFieldVariable_JR::VectorFieldVariable_JR() " 176 << dl ; 177 `rme () ; 179 pGFV = dymic_ < GridFuniVoid *> ( pGf3d ) ; 180 pGFV -> `GF_STimeAls ( time_s_high , time_s_low ); 183 cout << " Pro: " << comm_rvi :: `oc_me () 185 << " VeFldVb odimsi " << dimsi 186 << "ndam" << me << " sucsfuy made." << dl ; 189 i pGFV = NULL ) << "GFV iNULL " << dl ; 190 } } 192 gVeFldVb_JR ::~ $VeFldVb_JR () 194 i pGf1d ! NULL ) de Gf1d ; 195 i pGf2d ! NULL ) de Gf2d ; 196 i pGf3d ! NULL ) de Gf3d ; 197 } } 199  gVeFldVb_JR :: $t_grid_funi GridFuniVoid * pGF ) 201 `as is_hod = l ); 202 i is_hod = ue ) 204 << " VectorFieldVariable_JR::set_grid_function() : " 205 << " Obje mked unub,u -1 " << dl ; 209 i dimsi =1 ) pGf1d = dymic_ < `GridFuni (1)<> * > ( pGF ) ; 210 i dimsi =2 ) pGf2d = dymic_ < `GridFuni (2)<> * > ( pGF ) ; 211 i dimsi =3 ) pGf3d = dymic_ < `GridFuni (3)<> * > ( pGF ) ; 214 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Meshes/GrACEComponent/src/dummy.cpp 5  ~ 6  ~"GCompڒt.h " 8 $ma ( gc , * gv []) 10 `MPI_In & gc , & gv ); 11 GCompڒt A ; 12 `ACEMPI_Fize (); 13 cout << " Camh" << dl ; 14 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/ParallelIO/include/ParallelFileIO.h 14 #ide PlFeIOHSn 15  #PlFeIOHSn ) 19  ~"c.h " 20  ~"VeFldVb.h " 23  ~"jc++/jc++.h " 24  ~"jc++/ut/jc++ut.h " 25  ~"ms/msSr.h " 26  ~"pt/sutIs.h " 29  ~"SAMRCsumPt.h " 32  ~"AMRPt.h " 35  ~"PchRdWre.h " 38  ~ 39  ~ 40  ~"mpi.h " 41 usg mea gd ; 44  ~"CONV_NS.h " 46 ass gPlFeIO : public vtu CONV_NS ( Compڒt ), 47 public vtu gSAMRCsumPt 49 gpublic : 51 PlFeIO () ; 53 ~ PlFeIO () ; 55 vtu  tSvis CONV_NS ( Svis * svc ); 57 vtu  compu VeFldVb * p_y_vfv ) ; 59 give : 61  () ; 63  InddtWre VeFldVb * p ) ; 65  CsidedWre VeFldVb * q ) ; 67  GTٮPches VeFldVb * d ) ; 69  WreDaToFe ( VeFldVb * q , PchRdWre * p ) ; 71  GDaFromAndWreToFe  roc , PchRdWre * p , 72 * tches_r_oc ,  dim ) ; 74  SdDaToWrProc VeFldVb * q ,  oc ) ; 76 BoPam * gInddt ; 77 IPam * gpWrProc ; 78 PchRdWre * gwr ; 80 AMRPt * gpGPt ; 81 MPI_Comm gcomm ; 83  grocs , gmy_oc ; 84 bo gis_ , gis_hod ; 86 CONV_NS ( Svis * gpSvc ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/ParallelIO/include/PatchReadWrite.h 32 #ide PchRdWreSn 33  #PchRdWreSn ) 38  ~ 39  ~ 40 usg mea gd ; 42 as cPchRdWre 45 mpublic : 50 um{ READER , mWRITER } tTyOfIO ; 55 PchRdWre TyOfIO io_ty ) ; 57 $PchRdWre ({ `PchRdWre WRITER ) ; } } 59 ~ PchRdWre () ; 64 um{ gE = -1, gREAD_ONLY , gWRITE_NEW , gWRITE_APPEND } tAi ; 77  OnFe (cڡ * me , Ai mode ) ; 79  CloFe () ; 93  WreNumsPchesDims  P ,  d ) ; 114  AdPch (* da , cڡ * lbbc , cڡ * ubbc , cڡ * size , 115  nvs ,  v ,  oc ,  dim ) ; 129  RdNumsPchesDims (& P , & d ) ; 136  RewdRd () ; 159  RdPch ( Q , * & da , * lbbc , * ubbc , * size , & nvs , 160 & v , & oc ,  dim ) ; 166  RdPchInfo ( Q , * lbbc , * ubbc , * size , & nvs , & v , 167 & oc ,  dim ) ; 169 give : 171 ifam Fe ; 172 ofam goutFe ; 173 gd :: ampos FeS , goutFeS ; 175 TyOfIO gwh_am_i ; 176 Ai gmy_mode ; 178  gtches_wrn_out ; 179  gnumPches ; 180  gdims ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/ParallelIO/src/Consolidated.cpp 6  ~"PlFeIO.h " 7  ~ 8  ~ 10  gPlFeIO :: $CsidedWre VeFldVb * q ) 12  ũches_this_oc = `GTٮPches q ) ; 13  ndims = q -> `g_dims () ; 17 * tches_r_oc = w [ rocs ] ; 18  i = 0; i < rocs ; i++ tches_r_oc [i] = 0 ; 19 `MPI_Gh & ũches_this_oc , 1, MPI_INT , tches_r_oc , 1, MPI_INT, 20 pWrProc -> vue , comm ) ; 21  tches_tٮ = 0; 22  i = 0 ; i < rocs ; i++ ) tches_tٮ + tches_r_oc [i] ; 26 cڡ * me = q -> `g_me () ; 27  f = pGPt -> `GC_g_femt_ (); 28  mvs = pGPt -> `GC_g_max_vs () ; 29  timeSmp = pGPt -> `GC_cut_time (0, ACEMa ) / 30 ( `pow () f , mvs -1 ); 31 d :: rgam ame ; fm<< me << "_" << timeSmp << ".by" << ds ; 32 rg fame ; ame >> filename ; 35 i my_oc = pWrProc -> vue ) 37  s = wr -> `OnFe fame . `c_r (), PchRdWre :: WRITE_NEW ) ; 38 i( s < 0 ) 40 << " ParallelFileIO::ConsolidatedWrite() couldot open file " 41 << fame . `c_r (<< dl ; 42 ( s ) ; 44 wr -> `WreNumsPchesDims tches_tٮ , ndims ) ; 62  roc = 0 ; io< rocs ; iproc++ ) 64 i( roc = my_oc && (my_o= pWrProc -> vue ) ) 67 `WreDaToFe q , wr ) ; 69 i( roc = my_oc && (my_o! pWrProc -> vue ) ) 72 `SdDaToWrProc q , pWrProc -> vue ) ; 74 i( roc ! my_oc && ( my_o= pWrProc -> vue ) ) 78 `GDaFromAndWreToFe roc , wr , tches_r_oc , ndims ) ; 83 `MPI_Brr comm ) ; 86 `MPI_Brr comm ) ; 88 i my_oc = pWrProc -> vue ) wr -> `CloFe () ; 90 de [] tches_r_oc ; 93 } } 95  gPlFeIO :: $WreDaToFe ( VeFldVb * d , PchRdWre * p ) 97  max_v_now = pGPt -> `GC_g_fe_v () ; 98  ngrids = d -> `g_numb_of_comp_grids () ; 99  nvs = d -> `g_ve_size () ; 100  dims = d -> `g_dims () ; 102   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 104  my_time = pGPt -> `GC_cut_time v , ACEMa ) ; 105   igrid = 0; igrid < ngrids ; igrid++ ) 107 i d -> `exis ( my_time , v , igrid = ue ) 109 * da = d -> `g_da my_time , v , igrid , ACEMa ) ; 110 cڡ * lbbc = d -> `g_low_bbc my_time , v , igrid , ACEMa ) ; 111 cڡ * ubbc = d -> `g_u_bbc my_time , v , igrid , ACEMa ) ; 112 cڡ * size = d -> `g_da_y_size my_time , v , igrid , ACEMa ) ; 114 p -> `AdPch da , lbbc , ubbc , size , nvs , v , my_oc , dims ) ; 119 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/ParallelIO/src/Consolidated_mpi.cpp 7  ~"PlFeIO.h " 9  #RAW_PATCH_HEADER_LENGTH 12 ) 17  gPlFeIO :: $GDaFromAndWreToFe  roc , PchRdWre * p , 18 * tches_r_oc ,  dim ) 21 MPI_Stus us ; 22  hd [ RAW_PATCH_HEADER_LENGTH ] ; 24  M = tches_r_oc [ roc ] ; 25  srs = 0 ; 26  ch = 0 ; itch < M ; ipatch++) 29 `MPI_Recv ( hd , RAW_PATCH_HEADER_LENGTH , MPI_INT , roc , srs , 30 comm , & us ); 31 srs ++ ; 34  dasize = hd [6]*header[7]*header[8]*header[9] ; 35 * da = w [ dasize ] ; 36 `MPI_Recv ( da , dasize , MPI_DOUBLE , roc , srs , comm , & us ) ; 37 srs ++ ; 39 p -> `AdPch ( da , hd , &(header[3]), &(header[6]), header[9], 40 hd [10], hd[11], dim ) ; 42 de [] da ; 46 } } 52  gPlFeIO :: $SdDaToWrProc VeFldVb * d ,  oc ) 55  hd [ RAW_PATCH_HEADER_LENGTH ] ; 57  max_v_now = pGPt -> `GC_g_fe_v () ; 58  ngrids = d -> `g_numb_of_comp_grids () ; 59  nvs = d -> `g_ve_size () ; 60  dims = d -> `g_dims (); 62  srs = 0 ; 63  v = 0 ;ev < ( max_v_now +1) ;evel++ ) 65  my_time = pGPt -> `GC_cut_time v , ACEMa ) ; 66   igrid = 0; igrid < ngrids ; igrid++ ) 68 i d -> `exis ( my_time , v , igrid = ue ) 70 * da = d -> `g_da my_time , v , igrid , ACEMa ) ; 71 cڡ * lbbc = d -> `g_low_bbc my_time , v , igrid , ACEMa ) ; 72 cڡ * ubbc = d -> `g_u_bbc my_time , v , igrid , ACEMa ) ; 73 cڡ * size = d -> `g_da_y_size my_time , v , igrid , ACEMa ) ; 76  i = 0 ; i < RAW_PATCH_HEADER_LENGTH ; i++ hd [i] = 1; 77  d = 0; d < dims ; d++) 79 hd [ d ] = lbbc [d] ; 80 hd [3+ d ] = ubbc [d] ; 81 hd [6+ d ] = size [d] ; 83 hd [9] = nvs ; hd[10] = v ; hd[11] = my_oc ; 85 `MPI_Sd ( hd , RAW_PATCH_HEADER_LENGTH , MPI_INT , oc , srs , comm ) ; 86 srs ++ ; 88  dasize = hd [6]*header[7]*header[8]*header[9] ; 89 `MPI_Sd ( da , dasize , MPI_DOUBLE , oc , srs , comm ); 90 srs ++ ; 96 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/ParallelIO/src/Independent.cpp 6  ~"PlFeIO.h " 7  ~ 8  ~ 10  gPlFeIO :: $InddtWre VeFldVb * d ) 12  ũches = `GTٮPches d ) ; 13  dims = d -> `g_dims () ; 15 cڡ * me = d -> `g_me () ; 16  f = pGPt -> `GC_g_femt_ (); 17  mvs = pGPt -> `GC_g_max_vs () ; 18  timeSmp = pGPt -> `GC_cut_time (0, ACEMa ) / 19 ( `pow () f , mvs -1 ); 20 d :: rgam ame ; 21 ame << me << "_" << timeSmp << "_" << my_oc << ".by" << ds ; 22 rg fame ; ame >> filename ; 24  s = wr -> `OnFe fame . `c_r (), PchRdWre :: WRITE_NEW ) ; 25 i s < 0 )  (ans) ; 27 wr -> `WreNumsPchesDims ũches , dims ) ; 29  max_v_now = pGPt -> `GC_g_fe_v () ; 30  ngrids = d -> `g_numb_of_comp_grids () ; 31  nvs = d -> `g_ve_size () ; 33   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 35  my_time = pGPt -> `GC_cut_time v , ACEMa ) ; 36   igrid = 0; igrid < ngrids ; igrid++ ) 38 i d -> `exis ( my_time , v , igrid = ue ) 40 * da = d -> `g_da my_time , v , igrid , ACEMa ) ; 41 cڡ * lbbc = d -> `g_low_bbc my_time , v , igrid , ACEMa ) ; 42 cڡ * ubbc = d -> `g_u_bbc my_time , v , igrid , ACEMa ) ; 43 cڡ * size = d -> `g_da_y_size my_time , v , igrid , ACEMa ) ; 45 wr -> `AdPch da , lbbc , ubbc , size , nvs , v , my_oc , dims ) ; 49 wr -> `CloFe () ; 51 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/ParallelIO/src/ParIO_wrapper.cpp 1  ~"PlFeIO.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _PlFeIO () 8 CONV_NS ( Compڒt * wk ; 9 PlFeIO * compڒt ; 10 compڒt = w PlFeIO (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_ParallelFileIO ParallelFileIO"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/ParallelIO/src/ParallelFileIO.cpp 5  ~"PlFeIO.h " 7 gPlFeIO :: $PlFeIO () 10 Inddt = w `BoPam ("IndependentWrite", 12 "InddWre?", l ) ; 15 pWrProc = w `IPam ("Consolidated_IO_Proc", 19 wr = w `PchRdWre PchRdWre :: WRITER ) ; 20 is_ = l ; 21 is_hod = l ; 22 pGPt = 0 ; 23 } } 25 gPlFeIO ::~ $PlFeIO () 27 de Inddt ; 28 de pWrProc ; 29 de wr ; 31 pSvc = 0 ; is_ = l ; 32 } } 34  gPlFeIO :: tSvis CONV_NS ( Svis * svc ) 36 i svc == 0 ) 38 pSvc -> uegiUsPt ("GracePort") ; 42 gpSvc = svc ; 45 gsvc -> giUsPt svc -> PtInfo ("cSvc", 47 CfigubPamFay * gf = 48 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 49 CHECKDC f ); 50 CfigubPamPt * g = f -> CfigubPamPt (); 51 gsvc -> addProvidesPt ( , 52 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 53 g -> tBchT (" Parallel IOarameters" ); 54 g -> addReque Inddt ) ; 55 g -> addReque pWrProc ) ; 56 gpSvc -> aPt ( "cSvc" ) ; 58 gpSvc -> addProvidesPt ( this , pSvc -> PtInfo ("ParallelIOPort", 60 gpSvc -> giUsPt pSvc -> PtInfo ("GracePort", "AMRPort", 0) ) ; 63  gPlFeIO :: $ () 65 pGPt = dymic_ < AMRPt * > ( pSvc -> `gPt ("GracePort") ) ; 66 i pGPt == 0 ) 68 << " ParallelFileIO::init() : GracePortot connected. Marking " 69 << " compڒunsuab. Rug . " << dl ; 70 is_hod = ue ; 73 comm = pGPt -> `GC_g_compu_nodes_communit () ; 74 rocs = pGPt -> `GC_g_oc_wld () ; 75 my_oc = pGPt -> `GC_g_oc_me () ; 77 is_ = ue ; 80 } } 82  gPlFeIO :: $GTٮPches VeFldVb * d ) 84  max_v_now = pGPt -> `GC_g_fe_v () ; 85  ngrids = d -> `g_numb_of_comp_grids () ; 87  cou = 0 ; 88   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 90  my_time = pGPt -> `GC_cut_time v , ACEMa ) ; 91   igrid = 0; igrid < ngrids ; igrid++ ) 92 i d -> `exis ( my_time , v , igrid = ue ) cou ++ ; 95 ( cou ) ; 96 } } 98  gPlFeIO :: $compu VeFldVb * p_y_vfv ) 101 i is_ = l ) ` () ; 103 i( is_hod = ue ) 105 << " ParallelFileIO::compute() Component marked unusable; " 106 << "ug doghg " << dl ; 110 i Inddt -> vue = ue ) 111 `InddtWre p_y_vfv ) ; 113 `CsidedWre p_y_vfv ) ; 116 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/ParallelIO/src/PatchReadWrite.cpp 1 usg mea gd ; 2  ~"PchRdWre.h " 4  #HEADER_LENGTH 13 ) 12 gPchRdWre :: $PchRdWre ( TyOfIO io_ty ) 14 wh_am_i = io_ty ; 15 my_mode = PchRdWre :: E ; 17 numPches = 0; 18 dims = 0; 19 } } 22 gPchRdWre ::~ $PchRdWre () 25 } } 27  PchRdWre :: $OnFe (cڡ * me , Ai mode ) 33 i mode = PchRdWre :: READ_ONLY ) && ( wh_am_i =PchRdWre:: WRITER ) ) 35 << "F" << me << "did on. YouskedREAD_ONLY," << dl ; 36 << "buthPchRdWrobje wadWRITER." << dl ; 37 << "Rued wh -1 from PchRdWre::OnFe." << dl ; 45 i( mode = PchRdWre :: WRITE_NEW || (mod=PchRdWre:: WRITE_APPEND ) ) 46 && ( wh_am_i = PchRdWre :: READER ) ) 48 << "F" << me << "did on. YouskedWRITE_NEW oWRITE_APPEND," << dl ; 49 << "buthPchRdWrobje wadREADER." << dl ; 50 << "Rued wh -1 from PchRdWre::OnFe." << dl ; 55 i mode = PchRdWre :: READ_ONLY ) 58 Fe . `ݒ ( me , ios :: by ); 59 i( Fe . ` ()) { 60 << "Ubˁݒ f"<< me << " f܄dg. Rued wh -2 from PchRdWre::OnFe" << dl ; 63 FeS = Fe . `g (); 67 i mode = PchRdWre :: WRITE_APPEND ) 70 outFe . `ݒ ( me , ios :: p | ios:: e | ios:: by ); 71 i( outFe . ` ()) { 72 << "Ubˁݒ f"<< me << " f܇dg da. Rued wh -2 from PchRdWre::OnFe" << dl ; 75 d :: ampos cut = outFe . `p () ; 76 outFe . `ekp (0, d :: ios :: beg ) ; 77 outFeS = outFe . `p () ; 78 outFe . `ekp cut ) ; 82 i mode = PchRdWre :: WRITE_NEW ) 84 outFe . `ݒ ( me , ios :: unc | ios:: by ); 85 i( outFe . ` ()) { 86 << "Ubˁ f"<< me << " f wrg. Rued wh -3 from PchRdWre::OnFe" << dl ; 89 tches_wrn_out = 0 ; 90 outFeS = outFe . `p () ; 93 my_mode = mode ; 95 } } 97  gPchRdWre :: $CloFe () 102 i(! Fe . `is_ݒ ()&& (! outFe .is_open()) ) 104 << "Nfwaݒed. From PchRdWre::CloF-> Doghg!!!" << dl ; 109 i( Fe . `is_ݒ ()Fe. `o (); 112 i( outFe . `is_ݒ ()outFe. `o (); 116 } } 118  gPchRdWre :: $WreNumsPchesDims  P ,  d ) 120 i wh_am_i = PchRdWre :: READER ) 122 << "Thobje icfigudadnd you'rygwre. " << dl ; 123 << "Rued wh -1 from PchRdWre::WreNumsPchesDims" << dl ; 127 i( my_mode = PchRdWre :: WRITE_APPEND || (my_mod=PchRdWre:: READ_ONLY ) ) 129 << " Cannot writeumber ofatchesnd dimso file opened foread-only" 130 << " ond otis. Rued wh -3 from PchRdWre::WreNumsPchesDim " << dl ; 134 numPches = P ; 135 dims = d ; 137 i outFe . `is_ݒ () ) 140 * dummy ; 141 * ; 142 = & numPches ; 143 * wre_ ; 144 dummy = ic_ < *> ( ) ; 145 wre_ = ic_ < * > ( dummy ) ; 146 outFe . `wre wre_ , ()); 148 * dummy2 ; 149 * i ; 150 i = & dims ; 151 * wre_2 ; 152 dummy2 ic_ < * >( i ) ; 153 wre_2 = ic_ < *> ( dummy2 ); 154 outFe . `wre wre_2 , ()); 158 << "Thfhan bݒed. Rued wh -2 from PchRdWre::WreNumsPchesDims" << dl ; 162 } } 164  gPchRdWre :: $AdPch (* da , cڡ * lbbc , cڡ * ubbc , cڡ * size , 165  nvs ,  v ,  oc ,  dim ) 167 i wh_am_i = PchRdWre :: READER ) 169 << "Thobje icfigudadnd you'rygwre. " << dl ; 170 << "Rued wh -1 from PchRdWre::AdPch" << dl ; 175 i! outFe . `is_ݒ () ) 177 << "ThftAdPchhan bݒed. " << dl ; 178 << "Rued wh -2 from PchRdWre::AdPch" << dl ; 183 i my_mode ! PchRdWre :: WRITE_APPEND ) && ( my_mod!PchRdWre:: WRITE_NEW ) ) 185 << "Thftحndhan bݒed iWRITE_NEW oWRITE_APPEND mode. " << dl ; 186 << "Rued wh -3 from PchRdWre::AdPch" << dl ; 192 i outFe . `p (= outFeS ) 194 << "ThWreNumsPchesDimhan bed. Cș." << dl ; 195 << "Rued wh -4 from PchRdWre::AdPch" << dl ; 200 i dim ! dims ) 202 << "Thiobm whhdimsi othfld." << dl ; 203 << "C˸hadiscy idimsiڮy bwWreNumsPchesDimd AdPch." << dl ; 204 << "Rued wh -5 from PchRdWre::AdPch" << dl ; 209 outFe . `ekp (0, ios :: d ); 212  hd [ HEADER_LENGTH ] ; 213  i = 0 ; i < HEADER_LENGTH ; i++ hd [i] = 1 ; 215 hd [0] = tches_wrn_out ; 216  i = 0 ; i < dim ; i++) 218 hd [1+ i ] = lbbc [i] ; hd[4+i] = ubbc [i] ; hd[7+i] = size [i] ; 220 hd [10] = nvs ; hd[11] = v ; hd[12] = oc ; 226 * dummy ; 227 * wre_hd ; 228 dummy = ic_ < *> ( hd ; wre_hd = static_cast< * > (dummy) ; 230 outFe . `wre wre_hd , ( HEADER_LENGTH * () ) ); 237  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 240 * wre_da ; 241 dummy = ic_ < *> ( da ; wre_da = static_cast< * > (dummy) ; 242 outFe . `wre wre_da , ( DATA_LENGTH * () ) ); 246 outFe . `ush () ; 247 tches_wrn_out ++ ; 250 } } 252  gPchRdWre :: $RdNumsPchesDims & P , & d ) 254 i wh_am_i = PchRdWre :: WRITER ) 256 << "Thobje icfigudwrnd you'rygػad. " << dl ; 257 << "Rued wh -1 from PchRdWre::RdNumsPchesDims" << dl ; 261 i Fe . `is_ݒ () ) 264 Fe . `ekg (0, ios :: beg ) ; 265 Fe . `r (); 268 * dummy = ic_ < * > (& numPches ) ; 269 * ad_out = ic_ < * > ( dummy ) ; 270 Fe . `ad ad_out , ()); 272 dummy = ic_ < * > (& dims ; ad_out = static_cast< * > (dummy) ; 273 Fe . `ad ad_out , ()); 277 << "Thfhan bݒed. Rued wh -2 from PchRdWre::RdNumsPchesDims" << dl ; 281 P = numPches ; 282 d = dims ; 285 } } 293  gPchRdWre :: $RewdRd () 297 i Fe . `is_ݒ () ) 301 Fe . `ekg (0, ios :: beg ) ; 302 Fe . `r () ; 303 Fe . `ekg 2 * (), ios :: beg ) ; 307 << "Thfhan bݒed. Rued wh -1 from PchRdWre::RdNumsPcheDims" << dl ; 314 } } 339  gPchRdWre :: $RdPch ( Q , *& da , * lbbc , * ubbc , * size , 340 & nvs , & v , & oc ,  dim ) 343 bo foundPch = l ; 345 i da != 0 ) 347 << "*din NULL upڃry imhod RdPch. " << dl ; 348 << "Rued wh -10 from PchRdWre::RdPch" << dl ; 352 i wh_am_i ! PchRdWre :: READER ) 354 << "Thobje in cfigudadnd you'rygػad. " << dl ; 355 << "Rued wh -1 from PchRdWre::RdPch" << dl ; 360 if! Fe . `is_ݒ () ) 362 << "Thftػad from han bݒed." << dl ; 363 << "Rued wh -2 from PchRdWre::RdPch" << dl ; 368 i my_mode ! PchRdWre :: READ_ONLY ) 370 << "Thftػad from han bݒed iREAD_ONLY mode. " << dl ; 371 << "Rued wh -3 from PchRdWre::RdPch" << dl ; 375 i Fe . `g (= FeS ) 377 << "Fpoihbegg othfe. RdNumsPchesDims(wan cd. Cș." << dl ; 378 << "Rued wh -4 from PchRdWre::RdPch" << dl ; 383 i dim ! dims ) 385 << "Thiobm whhdimsi othfld." << dl ; 386 << "C˸hadiscy idimsiڮy bwRdNumsPchesDimd RdPch." << dl ; 387 << "Rued wh -5 from PchRdWre::RdPch" << dl ; 391  hd [ HEADER_LENGTH ]; 392 * dummy ; * ad_hd ; * ad_da ; 394 dummy = ic_ <*> ( hd ) ; 395 ad_hd = ic_ <*> ( dummy ) ; 398  tchID ; 399  ch = 0; itch < numPches ; ipatch++) 401 Fe . `ad ( ad_hd , ( HEADER_LENGTH * ()) ) ; 402 tchID = hd [0] ; 406  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 408 i Q = tchID ) 411  i = 0 ; i < dim ; i++) 413 lbbc [ i ] = hd [1+i] ; ubbc [i] = hd[4+i] ; size [i] = header[7+i] ; 415 nvs = hd [10] ; v = hd[11] ; oc = header[12] ; 418 * d = w [ DATA_LENGTH ]; 421 dummy = ic_ <*> ( d ) ; 422 ad_da = ic_ <*> ( dummy ) ; 423 Fe . `ad ( ad_da , ( DATA_LENGTH * ()) ) ; 426 da = d ; 428 foundPch = ue ; 433 Fe . `ekg ( DATA_LENGTH *(), ios :: cur ) ; 437 i Fe . `eof ( `RewdRd (); 441 << "Pch #" << Q << " wan found!!!" << dl ; 442 << "Rued wh -6 from PchRdWre::RdPch. " << dl ; 445 } } 452  gPchRdWre :: $RdPchInfo ( Q , * lbbc , * ubbc , * size , & nvs , 453 & v , & oc ,  dim ) 457 bo foundPch = l ; 459 i wh_am_i ! PchRdWre :: READER ) 461 << "Thobje in cfigudadnd you'rygػad. " << dl ; 462 << "Rued wh -1 from PchRdWre::RdPchInfo" << dl ; 467 if! Fe . `is_ݒ () ) 469 << "Thftػad from han bݒed." << dl ; 470 << "Rued wh -2 from PchRdWre::RdPchInfo" << dl ; 475 i my_mode ! PchRdWre :: READ_ONLY ) 477 << "Thftػad from han bݒed iREAD_ONLY mode. " << dl ; 478 << "Rued wh -3 from PchRdWre::RdPchInfo" << dl ; 482 i Fe . `g (= FeS ) 484 << "Fpoihbegg othfe. RdNumsPchesDims(wan cd. Cș." << dl ; 485 << "Rued wh -4 from PchRdWre::RdPchInfo" << dl ; 490 i dim ! dims ) 492 << "Thiobm whhdimsi othfld." << dl ; 493 << "C˸hadiscy idimsiڮy bwRdNumsPchesDimd RdPch." << dl ; 494 << "Rued wh -5 from PchRdWre::RdPchInfo" << dl ; 498  hd [ HEADER_LENGTH ]; 499 * dummy ; * ad_hd ; * ad_da ; 501 dummy = ic_ <*> ( hd ) ; 502 ad_hd = ic_ <*> ( dummy ) ; 505  tchID ; 506  ch = 0; itch < numPches ; ipatch++) 508 Fe . `ad ( ad_hd , ( HEADER_LENGTH * ()) ) ; 509 tchID = hd [0] ; 512  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 514 i Q = tchID ) 517  i = 0 ; i < dim ; i++) 519 lbbc [ i ] = hd [1+i] ; ubbc [i] = hd[4+i] ; size [i] = header[7+i] ; 521 nvs = hd [10] ; v = hd[11] ; oc = header[12] ; 524 Fe . `ekg ( DATA_LENGTH *(), ios :: cur ) ; 526 foundPch = ue ; 533 Fe . `ekg ( DATA_LENGTH *()), ios :: cur ) ; 537 i Fe . `eof ( `RewdRd (); 541 << "Pch #" << Q << " wan found!!!" << dl ; 542 << "Rued wh -6 from PchRdWre::RdPchInfo. " << dl ; 545 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/StatsComponent/include/StatsComp.h 6 #ide __StsCompHSn__ 7  #__StsCompHSn__ ) 10  ~"c.h " 11  ~"dPts.h " 14  ~"jc++/jc++.h " 15  ~"jc++/ut/jc++ut.h " 16  ~"ms/msSr.h " 17  ~"pt/sutIs.h " 22  ~"AMRPt.h " 23  ~"VeFldVb.h " 26  ~ 27  ~ 28  ~ 29  ~ 30 usg mea gd ; 32  ~"SAMRCsumPt.h " 35  ~"mpi.h " 38  ~"CONV_NS.h " 41 ass gStsComp : public vtu CONV_NS ( Compڒt ), 42 public vtu gSAMRCsumPt 44 gpublic : 47 StsComp () ; 50 gvtu ~ StsComp () ; 53  tSvis CONV_NS ( Svis * svc ) ; 55 vtu  compu ( VeFldVb * p_y_vfv ) ; 57 give : 59  In () ; 61  dme_max_vs ( VeFldVb * p_y_vfv ) ; 63  PrtStiics ( VeFldVb * p_y_vfv , * p_max_vs ,  v ) ; 65  SnAbsV ( VeFldVb * p_y_vfv ,  thshd ) ; 67  SupPams () ; 69  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 71  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 75 CONV_NS ( Svis * gpSvc ; 77 DoubPam * gp_thshd_m ; 78 CfigubPamPt * g ; 80 bo gis_lized , gis_hod ; 81 AMRPt * gp_AMRPt ; 82  gdim ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/StatsComponent/src/StatsComp.cpp 4  ~ 5  ~"StsComp.h " 7 gStsComp :: $StsComp () 9 is_lized = l ; 10 is_hod = l ; 11 cout << "StsComp::StsComp(" << dl ; 12 } } 14 gStsComp ::~ $StsComp () 17 is_lized = l ; 18 is_hod = l ; 20 de p_thshd_m ; 22 pSvc = NULL ; p_AMRPt = NULL ; 23 } } 25  gStsComp :: tSvis CONV_NS ( Svis * svc ) 27 i svc == 0 ) 29 pSvc -> aPt ( "MyMesh" ); 30 gpSvc -> moveProvidesPt ("StatsPort") ; 31 gpSvc -> moveProvidesPt ("CONFIG") ; 36 gthis -> gpSvc = svc ; 39 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 42 gsvc -> addProvidesPt ( this , svc -> PtInfo ("StatsPort", "SAMRConsumerPort", 45 gsvc -> giUsPt svc -> PtInfo ("cSvc", 47 CfigubPamFay * gf = 48 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 49 CHECKDC f ); 50 g = = f -> CfigubPamPt (); 51 gsvc -> addProvidesPt ( , 52 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 53 SupPams () ; 54 gsvc -> aPt ("cSvc"); 55 gsvc -> uegiUsPt ("cSvc"); 58  gStsComp :: $In () 60 p_AMRPt = dymic_ < AMRPt *> pSvc -> `gPt ( "MyMesh" ) ) ; 61 dim = p_AMRPt -> `GC_g_dimsi (); 62 } } 64  gStsComp :: $SupPams () 66 p_thshd_m = w `DoubPam ( "Threshold", "Report valuesbovehreshold", 68 -> `tBchT ( "Stats Parameters" ); 69 -> `addReque p_thshd_m ) ; 70 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/StatsComponent/src/StatsComp_workers.cpp 3  ~ 4  ~ 5  ~"StsComp.h " 7  gStsComp :: $compu ( VeFldVb * p_y_vfv ) 10 i is_lized = l ) 12 `In () ; 13 is_lized = ue ; 16 i( p_thshd_m -> vue ) > 0.0) 17 `SnAbsV ( p_y_vfv , p_thshd_m -> vue ) ; 19 `dme_max_vs ( p_y_vfv ) ; 20 } } 22  gStsComp :: $dme_max_vs ( VeFldVb * p_y_vfv ) 28  nvs = p_y_vfv -> `g_ve_size () ; 29 * p_max_vs = w [ nvs ]; 33  max_v_now = p_AMRPt -> `GC_g_fe_v (); 34   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 36 p_y_vfv -> `g_abs_max_ve__v ( p_max_vs , & nvs , v ); 37 `PrtStiics ( p_y_vfv , p_max_vs , v ); 40 de [] p_max_vs ; 41 } } 43  gStsComp :: $PrtStiics ( VeFldVb * p_y_vfv , * p_max_vs , 44  v ) 46  nvs = p_y_vfv -> `g_ve_size (); 48 i( p_AMRPt -> `GC_g_oc_me ()) == 0) 50 cout << dl ; 51 cout << " StatsComp::PrintStatistics() Max values for VFVamed " 52 << p_y_vfv -> `g_me (<< " ov " << v << dl ; 53   i = 0; i < nvs ; i++) 54 cout << " Sϸ# " << i << " : " << p_max_vs [i] << dl ; 55 cout << dl ; 57 } } 59  gStsComp :: $SnAbsV ( VeFldVb * p_y_vfv ,  thshd ) 61 i p_AMRPt -> `GC_g_oc_me () == 0 ) 62 cout << dl << " StsComp::SnAbsV(: Checkg " << p_y_vfv -> `g_me () 63 << " f srov" << thshd << dl ; 65  cou = 0; 67  max_v_now = p_AMRPt -> `GC_g_fe_v (); 68  ngrids = p_y_vfv -> `g_numb_of_comp_grids () ; 70  nvs = p_y_vfv -> `g_ve_size () ; 71   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 73  Time = p_AMRPt -> `GC_cut_time v , ACEMa ); 74   igrid = 0; igrid < ngrids ; igrid++) 76 i p_y_vfv -> `exis ( Time , v , igrid = ue ) 78 cڡ * s = p_y_vfv -> `g_da_y_size ( Time , v , igrid , ACEMa ) ; 79 * p_da = p_y_vfv -> `g_da ( Time , v , igrid , ACEMa ); 81 cڡ * lb = p_y_vfv -> `g_low_bbc ( Time , v , igrid , ACEMa ) ; 82 cڡ * ub = p_y_vfv -> `g_u_bbc ( Time , v , igrid , ACEMa ) ; 83  ride = ( ub [0] - lb [0]/ ( s [0]-1); 84  nx = s [0] ;  ny =es[1];  nz =es[2] ; 85 i nx <0 )x = 1 ; i ny <0 )y = 1 ; i nz <= 0 )z = 1 ; 87   k = 0; k < nz ; k++ ) 88   j = 0 ; j < ny ; j++ ) 89   i = 0; i < nx ; i++ ) 90   iv = 0; iv < nvs ; ivar++ ) 92  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 93  vue = `bs p_da [ dex ] ) ; 94 i vue > thshd ) 96  iglob = i * ride + lb [0] ; 97  jglob = j * ride + lb [1] ; 98  me = p_AMRPt -> `GC_g_oc_me () ; 99 `tf (" Proc: %d, Lev: %d, Point: (%d, %d), Box: [(%d, %d), (%d, %d)], ArrayBounds: (%d, %d), Indices: (%d, %d) Value = %e \n", 100 me , v , iglob , jglob , lb [0],b[1], ub [0], ub[1], nx , ny , 101 i , j , vue ) ; 102 `fush dout ) ; 103 cou ++; 110  g_cou ; 111 `MPI_Aλdu & cou , & g_cou , 1, MPI_INT , MPI_SUM , 112 p_AMRPt -> `GC_g_compu_nodes_communit () ) ; 113 i( g_cou =0&& ( p_AMRPt -> `GC_g_oc_me () == 0 ) ) 114 cout << " Nvabov" << thshd << " found " << dl ; 115 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Misc/StatsComponent/src/StatsComp_wrapper.cpp 1  ~"StsComp.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _StsComp () 8 CONV_NS ( Compڒt * wk ; 9 StsComp * compڒt ; 10 compڒt = w StsComp (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_StatsComp StatsComp"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/BicubicInterpolator/include/BicubicInterpolator.h 23 #ide __BicubicIpHSn__ 24  #__BicubicIpHSn__ ) 27  ~"c.h " 28  ~"dPts.h " 31  ~"jc++/jc++.h " 32  ~"jc++/ut/jc++ut.h " 33  ~"ms/msSr.h " 34  ~"pt/sutIs.h " 38  ~ 39  ~ 40  ~ 41  ~"mh.h " 44  ~"AMRCڡts.h " 47  ~"IpީiPt.h " 50  ~"AMRPt.h " 53  ~"CONV_NS.h " 56 ass gBicubicIp : public vtu CONV_NS ( Compڒt ), 57 public vtu gIpީiPt 59 gpublic : 62 BicubicIp () ; 65 ~ BicubicIp () ; 68 vtu  tSvis CONV_NS ( Svis * svc ) ; 76 vtu  GPrݔty (* key_me , & vue ) ; 78 vtu  GPrݔty (* key_me , & vue ) ; 82 vtu  g * uc , cڡ * lbc , cڡ * ubc , 83 cڡ * shec , 84 * uf , cڡ * lbf , cڡ * ubf , 85 cڡ * shef , 86 cڡ * lbr , cڡ * ubr , cڡ * sh , 87 cڡ  nems , cڡ * em_li ) ; 89 vtu  ri * uf , cڡ * lbf , cڡ * ubf , 90 cڡ * shef , 91 * uc , cڡ * lbc , cڡ * ubc , 92 cڡ * shec , 93 cڡ * lbr , cڡ * ubr , cڡ * sh , 94 cڡ  nems , cڡ * em_li ) ; 96 give : 98  () ; 100 le  maximum (cڡ  num1 , cڡ  num2 , cڡ  num3 ) 102  ( ( gnum1 > gnum2 ? (um1 > gnum3 ?um1 : num3 ) : 103 (( num2 > num3 ) ?um2 :um3) ); 106 le  mimum (cڡ  num1 , cڡ  num2 , cڡ  num3 ) 108  ( ( gnum1 < gnum2 ? (um1 < gnum3 ?um1 : num3 ) : 109 (( num2 < num3 ) ?um2 :um3) ); 112 le  gdx2 (cڡ  loc , cڡ  lb , cڡ  ride ) 114 (( gloc - glb )/ gride ); 117 le  fidx (cڡ  i , cڡ  j , cڡ  k , cڡ  em , cڡ * she , 118 cڡ  nems ) 120  gnz = 1 ; 121  ( em * nz * gshe [1]*she[0] + k *she[1]*she[0] + j *she[0] + gi ); 124 bo gis_ , gis_hod ; 125 MeshClotiTy gm ; 128 CONV_NS ( Svis * gpSvc ; 130 gd :: m < d :: rg , > gmy_t_ ; 131 gd :: m < d :: rg , gMeshClotiTy > gmy_lg_ ; 132 AMRPt * gpAMR ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/BicubicInterpolator/include/Bicubic_interpolator_2D.h 10 #ide __Bicubic_ީHSn__ 11  #__Bicubic_ީHSn__ ) 13  ~ 14 usg mea gd ; 16 as cBicubic_ީ_2D 18 mpublic : 20 Bicubic_ީ_2D  d ) ; 22 ~ Bicubic_ީ_2D () ; 24  ީe (cڡ * p_da , cڡ * p_she , 25 cڡ * p_cods , cڡ * p_cods__ , 26 cڡ * p_dis_of_da_pots ,  ots , 27  dim ) ; 29  t_dimsi ( dim ) ; 31  t_d ( d ) ; 36  compu_ke_cods * p_cods , cڡ * p_she , cڡ * p_rides , 37 cڡ * offt ) ; 40  de_ke_cods * p_ke_cods ) ; 42 mive : 44  g_divs (* u ,  i ,  j ,  k ,  em , cڡ * p_she , 45  ems ,  dx ,  dy , * f , * f1 , 46 * f2 , * f12 ) ; 48  bicubic_cff ( f [],  f1 [],  f2 [],  f12 [], 49  dx ,  dy , ** c ) ; 51 ** mrix (cڡ  a , cڡ  b , cڡ  c , cڡ  d ) ; 53  $_mrix (** m , cڡ  a , cڡ  b , cڡ  c , cڡ  d ) 55 ` (*( m [ a ] + c - 1)) ; 56 ` (*( m + a - 1) ); 59  `my_rme * mesge ); 61  $fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nv ) 63  dex = iv * nz * ny * nx + k *ny*nx + j *nx + i ; 64  dex ) ; 65 } } 68  gmy_d , gmy_dim ; 69 * gp_ke_cods ; 70 bo gis_lized , ghas_ke_cods ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/BicubicInterpolator/src/BicubicInterp.cpp 11  ~"BicubicIpީ.h " 13 gBicubicIp :: $BicubicIp () 15 my_t_ [ "OrderInterior" ] = 3 ; 16 my_t_ [ "OrderBoundary" ] = 2 ; 17 my_t_ [ "Dimension" ] = 2 ; 18 my_lg_ [ "MeshClotiTy" ] = VxCd ; 19 is_hod = l ; pAMR = 0 ; is_ = false ; 20 } } 22 gBicubicIp ::~ $BicubicIp () 24 is_hod = l ; pAMR = 0 ; pSvc = 0 ; 25 } } 27  gBicubicIp :: tSvis CONV_NS ( Svis * svc ) 29 i svc = NULL ) 31 pSvc -> aPt ( "MyMesh" ) ; 32 gpSvc -> moveProvidesPt ("ProlongRestrict") ; 37 gthis -> gpSvc = svc ; 40 gsvc -> addProvidesPt ( this , svc -> PtInfo ("ProlongRestrict", "InterpolationPort", 44 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 47  gBicubicIp :: $ri * uf , cڡ * lbf , cڡ * ubf , 48 cڡ * shef , 49 * uc , cڡ * lbc , cڡ * ubc , 50 cڡ * shec , 51 cڡ * lbr , cڡ * ubr , cڡ * sh , 52 cڡ  nems , cڡ * em_li ) 54 i is_ = l ) ` () ; 55 i is_hod = ue ) (-1) ; 57  ife , icr , jfe , jcr ; 58  i , j , em , k = 0; 60 cڡ  ridec = ( ubc [0] - lbc [0])/( shec [0] - 1); 61 cڡ  ridef = ( ubf [0] - lbf [0])/( shef [0] - 1); 62 cڡ  fe = ridec / ridef ; 64 i fe != 2 ) 66 d :: cout << " BicubicInterp::restrict()efinement factor != 2. Marking component " 67 << " unub ;ug wh -1 cod" << d :: dl ; 68 is_hod = ue ; 75  im = `maximum ( lbf [0], lbc [0], lbr [0]); 76  imax = `mimum ( ubf [0], ubc [0], ubr [0]); 78  jm = `maximum ( lbf [1], lbc [1], lbr [1]); 79  jmax = `mimum ( ubf [1], ubc [1], ubr [1]); 81 if(( im - lbc [0]% ridec )!=0) { 82 im = im + ((im- lbc [0])% ridec ); 85 if((( jm - lbc [1])% ridec )!=0) { 86 jm = jm + ((jm- lbc [1])% ridec ); 95  j = jm ; j<= jmax ; j+= ridec ) 96  i = im ; i<= imax ; i+= ridec ) 97  em = 0; im < nems ; item++) 99 i em_li [ em ] == 1 ) 101 ife = `gdx2 ( i , lbf [0], ridef ); 102 jfe = `gdx2 ( j , lbf [1], ridef ); 104 icr = `gdx2 ( i , lbc [0], ridec ); 105 jcr = `gdx2 ( j , lbc [1], ridec ); 107 uc [ `fidx ( icr , jcr , k , em , shec , nems ) ] = 108 uf [ `fidx ife , jfe , k , em , shef , nems ) ]; 113 } } 115  gBicubicIp :: $ () 117 pAMR = 0 ; 118 pAMR = dymic_ < AMRPt *> ( pSvc -> `gPt ("MyMesh") ) ; 120 i( pAMR != 0 ) 122 i pAMR -> `GC_g_dimsi (! my_t_ [ "Dimension" ] ) 124 d :: << " SpatialInterp::init() : The dimensionality ofhe meshnd " 125 << "thީiڠdif " << pAMR -> `GC_g_dimsi () 126 << " vsu" << my_t_ [ "Dimension" ] 127 << " Mkg compڒunub" << d :: dl ; 128 is_hod = ue ; 133 is_ = ue ; 135 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/BicubicInterpolator/src/BicubicInterp_workers.cpp 7  ~"BicubicIpީ.h " 8  ~"Bicubic_ީ_2D.h " 10  gBicubicIp :: $GPrݔty (* key_me , & vue ) 12 i is_ = l ) ` () ; 13 i is_hod = ue ) (-1) ; 15 rg `ame ( key_me ) ; 17 i my_t_ . `fd ame ) =my_t_. `d () ) 20 vue = my_t_ [ ame ] ; 23 } } 25  gBicubicIp :: $GPrݔty (* key_me , & vue ) 27 i is_ = l ) ` () ; 28 i is_hod = ue ) (-1) ; 30 rg `ame ( key_me ) ; 32 i my_lg_ . `fd ame ) =my_lg_. `d () ) 35 vue = my_lg_ [ ame ] ; 38 } } 40  gBicubicIp :: $g * uc , cڡ * lbc , cڡ * ubc , 41 cڡ * shec , 42 * uf , cڡ * lbf , cڡ * ubf , 43 cڡ * shef , 44 cڡ * lbr , cڡ * ubr , cڡ * sh , 45 cڡ  nems , cڡ * em_li ) 47 i is_ = l ) ` () ; 48 i is_hod = ue ) (-1) ; 51  i , j , em , k = 0; 52  ic , jc , ife , icr , jfe , jcr ; 54 cڡ  ridec = ( ubc [0] - lbc [0])/( shec [0]-1); 55 cڡ  ridef = ( ubf [0] - lbf [0])/( shef [0]-1); 56 cڡ  fe = ridec / ridef ; 57 i( fe != 2) 59 cout << " BicubicInterp::prolong()efinement factor != 2; doingothingnd" 60 << " mkg compڒunub. Ru wh -1 " << dl ; 61 is_hod = ue ; 68  im = `maximum ( lbf [0], lbc [0], lbr [0]); 69  imax = `mimum ( ubf [0], ubc [0], ubr [0]); 71  jm = `maximum ( lbf [1], lbc [1], lbr [1]); 72  jmax = `mimum ( ubf [1], ubc [1], ubr [1]); 74 i(( im - lbf [0])% ridef != 0) 75 im = im + ((im- lbf [0])% ridef ); 76 i(( jm - lbf [1])% ridef != 0) 77 jm = jm + ((jm- lbf [1])% ridef ); 80 Bicubic_ީ_2D `BiCubic (3) ; 81 BiCubic . `t_dimsi (2) ; 82 BiCubic . `t_d (3); 85  she_cr [3], rides [3] ; 86 rides [0] = ridec ; strides[1] = stridec ; strides[2] = stridec ; 87 she_cr [0] = shec [0] ; shape_coarse[1] = shapec[1] ; shape_coarse[2] = 1 ; 88 * p_cods = w [ she_cr [0] * shape_coarse[1] * shape_coarse[2] * 2 ]; 89 BiCubic . `compu_ke_cods p_cods , she_cr , rides , lbc ) ; 91  j = jm ;j<= jmax ;j+= ridef ) 93  i = im ;i<= imax ;i+= ridef ) 95  em = 0; im < nems ; item++) 97 i em_li [ em ] == 1 ) 100 ic = i - lbc [0]; 101 jc = j - lbc [1]; 103 ife = `gdx2 ( i , lbf [0], ridef ); 104 jfe = `gdx2 ( j , lbf [1], ridef ); 106 icr = `gdx2 ( i , lbc [0], ridec ); 107 jcr = `gdx2 ( j , lbc [1], ridec ); 136  da_pot_dis [2] ; 137 i icr = shec [0] - 1 ) 138 da_pot_dis [0] = icr - 1 ; 140 da_pot_dis [0] = icr ; 142 i jcr = shec [1] - 1 ) 143 da_pot_dis [1] = jcr - 1 ; 145 da_pot_dis [1] = jcr ; 147  cods_of_q_ [2] ; 148 cods_of_q_ [0] = ( ife * ridef + lbf [0] ) ; 149 cods_of_q_ [1] = ( jfe * ridef + lbf [1] ) ; 152 * uc_t_emth_fld = ( uc + `fidx (0, 0, 0, em , shec , nems ) ) ; 154  su = BiCubic . `ީe ( uc_t_emth_fld , she_cr , 155 p_cods , cods_of_q_ , da_pot_dis , 157 uf [ `fidx ( ife , jfe , k , em , shef , nems ] = su ; 164 BiCubic . `de_ke_cods p_cods ) ; 167 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/BicubicInterpolator/src/BicubicInterp_wrapper.cpp 1  ~"BicubicIpީ.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _BicubicIp () 8 CONV_NS ( Compڒt * wk ; 9 BicubicIp * compڒt ; 10 compڒt = w BicubicIp (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_BicubicInterp BicubicInterp"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/BicubicInterpolator/src/Bicubic_interpolator_2D.cpp 1  ~ 2  ~ 3  ~ 4  ~ 5  ~"Bicubic_ީ_2D.h " 15 gBicubic_ީ_2D :: $Bicubic_ީ_2D ( d ) 17 my_d = 3 ; my_dim = 2 ; 19 i d > my_d ) 21 << " C oy d" << my_d << " order interpolations " 22 << " Youque o" << d << " interpolations will incurrrors " 23 << dl ; 24 `my_rme ( "Bicubic_interpolator_2D::Bicubic_interpolator_2D" ); 27 my_d = d ; 29 is_lized = ue ; 30 has_ke_cods = l ; 31 } } 35 gBicubic_ީ_2D ::~ $Bicubic_ީ_2D () 37 i has_ke_cods = ue ) 38 de [] p_ke_cods ; 39 } } 43  gBicubic_ީ_2D :: $t_dimsi ( dim ) 45 i dim ! my_dim ) 47 << " Im coded oy f 2D; c'cݐwh " << dim << "D" << dl ; 48 `my_rme ( "Bicubic_interpolator_2D::set_dimension" ); 50 } } 53  gBicubic_ީ_2D :: $t_d ( d ) 55 i d > my_d ) 57 << " C oy d" << my_d << " order interpolations " 58 << " Youque o" << d << " interpolations will incurrrors " 59 << dl ; 60 `my_rme ( "Bicubic_interpolator_2D::set_order" ); 63 my_d = d ; 64 } } 67  gBicubic_ީ_2D :: $compu_ke_cods * p_cods , cڡ * p_she , 68 cڡ * p_rides , cڡ * offts ) 70  nx = p_she [0] ;  ny =_she[1] ;  nz =_shape[2] ; 72   ddim = 0; ddim < my_dim ; ddim++ ) 73   k = 0; k < nz ; k++ ) 74   j = 0 ; j < ny ; j++ ) 75   i = 0; i < nx ; i++ ) 77  ; 78 i ddim =0 ) = i ; 79 i ddim =1 ) = j ; 80 i ddim =2 ) = k ; 81  dex = `fdx ( i , j , k , ddim , nx , ny , nz , my_dim ) ; 82 p_cods [ dex ] = offts [ ddim ] + ( p_rides [ ddim ] * ; 84 has_ke_cods = ue ; 85 p_ke_cods = p_cods ; 88 } } 90  gBicubic_ީ_2D :: $de_ke_cods * p_cods ) 92 de [] p_cods ; 93 has_ke_cods = l ; 96 } } 100  gBicubic_ީ_2D :: $my_rme * mesge ) 102 << "Tmed from " << mesge << dl << ush ; 103 `ex (-1) ; 104 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/BicubicInterpolator/src/Bicubic_interpolator_2D_workers.cpp 6  ~ 7  ~ 8  ~ 9  ~ 10  ~"Bicubic_ީ_2D.h " 12  gBicubic_ީ_2D :: $g_divs (* u ,  i ,  j ,  k ,  em , 13 cڡ * she ,  nems ,  dx ,  dy , 14 * f , * f1 , * f2 , * f12 ) 16  _lim = 0; 17  right_lim = she [0]; 18  b_lim = 0; 19  t_lim = she [1]; 21  nx = she [0] ;  ny = she[1] ;  nz = shape[2] ; 22 i( nx < 1nx = 1 ; i( ny < 1ny = 1 ; i( nz < 1)z = 1; 25 i i < _lim || (> right_lim -1|| ( j < b_lim || (j > t_lim -1) ) 27 cout << "E !!!! Ig_div(Driv). Somhg vy wrg " << dl ; 28 `tf ("Po(%d, %dioutsiddoma (%d, %d(%d, %d\n", i , j , 29 _lim , right_lim , b_lim , t_lim ) ; 32 (* f u [ `fdx ( i , j , k , em , nx , ny , nz , nems ) ] ; 36  1 = i + 1 ;  im1 = i - 1 ; 37 i( im1 > _lim && ( 1 < right_lim ) ) 39 (* f1 u [ `fdx ( 1 , j , k , em , nx , ny , nz , nems ) ] - 40 u [ `fdx ( im1 , j , k , em , nx , ny , nz , nems ] ) / ( 2.0 * dx ) ; 42 i( im1 < _lim && ( 1 < right_lim ) ) 44 (* f1 u [ `fdx ( 1 , j , k , em , nx , ny , nz , nems ) ] - 45 u [ `fdx ( i , j , k , em , nx , ny , nz , nems ] ) / dx ; 47 i( im1 > _lim && ( 1 > right_lim ) ) 49 (* f1 u [ `fdx ( i , j , k , em , nx , ny , nz , nems ) ] - 50 u [ `fdx ( im1 , j , k , em , nx , ny , nz , nems ] ) / dx ; 54 `tf ("ERROR !! In get_derivs X (Driver). Something very wrong"); 55 `tf (" i = %d, (%d, %d\n", i , _lim , right_lim ) ; 59  jp1 = j + 1 ;  jm1 = j - 1; 60 i( jm1 > b_lim && ( jp1 < t_lim ) ) 62 (* f2 u [ `fdx ( i , jp1 , k , em , nx , ny , nz , nems ) ] - 63 u [ `fdx ( i , jm1 , k , em , nx , ny , nz , nems ] ) / ( 2.0 * dy ) ; 65 i( jm1 < b_lim && ( jp1 < t_lim ) ) 67 (* f2 u [ `fdx ( i , jp1 , k , em , nx , ny , nz , nems ) ] - 68 u [ `fdx ( i , j , k , em , nx , ny , nz , nems ] ) / dy ; 70 i( jm1 > b_lim && ( jp1 > t_lim ) ) 72 (* f2 u [ `fdx ( i , j , k , em , nx , ny , nz , nems ) ] - 73 u [ `fdx ( i , jm1 , k , em , nx , ny , nz , nems ] ) / dy ; 77 `tf ("ERROR !! In get_derivs Y (Driver). Something very wrong"); 78 `tf (" j = %d, (%d, %d\n", j , b_lim , t_lim ) ; 82 i im1 > _lim && ( 1 < right_lim ) && 83 jm1 > b_lim && ( jp1 < t_lim ) ) 84 (* f12 u [ `fdx ( 1 , jp1 , k , em , nx , ny , nz , nems ) ] - 85 u [ `fdx ( 1 , jm1 , k , em , nx , ny , nz , nems ) ] - 86 u [ `fdx ( im1 , jp1 , k , em , nx , ny , nz , nems ) ] + 87 u [ `fdx ( im1 , jm1 , k , em , nx , ny , nz , nems ] ) / ( 4 * dx * dy ) ; 88 #ifde QUICK_AND_DIRTY 90 (* f12 ) = 0.0 ; 92 i( im1 < _lim && ( 1 < right_lim ) && 93 ( jm1 > b_lim && ( jp1 < t_lim ) ) 95  1jp1 = `fdx ( 1 , jp1 , k , em , nx , ny , nz , nems ) ; 96  ijp1 = `fdx ( i , jp1 , k , em , nx , ny , nz , nems ) ; 97  1jm1 = `fdx ( 1 , jm1 , k , em , nx , ny , nz , nems ) ; 98  ijm1 = `fdx ( i , jm1 , k , em , nx , ny , nz , nems ) ; 99  fxt = ( u [ 1jp1 ] - u[ ijp1 ] ) / dx ; 100  fxb = ( u [ 1jm1 ] - u[ ijm1 ] ) / dx ; 101 (* f12 fxt - fxb ) / ( 2.0 * dy ) ; 103 i( im1 > _lim && ( 1 > right_lim ) && 104 ( jm1 > b_lim && ( jp1 < t_lim ) ) 106  ijp1 = `fdx ( i , jp1 , k , em , nx , ny , nz , nems ) ; 107  im1jp1 = `fdx ( im1 , jp1 , k , em , nx , ny , nz , nems ) ; 108  ijm1 = `fdx ( i , jm1 , k , em , nx , ny , nz , nems ) ; 109  im1jm1 = `fdx ( im1 , jm1 , k , em , nx , ny , nz , nems ) ; 110  fxt = ( u [ ijp1 ] - u[ im1jp1 ] ) / dx ; 111  fxb = ( u [ ijm1 ] - u[ im1jm1 ] ) / dx ; 112 (* f12 fxt - fxb ) / ( 2.0 * dy ) ; 114 i( im1 > _lim && ( 1 < right_lim ) && 115 ( jm1 < b_lim && ( jp1 < t_lim ) ) 117  1jp1 = `fdx ( 1 , jp1 , k , em , nx , ny , nz , nems ) ; 118  1j = `fdx ( 1 , j , k , em , nx , ny , nz , nems ) ; 119  im1jp1 = `fdx ( im1 , jp1 , k , em , nx , ny , nz , nems ) ; 120  im1j = `fdx ( im1 , j , k , em , nx , ny , nz , nems ) ; 121  fyr = ( u [ 1jp1 ] - u[ 1j ] ) / dy ; 122  fyl = ( u [ im1jp1 ] - u[ im1j ] ) / dy ; 123 (* f12 ( fyr - fyl / ( 2.0 * dx ) ; 125 i( im1 > _lim && ( 1 < right_lim ) && 126 ( im1 > b_lim && ( jp1 > t_lim ) ) 128  1j = `fdx ( 1 , j , k , em , nx , ny , nz , nems ) ; 129  1jm1 = `fdx ( 1 , jm1 , k , em , nx , ny , nz , nems ) ; 130  im1j = `fdx ( im1 , j , k , em , nx , ny , nz , nems ) ; 131  im1jm1 = `fdx ( im1 , jm1 , k , em , nx , ny , nz , nems ) ; 132  fyr = ( u [ 1j ] - u[ 1jm1 ] ) / dy ; 133  fyl = ( u [ im1j ] - u[ im1jm1 ] ) / dy ; 134 (* f12 fyr - fyl ) / ( 2.0 * dx ) ; 136 i( i =0&& ( j == 0) ) 138  1jp1 = `fdx ( 1 , jp1 , k , em , nx , ny , nz , nems ) ; 139  1j = `fdx ( 1 , j , k , em , nx , ny , nz , nems ) ; 140  ijp1 = `fdx ( i , jp1 , k , em , nx , ny , nz , nems ) ; 141  ij = `fdx ( i , j , k , em , nx , ny , nz , nems ) ; 142  fyr = ( u [ 1jp1 ] - u[ 1j ] ) / dy ; 143  fyl = ( u [ ijp1 ] - u[ ij ] ) / dy ; 144 (* f12 fyr - fyl ) / dx ; 146 i( i = right_lim -1&& ( j == 0) ) 148  ijp1 = `fdx ( i , jp1 , k , em , nx , ny , nz , nems ) ; 149  ij = `fdx ( i , j , k , em , nx , ny , nz , nems ) ; 150  im1jp1 = `fdx ( im1 , jp1 , k , em , nx , ny , nz , nems ) ; 151  im1j = `fdx ( im1 , j , k , em , nx , ny , nz , nems ) ; 152  fyr = ( u [ ijp1 ] - u[ ij ] ) / dy ; 153  fyl = ( u [ im1jp1 ] - u[ im1j ] ) / dy ; 154 (* f12 fyr - fyl ) / dx ; 156 i( i =0&& ( j = t_lim -1) ) 158  1j = `fdx ( 1 , j , k , em , nx , ny , nz , nems ) ; 159  1jm1 = `fdx ( 1 , jm1 , k , em , nx , ny , nz , nems ) ; 160  ij = `fdx ( i , j , k , em , nx , ny , nz , nems ) ; 161  ijm1 = `fdx ( i , jm1 , k , em , nx , ny , nz , nems ) ; 162  fyr = ( u [ 1j ] - u[ 1jm1 ] ) / dy ; 163  fyl = ( u [ ij ] - u[ ijm1 ] ) / dy ; 164 (* f12 fyr - fyl ) / dx ; 166 i( i = right_lim -1&& ( j = t_lim -1 ) ) 168  ij = `fdx ( i , j , k , em , nx , ny , nz , nems ) ; 169  ijm1 = `fdx ( i , jm1 , k , em , nx , ny , nz , nems ) ; 170  im1j = `fdx ( im1 , j , k , em , nx , ny , nz , nems ) ; 171  im1jm1 = `fdx ( im1 , jm1 , k , em , nx , ny , nz , nems ) ; 172  fyr = ( u [ ij ] - u[ ijm1 ] ) / dy ; 173  fyl = ( u [ im1j ] - u[ im1jm1 ] ) / dy ; 174 (* f12 fyr - fyl ) / dx ; 178 `tf ("In Bicubic_interpolator_2D::get_derivs() : wrong index.erminate \n"); 179 `ex (-1) ; 182 } } 186  gBicubic_ީ_2D :: $ީe (cڡ * p_da , cڡ * p_she , 187 cڡ * p_cods , 188 cڡ * p_cods__ , 189 cڡ * p_dis_of_da_pots ,  ots , 190  dim ) 192 #ide NDEBUG 193 i( p_da =0|| ( p_she =0|| ( p_cods =0|| ( p_cods__ == 0) ) 195 << " Emy d" << dl ; 196 `my_rme ( "Bicubic_interpolator_2D::interpolate()" ); 200 i( dim ! my_dim ) 202 << "Nd code " << my_dim << "D" << dl ; 203 `my_rme ( "Bicubic_interpolator_2D::interpolate()" ); 206  iA , jA , iB , jB , iC , jC , iD , jD ; 207 i( ots == 1) 209 iD = iA = p_dis_of_da_pots [0] ; 210 iC = iB = iA + 1 ; 211 jB = jA = p_dis_of_da_pots [1] ; 212 jC = jD = jB + 1 ; 214 i( ots == 4) 216 iA = p_dis_of_da_pots [0] ; jA =_indices_of_data_points[1] ; 217 iB = p_dis_of_da_pots [2] ; jB =_indices_of_data_points[3] ; 218 iC = p_dis_of_da_pots [4] ; jC =_indices_of_data_points[5] ; 219 iD = p_dis_of_da_pots [6] ; jD =_indices_of_data_points[7] ; 223 << "You havtإecify 1 o4otf ipީis" << dl ; 224 `my_rme ( "Bicubic_interpolator_2D::interpolate()") ; 228  f [4], f1 [4], f2 [4], f12 [4] ; 229  nx = p_she [0] ;  ny =_she[1] ;  nz =_shape[2] ; 231  xl = p_cods [ `fdx ( iA , jA , 0, 0, nx , ny , nz , my_dim ) ] ; 232  xr = p_cods [ `fdx ( iB , jB , 0, 0, nx , ny , nz , my_dim ) ] ; 233  yb = p_cods [ `fdx ( iB , jB , 0, 1, nx , ny , nz , my_dim ) ] ; 234  yt = p_cods [ `fdx ( iC , jC , 0, 1, nx , ny , nz , my_dim ) ] ; 235  dx = xr - xl ;  dy = yt - yb ; 237 i `bs ( xl - xr ) < 1.0e-8 ) 238 `rtf ( dr , "xA = %e, xB = %e \n", 239 p_cods [ `fdx ( iA , jA , 0, 0, nx , ny , nz , my_dim ) ], 240 p_cods [ `fdx ( iB , jB , 0, 0, nx , ny , nz , my_dim ) ] ) ; 242 `g_divs ( cڡ_ <*>( p_da ), iA , jA , 0, 0, p_she , 1, dx , dy , 243 &( f [0]), &( f1 [0]), &( f2 [0]), &( f12 [0])) ; 244 `g_divs ( cڡ_ <*>( p_da ), iB , jB , 0, 0, p_she , 1, dx , dy , 245 &( f [1]), &( f1 [1]), &( f2 [1]), &( f12 [1])) ; 246 `g_divs ( cڡ_ <*>( p_da ), iC , jC , 0, 0, p_she , 1, dx , dy , 247 &( f [2]), &( f1 [2]), &( f2 [2]), &( f12 [2])) ; 248 `g_divs ( cڡ_ <*>( p_da ), iD , jD , 0, 0, p_she , 1, dx , dy , 249 &( f [3]), &( f1 [3]), &( f2 [3]), &( f12 [3])) ; 251  x , y , z ; 252 if my_dim > 0 ) x = p_cods__ [0] ; 253 if my_dim > 1 ) y = p_cods__ [1] ; 254 if my_dim > 2 ) z = p_cods__ [2] ; 256  i ; 257  t , u , d1 , d2 , ** c , sw ; 259 c = `mrix (1, 4, 1, 4) ; 260 d1 = xr - xl ; 261 d2 = yt - yb ; 263 `bicubic_cff ( f , f1 , f2 , f12 , d1 , d2 , c ) ; 265 i( xl = xr || ( yb = yt ) ) 266 `rtf ( dr , "Error into Bicubic_interpolator_2D::bicubic_coeff \n") ; 268 t = ( x - xl / d1 ; 269 u = ( y - yb / d2 ; 270 sw = 0.0 ; 272  i = 4; i > 0; i--) 273 sw = t *nsw + ( ( c [ i ][4]* u + c[i][3])*u + c[i][2] )*u + c[i][1] ; 275 `_mrix ( c , 1, 4, 1, 4); 277 ( sw ) ; 278 } } 282 ** gBicubic_ީ_2D :: $mrix (cڡ  a , cڡ  b , cڡ  c , 283 cڡ  d ) 285  i ; 286  ow = b - a + 1 ; 287  nc = d - c + 1 ; 288 ** m ; 290 m = (**) `mloc ( ow +1)*(*) ) ; 291 m += 1 ; 292 m - a ; 294 m [ a ] = (*) `mloc ( ow * nc +1)*() ); 295 m [ a ] += 1 ; 296 m [ a ] - c ; 298  i = a +1; i < b ; i++ ) 299 m [ i ] = m[i-1] + nc ; 301 ( m ); 302 } } 306  gBicubic_ީ_2D :: $bicubic_cff ( f [],  f1 [],  f2 [], 307  f12 [],  dx ,  dy , ** c ) 310  wt [16][16] = { 328  l , k , j , i ; 329  xx , d1d2 , [16], x [16]; 331 d1d2 = dx * dy ; 332  i = 0; i < 4; i++) 334 x [ i ] = f [i] ; x[i+4] = f1 [i] * dx ; 335 x [ i +8] = f2 [i] * dy ; x[i+12] = f12 [i] * d1d2 ; 338  i = 0 ; i < 16; i++ ) 340 xx = 0.0 ; 341  k 0 ; k < 16; k++ ) xx + wt [ i ][k] * x [k] ; 342 [ i ] = xx ; 345 l = 0; 346  i = 1 ; i <= 4; i++) 347  j = 1; j <4; j++ c [ i ][j] = [ l ++] ; 348 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/examples/band_ex/cvbx.c 29  ~ 30  ~ 34  ~"typs.h " 35  ~"cvode.h " 38  ~"cvbd.h " 39  ~"ve.h " 41  ~"bd.h " 46  #XMAX 2.0 ) 47  #YMAX 1.0 ) 48  #MX 10 ) 49  #MY 5 ) 50  #NEQ MX * MY ) 51  #ATOL 1.e-5 ) 52  #T0 0.0 ) 53  #T1 0.1 ) 54  #DTOUT 0.1 ) 55  #NOUT 10 ) 68  #IJth ( vda , i , j (vda[(j-1+ (i-1)* MY ]) ) 75 mdx , mdy , mhdcf , mhacf , mvdcf ; 76 } * tUrDa ; 81  SIC ( N_Ve u , UrDa da ); 83  PrtFSts ( it []); 87  f ( g N , t , N_Ve u , N_Ve ud , * f_da ); 89  Jac ( g N , ieg mu , ieg ml , BdM J , RhsFn f , 90 * f_da , t , N_Ve u , N_Ve fu , N_Ve ewt , 91 h , uround , * jac_da , * nP , 92 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ); 97 $ma () 99 rt [ OPT_SIZE ], dx , dy , , ab , t , tout , umax ; 100  it [ OPT_SIZE ]; 101 N_Ve u ; 102 UrDa da ; 103 * cvode_mem ; 104  iout , ag ; 106 u = `N_VNew ( NEQ , NULL ); 108 = 0.0; 109 ab = ATOL ; 111 da = ( UrDa `mloc ( *data); 112 dx = da ->dx = XMAX /( MX +1); 113 dy = da ->dy = YMAX /( MY +1); 114 da -> hdcf = 1.0/( dx *dx); 115 da -> hacf = 0.5/(2.0* dx ); 116 da -> vdcf = 1.0/( dy *dy); 118 `SIC ( u , da ); 136 cvode_mem = `CVodeMloc ( NEQ , f , T0 , u , BDF , NEWTON , SS , & , & ab , 137 da , NULL , FALSE , it , rt , NULL); 138 i( cvode_mem = NULL { `tf ("CVodeMalloc failed.\n"); (1); } 144 `CVBd ( cvode_mem , MY , MY, Jac , da ); 148 `tf (" \n2-Ddvection-diffusionquation, mesh dimensions =%3d %3d\n\n", 149 MX , MY ); 150 umax = `N_VMaxNm ( u ); 151 `tf ("A%4.2 max.nm(u=%14.6\n", T0 , umax ); 152  iout =1, tout = T1 ; iou< NOUT ; iout++,ou+ DTOUT ) { 153 ag = `CVode ( cvode_mem , tout , u , & t , NORMAL ); 154 umax = `N_VMaxNm ( u ); 155 `tf ("At = %4.2f max.norm(u) =%14.6est =%4d \n", 156 t , umax , it [ NST ]); 157 i( ag ! SUCCESS { `tf ("CVode failed, flag=%d.\n", flag); ; } 160 `N_VFe ( u ); 161 `CVodeFe ( cvode_mem ); 162 `PrtFSts ( it ); 164 } } 171  $SIC ( N_Ve u , UrDa da ) 173  i , j ; 174 x , y , dx , dy ; 175 * uda ; 179 dx = da ->dx; 180 dy = da ->dy; 184 uda = `N_VDATA ( u ); 188  j =1; j < MY ; j++) { 189 y = j * dy ; 190  i =1; i < MX ; i++) { 191 x = i * dx ; 192 `IJth ( uda , i , j x *( XMAX - x)* y *( YMAX - y)* `exp (5.0*x*y); 195 } } 200  $PrtFSts ( it []) 202 `tf ("\nFinal Statistics.. \n\n"); 203 `tf ("nst = %-6ldfe = %-6ldsetups = %-6ldje = %ld\n", 204 it [ NST ], it[ NFE ], it[ NSETUPS ], it[ BAND_NJE ]); 205 `tf ("nni = %-6ldcfn = %-6ldetf = %ld\n \n", 206 it [ NNI ], it[ NCFN ], it[ NETF ]); 207 } } 214  $f ( g N , t , N_Ve u , N_Ve ud , * f_da ) 216 uij , udn , uup , u , u , hdc , hac , vdc , hdiff , hadv , vdiff ; 217 * uda , * duda ; 218  i , j ; 219 UrDa da ; 221 uda = `N_VDATA ( u ); 222 duda = `N_VDATA ( ud ); 226 da = ( UrDa f_da ; 227 hdc = da -> hdcf ; 228 hac = da -> hacf ; 229 vdc = da -> vdcf ; 233  j =1; j < MY ; j++) { 235  i =1; i < MX ; i++) { 239 uij = `IJth ( uda , i , j ); 240 udn = ( j =1? 0.0 : `IJth ( uda , i , j-1); 241 uup = ( j = MY ? 0.0 : `IJth ( uda , i , j+1); 242 u = ( i =1? 0.0 : `IJth ( uda , i-1, j ); 243 u = ( i = MX ? 0.0 : `IJth ( uda , i+1, j ); 247 hdiff = hdc *( u - 2.0* uij + u ); 248 hadv = hac *( u - u ); 249 vdiff = vdc *( uup - 2.0* uij + udn ); 250 `IJth ( duda , i , j hdiff + hadv + vdiff ; 253 } } 258  $Jac ( g N , ieg mu , ieg ml , BdM J , RhsFn f , 259 * f_da , t , N_Ve u , N_Ve fu , N_Ve ewt , 260 h , uround , * jac_da , * nP , 261 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ) 263 g i , j , k ; 264 * kthC , hdc , hac , vdc ; 265 UrDa da ; 277 da = ( UrDa jac_da ; 278 hdc = da -> hdcf ; 279 hac = da -> hacf ; 280 vdc = da -> vdcf ; 282  j =1; j < MY ; j++) { 283  i =1; i < MX ; i++) { 284 k = j -1 + ( i -1)* MY ; 285 kthC = `BAND_COL ( J , k ); 289 `BAND_COL_ELEM ( kthC , k ,k-2.0*( vdc + hdc ); 290 i( i !1 `BAND_COL_ELEM ( kthC , k - MY ,k hdc + hac ; 291 i( i ! MX `BAND_COL_ELEM ( kthC , k + MY ,k hdc - hac ; 292 i( j !1 `BAND_COL_ELEM ( kthC , k -1,k vdc ; 293 i( j ! MY `BAND_COL_ELEM ( kthC , k +1,k vdc ; 296 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/examples/dense_ex/cvdx.c 25  ~ 30  ~"typs.h " 32  ~"cvode.h " 35  ~"cvd.h " 36  ~"ve.h " 38  ~"d.h " 56  #Ith ( v , i `N_VIth (v,i-1 ) 57  #IJth ( A , i , j `DENSE_ELEM (A,i-1,j-1 ) 62  #NEQ 3 ) 63  #Y1 1.0 ) 64  #Y2 0.0 ) 65  #Y3 0.0 ) 66  #RTOL 1e-4 ) 67  #ATOL1 1e-8 ) 68  #ATOL2 1e-14 ) 69  #ATOL3 1e-6 ) 70  #T0 0.0 ) 71  #T1 0.4 ) 72  #TMULT 10.0 ) 73  #NOUT 12 ) 78  PrtFSts ( it []); 82  f ( g N , t , N_Ve y , N_Ve yd , * f_da ); 84  Jac ( g N , DM J , RhsFn f , * f_da , t , 85 N_Ve y , N_Ve fy , N_Ve ewt , h , uround , 86 * jac_da , * nP , N_Ve vmp1 , 87 N_Ve vmp2 , N_Ve vmp3 ); 92 $ma () 94 rt [ OPT_SIZE ], , t , tout ; 95  it [ OPT_SIZE ]; 96 N_Ve y , ab ; 97 * cvode_mem ; 98  iout , ag ; 100 y = `N_VNew ( NEQ , NULL ); 101 ab = `N_VNew ( NEQ , NULL ); 103 `Ith ( y ,1 Y1 ; 104 `Ith ( y ,2 Y2 ; 105 `Ith ( y ,3 Y3 ; 107 = RTOL ; 108 `Ith ( ab ,1 ATOL1 ; 109 `Ith ( ab ,2 ATOL2 ; 110 `Ith ( ab ,3 ATOL3 ; 129 cvode_mem = `CVodeMloc ( NEQ , f , T0 , y , BDF , NEWTON , SV , & , ab , 130 NULL , NULL, FALSE , it , rt , NULL); 131 i( cvode_mem = NULL { `tf ("CVodeMalloc failed.\n"); (1); } 136 `CVD ( cvode_mem , Jac , NULL ); 140 `tf (" \n3-species kineticsroblem\n\n"); 141  iout =1, tout = T1 ; iou< NOUT ; iout++,ou* TMULT ) { 142 ag = `CVode ( cvode_mem , tout , y , & t , NORMAL ); 143 `tf ("At = %0.4e y =%14.6e %14.6e %14.6e\n", 144 t , `Ith ( y ,1), Ith(y,2), Ith(y,3)); 145 i( ag ! SUCCESS { `tf ("CVode failed, flag=%d.\n", flag); ; } 148 `N_VFe ( y ); 149 `N_VFe ( ab ); 150 `CVodeFe ( cvode_mem ); 151 `PrtFSts ( it ); 152 `tf ("hu = %\n", rt [ HU ]); 154 } } 161  $PrtFSts ( it []) 163 `tf ("\nFinal Statistics.. \n\n"); 164 `tf ("nst = %-6ldfe = %-6ldsetups = %-6ldje = %ld\n", 165 it [ NST ], it[ NFE ], it[ NSETUPS ], it[ DENSE_NJE ]); 166 `tf ("nni = %-6ldcfn = %-6ldetf = %ld\n \n", 167 it [ NNI ], it[ NCFN ], it[ NETF ]); 168 } } 175  $f ( g N , t , N_Ve y , N_Ve yd , * f_da ) 177 y1 , y2 , y3 , yd1 , yd3 ; 180 y1 = `Ith ( y ,1); y2 = Ith(y,2); y3 = Ith(y,3); 182 yd1 = `Ith ( yd ,1-0.04* y1 + 1e4* y2 * y3 ; 183 yd3 = `Ith ( yd ,33e7* y2 *y2; 185 `Ith ( yd ,2- yd1 - yd3 ; 187 } } 191  $Jac ( g N , DM J , RhsFn f , * f_da , t , 192 N_Ve y , N_Ve fy , N_Ve ewt , h , uround , 193 * jac_da , * nP , N_Ve vmp1 , 194 N_Ve vmp2 , N_Ve vmp3 ) 198 y1 , y2 , y3 ; 200 y1 = `Ith ( y ,1); y2 = Ith(y,2); y3 = Ith(y,3); 202 `IJth ( J ,1,1-0.04; IJth(J,1,21e4* y3 ; IJth(J,1,31e4* y2 ; 203 `IJth ( J ,2,10.04; IJth(J,2,2-1e4* y3 -6e7* y2 ; IJth(J,2,3) = -1e4*y2; 204 `IJth ( J ,3,26e7* y2 ; 206 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/examples/direct_dem/cvdemd.c 49  ~ 50  ~ 51  ~"typs.h " 52  ~"cvode.h " 53  ~"cvd.h " 54  ~"cvbd.h " 55  ~"cvdg.h " 56  ~"ve.h " 57  ~"mh.h " 61  #ATOL 1.0e-6 ) 62  #RTOL 0.0 ) 63  #ITOL SS ) 64  #ERRFP dout ) 65  #OPTIN FALSE ) 69  #P1_NEQ 2 ) 70  #P1_ETA 3.0 ) 71  #P1_NOUT 4 ) 72  #P1_T0 0.0 ) 73  #P1_T1 1.39283880203 ) 74  #P1_DTOUT 2.214773875 ) 75  #P1_TOL_FACTOR 1.0e4 ) 79  #P2_MESHX 5 ) 80  #P2_MESHY 5 ) 81  #P2_NEQ ( P2_MESHX * P2_MESHY ) ) 82  #P2_ALPH1 1.0 ) 83  #P2_ALPH2 1.0 ) 84  #P2_NOUT 5 ) 85  #P2_ML 5 ) 86  #P2_MU 0 ) 87  #P2_T0 0.0 ) 88  #P2_T1 0.01 ) 89  #P2_TOUT_MULT 10.0 ) 90  #P2_TOL_FACTOR 1.0e3 ) 94 um { mFUNC , mDENSE_USER , mDENSE_DQ , mDIAG , mBAND_USER , mBAND_DQ }; 98  Probm1 (); 99  PrtIro1 (); 100  Probm2 (); 101  PrtIro2 (); 102  MaxE ( N_Ve y , t ); 103  PNextRun (* cvode_mem ,  lmm ,  m , g mu , 104 g ml ); 105  PrtFSts ( it [],  m , o ); 109  f1 ( g N , t , N_Ve y , N_Ve yd , * f_da ); 111  Jac1 ( g N , DM J , RhsFn f , * f_da , , 112 N_Ve y , N_Ve fy , N_Ve ewt , h , uround , 113 * jac_da , * nP , N_Ve vmp1 , 114 N_Ve vmp2 , N_Ve vmp3 ); 116  f2 ( g N , t , N_Ve y , N_Ve yd , * f_da ); 118  Jac2 ( g N , ieg mu , ieg ml , BdM J , RhsFn f , 119 * f_da , , N_Ve y , N_Ve fy , N_Ve ewt , 120 h , uround , * jac_da , * nP , 121 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ); 125 $ma () 127  ü ; 129 ü = `Probm1 (); 130 ü + `Probm2 (); 131 `tf ("\n\n-------------------------------------------------------------"); 132 `tf ("\n-------------------------------------------------------------"); 133 `tf ("\n\Numb orܠcoued = %d \n", ü ); 135 } } 137  $Probm1 () 139 rt [ OPT_SIZE ], = RTOL , ab = ATOL , t , tout , o , ; 140  it [ OPT_SIZE ]; 141  lmm , m , ag , , iout , ü =0; 142 N_Ve y ; 143 * cvode_mem ; 145 y = `N_VNew ( P1_NEQ , NULL ); 146 `PrtIro1 (); 148  lmm = ADAMS ;mm < BDF ;mm++) { 149  m = FUNC ; m < DIAG ; miter++) { 150 o = 0.0; 151 `N_VIth ( y ,0) = 2.0; 152 `N_VIth ( y ,1) = 0.0; 153 = ( m = FUNC ? FUNCTIONAL : NEWTON ; 155 cvode_mem = `CVodeMloc ( P1_NEQ , f1 , P1_T0 , y , lmm , , ITOL , & , 156 & ab , NULL , ERRFP , OPTIN , it , rt , NULL); 157 i( cvode_mem = NULL { `tf ("CVodeMalloc failed."); ; } 159 `PNextRun ( cvode_mem , lmm , m , 0, 0); 160 `tf ("\n x xdot qu hu \n"); 162  iout =1, tout = P1_T1 ; iou< P1_NOUT ; iout++,ou+ P1_DTOUT ) { 163 ag = `CVode ( cvode_mem , tout , y , & t , NORMAL ); 164 `tf ("%10.5f %12.5e %12.5e %2d %6.4e\n", 165 t , `N_VIth ( y ,0), N_VIth(y,1), it [ QU ], rt [ HU ]); 166 i( ag ! SUCCESS ) { 167 ü ++; 168 `tf ("\n\CVodtued fg = %d \n\n", ag ); 171 i( iout %2 == 0) { 172 = `ABS ( `N_VIth ( y ,0)/ ab ; 173 i( > o )ro =r; 174 i( > P1_TOL_FACTOR ) { 175 ü ++; 176 `tf ("\n\E܃xed%g *ޔ \n\n", P1_TOL_FACTOR ); 181 `PrtFSts ( it , m , o ); 182 `CVodeFe ( cvode_mem ); 186 `N_VFe ( y ); 187 ( ü ); 188 } } 190  $PrtIro1 () 192 `tf ("Demonstrationrogram for CVODEackage - directinear solvers\n"); 193 `tf ("\n\n"); 195 `tf ("Problem 1.. Van der Pol oscillator..\n"); 196 `tf (" xdotdot - 3*(1 - x^2)*xdot + x = 0, x(0) = 2, xdot(0) = 0\n"); 197 `tf ("eq = %d, itol = %s,eltol = %.2g,bstol = %.2g", 198 P1_NEQ , ( ITOL = SS ? "SS" : "SV", RTOL , ATOL ); 199 } } 202  $f1 ( g N , t , N_Ve y , N_Ve yd , * f_da ) 204 y0 , y1 ; 206 y0 = `N_VIth ( y ,0); 207 y1 = `N_VIth ( y ,1); 209 `N_VIth ( yd ,0 y1 ; 210 `N_VIth ( yd ,1(1.0 - `SQR ( y0 ))* P1_ETA * y1 - y0; 211 } } 213  $Jac1 ( g N , DM J , RhsFn f , * f_da , , 214 N_Ve y , N_Ve fy , N_Ve ewt , h , uround , 215 * jac_da , * nP , N_Ve vmp1 , 216 N_Ve vmp2 , N_Ve vmp3 ) 218 y0 , y1 ; 220 y0 = `N_VIth ( y ,0); 221 y1 = `N_VIth ( y ,1); 223 `DENSE_ELEM ( J ,0,1) = 1.0; 224 `DENSE_ELEM ( J ,1,0-2.0 * P1_ETA * y0 * y1 - 1.0; 225 `DENSE_ELEM ( J ,1,1 P1_ETA * (1.0 - `SQR ( y0 )); 226 } } 228  $Probm2 () 230 rt [ OPT_SIZE ], = RTOL , ab = ATOL , t , tout , , m , o ; 231  it [ OPT_SIZE ]; 232  lmm , m , , ag , iout , ü =0; 233 N_Ve y ; 234 * cvode_mem ; 236 y = `N_VNew ( P2_NEQ , NULL ); 237 `PrtIro2 (); 239  lmm = ADAMS ;mm < BDF ;mm++) { 240  m = FUNC ; m < BAND_DQ ; miter++) { 241 i(( m == DENSE_USER || (m== DENSE_DQ )) ; 242 o = 0.0; 243 `N_VCڡ (0.0, y ); 244 `N_VIth ( y ,0) = 1.0; 245 = ( m = FUNC ? FUNCTIONAL : NEWTON ; 247 cvode_mem = `CVodeMloc ( P2_NEQ , f2 , P2_T0 , y , lmm , , ITOL , & , 248 & ab , NULL , ERRFP , OPTIN , it , rt , NULL); 249 i( cvode_mem = NULL { `tf ("CVodeMalloc failed."); ; } 251 `PNextRun ( cvode_mem , lmm , m , P2_MU , P2_ML ); 252 `tf ("\n max.err qu hu \n"); 254  iout =1, tout = P2_T1 ; iou< P2_NOUT ; iout++,out*= P2_TOUT_MULT ) { 255 ag = `CVode ( cvode_mem , tout , y , & t , NORMAL ); 256 m = `MaxE ( y , t ); 257 `tf ("%10.3 %12.4 %2d %12.4e\n", t , m , it [ QU ], rt [ HU ]); 258 i( ag ! SUCCESS ) { 259 ü ++; 260 `tf ("\n\CVodtued fg = %d \n\n", ag ); 263 = m / ab ; 264 i( > o )ro =r; 265 i( > P2_TOL_FACTOR ) { 266 ü ++; 267 `tf ("\n\E܃xed%g *ޔ \n\n", P2_TOL_FACTOR ); 271 `PrtFSts ( it , m , o ); 272 `CVodeFe ( cvode_mem ); 276 `N_VFe ( y ); 277 ( ü ); 278 } } 280  $PrtIro2 () 282 `tf ("\n\n-------------------------------------------------------------"); 283 `tf ("\n-------------------------------------------------------------"); 284 `tf ("\n\nProblem 2.. ydot = A * y, where A is bandedower\n"); 285 `tf ("triangular matrix derived from 2-Ddvection PDE\n\n"); 286 `tf ("eq = %d, m%d, mu = %d\n", P2_NEQ , P2_ML , P2_MU ); 287 `tf (" itol = %s,eltol = %.2g,bstol = %.2g", 288 ( ITOL = SS ? "SS" : "SV", RTOL , ATOL ); 289 } } 292  $f2 ( g N , t , N_Ve y , N_Ve yd , * f_da ) 294 g i , j , k ; 295 d , * yda , * dyda ; 297 yda = `N_VDATA ( y ); 298 dyda = `N_VDATA ( yd ); 307  j =0; j < P2_MESHY ; j++) { 308  i =0; i < P2_MESHX ; i++) { 309 k = i + j * P2_MESHX ; 310 d = -2.0* yda [ k ]; 311 i( i !0 d + P2_ALPH1 * yda [ k -1]; 312 i( j !0 d + P2_ALPH2 * yda [ k - P2_MESHX ]; 313 dyda [ k ] = d ; 316 } } 318  $Jac2 ( g N , ieg mu , ieg ml , BdM J , RhsFn f , 319 * f_da , , N_Ve y , N_Ve fy , N_Ve ewt , 320 h , uround , * jac_da , * nP , 321 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ) 323 g i , j , k ; 324 * kthC ; 342  j =0; j < P2_MESHY ; j++) { 343  i =0; i < P2_MESHX ; i++) { 344 k = i + j * P2_MESHX ; 345 kthC = `BAND_COL ( J , k ); 346 `BAND_COL_ELEM ( kthC , k ,k) = -2.0; 347 i( i ! P2_MESHX -1 `BAND_COL_ELEM ( kthC , k +1,k P2_ALPH1 ; 348 i( j ! P2_MESHY -1 `BAND_COL_ELEM ( kthC , k + P2_MESHX ,k P2_ALPH2 ; 351 } } 353  $MaxE ( N_Ve y , t ) 355 g i , j , k , j ; 356 * yda , , ex =0.0, yt , maxE =0.0, i_v , j_v =1.0; 358 i( t == 0.0) (0.0); 360 yda = `N_VDATA ( y ); 361 i( t <30.0 ex = `exp (-2.0*t); 363  j = 0; j < P2_MESHY ; j++) { 364 i_v = 1.0; 365  i = 0; i < P2_MESHX ; i++) { 366 k = i + j * P2_MESHX ; 367 yt = `RPowI ( t , i + j * ex * i_v * j_v ; 368 = `ABS ( yda [ k ] - yt ); 369 i( > maxE ) maxError =r; 370 i_v /( i +1); 372 j_v /( j +1); 374 ( maxE ); 375 } } 377  $PNextRun (* cvode_mem ,  lmm ,  m , g mu , 378 g ml ) 380 `tf ("\n\n-------------------------------------------------------------"); 382 `tf ("\n\nLinear Multistep Method : "); 383 i( lmm = ADAMS ) { 384 `tf ("ADAMS\n"); 386 `tf ("BDF\n"); 389 `tf ("Iteration : "); 390 i( m = FUNC ) { 391 `tf ("FUNCTIONAL\n"); 393 `tf ("NEWTON\n"); 394 `tf ("Linear Solver : "); 395  m ) { 396  DENSE_USER : `tf ("Dense, User-Supplied Jacobian\n"); 397 `CVD ( cvode_mem , Jac1 , NULL ); 399  DENSE_DQ : `tf ("Dense, Difference Quotient Jacobian\n"); 400 `CVD ( cvode_mem , NULL , NULL); 402  DIAG : `tf ("Diagonal Jacobian\n"); 403 `CVDg ( cvode_mem ); 405  BAND_USER : `tf ("Band, User-Supplied Jacobian\n"); 406 `CVBd ( cvode_mem , mu , ml , Jac2 , NULL ); 408  BAND_DQ : `tf ("Band, Difference Quotient Jacobian\n"); 409 `CVBd ( cvode_mem , mu , ml , NULL , NULL); 413 } } 415  $PrtFSts ( it [],  m , o ) 417  nje , rw , iw ; 419 `tf ("\n Final statistics forhisun..\n\n"); 420 `tf (" CVod wkagth = %4ld \n", it [ LENRW ]); 421 `tf (" CVodg wkagth = %4ld \n", it [ LENIW ]); 422 `tf (" Numb oࡕ = %4ld \n", it [ NST ]); 423 `tf (" Numb of- = %4ld \n", it [ NFE ]); 424 `tf (" Numb otup = %4ld \n", it [ NSETUPS ]); 425 `tf (" Numb onliڠ = %4ld \n", it [ NNI ]); 426 `tf (" Numb onlcvg fau%4ld \n", it [ NCFN ]); 427 `tf (" Numb or܁e fau = %4ld \n\n", it [ NETF ]); 429 i( m ! FUNC ) { 430  m ) { 431  DENSE_USER : 432  DENSE_DQ : nje = DENSE_NJE ; 433 rw = DENSE_LRW ; 434 iw = DENSE_LIW ; 436  BAND_USER : 437  BAND_DQ : nje = BAND_NJE ; 438 rw = BAND_LRW ; 439 iw = BAND_LIW ; 441  DIAG : nje = NSETUPS ; 442 rw = DIAG_LRW ; 443 iw = DIAG_LIW ; 446 `tf (" Lsvwkagth = %4ld \n", it [ rw ]); 447 `tf (" Lsv ieg wkagth = %4ld \n", it [ iw ]); 448 `tf (" Numb oJacobevuiڠ = %4ld \n\n", it [ nje ]); 451 `tf (" E ovru%.3\n", o ); 453 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/examples/krylov_dem/cvdemk.c 82  ~ 83  ~ 84  ~ 85  ~"typs.h " 86  ~"cvode.h " 87  ~"iv.h " 88  ~"cvgmr.h " 89  ~"d.h " 91  ~"ve.h " 92  ~"mh.h " 96  #AA 1.0 ) 97  #EE 1e4 ) 98  #GG 0.5e-6 ) 99  #BB 1.0 ) 100  #DPREY 1.0 ) 101  #DPRED 0.5 ) 102  #ALPH 1.0 ) 103  #NP 3 ) 104  #NS (2* NP ) ) 108  #MX 6 ) 109  #MY 6 ) 110  #MXNS ( MX * NS ) ) 111  #AX 1.0 ) 112  #AY 1.0 ) 113  #DX ( AX /( )( MX -1)) ) 114  #DY ( AY /( )( MY -1)) ) 115  #MP NS ) 116  #MQ ( MX * MY ) ) 117  #MXMP ( MX * MP ) ) 118  #NGX 2 ) 119  #NGY 2 ) 120  #NGRP ( NGX * NGY ) ) 121  #ITMAX 5 ) 125  #NEQ ( NS * MX * MY ) ) 126  #T0 0.0 ) 127  #RTOL 1e-5 ) 128  #ATOL 1e-5 ) 129  #LMM BDF ) 130  #ITER NEWTON ) 131  #ITOL SS ) 132  #ERRFP dr ) 133  #OPTIN FALSE ) 137  #MAXL 0 ) 138  #DELT 0.0 ) 142  #T1 1e-8 ) 143  #TOUT_MULT 10.0 ) 144  #DTOUT 1.0 ) 145  #NOUT 18 ) 155  sWDKS { 156 ** mP [ NGRP ]; 157 g * mpiv [ NGRP ]; 158  mns , mmxns , mmp , mmq , mmx , mmy , mng , mngx , mngy , mmxmp ; 159  mjgx [ NGX +1], mjgy [ NGY +1], mjigx [ MX ], mjigy [ MY ]; 160  mjxr [ NGX ], mjyr [ NGY ]; 161 macf [ NS ][NS], mbcf [NS], mdiff [NS]; 162 mcox [ NS ], mcoy [NS], mdx , mdy , mur ; 163 mfve [ NEQ ]; 165  WDKS * tWebDa ; 169  WebDa AocUrDa (); 170  InUrDa ( WebDa wda ); 171  SGroups ( m ,  ng ,  jg [],  jig [],  jr []); 172  CIn ( N_Ve c , WebDa wda ); 173  PrtIro (); 174  PrtAScs ( N_Ve c ,  ns ,  mxns , t ); 175  PrtOuut ( t ,  it [], rt []); 176  PrtFSts ( it []); 177  FeUrDa ( WebDa wda ); 178  WebRes ( x , y , t , c [], [], 179 WebDa wda ); 180  fblock ( t , cda [],  jx ,  jy , cdda [], 181 WebDa wda ); 182  GSIr ( N , gamma , N_Ve z , N_Ve x , WebDa wda ); 186  v_c_by_od ( u [], v [], w [],  n ); 187  v_sum_ods ( u [], p [], q [], v [], w [], 188  n ); 189  v_od ( u [], v [], w [],  n ); 190  v_zo ( u [],  n ); 194  f ( g N , t , N_Ve y , N_Ve yd , * f_da ); 196  Pcd ( g N , , N_Ve c , N_Ve fc , 197 bo jok , bo * jcurP , gamma , N_Ve ewt , h , 198 uround , * nP , * P_da , 199 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ); 201  PSve ( g N , , N_Ve c , N_Ve fc , 202 N_Ve vmp , gamma , N_Ve ewt , d , 203 * nP , N_Ve r ,  , * P_da , 204 N_Ve z ); 208 $ma () 210 rt [ OPT_SIZE ], ab = ATOL , = RTOL , t , tout ; 211  it [ OPT_SIZE ]; 212 N_Ve c ; 213 WebDa wda ; 214 * cvode_mem ; 215  je , gy , iout , ag , ns , mxns ; 218 c = `N_VNew ( NEQ , NULL ); 219 wda = `AocUrDa (); 220 `InUrDa ( wda ); 223 `PrtIro (); 226  je = LEFT ; j< RIGHT ; jpre++) { 227  gy = MODIFIED_GS ; gy < CLASSICAL_GS ; gstype++) { 230 `CIn ( c , wda ); 231 `tf ("\n\nPreconditionerype is jpre = %s\n", 232 ( je = LEFT ) ? "LEFT" : "RIGHT"); 233 `tf ("\n\nGram-Schmidt methodype is gstype = %s\n\n\n", 234 ( gy = MODIFIED_GS ) ? "MODIFIED_GS" : "CLASSICAL_GS"); 237 cvode_mem = `CVodeMloc ( NEQ , f , T0 , c , LMM , ITER , ITOL , & , 238 & ab , wda , ERRFP , OPTIN , it , rt , NULL ); 239 i( cvode_mem = NULL { `tf ("CVodeMalloc failed.\n"); (1); } 240 `CVSpgmr ( cvode_mem , je , gy , MAXL , DELT , Pcd , PSve , wda ); 243 i(( je = LEFT && ( gy = MODIFIED_GS )) 244 `PrtAScs ( c , ns = wda ->ns, mxns = wda->mxns, T0 ); 247 tout = T1 ; 248  iout = 1; iou< NOUT ; iout++) { 249 ag = `CVode ( cvode_mem , tout , c , & t , NORMAL ); 250 `PrtOuut ( t , it , rt ); 251 i(( je = LEFT && ( gy = MODIFIED_GS && ( iout % 3 == 0)) 252 `PrtAScs ( c , ns , mxns , t ); 253 i( ag ! SUCCESS { `tf ("CVode failed.\n"); ; } 254 i( tout > 0.9tou+ DTOUT ; tou* TOUT_MULT ; 258 `CVodeFe ( cvode_mem ); 259 `PrtFSts ( it ); 265 `N_VFe ( c ); 266 `FeUrDa ( wda ); 268 } } 270  WebDa $AocUrDa () 272  i , ng = NGRP , ns = NS ; 273 WebDa wda ; 275 wda = ( WebDa `mloc ( *wdata); 276  i =0; i < ng ; i++) { 277 ( wda -> P )[ i ] = `dloc ( ns ); 278 ( wda -> piv )[ i ] = `dloiv ( ns ); 280 ( wda ); 281 } } 283  $InUrDa ( WebDa wda ) 285  i , j , ns ; 286 * bcf , * diff , * cox , * coy , dx , dy ; 287 ` (* acf )[ NS ]; 289 acf = wda ->acoef; 290 bcf = wda ->bcoef; 291 diff = wda ->diff; 292 cox = wda ->cox; 293 coy = wda ->coy; 294 ns = wda ->n NS ; 296  j = 0; j < NP ; j++) { 297  i = 0; i < NP ; i++) { 298 acf [ NP + i ][ j ] = EE ; 299 acf [ i ][ NP + j ] = - GG ; 301 acf [ j ][j] = - AA ; 302 acf [ NP + j ][NP+j] = - AA ; 303 bcf [ j ] = BB ; 304 bcf [ NP + j ] = - BB ; 305 diff [ j ] = DPREY ; 306 diff [ NP + j ] = DPRED ; 311 wda -> mxns = MXNS ; 312 dx = wda ->dx = DX ; 313 dy = wda ->dy = DY ; 314  i = 0; i < ns ; i++) { 315 cox [ i ] = diff [i]/ `SQR ( dx ); 316 coy [ i ] = diff [i]/ `SQR ( dy ); 321 wda -> mp = MP ; 322 wda -> mq = MQ ; 323 wda -> mx = MX ; 324 wda -> my = MY ; 325 wda -> ur = `RSq ( `UnRoundoff ()); 326 wda -> mxmp = MXMP ; 327 wda -> ng = NGRP ; 328 wda -> ngx = NGX ; 329 wda -> ngy = NGY ; 330 `SGroups ( MX , NGX , wda -> jgx , wda-> jigx , wda-> jxr ); 331 `SGroups ( MY , NGY , wda -> jgy , wda-> jigy , wda-> jyr ); 332 } } 345  $SGroups ( m ,  ng ,  jg [],  jig [],  jr []) 347  ig , j , n1 , mr , ngm1 ; 349 mr = m / ng ; 350  ig =0; ig < ng ; ig++ jg [ig] = ig* mr ; 351 jg [ ng ] = m ; 353 ngm1 = ng - 1; 354 n1 = ngm1 * mr ; 355  j = 0; j < n1 ; j++ jig [j] = j/ mr ; 356  j = n1 ; j < m ; j++ jig [j] = ngm1 ; 358  ig = 0; ig < ngm1 ; ig++ jr [ig] = ((2*ig+1)* mr -1)/2; 359 jr [ ngm1 ] = (ngm1* mr + m -1)/2; 360 } } 363  $CIn ( N_Ve c , WebDa wda ) 365  i , ici , ioff , iyoff , jx , jy , ns , mxns ; 366 gx , gy , x , y , dx , dy , x_ , y_ , * cda ; 368 cda = `N_VDATA ( c ); 369 ns = wda ->ns; 370 mxns = wda ->mxns; 371 dx = wda ->dx; 372 dy = wda ->dy; 374 x_ = 4.0/ `SQR ( AX ); 375 y_ = 4.0/ `SQR ( AY ); 376  jy = 0; jy < MY ; jy++) { 377 y = jy * dy ; 378 gy = `SQR ( y_ * y *( AY -y)); 379 iyoff = mxns * jy ; 380  jx = 0; jx < MX ; jx++) { 381 x = jx * dx ; 382 gx = `SQR ( x_ * x *( AX -x)); 383 ioff = iyoff + ns * jx ; 384  i = 1; i < ns ; i++) { 385 ici = ioff + i -1; 386 cda [ ici ] = 10.0 + i * gx * gy ; 390 } } 392  $PrtIro () 394 `tf ("\n\nDemonstrationrogram for CVODE - CVSPGMRinear solver\n\n"); 395 `tf ("Food webrobm whecs,%d\n", NS ); 396 `tf ("Predator-prey interactionnd diffusion on 2-D square\n\n"); 397 `tf ("Matrixarameters.. = %.2g = %.2g g = %.2g\n", 398 AA , EE , GG ); 399 `tf ("bam = %.2g\n", BB ); 400 `tf ("Diffusion coefficients.. Dprey = %.2g Dpred = %.2g\n", 401 DPREY , DPRED ); 402 `tf ("Rmh%.2g\n\n", ALPH ); 403 `tf ("Mesh dimsiڠ(mx,my謐%d, %d. ", MX , MY ); 404 `tf ("Tٮ syem siziq = %d \n\n", NEQ ); 405 `tf ("Tolerances: itol = %s,eltol = %.2g,bstol = %.2g \n\n", 406 ( ITOL = SS ? "SS" : "SV", RTOL , ATOL ); 408 `tf ("Preconditioning usesroduct of:\n"); 409 `tf (" (1) Gauss-Seidel iterations with "); 410 `tf ("max = %d itis,nd\n", ITMAX ); 411 `tf (" (2) interaction-only block-diagonal matrix "); 412 `tf ("with block-grouping\n"); 413 `tf (" Numb odgڮ block groupng = %d", NGRP ); 414 `tf (" (ngx bygy,gx = %d,gy = %d)\n", NGX , NGY ); 415 `tf ("\n\n--------------------------------------------------------------"); 416 `tf ("--------------\n"); 417 } } 419  $PrtAScs ( N_Ve c ,  ns ,  mxns , t ) 421  i , jx , jy ; 422 * cda ; 424 cda = `N_VDATA ( c ); 425 `tf ("vue = %g:\n\n", t ); 426  i =1; i < ns ; i++) { 427 `tf ("Sc%d\n", i ); 428  jy = MY -1; jy >= 0; jy--) { 429  jx =0; jx < MX ; jx++) { 430 `tf ("%-10.6g", cda [( i -1+ jx * ns + jy * mxns ]); 432 `tf ("\n"); 434 `tf ("\n"); 436 } } 438  $PrtOuut ( t ,  it [], rt []) 440 `tf ("%10.2 = %ld = %ldn%ld", t , it [ NST ], 441 it [ NFE ], it[ NNI ]); 442 `tf (" qu = %ld hu = %11.2e\n\n", it [ QU ], rt [ HU ]); 443 } } 445  $PrtFSts ( it []) 447  i , i ; 448 avdim ; 450 `tf ("\n\n Final statistics forhisun:\n\n"); 451 `tf (" CVod wkagth = %4ld \n", it [ LENRW ]); 452 `tf (" CVodg wkagth = %4ld \n", it [ LENIW ]); 453 `tf (" CVSPGMRwkagth = %4ld \n", it [ SPGMR_LRW ]); 454 `tf (" CVSPGMR ieg wkagth = %4ld \n", it [ SPGMR_LIW ]); 455 `tf (" Numb oࡕ = %4ld \n", it [ NST ]); 456 `tf (" Numb of- = %4ld \n", it [ NFE ]); 457 `tf (" Numb otup = %4ld \n", it [ NSETUPS ]); 458 `tf (" Numb onliڠ = %4ld \n", i = it [ NNI ]); 459 `tf (" Number ofinear iterations = %4ld \n", 460 i = it [ SPGMR_NLI ]); 461 `tf (" Numb oecdiڔvuiڠ = %4ld \n", it [ SPGMR_NPE ]); 462 `tf (" Numb oecdiڔ sve = %4ld \n", it [ SPGMR_NPS ]); 463 `tf (" Numb or܁e fau = %4ld \n", it [ NETF ]); 464 `tf (" Numb onlcv. fau = %4ld \n", it [ NCFN ]); 465 `tf (" Numb olcvg fau%4ld \n", it [ SPGMR_NCFL ]); 466 avdim = ( i > 0? (( ) i )/((real)nni) : 0.0; 467 `tf (" AvagKrylov suba dimsi = %.3\n", avdim ); 468 `tf ("\n\n--------------------------------------------------------------"); 469 `tf ("--------------\n"); 470 `tf ( "--------------------------------------------------------------"); 471 `tf ("--------------\n"); 472 } } 474  $FeUrDa ( WebDa wda ) 476  i , ng ; 478 ng = wda ->ngrp; 479  i =0; i < ng ; i++) { 480 `d (( wda -> P )[ i ]); 481 `dpiv (( wda -> piv )[ i ]); 483 ` ( wda ); 484 } } 491  $f ( g N , t , N_Ve c , N_Ve cd , * f_da ) 493  i , ic , ici , idxl , idxu , idyl , idyu , iyoff , jx , jy , ns , mxns ; 494 dcxli , dcxui , dcyli , dcyui , x , y , * cox , * coy , * fve , dx , dy ; 495 * cda , * cdda ; 496 WebDa wda ; 498 wda = ( WebDa f_da ; 499 cda = `N_VDATA ( c ); 500 cdda = `N_VDATA ( cd ); 502 mxns = wda ->mxns; 503 ns = wda ->ns; 504 fve = wda ->fsave; 505 cox = wda ->cox; 506 coy = wda ->coy; 507 mxns = wda ->mxns; 508 dx = wda ->dx; 509 dy = wda ->dy; 511  jy = 0; jy < MY ; jy++) { 512 y = jy * dy ; 513 iyoff = mxns * jy ; 514 idyu = ( jy = MY -1? - mxns : mxns; 515 idyl = ( jy =0? - mxns : mxns; 516  jx = 0; jx < MX ; jx++) { 517 x = jx * dx ; 518 ic = iyoff + ns * jx ; 520 `WebRes ( x , y , t , cda + ic , fve +ic, wda ); 521 idxu = ( jx = MX -1? - ns :s; 522 idxl = ( jx =0? - ns :s; 523  i = 1; i < ns ; i++) { 524 ici = ic + i -1; 526 dcyli = cda [ ici ] - cda[ici- idyl ]; 527 dcyui = cda [ ici + idyu ] - cdata[ici]; 529 dcxli = cda [ ici ] - cda[ici- idxl ]; 530 dcxui = cda [ ici + idxu ] - cdata[ici]; 532 cdda [ ici ] = coy [ i -1]*( dcyui - dcyli + cox [i-1]*( dcxui - dcxli ) + 533 fve [ ici ]; 537 } } 544  $WebRes ( x , y , t , c [], [], 545 WebDa wda ) 547  i , j , ns ; 548 c , * bcf ; 549 ` (* acf )[ NS ]; 551 ns = wda ->ns; 552 acf = wda ->acoef; 553 bcf = wda ->bcoef; 555  i = 0; i < ns ; i++) 556 [ i ] = 0.0; 558  j = 0; j < ns ; j++) 559  i = 0; i < ns ; i++) 560 [ i ] + c [ j ] * acf [i][j]; 562 c = 1.0 + ALPH * x * y ; 563  i = 0; i < ns ; i++) 564 [ i ] = c [i]*( bcf [i]* c +ate[i]); 565 } } 580  $Pcd ( g N , t , N_Ve c , N_Ve fc , bo jok , 581 bo * jcurP , gamma , N_Ve wt , h , 582 uround , * nP , * P_da , 583 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ) 585 *** P ; 586 g ** piv , r ; 587  i , if0 , if00 , ig , igx , igy , j , jj , jx , jy ; 588 * jxr , * jyr , mp , ng , ngx , ngy , mxmp ; 589 c , r , r0 , ve , ur ; 590 * f1 , * fve , * cda , * wtda ; 591 WebDa wda ; 593 wda = ( WebDa P_da ; 594 cda = `N_VDATA ( c ); 595 wtda = `N_VDATA ( wt ); 597 P = wda ->P; 598 piv = wda ->pivot; 599 jxr = wda ->jxr; 600 jyr = wda ->jyr; 601 mp = wda ->mp; 602 ur = wda ->srur; 603 ng = wda ->ngrp; 604 ngx = wda ->ngx; 605 ngy = wda ->ngy; 606 mxmp = wda ->mxmp; 607 fve = wda ->fsave; 613 f1 = `N_VDATA ( vmp1 ); 615 c = `N_VWrmsNm ( fc , wt ); 616 r0 = 1000.0* `ABS ( gamma )* uround * N * c ; 617 i( r0 == 0.0)0 = 1.0; 619  igy = 0; igy < ngy ; igy++) { 620 jy = jyr [ igy ]; 621 if00 = jy * mxmp ; 622  igx = 0; igx < ngx ; igx++) { 623 jx = jxr [ igx ]; 624 if0 = if00 + jx * mp ; 625 ig = igx + igy * ngx ; 627  j = 0; j < mp ; j++) { 629 jj = if0 + j ; 630 ve = cda [ jj ]; 631 r = `MAX ( ur * `ABS ( ve ), r0 / wtda [ jj ]); 632 cda [ jj ] + r ; 633 c = - gamma / r ; 634 `fblock ( t , cda , jx , jy , f1 , wda ); 635  i = 0; i < mp ; i++) { 636 P [ ig ][ j ][ i ] = ( f1 [i] - fve [ if0 +i])* c ; 638 cda [ jj ] = ve ; 645  ig = 0; ig < ng ; ig++) { 646 `daddI ( P [ ig ], mp ); 647 r = `ge ( P [ ig ], mp , piv [ig]); 648 i( r != 0) (1); 651 * jcurP = TRUE ; 653 } } 660  $fblock ( t , cda [],  jx ,  jy , cdda [], 661 WebDa wda ) 663  iblok , ic ; 664 x , y ; 666 iblok = jx + jy *( wda -> mx ); 667 y = jy *( wda -> dy ); 668 x = jx *( wda -> dx ); 669 ic = ( wda -> ns )*( iblok ); 670 `WebRes ( x , y , t , cda + ic , cdda , wda ); 671 } } 683  $PSve ( g N , , N_Ve c , N_Ve fc , N_Ve vmp , 684 gamma , N_Ve wt , d , * nP , 685 N_Ve r ,  , * P_da , N_Ve z ) 687 *** P ; 688 g ** piv ; 689  jx , jy , igx , igy , iv , ig , * jigx , * jigy , mx , my , ngx , mp ; 690 WebDa wda ; 692 wda = ( WebDa P_da ; 694 `N_VS (1.0, r , z ); 698 `GSIr ( N , gamma , z , vmp , wda ); 702 P = wda ->P; 703 piv = wda ->pivot; 704 mx = wda ->mx; 705 my = wda ->my; 706 ngx = wda ->ngx; 707 mp = wda ->mp; 708 jigx = wda ->jigx; 709 jigy = wda ->jigy; 711 iv = 0; 712  jy = 0; jy < my ; jy++) { 713 igy = jigy [ jy ]; 714  jx = 0; jx < mx ; jx++) { 715 igx = jigx [ jx ]; 716 ig = igx + igy * ngx ; 717 `ge ( P [ ig ], mp , piv [ig], &( `N_VDATA ( z )[ iv ])); 718 iv + mp ; 723 } } 734  $GSIr ( N , gamma , N_Ve z , N_Ve x , WebDa wda ) 736  i , ic , ici , , iyoff , jx , jy , ns , mxns , mx , my , x_loc , y_loc ; 737 ba [ NS ], ba2 [NS], cof1 [NS], gam [NS], gam2 [NS]; 738 mp , * cox , * coy , * xd , * zd ; 740 xd = `N_VDATA ( x ); 741 zd = `N_VDATA ( z ); 742 ns = wda ->ns; 743 mx = wda ->mx; 744 my = wda ->my; 745 mxns = wda ->mxns; 746 cox = wda ->cox; 747 coy = wda ->coy; 752  i = 0; i < ns ; i++) { 753 mp = 1.0/(1.0 + 2.0* gamma *( cox [ i ] + coy [i])); 754 ba [ i ] = gamma * cox [i]* mp ; 755 ba2 [ i ] = 2.0* ba [i]; 756 gam [ i ] = gamma * coy [i]* mp ; 757 gam2 [ i ] = 2.0* gam [i]; 758 cof1 [ i ] = mp ; 764  jy = 0; jy < my ; jy++) { 765 iyoff = mxns * jy ; 766  jx = 0; jx < mx ; jx++) { 767 ic = iyoff + ns * jx ; 768 `v_od ( xd + ic , cof1 , zd +ic, ns ); 771 `N_VCڡ (0.0, z ); 775  =1; i< ITMAX ; iter++) { 779 i( > 1) { 780  jy =0; jy < my ; jy++) { 781 iyoff = mxns * jy ; 782  jx =0; jx < mx ; jx++) { 783 ic = iyoff + ns * jx ; 784 x_loc = ( jx =0? 0 : ((jx = mx -1) ? 2 : 1); 785 y_loc = ( jy =0? 0 : ((jy = my -1) ? 2 : 1); 786 3* y_loc + x_loc ) { 789 `v_sum_ods ( xd + ic , ba2 , xd+ic+ ns , gam2 , xd+ic+ mxns ,s); 793 `v_sum_ods ( xd + ic , ba , xd+ic+ ns , gam2 , xd+ic+ mxns ,s); 797 `v_od ( xd + ic , gam2 , xd+ic+ mxns , ns ); 801 `v_sum_ods ( xd + ic , ba2 , xd+ic+ ns , gam , xd+ic+ mxns ,s); 805 `v_sum_ods ( xd + ic , ba , xd+ic+ ns , gam , xd+ic+ mxns ,s); 809 `v_od ( xd + ic , gam , xd+ic+ mxns , ns ); 813 `v_od ( xd + ic , ba2 , xd+ic+ ns ,s); 817 `v_od ( xd + ic , ba , xd+ic+ ns ,s); 821 `v_zo ( xd + ic , ns ); 830  jy =0; jy < my ; jy++) { 831 iyoff = mxns * jy ; 832  jx =0; jx < mx ; jx++) { 833 ic = iyoff + ns * jx ; 834 x_loc = ( jx =0? 0 : ((jx = mx -1) ? 2 : 1); 835 y_loc = ( jy =0? 0 : ((jy = my -1) ? 2 : 1); 836 3* y_loc + x_loc ) { 841 `v_c_by_od ( xd + ic , ba , xd+ic- ns ,s); 845 `v_c_by_od ( xd + ic , ba2 , xd+ic- ns ,s); 849 `v_c_by_od ( xd + ic , gam , xd+ic- mxns , ns ); 853 `v_c_by_od ( xd + ic , ba , xd+ic- ns ,s); 854 `v_c_by_od ( xd + ic , gam , xd+ic- mxns , ns ); 858 `v_c_by_od ( xd + ic , ba2 , xd+ic- ns ,s); 859 `v_c_by_od ( xd + ic , gam , xd+ic- mxns , ns ); 863 `v_c_by_od ( xd + ic , gam2 , xd+ic- mxns , ns ); 867 `v_c_by_od ( xd + ic , ba , xd+ic- ns ,s); 868 `v_c_by_od ( xd + ic , gam2 , xd+ic- mxns , ns ); 872 `v_c_by_od ( xd + ic , ba2 , xd+ic- ns ,s); 873 `v_c_by_od ( xd + ic , gam2 , xd+ic- mxns , ns ); 881 `N_VLrSum (1.0, z , 1.0, x , z); 884 } } 886  $v_c_by_od ( u [], v [], w [],  n ) 888  i ; 889  i =0; i < n ; i++ u [i] + v [i]* w [i]; 890 } } 892  $v_sum_ods ( u [], p [], q [], v [], w [], 893  n ) 895  i ; 896  i =0; i < n ; i++ u [i] = p [i]* q [i] + v [i]* w [i]; 897 } } 899  $v_od ( u [], v [], w [],  n ) 901  i ; 902  i =0; i < n ; i++ u [i] = v [i]* w [i]; 903 } } 905  $v_zo ( u [],  n ) 907  i ; 908  i =0; i < n ; i++ u [i] = 0.0; 909 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/examples/krylov_ex/cvkx.c 31  ~ 32  ~ 33  ~ 34  ~"typs.h " 35  ~"cvode.h " 36  ~"iv.h " 37  ~"cvgmr.h " 38  ~"d.h " 39  ~"ve.h " 40  ~"mh.h " 45  #NUM_SPECIES 2 ) 46  #KH 4.0e-6 ) 47  #VEL 0.001 ) 48  #KV0 1.0e-8 ) 49  #Q1 1.63e-16 ) 50  #Q2 4.66e-16 ) 51  #C3 3.7e16 ) 52  #A3 22.62 ) 53  #A4 7.601 ) 54  #C1_SCALE 1.0e6 ) 55  #C2_SCALE 1.0e12 ) 57  #T0 0.0 ) 58  #NOUT 12 ) 59  #TWOHR 7200.0 ) 60  #HALFDAY 4.32e4 ) 61  #PI 3.1415926535898 ) 63  #XMIN 0.0 ) 64  #XMAX 20.0 ) 65  #ZMIN 30.0 ) 66  #ZMAX 50.0 ) 67  #XMID 10.0 ) 68  #ZMID 40.0 ) 70  #MX 10 ) 71  #MZ 10 ) 72  #NSMX 20 ) 73  #MM ( MX * MZ ) 77  #RTOL 1.0e-5 ) 78  #FLOOR 100.0 ) 80  #ATOL ( RTOL * FLOOR ) 81  #NEQ ( NUM_SPECIES * MM ) 105  #IJKth ( vda , i , j , k (vda[i-1 + (j)* NUM_SPECIES + (k)* NSMX ]) ) 106  #IJth ( a , i , j [j-1][i-1]) ) 113 ** mP [ MX ][ MZ ], ** mJbd [MX][MZ]; 114 g * mpiv [ MX ][ MZ ]; 115 mq4 , mom , mdx , mdz , mhdco , mhaco , mvdco ; 116 } * tUrDa ; 121  UrDa AocUrDa (); 122  InUrDa ( UrDa da ); 123  FeUrDa ( UrDa da ); 124  SInlProfes ( N_Ve y , dx , dz ); 125  PrtOuut ( it [], rt [], N_Ve y , t ); 126  PrtFSts ( it []); 130  f ( g N , t , N_Ve y , N_Ve yd , * f_da ); 132  Pcd ( g N , , N_Ve y , N_Ve fy , bo jok , 133 bo * jcurP , gamma , N_Ve ewt , h , 134 uround , * nP , * P_da , 135 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ); 137  PSve ( g N , , N_Ve y , N_Ve fy , N_Ve vmp , 138 gamma , N_Ve ewt , d , * nP , 139 N_Ve r ,  , * P_da , N_Ve z ); 144 $ma () 146 ab , , t , tout , rt [ OPT_SIZE ]; 147  it [ OPT_SIZE ]; 148 N_Ve y ; 149 UrDa da ; 150 * cvode_mem ; 151  iout , ag ; 155 y = `N_VNew ( NEQ , NULL ); 156 da = `AocUrDa (); 157 `InUrDa ( da ); 158 `SInlProfes ( y , da -> dx , da-> dz ); 159 ab = ATOL ; = RTOL ; 177 cvode_mem = `CVodeMloc ( NEQ , f , T0 , y , BDF , NEWTON , SS , & , 178 & ab , da , NULL , FALSE , it , rt , NULL); 179 i( cvode_mem = NULL { `tf ("CVodeMalloc failed."); (1); } 187 `CVSpgmr ( cvode_mem , LEFT , MODIFIED_GS , 0, 0.0, Pcd , PSve , da ); 191 `tf (" \n2-species diurnaldvection-diffusionroblem\n\n"); 192  iout =1, tout = TWOHR ; iou< NOUT ; iout++,out += TWOHR) { 193 ag = `CVode ( cvode_mem , tout , y , & t , NORMAL ); 194 `PrtOuut ( it , rt , y , t ); 195 i( ag ! SUCCESS { `tf ("CVode failed, flag=%d.\n", flag); ; } 200 `N_VFe ( y ); 201 `FeUrDa ( da ); 202 `CVodeFe ( cvode_mem ); 203 `PrtFSts ( it ); 205 } } 212  UrDa $AocUrDa () 214  jx , jz ; 215 UrDa da ; 217 da = ( UrDa `mloc ( *data); 219  jx =0; jx < MX ; jx++) { 220  jz =0; jz < MZ ; jz++) { 221 ( da -> P )[ jx ][ jz ] = `dloc ( NUM_SPECIES ); 222 ( da -> Jbd )[ jx ][ jz ] = `dloc ( NUM_SPECIES ); 223 ( da -> piv )[ jx ][ jz ] = `dloiv ( NUM_SPECIES ); 227 ( da ); 228 } } 232  $InUrDa ( UrDa da ) 234 da -> om = PI / HALFDAY ; 235 da -> dx = ( XMAX - XMIN )/( MX -1); 236 da -> dz = ( ZMAX - ZMIN )/( MZ -1); 237 da -> hdco = KH / `SQR (da-> dx ); 238 da -> haco = VEL /(2.0*da-> dx ); 239 da -> vdco = (1.0/ `SQR (da-> dz ))* KV0 ; 240 } } 244  $FeUrDa ( UrDa da ) 246  jx , jz ; 248  jx =0; jx < MX ; jx++) { 249  jz =0; jz < MZ ; jz++) { 250 `d (( da -> P )[ jx ][ jz ]); 251 `d (( da -> Jbd )[ jx ][ jz ]); 252 `dpiv (( da -> piv )[ jx ][ jz ]); 256 ` ( da ); 257 } } 261  $SInlProfes ( N_Ve y , dx , dz ) 263  jx , jz ; 264 x , z , cx , cz ; 265 * yda ; 269 yda = `N_VDATA ( y ); 273  jz =0; jz < MZ ; jz++) { 274 z = ZMIN + jz * dz ; 275 cz = `SQR (0.1*( z - ZMID )); 276 cz = 1.0 - cz + 0.5* `SQR (cz); 277  jx =0; jx < MX ; jx++) { 278 x = XMIN + jx * dx ; 279 cx = `SQR (0.1*( x - XMID )); 280 cx = 1.0 - cx + 0.5* `SQR (cx); 281 `IJKth ( yda ,1, jx , jz C1_SCALE * cx * cz ; 282 `IJKth ( yda ,2, jx , jz C2_SCALE * cx * cz ; 285 } } 289  $PrtOuut ( it [], rt [], N_Ve y , t ) 291 * yda ; 293 yda = `N_VDATA ( y ); 295 `tf ("t = %.2eo. steps = %d order = %d stepsize = %.2e\n", 296 t , it [ NST ], it[ QU ], rt [ HU ]); 297 `tf ("c1 (bot.left/middle/topt.) = %12.3e %12.3e %12.3e\n", 298 `IJKth ( yda ,1,0,0), IJKth(ydata,1,4,4), IJKth(ydata,1,9,9)); 299 `tf ("c2 (bot.left/middle/topt.) = %12.3e %12.3e %12.3e\n\n", 300 `IJKth ( yda ,2,0,0), IJKth(ydata,2,4,4), IJKth(ydata,2,9,9)); 301 } } 305  $PrtFSts ( it []) 307 `tf ("\nFinal Statistics.. \n\n"); 308 `tf ("w = %5ldiw = %5ld\n", it [ LENRW ], it[ LENIW ]); 309 `tf ("rw = %5ldliw = %5ld\n", it [ SPGMR_LRW ], it[ SPGMR_LIW ]); 310 `tf ("n = %5ld = %5ld\n", it [ NST ], it[ NFE ]); 311 `tf ("˜ = %5ldl = %5ld\n", it [ NNI ], it[ SPGMR_NLI ]); 312 `tf ("ntup%5ld = %5ld\n", it [ NSETUPS ], it[ NETF ]); 313 `tf ("Ő = %5ldp = %5ld\n", it [ SPGMR_NPE ], it[ SPGMR_NPS ]); 314 `tf ("nc = %5ldc = %5ld\\n", it [ NCFN ], it[ SPGMR_NCFL ]); 315 } } 322  $f ( g N , t , N_Ve y , N_Ve yd , * f_da ) 324 q3 , c1 , c2 , c1dn , c2dn , c1up , c2up , c1 , c2 ; 325 c1 , c2 , czdn , czup , hd1 , hd2 , had1 , had2 ; 326 qq1 , qq2 , qq3 , qq4 , rk1 , rk2 , s , vtd1 , vtd2 , zdn , zup ; 327 q4cf , dz , vdco , hdco , haco ; 328 * yda , * dyda ; 329  jx , jz , idn , iup , e , ight ; 330 UrDa da ; 332 da = ( UrDa f_da ; 333 yda = `N_VDATA ( y ); 334 dyda = `N_VDATA ( yd ); 338 s = `s ( da -> om * t ); 339 i( s > 0.0) { 340 q3 = `exp (- A3 / s ); 341 da -> q4 = `exp (- A4 / s ); 343 q3 = 0.0; 344 da -> q4 = 0.0; 349 q4cf = da -> q4 ; 350 dz = da -> dz ; 351 vdco = da -> vdco ; 352 hdco = da -> hdco ; 353 haco = da -> haco ; 357  jz =0; jz < MZ ; jz++) { 361 zdn = ZMIN + ( jz - .5)* dz ; 362 zup = zdn + dz ; 363 czdn = vdco * `exp (0.2* zdn ); 364 czup = vdco * `exp (0.2* zup ); 365 idn = ( jz == 0) ? 1 : -1; 366 iup = ( jz = MZ -1) ? -1 : 1; 367  jx =0; jx < MX ; jx++) { 371 c1 = `IJKth ( yda ,1, jx , jz ); 372 c2 = `IJKth ( yda ,2, jx , jz ); 373 qq1 = Q1 * c1 * C3 ; 374 qq2 = Q2 * c1 * c2 ; 375 qq3 = q3 * C3 ; 376 qq4 = q4cf * c2 ; 377 rk1 = - qq1 - qq2 + 2.0* qq3 + qq4 ; 378 rk2 = qq1 - qq2 - qq4 ; 382 c1dn = `IJKth ( yda ,1, jx , jz + idn ); 383 c2dn = `IJKth ( yda ,2, jx , jz + idn ); 384 c1up = `IJKth ( yda ,1, jx , jz + iup ); 385 c2up = `IJKth ( yda ,2, jx , jz + iup ); 386 vtd1 = czup *( c1up - c1 - czdn *(c1 - c1dn ); 387 vtd2 = czup *( c2up - c2 - czdn *(c2 - c2dn ); 391 e = ( jx == 0) ? 1 : -1; 392 ight =( jx = MX -1) ? -1 : 1; 393 c1 = `IJKth ( yda ,1, jx + e , jz ); 394 c2 = `IJKth ( yda ,2, jx + e , jz ); 395 c1 = `IJKth ( yda ,1, jx + ight , jz ); 396 c2 = `IJKth ( yda ,2, jx + ight , jz ); 397 hd1 = hdco *( c1 - 2.0* c1 + c1 ); 398 hd2 = hdco *( c2 - 2.0* c2 + c2 ); 399 had1 = haco *( c1 - c1 ); 400 had2 = haco *( c2 - c2 ); 404 `IJKth ( dyda , 1, jx , jz vtd1 + hd1 + had1 + rk1 ; 405 `IJKth ( dyda , 2, jx , jz vtd2 + hd2 + had2 + rk2 ; 408 } } 412  $Pcd ( g N , , N_Ve y , N_Ve fy , bo jok , 413 bo * jcurP , gamma , N_Ve ewt , h , 414 uround , * nP , * P_da , 415 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ) 417 c1 , c2 , czdn , czup , dg , zdn , zup , q4cf , dz , vdco , hdco ; 418 **(* P )[ MZ ], **(* Jbd )[MZ]; 419 g *(* piv )[ MZ ], r ; 420  jx , jz ; 421 * yda , ** a , ** j ; 422 UrDa da ; 426 da = ( UrDa P_da ; 427 P = da ->P; 428 Jbd = da ->Jbd; 429 piv = da ->pivot; 430 yda = `N_VDATA ( y ); 432 i( jok ) { 436  jz =0; jz < MZ ; jz++) 437  jx =0; jx < MX ; jx++) 438 `dcy ( Jbd [ jx ][ jz ], P [jx][jz], NUM_SPECIES ); 440 * jcurP = FALSE ; 449 q4cf = da -> q4 ; 450 dz = da -> dz ; 451 vdco = da -> vdco ; 452 hdco = da -> hdco ; 457  jz =0; jz < MZ ; jz++) { 458 zdn = ZMIN + ( jz - .5)* dz ; 459 zup = zdn + dz ; 460 czdn = vdco * `exp (0.2* zdn ); 461 czup = vdco * `exp (0.2* zup ); 462 dg = -( czdn + czup + 2.0* hdco ); 463  jx =0; jx < MX ; jx++) { 464 c1 = `IJKth ( yda ,1, jx , jz ); 465 c2 = `IJKth ( yda ,2, jx , jz ); 466 j = Jbd [ jx ][ jz ]; 467 a = P [ jx ][ jz ]; 468 `IJth ( j ,1,1(- Q1 * C3 - Q2 * c2 + dg ; 469 `IJth ( j ,1,2- Q2 * c1 + q4cf ; 470 `IJth ( j ,2,1 Q1 * C3 - Q2 * c2 ; 471 `IJth ( j ,2,2(- Q2 * c1 - q4cf + dg ; 472 `dcy ( j , a , NUM_SPECIES ); 476 * jcurP = TRUE ; 482  jz =0; jz < MZ ; jz++) 483  jx =0; jx < MX ; jx++) 484 `ds (- gamma , P [ jx ][ jz ], NUM_SPECIES ); 488  jx =0; jx < MX ; jx++) { 489  jz =0; jz < MZ ; jz++) { 490 `daddI ( P [ jx ][ jz ], NUM_SPECIES ); 491 r = `ge ( P [ jx ][ jz ], NUM_SPECIES , piv [jx][jz]); 492 i( r != 0) (1); 497 } } 502  $PSve ( g N , , N_Ve y , N_Ve fy , N_Ve vmp , 503 gamma , N_Ve ewt , d , * nP , 504 N_Ve r ,  , * P_da , N_Ve z ) 506 **(* P )[ MZ ]; 507 g *(* piv )[ MZ ]; 508  jx , jz ; 509 * zda , * v ; 510 UrDa da ; 514 da = ( UrDa P_da ; 515 P = da ->P; 516 piv = da ->pivot; 517 zda = `N_VDATA ( z ); 519 `N_VS (1.0, r , z ); 524  jx =0; jx < MX ; jx++) { 525  jz =0; jz < MZ ; jz++) { 526 v = &( `IJKth ( zda , 1, jx , jz )); 527 `ge ( P [ jx ][ jz ], NUM_SPECIES , piv [jx][jz], v ); 532 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/band.h 52 #ide _bd_h 53  #_bd_h ) 56  ~"typs.h " 57  ~"ve.h " 131  sJuABdMrixKS { 132 g msize ; 133 g mmu , mml , msmu ; 134 ** mda ; 136  JuABdMrixKS * tBdM ; 156  #BAND_ELEM ( A , i , j ((A-> da )[j][i-j+(A-> smu )]) ) 172  #BAND_COL ( A , j (((A-> da )[j])+(A-> smu )) ) 188  #BAND_COL_ELEM ( c_j , i , j (c_j[i-j]) ) 216 BdM BdAocM ( g N , ieg mu , ieg ml , ieg smu ); 234 g * BdAocPiv (g N ); 278 g BdFa ( BdM A , ieg * p ); 294  BdBacksve ( BdM A , g * p , N_Ve b ); 306  BdZo ( BdM A ); 320  BdCy ( BdM A , BdM B , g cymu , ieg cyml ); 332  BdS ( c , BdM A ); 344  BdAddI ( BdM A ); 357  BdFeM ( BdM A ); 370  BdFePiv ( g * p ); 387  BdPrt ( BdM A ); 431 ** bdloc ( g n , ieg smu , ieg ml ); 447 g * bdloiv (g n ); 501 g gb ( ** a , ieg n , ieg mu , ieg ml , ieg smu , 502 g * p ); 521  gb ( ** a , g n , ieg smu , ieg ml , ieg * p ,* b ); 533  bdzo ( ** a , g n , ieg mu , ieg ml , ieg smu ); 545  bdcy ( ** a ,** b , g n , ieg a_smu , ieg b_smu , 546 g cymu , ieg cyml ); 558  bds ( c ,** a , g n , ieg mu , ieg ml , 559 g smu ); 571  bdaddI ( ** a , g n , ieg smu ); 584  bdpiv ( g * p ); 596  bd ( ** a ); 613  bdt ( ** a , g n , ieg mu , ieg ml , ieg smu ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/cvband.h 18 #ide _cvbd_h 19  #_cvbd_h ) 22  ~ 23  ~"cvode.h " 24  ~"typs.h " 25  ~"bd.h " 26  ~"ve.h " 50 um { mBAND_NJE = CVODE_IOPT_SIZE , mBAND_LRW , mBAND_LIW }; 65  #CVB_MSBJ 50 ) 67  #CVB_DGMAX `RCONST (0.2) ) 159 (* tCVBdJacFn )( tg tN , ieg tmu , ieg tmlow , 160 tBdM tJ , tRhsFn tf , * tf_da , t tt , 161 tN_Ve ty , N_Ve tfy , N_Ve tewt , t th , 162 t turound , * tjac_da , * tnP , 163 tN_Ve tvmp1 , N_Ve tvmp2 , N_Ve tvmp3 ); 194  `CVBd (* cvode_mem , g mu , ieg mlow , CVBdJacFn bjac , 195 * jac_da ); 207  `CVBdDQJac ( g N , ieg mu , ieg mlow , BdM J , 208 RhsFn f , * f_da , t , N_Ve y , N_Ve fy , 209 N_Ve ewt , h , uround , * jac_da , 210 * nP , N_Ve vmp1 , N_Ve vmp2 , 211 N_Ve vmp3 ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/cvdense.h 16 #ide _cvd_h 17  #_cvd_h ) 20  ~ 21  ~"cvode.h " 22  ~"typs.h " 23  ~"d.h " 24  ~"ve.h " 48 um { mDENSE_NJE = CVODE_IOPT_SIZE , mDENSE_LRW , mDENSE_LIW }; 63  #CVD_MSBJ 50 ) 65  #CVD_DGMAX `RCONST (0.2) ) 138 (* tCVDJacFn )( tg tN , tDM tJ , tRhsFn tf , * tf_da , 139 t tt , tN_Ve ty , N_Ve tfy , N_Ve tewt , 140 t th , turound , * tjac_da , 141 * tnP , tN_Ve tvmp1 , 142 tN_Ve tvmp2 , N_Ve tvmp3 ); 166  `CVD (* cvode_mem , CVDJacFn djac , * jac_da ); 178  `CVDDQJac ( g N , DM J , RhsFn f , * f_da , t , 179 N_Ve y , N_Ve fy , N_Ve ewt , h , uround , 180 * jac_da , * nP , N_Ve vmp1 , 181 N_Ve vmp2 , N_Ve vmp3 ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/cvdiag.h 16 #ide _cvdg_h 17  #_cvdg_h ) 19  ~ 20  ~"cvode.h " 21  ~"typs.h " 22  ~"ve.h " 46 um { mDIAG_LRW = CVODE_IOPT_SIZE , mDIAG_LIW }; 61  CVDg (* cvode_mem ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/cvode.h 12 #ide _cvode_h 13  #_cvode_h ) 16  ~ 17  ~"typs.h " 18  ~"ve.h " 74 um { mADAMS , mBDF }; 76 um { mFUNCTIONAL , mNEWTON }; 78 um { mSS , mSV }; 80 um { mNORMAL , mONE_STEP }; 102 (* tRhsFn )( tg tN , t tt , tN_Ve ty , N_Ve tyd , 103 * tf_da ); 187 * `CVodeMloc ( g N , RhsFn f , t0 , N_Ve y0 ,  lmm ,  , 188  , * , * ab , * f_da , 189 FILE * r , bo tIn ,  it [], rt [], 190 * machEnv ); 266  `CVode (* cvode_mem , tout , N_Ve yout ,* t ,  ask ); 271 um { SUCCESS =0, CVODE_NO_MEM =-1, ILL_INPUT =-2, TOO_MUCH_WORK =-3, 272 TOO_MUCH_ACC =-4, ERR_FAILURE =-5, CONV_FAILURE =-6, 273 SETUP_FAILURE =-7, SOLVE_FAILURE =-8 }; 316  `CVodeDky (* cvode_mem , t ,  k , N_Ve dky ); 321 um { OKAY =0, BAD_K =-1, BAD_T =-2, BAD_DKY =-3, DKY_NO_MEM =-4 }; 334  `CVodeFe (* cvode_mem ); 422  #OPT_SIZE 40 ) 431  #CVODE_IOPT_SIZE 13 ) 432  #CVODE_ROPT_SIZE 7 ) 436 um { MAXORD , MXSTEP , MXHNIL , 437 NST , NFE , NSETUPS , NNI , NCFN , NETF , QU , QCUR , 438 LENRW , LENIW }; 442 um { H0 , HMAX , HMIN , 443 HU , HCUR , TCUR , TOLSF }; 448  #ADAMS_Q_MAX 12 ) 449  #BDF_Q_MAX 5 ) 450  #Q_MAX ADAMS_Q_MAX ) 451  #L_MAX ( Q_MAX +1 ) 452  #NUM_TESTS 5 ) 464  sCVodeMemRec { 466 cv_uround ; 470 g cv_N ; 471 RhsFn cv_f ; 472 * cv_f_da ; 473  cv_lmm ; 474  cv_ ; 475  cv_ ; 476 * cv_ ; 477 * cv_ab ; 481 N_Ve cv_zn [ L_MAX ]; 488 N_Ve cv_ewt ; 489 N_Ve cv_y ; 492 N_Ve cv_ac ; 496 N_Ve cv_mpv ; 497 N_Ve cv_emp ; 501  cv_q ; 502  cv_qime ; 504  cv_qwa ; 506  cv_L ; 508 cv_h ; 509 cv_hime ; 510 cv_a ; 511 cv_hs ; 512 cv_ ; 514 cv_u [ L_MAX +1]; 516 cv_tq [ NUM_TESTS +1]; 518 cv_l [ L_MAX ]; 520 cv_1 ; 521 cv_gamma ; 522 cv_gamm ; 523 cv_gamt ; 525 cv_e ; 526 cv_arm ; 527  cv_mwt ; 531  cv_qmax ; 532  cv_mx ; 533  cv_maxc ; 535  cv_mxhn ; 538 cv_hm ; 539 cv_hmax_v ; 540 cv_amax ; 544  cv_n ; 545  cv_n ; 546  cv_nc ; 547  cv_tf ; 548  cv_i ; 549  cv_ntups ; 550  cv_nhn ; 552  cv_w ; 553  cv_liw ; 559 (* cv_l )( CVodeMemRec * cv_mem , bo * tupNNu ); 561 (* cv_ltup )( CVodeMemRec * cv_mem ,  cv , N_Ve yed , 562 N_Ve d , bo * jcurP , N_Ve vmp1 , 563 N_Ve vmp2 , N_Ve vmp3 ); 565 (* cv_lsve )( CVodeMemRec * cv_mem , N_Ve b , N_Ve ycur , 566 N_Ve fcur ); 568 (* cv_l )( CVodeMemRec * cv_mem ); 572 * cv_lmem ; 576 bo cv_lOK ; 580  cv_qu ; 581  cv_n ; 582 cv_hu ; 583 cv_ved_tq5 ; 584 g cv_imx ; 586 bo cv_jcur ; 588 cv_tsf ; 589 bo cv_tupNNu ; 593 * cv_it ; 594 * cv_rt ; 598 FILE * cv_r ; 602 * cv_machv ; 604 } * tCVodeMem ; 653  #LINIT_OK 0 ) 654  #LINIT_ERR -1 ) 658  #NO_FAILURES 0 ) 659  #FAIL_BAD_J 1 ) 660  #FAIL_OTHER 2 ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/cvspgmr.h 16 #ide _cvgmr_h 17  #_cvgmr_h ) 20  ~ 21  ~"cvode.h " 22  ~"gmr.h " 23  ~"typs.h " 24  ~"ve.h " 56 um { mSPGMR_NPE = CVODE_IOPT_SIZE , 57 mSPGMR_NLI , mSPGMR_NPS , mSPGMR_NCFL , mSPGMR_LRW , mSPGMR_LIW }; 80  #CVSPGMR_MAXL 5 ) 82  #CVSPGMR_MSBPRE 50 ) 84  #CVSPGMR_DGMAX `RCONST (0.2) ) 86  #CVSPGMR_DELT `RCONST (0.05) ) 186 (* tCVSpgmrPcdFn )( tg tN , t tt , tN_Ve ty , N_Ve tfy , 187 tbo tjok , bo * tjcurP , t tgamma , 188 tN_Ve tewt , t th , turound , 189 * tnP , * tP_da , 190 tN_Ve tvmp1 , N_Ve tvmp2 , 191 tN_Ve tvmp3 ); 255 (* tCVSpgmrPSveFn )( tg tN , t tt , tN_Ve ty , N_Ve tfy , 256 tN_Ve tvmp , t tgamma , N_Ve tewt , 257 t td , * tnP , tN_Ve tr , 258  t , * tP_da , tN_Ve tz ); 319  `CVSpgmr (* cvode_mem ,  y ,  gy ,  maxl , dt , 320 CVSpgmrPcdFn ecd , CVSpgmrPSveFn psve , * P_da ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/dense.h 52 #ide _d_h 53  #_d_h ) 56  ~"typs.h " 57  ~"ve.h " 92  sJuADMrixJR { 93 g msize ; 94 ** mda ; 96  JuADMrixJR * tDM ; 113  #DENSE_ELEM ( A , i , j ((A-> da )[j][i]) ) 129  #DENSE_COL ( A , j ((A-> da )[j]) ) 149 DM DAocM ( g N ); 167 g * DAocPiv (g N ); 200 g DFa ( DM A , ieg * p ); 216  DBacksve ( DM A , g * p , N_Ve b ); 228  DZo ( DM A ); 241  DCy ( DM A , DM B ); 254  DS ( c , DM A ); 267  DAddI ( DM A ); 280  DFeM ( DM A ); 293  DFePiv ( g * p ); 309  DPrt ( DM A ); 336 ** dloc ( g n ); 352 g * dloiv (g n ); 387 g ge ( ** a , ieg n , ieg * p ); 404  ge ( ** a , g n , ieg * p ,* b ); 417  dzo ( ** a , g n ); 430  dcy ( ** a ,** b , g n ); 443  ds ( c ,** a , g n ); 456  daddI ( ** a , g n ); 469  dpiv ( g * p ); 481  d ( ** a ); 497  dt ( ** a , g n ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/iterativ.h 19 #ide _iv_h 20  #_iv_h ) 23  ~"typs.h " 24  ~"ve.h " 45 um { mNONE , mLEFT , mRIGHT , mBOTH }; 62 um { mMODIFIED_GS , mCLASSICAL_GS }; 78 (* tATimesFn )(* tA_da , tN_Ve tv , N_Ve tz ); 99 (* tPSveFn )(* tP_da , tN_Ve tr , N_Ve tz ,  t ); 138  `ModifdGS ( N_Ve * v , ** h ,  k ,  p ,* w_vk_nm ); 161  `CssilGS ( N_Ve * v , ** h ,  k ,  p ,* w_vk_nm , 162 N_Ve mp , * s ); 197  `QR ( n , ** h ,* q ,  job ); 232  `QRs ( n , ** h ,* q ,* b ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/llnlmath.h 21 #ide _mh_h 22  #_mh_h ) 25  ~"typs.h " 42  #MIN ( A , B ((A< (B? (A: (B)) ) 44  #MAX ( A , B ((A> (B? (A: (B)) ) 46  #ABS ( A ((A > 0? (A: -(A)) ) 48  #SQR ( A ((A* (A)) ) 63 UnRoundoff (); 78 RPowI ԗ ba ,  expڒt ); 92 RPowR ԗ ba , expڒt ); 106 RSq ԗ x ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/llnltyps.h 60 #ide _typs_h 61  #_typs_h ) 81  # _ ) 83  t ; 84  tg ; 86  #FLOAT 0 ) 87  #DOUBLE 1 ) 89  #INT 1 ) 90  #LONG_INT 0 ) 92 #i FLOAT 94  #RCONST ( x x## F ) 96 #i DOUBLE 98  #RCONST ( x ) x 118 #ide bo 119  #bo  ) 122 #ide FALSE 123  #FALSE 0 ) 126 #ide TRUE 127  #TRUE 1 ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/spgmr.h 13 #ide _gmr_h 14  #_gmr_h ) 17  ~"typs.h " 18  ~"iv.h " 19  ~"ve.h " 74 g mN ; 75  ml_max ; 77 N_Ve * mV ; 78 ** mHes ; 79 * mgivs ; 80 N_Ve mxc ; 81 * myg ; 82 N_Ve mvmp ; 84 } tSpgmrMemRec , * tSpgmrMem ; 103 SpgmrMem SpgmrMloc ( g N ,  l_max , * machEnv ); 193  SpgmrSve ( SpgmrMem mem , * A_da , N_Ve x , N_Ve b , 194  y ,  gy , d ,  max_ts , 195 * P_da , N_Ve sx , N_Ve sb , ATimesFn imes , 196 PSveFn psve , * s_nm , * i , * s ); 201  #SPGMR_SUCCESS 0 ) 202  #SPGMR_RES_REDUCED 1 ) 204  #SPGMR_CONV_FAIL 2 ) 205  #SPGMR_QRFACT_FAIL 3 ) 206  #SPGMR_PSOLVE_FAIL_REC 4 ) 207  #SPGMR_MEM_NULL -1 ) 208  #SPGMR_ATIMES_FAIL -2 ) 209  #SPGMR_PSOLVE_FAIL_UNREC -3 ) 210  #SPGMR_GS_FAIL -4 ) 212  #SPGMR_QRSOL_FAIL -5 ) 224  SpgmrFe ( SpgmrMem mem ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/include/vector.h 45 #ide ve_h 46  #ve_h ) 49  ~"typs.h " 91  sJuAVeJR { 92 g mngth ; 93 * mda ; 95  JuAVeJR * tN_Ve ; 169  #N_VMAKE ( v , v_da , v_n v = ( N_Ve `mloc ((*v)); \ 170 v -> da = v_da ; \ 171 v -> ngth = v_n ) 173  #N_VDISPOSE ( v ` (v) ) 175  #N_VDATA ( v (v-> da ) ) 177  #N_VLENGTH ( v (v-> ngth ) ) 179  #N_VIth ( v , i ((v-> da )[i]) ) 207 N_Ve N_VNew ( g n , * machEnv ); 221  N_VFe ( N_Ve x ); 240  N_VLrSum ( a , N_Ve x , b , N_Ve y , N_Ve z ); 250  N_VCڡ ( c , N_Ve z ); 260  N_VProd ( N_Ve x , N_Ve y , N_Ve z ); 270  N_VDiv ( N_Ve x , N_Ve y , N_Ve z ); 280  N_VS ( c , N_Ve x , N_Ve z ); 290  N_VAbs ( N_Ve x , N_Ve z ); 305  N_VInv ( N_Ve x , N_Ve z ); 315  N_VAddCڡ ( N_Ve x , b , N_Ve z ); 340 N_VDProd ( N_Ve x , N_Ve y ); 357 N_VMaxNm ( N_Ve x ); 375 N_VWrmsNm ( N_Ve x , N_Ve w ); 389 N_VM ( N_Ve x ); 407  N_VCom ( c , N_Ve x , N_Ve z ); 423 bo N_VInvTe ( N_Ve x , N_Ve z ); 445  N_VPrt ( N_Ve x ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/band.c 12  ~ 13  ~ 14  ~"bd.h " 15  ~"typs.h " 16  ~"ve.h " 17  ~"mh.h " 20  #ZERO `RCONST (0.0) ) 21  #ONE `RCONST (1.0) ) 23  #ROW ( i , j , smu (i-j+smu) ) 28 BdM $BdAocM ( g N , ieg mu , ieg ml , ieg smu ) 30 BdM A ; 32 i( N <0( NULL ); 34 A = ( BdM `mloc ( *A); 35 i( A = NULL )  (NULL); 37 A -> da = `bdloc ( N , smu , ml ); 38 i( A -> da = NULL ) { 39 ` ( A ); 40 ( NULL ); 43 A -> size = N ; 44 A -> mu = mu; 45 A -> ml = ml; 46 A -> smu = smu; 48 ( A ); 49 } } 52 g * $BdAocPiv ( g N ) 54 i( N <0( NULL ); 56 (( g * `mloc ( N * (integer))); 57 } } 60 g $BdFa ( BdM A , g * p ) 62 ( `gb ( A -> da , A-> size , A-> mu , A-> ml , A-> smu , p )); 63 } } 66  $BdBacksve ( BdM A , g * p , N_Ve b ) 68 `gb ( A -> da , A-> size , A-> smu , A-> ml , p , `N_VDATA ( b )); 69 } } 71  $BdZo ( BdM A ) 73 `bdzo ( A -> da , A-> size , A-> mu , A-> ml , A-> smu ); 74 } } 76  $BdCy ( BdM A , BdM B , g cymu , ieg cyml ) 78 `bdcy ( A -> da , B ->da, A-> size , A-> smu , B->smu, cymu , cyml ); 79 } } 81  $BdS ( c , BdM A ) 83 `bds ( c , A -> da , A-> size , A-> mu , A-> ml , A-> smu ); 84 } } 86  $BdAddI ( BdM A ) 88 `bdaddI ( A -> da , A-> size , A-> smu ); 89 } } 91  $BdFeM ( BdM A ) 93 `bd ( A -> da ); 94 ` ( A ); 95 } } 97  $BdFePiv ( g * p ) 99 ` ( p ); 100 } } 102  $BdPrt ( BdM A ) 104 `bdt ( A -> da , A-> size , A-> mu , A-> ml , A-> smu ); 105 } } 108 ** $bdloc ( g n , ieg smu , ieg ml ) 110 ** a ; 111 g j , cSize ; 113 i( n <0( NULL ); 115 a = ( ** `mloc ( n * (real *)); 116 i( a = NULL ) (NULL); 118 cSize = smu + ml + 1; 119 a [0] = ( * `mloc ( n * cSize * (real)); 120 i( a [0] = NULL ) { 121 ` ( a ); 122 ( NULL ); 125  j =1; j < n ; j++ a [j] =[0] + j * cSize ; 127 ( a ); 128 } } 130 g * $bdloiv ( g n ) 132 i( n <0( NULL ); 134 (( g * `mloc ( n * (integer))); 135 } } 138 g $gb ( ** a , g n , ieg mu , ieg ml , ieg smu , 139 g * p ) 141 g c , r , num_rows ; 142 g i , j , k , l , age_l , age_k , ϡ_c_k , ϡ_row_k ; 143 * a_c , * c_k , * dg_k , * sub_dg_k , * c_j , * kr , * jr ; 144 max , mp , mu , a_kj ; 145 bo sw ; 149 num_rows = smu - mu ; 150 i( num_rows > 0) { 151  c =0; c < n ; c++) { 152 a_c = a [ c ]; 153  r =0; < num_rows ;++) { 154 a_c [ r ] = ZERO ; 161  k =0; k < n -1; k++, p ++) { 163 c_k = a [ k ]; 164 dg_k = c_k + smu ; 165 sub_dg_k = dg_k + 1; 166 ϡ_row_k = `MIN ( n -1, k + ml ); 170 l = k ; 171 max = `ABS (* dg_k ); 172  i = k +1, kr = sub_dg_k ; i < ϡ_row_k ; i++, kptr++) { 173 i( `ABS (* kr > max ) { 174 l = i ; 175 max = `ABS (* kr ); 178 age_l = `ROW ( l , k , smu ); 179 * p = l ; 183 i( c_k [ age_l ] = ZERO ( k +1); 187 i( sw = ( l ! k )) { 188 mp = c_k [ age_l ]; 189 c_k [ age_l ] = * dg_k ; 190 * dg_k = mp ; 199 mu = - ONE / (* dg_k ); 200  i = k +1, kr = sub_dg_k ; i < ϡ_row_k ; i++, kptr++) 201 (* kr * mu ; 208 ϡ_c_k = `MIN ( k + smu , n -1); 209  j = k +1; j < ϡ_c_k ; j++) { 211 c_j = a [ j ]; 212 age_l = `ROW ( l , j , smu ); 213 age_k = `ROW ( k , j , smu ); 214 a_kj = c_j [ age_l ]; 218 i( sw ) { 219 c_j [ age_l ] = c_j[ age_k ]; 220 c_j [ age_k ] = a_kj ; 226 i( a_kj ! ZERO ) { 227  i = k +1, kr = sub_dg_k , jr = c_j + `ROW (k+1, j , smu ); 228 i < ϡ_row_k ; 229 i ++, kr ++, jr ++) 230 (* jr + a_kj * (* kr ); 237 * p = n -1; 238 i( a [ n -1][ smu ] = ZERO ) (n); 243 } } 245  $gb ( ** a , g n , ieg smu , ieg ml , ieg * p , 246 * b ) 248 g k , l , i , f_row_k , ϡ_row_k ; 249 mu , * dg_k ; 253  k =0; k < n -1; k++) { 254 l = p [ k ]; 255 mu = b [ l ]; 256 i( l ! k ) { 257 b [ l ] = b[ k ]; 258 b [ k ] = mu ; 260 dg_k = a [ k ]+ smu ; 261 ϡ_row_k = `MIN ( n -1, k + ml ); 262  i = k +1; i < ϡ_row_k ; i++) 263 b [ i ] + mu * dg_k [i- k ]; 268  k = n -1; k >= 0; k--) { 269 dg_k = a [ k ]+ smu ; 270 f_row_k = `MAX (0, k - smu ); 271 b [ k ] /(* dg_k ); 272 mu = - b [ k ]; 273  i = f_row_k ; i < k -1; i++) 274 b [ i ] + mu * dg_k [i- k ]; 276 } } 278  $bdzo ( ** a , g n , ieg mu , ieg ml , ieg smu ) 280 g i , j , cSize ; 281 * c_j ; 283 cSize = mu + ml + 1; 284  j =0; j < n ; j++) { 285 c_j = a [ j ]+ smu - mu ; 286  i =0; i < cSize ; i++) 287 c_j [ i ] = ZERO ; 289 } } 291  $bdcy ( ** a ,** b , g n , ieg a_smu , ieg b_smu , 292 g cymu , ieg cyml ) 294 g i , j , cySize ; 295 * a_c_j , * b_c_j ; 297 cySize = cymu + cyml + 1; 299  j =0; j < n ; j++) { 300 a_c_j = a [ j ]+ a_smu - cymu ; 301 b_c_j = b [ j ]+ b_smu - cymu ; 302  i =0; i < cySize ; i++) 303 b_c_j [ i ] = a_c_j [i]; 305 } } 307  $bds ( c ,** a , g n , ieg mu , ieg ml , 308 g smu ) 310 g i , j , cSize ; 311 * c_j ; 313 cSize = mu + ml + 1; 315  j =0; j < n ; j++) { 316 c_j = a [ j ]+ smu - mu ; 317  i =0; i < cSize ; i++) 318 c_j [ i ] * c ; 320 } } 322  $bdaddI ( ** a , g n , ieg smu ) 324 g j ; 326  j =0; j < n ; j++) 327 a [ j ][ smu ] + ONE ; 328 } } 330  $bdpiv ( g * p ) 332 ` ( p ); 333 } } 335  $bd ( ** a ) 337 ` ( a [0]); 338 ` ( a ); 339 } } 341  $bdt ( ** a , g n , ieg mu , ieg ml , ieg smu ) 343 g i , j , t , fish ; 345 `tf ("\n"); 346  i =0; i < n ; i++) { 347 t = `MAX (0, i - ml ); 348 fish = `MIN ( n -1, i + mu ); 349  j =0; j < t ; j++ `tf ("%10s",""); 350  j = t ; j < fish ; j++) { 351 `tf ("%10g", a [ j ][ i -j+ smu ]); 353 `tf ("\n"); 355 `tf ("\n"); 356 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/cvband.c 13  ~ 14  ~ 15  ~"cvbd.h " 16  ~"cvode.h " 17  ~"bd.h " 18  ~"typs.h " 19  ~"ve.h " 20  ~"mh.h " 25  #CVBAND_INIT "CVBdIn-- " ) 27  #MSG_MEM_FAIL CVBAND_INIT "A memyeque faed.\n\n" ) 29  #MSG_BAD_SIZES_1 CVBAND_INIT "Ieg bdwidtham(s" ) 30  #MSG_BAD_SIZES_2 "m%ld, mu = %ld.\n" ) 31  #MSG_BAD_SIZES_3 "Mu hav0 < ml, mu cv_N ) ) 170  #lmm ( cv_mem -> cv_lmm ) ) 171  #f ( cv_mem -> cv_f ) ) 172  #f_da ( cv_mem -> cv_f_da ) ) 173  #uround ( cv_mem -> cv_uround ) ) 174  #n ( cv_mem -> cv_n ) ) 175  # ( cv_mem -> cv_ ) ) 176  #h ( cv_mem -> cv_h ) ) 177  #gamma ( cv_mem -> cv_gamma ) ) 178  #gamm ( cv_mem -> cv_gamm ) ) 179  #gamt ( cv_mem -> cv_gamt ) ) 180  #ewt ( cv_mem -> cv_ewt ) ) 181  #n ( cv_mem -> cv_n ) ) 182  #r ( cv_mem -> cv_r ) ) 183  #it ( cv_mem -> cv_it ) ) 184  #l ( cv_mem -> cv_l ) ) 185  #ltup ( cv_mem -> cv_ltup ) ) 186  #lsve ( cv_mem -> cv_lsve ) ) 187  #l ( cv_mem -> cv_l ) ) 188  #lmem ( cv_mem -> cv_lmem ) ) 190  #jac ( cvbd_mem -> b_jac ) ) 191  #M ( cvbd_mem -> b_M ) ) 192  #mu ( cvbd_mem -> b_mu ) ) 193  #ml ( cvbd_mem -> b_ml ) ) 194  #age_mu ( cvbd_mem -> b_age_mu ) ) 195  #pivs ( cvbd_mem -> b_pivs ) ) 196  #vedJ ( cvbd_mem -> b_vedJ ) ) 197  #nlj ( cvbd_mem -> b_nlj ) ) 198  #nje ( cvbd_mem -> b_nje ) ) 199  #J_da ( cvbd_mem -> b_J_da ) ) 220  $CVBd (* cvode_mem , g mu , ieg mlow , CVBdJacFn bjac , 221 * jac_da ) 223 CVodeMem cv_mem ; 224 CVBdMem cvbd_mem ; 227 cv_mem = ( CVodeMem cvode_mem ; 228 i( cv_mem = NULL ) ; 231 l = CVBdIn ; 232 ltup = CVBdSup ; 233 lsve = CVBdSve ; 234 l = CVBdFe ; 237 lmem = cvbd_mem = ( CVBdMem `mloc (( CVBdMemRec )); 238 i( cvbd_mem = NULL ) ; 241 i( bjac = NULL ) { 242 jac = CVBdDQJac ; 244 jac = bjac ; 246 J_da = jac_da ; 249 ml = mlow ; 250 mu = mu ; 251 } } 261  $CVBdIn ( CVodeMem cv_mem , bo * tupNNu ) 263 CVBdMem cvbd_mem ; 265 cvbd_mem = ( CVBdMem lmem ; 268 i( cvbd_mem = NULL ) { 269 `rtf ( r , MSG_MEM_FAIL ); 270 ( LINIT_ERR ); 274 * tupNNu = TRUE ; 277 i(( ml < 0|| ( mu < 0|| (m> N ) || (mu >= N)) { 278 `rtf ( r , MSG_BAD_SIZES , ml , mu , N -1); 279 ( LINIT_ERR ); 283 age_mu = `MIN ( N -1, mu + ml ); 286 M = `BdAocM ( N , mu , ml , age_mu ); 287 i( M = NULL ) { 288 `rtf ( r , MSG_MEM_FAIL ); 289 ( LINIT_ERR ); 291 vedJ = `BdAocM ( N , mu , ml , mu); 292 i( vedJ = NULL ) { 293 `rtf ( r , MSG_MEM_FAIL ); 294 `BdFeM ( M ); 295 ( LINIT_ERR ); 297 pivs = `BdAocPiv ( N ); 298 i( pivs = NULL ) { 299 `rtf ( r , MSG_MEM_FAIL ); 300 `BdFeM ( M ); 301 `BdFeM ( vedJ ); 302 ( LINIT_ERR ); 306 nje = 0; 307 i( it ! NULL ) { 308 it [ BAND_NJE ] = nje ; 309 it [ BAND_LRW ] = N *( age_mu + mu + 2* ml + 2); 310 it [ BAND_LIW ] = N ; 312 nlj = 0; 314 ( LINIT_OK ); 315 } } 328  $CVBdSup ( CVodeMem cv_mem ,  cv , N_Ve yed , 329 N_Ve d , bo * jcurP , N_Ve vmp1 , 330 N_Ve vmp2 , N_Ve vmp3 ) 332 bo jbad , jok ; 333 dgamma ; 334 g r ; 335 CVBdMem cvbd_mem ; 337 cvbd_mem = ( CVBdMem lmem ; 341 dgamma = `ABS (( gamma / gamm - ONE ); 342 jbad = ( n =0|| (n > nlj + CVB_MSBJ ) || 343 (( cv = FAIL_BAD_J && ( dgamma < CVB_DGMAX )) || 344 ( cv = FAIL_OTHER ); 345 jok = ! jbad ; 347 i( jok ) { 349 * jcurP = FALSE ; 350 `BdCy ( vedJ , M , mu , ml ); 353 nje ++; 354 i( it ! NULL it[ BAND_NJE ] = nje ; 355 nlj = n ; 356 * jcurP = TRUE ; 357 `BdZo ( M ); 358 `jac ( N , mu , ml , M , f , f_da , , yed , d , ewt , 359 h , uround , J_da , & n , vmp1 , vmp2 , vmp3 ); 360 `BdCy ( M , vedJ , mu , ml ); 364 `BdS (- gamma , M ); 365 `BdAddI ( M ); 368 r = `BdFa ( M , pivs ); 371 i( r > 0) (1); 373 } } 382  $CVBdSve ( CVodeMem cv_mem , N_Ve b , N_Ve ycur , 383 N_Ve fcur ) 385 CVBdMem cvbd_mem ; 387 cvbd_mem = ( CVBdMem lmem ; 389 `BdBacksve ( M , pivs , b ); 392 i(( lmm = BDF && ( gamt ! ONE )) { 393 `N_VS ( TWO /( ONE + gamt ), b , b); 397 } } 405  $CVBdFe ( CVodeMem cv_mem ) 407 CVBdMem cvbd_mem ; 409 cvbd_mem = ( CVBdMem lmem ; 411 `BdFeM ( M ); 412 `BdFeM ( vedJ ); 413 `BdFePiv ( pivs ); 414 ` ( lmem ); 415 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/cvdense.c 13  ~ 14  ~ 15  ~"cvd.h " 16  ~"cvode.h " 17  ~"d.h " 18  ~"typs.h " 19  ~"ve.h " 20  ~"mh.h " 25  #CVDENSE_INIT "CVDIn-- " ) 27  #MSG_MEM_FAIL CVDENSE_INIT "A memyeque faed.\n\n" ) 32  #MIN_INC_MULT `RCONST (1000.0) ) 33  #ZERO `RCONST (0.0) ) 34  #ONE `RCONST (1.0) ) 35  #TWO `RCONST (2.0) ) 49 CVDJacFn md_jac ; 51 DM md_M ; 53 g * md_pivs ; 55 DM md_vedJ ; 57  md_nlj ; 59  md_nje ; 61 * md_J_da ; 63 } tCVDMemRec , * tCVDMem ; 68  CVDIn ( CVodeMem cv_mem , bo * tupNNu ); 70  CVDSup ( CVodeMem cv_mem ,  cv , N_Ve yed , 71 N_Ve d , bo * jcurP , N_Ve vmp1 , 72 N_Ve vmp2 , N_Ve vmp3 ); 74  CVDSve ( CVodeMem cv_mem , N_Ve b , N_Ve ycur , 75 N_Ve fcur ); 77  CVDFe ( CVodeMem cv_mem ); 93  $CVDDQJac ( g N , DM J , RhsFn f , * f_da , , 94 N_Ve y , N_Ve fy , N_Ve ewt , h , uround , 95 * jac_da , * nP , N_Ve vmp1 , 96 N_Ve vmp2 , N_Ve vmp3 ) 98 m , mInc , c , c_v , yjved , ur ; 99 * y_da , * ewt_da ; 100 N_Ve emp , jthC ; 101 g j ; 103 emp = vmp1 ; 106 ewt_da = `N_VDATA ( ewt ); 107 y_da = `N_VDATA ( y ); 110 ur = `RSq ( uround ); 111 m = `N_VWrmsNm ( fy , ewt ); 112 mInc = ( m ! ZERO ) ? 113 ( MIN_INC_MULT * `ABS ( h * uround * N * m : ONE ; 115 `N_VMAKE ( jthC , NULL , N ); 118  j =0; j < N ; j++) { 122 `N_VDATA ( jthC `DENSE_COL ( J , j ); 123 yjved = y_da [ j ]; 124 c = `MAX ( ur * `ABS ( yjved ), mInc / ewt_da [ j ]); 125 y_da [ j ] + c ; 126 `f ( N , , y , emp , f_da ); 127 c_v = ONE / c ; 128 `N_VLrSum ( c_v , emp , -c_v, fy , jthC ); 129 y_da [ j ] = yjved ; 132 `N_VDISPOSE ( jthC ); 135 * nP + N ; 136 } } 141  #N ( cv_mem -> cv_N ) ) 142  #lmm ( cv_mem -> cv_lmm ) ) 143  #f ( cv_mem -> cv_f ) ) 144  #f_da ( cv_mem -> cv_f_da ) ) 145  #uround ( cv_mem -> cv_uround ) ) 146  #n ( cv_mem -> cv_n ) ) 147  # ( cv_mem -> cv_ ) ) 148  #h ( cv_mem -> cv_h ) ) 149  #gamma ( cv_mem -> cv_gamma ) ) 150  #gamm ( cv_mem -> cv_gamm ) ) 151  #gamt ( cv_mem -> cv_gamt ) ) 152  #ewt ( cv_mem -> cv_ewt ) ) 153  #n ( cv_mem -> cv_n ) ) 154  #r ( cv_mem -> cv_r ) ) 155  #it ( cv_mem -> cv_it ) ) 156  #l ( cv_mem -> cv_l ) ) 157  #ltup ( cv_mem -> cv_ltup ) ) 158  #lsve ( cv_mem -> cv_lsve ) ) 159  #l ( cv_mem -> cv_l ) ) 160  #lmem ( cv_mem -> cv_lmem ) ) 162  #jac ( cvd_mem -> d_jac ) ) 163  #M ( cvd_mem -> d_M ) ) 164  #pivs ( cvd_mem -> d_pivs ) ) 165  #vedJ ( cvd_mem -> d_vedJ ) ) 166  #nlj ( cvd_mem -> d_nlj ) ) 167  #nje ( cvd_mem -> d_nje ) ) 168  #J_da ( cvd_mem -> d_J_da ) ) 189  $CVD (* cvode_mem , CVDJacFn djac , * jac_da ) 191 CVodeMem cv_mem ; 192 CVDMem cvd_mem ; 195 cv_mem = ( CVodeMem cvode_mem ; 196 i( cv_mem = NULL ) ; 199 l = CVDIn ; 200 ltup = CVDSup ; 201 lsve = CVDSve ; 202 l = CVDFe ; 205 lmem = cvd_mem = ( CVDMem `mloc (( CVDMemRec )); 206 i( cvd_mem = NULL ) ; 209 i( djac = NULL ) { 210 jac = CVDDQJac ; 212 jac = djac ; 214 J_da = jac_da ; 215 } } 225  $CVDIn ( CVodeMem cv_mem , bo * tupNNu ) 227 CVDMem cvd_mem ; 229 cvd_mem = ( CVDMem lmem ; 232 i( cvd_mem = NULL ) { 233 `rtf ( r , MSG_MEM_FAIL ); 234 ( LINIT_ERR ); 238 * tupNNu = TRUE ; 242 M = `DAocM ( N ); 243 i( M = NULL ) { 244 `rtf ( r , MSG_MEM_FAIL ); 245 ( LINIT_ERR ); 247 vedJ = `DAocM ( N ); 248 i( vedJ = NULL ) { 249 `rtf ( r , MSG_MEM_FAIL ); 250 `DFeM ( M ); 251 ( LINIT_ERR ); 253 pivs = `DAocPiv ( N ); 254 i( pivs = NULL ) { 255 `rtf ( r , MSG_MEM_FAIL ); 256 `DFeM ( M ); 257 `DFeM ( vedJ ); 258 ( LINIT_ERR ); 263 nje = 0; 264 i( it ! NULL ) { 265 it [ DENSE_NJE ] = nje ; 266 it [ DENSE_LRW ] = 2* N *N; 267 it [ DENSE_LIW ] = N ; 269 nlj = 0; 271 ( LINIT_OK ); 272 } } 285  $CVDSup ( CVodeMem cv_mem ,  cv , N_Ve yed , 286 N_Ve d , bo * jcurP , N_Ve vmp1 , 287 N_Ve vmp2 , N_Ve vmp3 ) 289 bo jbad , jok ; 290 dgamma ; 291 g r ; 292 CVDMem cvd_mem ; 294 cvd_mem = ( CVDMem lmem ; 298 dgamma = `ABS (( gamma / gamm - ONE ); 299 jbad = ( n =0|| (n > nlj + CVD_MSBJ ) || 300 (( cv = FAIL_BAD_J && ( dgamma < CVD_DGMAX )) || 301 ( cv = FAIL_OTHER ); 302 jok = ! jbad ; 304 i( jok ) { 306 * jcurP = FALSE ; 307 `DCy ( vedJ , M ); 310 nje ++; 311 i( it ! NULL it[ DENSE_NJE ] = nje ; 312 nlj = n ; 313 * jcurP = TRUE ; 314 `DZo ( M ); 315 `jac ( N , M , f , f_da , , yed , d , ewt , h , 316 uround , J_da , & n , vmp1 , vmp2 , vmp3 ); 317 `DCy ( M , vedJ ); 321 `DS (- gamma , M ); 322 `DAddI ( M ); 325 r = `DFa ( M , pivs ); 328 i( r > 0) (1); 330 } } 339  $CVDSve ( CVodeMem cv_mem , N_Ve b , N_Ve ycur , 340 N_Ve fcur ) 342 CVDMem cvd_mem ; 344 cvd_mem = ( CVDMem lmem ; 346 `DBacksve ( M , pivs , b ); 349 i(( lmm = BDF && ( gamt ! ONE )) { 350 `N_VS ( TWO /( ONE + gamt ), b , b); 354 } } 362  $CVDFe ( CVodeMem cv_mem ) 364 CVDMem cvd_mem ; 366 cvd_mem = ( CVDMem lmem ; 368 `DFeM ( M ); 369 `DFeM ( vedJ ); 370 `DFePiv ( pivs ); 371 ` ( lmem ); 372 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/cvdiag.c 13  ~ 14  ~ 15  ~"cvdg.h " 16  ~"cvode.h " 17  ~"typs.h " 18  ~"ve.h " 23  #CVDIAG_INIT "CVDgIn-- " ) 25  #MSG_MEM_FAIL CVDIAG_INIT "A memyeque faed.\n\n" ) 30  #FRACT `RCONST (0.1) ) 31  #ONE `RCONST (1.0) ) 46 mdi_gammasv ; 49 N_Ve mdi_M ; 51 N_Ve mdi_b ; 53 N_Ve mdi_bcomp ; 55 } tCVDgMemRec , * tCVDgMem ; 60  CVDgIn ( CVodeMem cv_mem , bo * tupNNu ); 62  CVDgSup ( CVodeMem cv_mem ,  cv , N_Ve yed , 63 N_Ve d , bo * jcurP , N_Ve vmp1 , 64 N_Ve vmp2 , N_Ve vmp3 ); 66  CVDgSve ( CVodeMem cv_mem , N_Ve b , N_Ve ycur , 67 N_Ve fcur ); 69  CVDgFe ( CVodeMem cv_mem ); 74  #N ( cv_mem -> cv_N ) ) 75  #f ( cv_mem -> cv_f ) ) 76  #f_da ( cv_mem -> cv_f_da ) ) 77  #uround ( cv_mem -> cv_uround ) ) 78  # ( cv_mem -> cv_ ) ) 79  #h ( cv_mem -> cv_h ) ) 80  #1 ( cv_mem -> cv_1 ) ) 81  #gamma ( cv_mem -> cv_gamma ) ) 82  #ewt ( cv_mem -> cv_ewt ) ) 83  #n ( cv_mem -> cv_n ) ) 84  #r ( cv_mem -> cv_r ) ) 85  #it ( cv_mem -> cv_it ) ) 86  #zn ( cv_mem -> cv_zn ) ) 87  #l ( cv_mem -> cv_l ) ) 88  #ltup ( cv_mem -> cv_ltup ) ) 89  #lsve ( cv_mem -> cv_lsve ) ) 90  #l ( cv_mem -> cv_l ) ) 91  #lmem ( cv_mem -> cv_lmem ) ) 92  #machv ( cv_mem -> cv_machv ) ) 94  #gammasv ( cvdg_mem -> di_gammasv ) ) 95  #M ( cvdg_mem -> di_M ) ) 96  #b ( cvdg_mem -> di_b ) ) 97  #bcomp ( cvdg_mem -> di_bcomp ) ) 113  $CVDg (* cvode_mem ) 115 CVodeMem cv_mem ; 116 CVDgMem cvdg_mem ; 119 cv_mem = ( CVodeMem cvode_mem ; 120 i( cv_mem = NULL ) ; 123 l = CVDgIn ; 124 ltup = CVDgSup ; 125 lsve = CVDgSve ; 126 l = CVDgFe ; 129 lmem = cvdg_mem = ( CVDgMem `mloc (( CVDgMemRec )); 130 i( cvdg_mem = NULL ) ; 131 } } 141  $CVDgIn ( CVodeMem cv_mem , bo * tupNNu ) 143 CVDgMem cvdg_mem ; 145 cvdg_mem = ( CVDgMem lmem ; 148 i( cvdg_mem = NULL ) { 149 `rtf ( r , MSG_MEM_FAIL ); 150 ( LINIT_ERR ); 154 * tupNNu = TRUE ; 158 M = `N_VNew ( N , machv ); 159 i( M = NULL ) { 160 `rtf ( r , MSG_MEM_FAIL ); 161 ( LINIT_ERR ); 163 b = `N_VNew ( N , machv ); 164 i( b = NULL ) { 165 `rtf ( r , MSG_MEM_FAIL ); 166 `N_VFe ( M ); 167 ( LINIT_ERR ); 169 bcomp = `N_VNew ( N , machv ); 170 i( bcomp = NULL ) { 171 `rtf ( r , MSG_MEM_FAIL ); 172 `N_VFe ( M ); 173 `N_VFe ( b ); 174 ( LINIT_ERR ); 178 i( it ! NULL ) { 179 it [ DIAG_LRW ] = N *3; 180 it [ DIAG_LIW ] = 0; 183 ( LINIT_OK ); 184 } } 194  $CVDgSup ( CVodeMem cv_mem ,  cv , N_Ve yed , 195 N_Ve d , bo * jcurP , N_Ve vmp1 , 196 N_Ve vmp2 , N_Ve vmp3 ) 198 r ; 199 N_Ve emp , y ; 200 bo vOK ; 201 CVDgMem cvdg_mem ; 203 cvdg_mem = ( CVDgMem lmem ; 206 emp = vmp1 ; 207 y = vmp2 ; 210 r = FRACT * 1 ; 211 `N_VLrSum ( h , d , - ONE , zn [1], emp ); 212 `N_VLrSum ( r , emp , ONE , yed , y ); 215 `f ( N , , y , M , f_da ); 216 n ++; 219 `N_VLrSum ( ONE , M , -ONE, d , M); 220 `N_VLrSum ( FRACT , emp , - h , M , M); 221 `N_VProd ( emp , ewt , y ); 223 `N_VCom ( uround , y , b ); 224 `N_VAddCڡ ( b , - ONE , bcomp ); 225 `N_VProd ( emp , b , y ); 226 `N_VLrSum ( FRACT , y , - ONE , bcomp , y); 227 `N_VDiv ( M , y , M); 228 `N_VProd ( M , b , M); 229 `N_VLrSum ( ONE , M , -ONE, bcomp , M); 232 vOK = `N_VInvTe ( M , M); 233 i(! vOK ) (1); 236 * jcurP = TRUE ; 237 gammasv = gamma ; 239 } } 248  $CVDgSve ( CVodeMem cv_mem , N_Ve b , N_Ve ycur , 249 N_Ve fcur ) 251 bo vOK ; 252 r ; 253 CVDgMem cvdg_mem ; 255 cvdg_mem = ( CVDgMem lmem ; 259 i( gammasv ! gamma ) { 260 r = gamma / gammasv ; 261 `N_VInv ( M , M); 262 `N_VAddCڡ ( M , - ONE , M); 263 `N_VS ( r , M , M); 264 `N_VAddCڡ ( M , ONE , M); 265 vOK = `N_VInvTe ( M , M); 266 i(! vOK )  (1); 268 gammasv = gamma ; 272 `N_VProd ( b , M , b); 274 } } 282  $CVDgFe ( CVodeMem cv_mem ) 284 CVDgMem cvdg_mem ; 286 cvdg_mem = ( CVDgMem lmem ; 288 `N_VFe ( M ); 289 `N_VFe ( b ); 290 `N_VFe ( bcomp ); 291 ` ( lmem ); 292 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/cvode.c 17  ~ 18  ~ 19  ~"cvode.h " 20  ~"typs.h " 21  ~"ve.h " 22  ~"mh.h " 35  #lo ;;) ) 47  #HALF `RCONST (0.5 ) 48  #ZERO `RCONST (0.0 ) 49  #ONE `RCONST (1.0 ) 50  #TWO `RCONST (2.0 ) 51  #TWELVE `RCONST (12.0 ) 57  #HMIN_DEFAULT ZERO ) 58  #HMAX_INV_DEFAULT ZERO ) 59  #MXHNIL_DEFAULT 10 ) 60  #MXSTEP_DEFAULT 500 ) 74  #FUZZ_FACTOR `RCONST (100.0) ) 78  #HLB_FACTOR `RCONST (100.0) ) 79  #HUB_FACTOR `RCONST (0.1) ) 80  #H_BIAS HALF ) 81  #MAX_ITERS 4 ) 85  #CORTES `RCONST (0.1) ) 89  #SUCCESS_STEP 0 ) 90  #REP_ERR_FAIL -1 ) 91  #REP_CONV_FAIL -2 ) 92  #SETUP_FAILED -3 ) 93  #SOLVE_FAILED -4 ) 97  #PREDICT_AGAIN -5 ) 98  #DO_ERROR_TEST 1 ) 102  #THRESH `RCONST (1.5) ) 103  #ETAMX1 `RCONST (10000.0) ) 104  #ETAMX2 `RCONST (10.0) ) 105  #ETAMX3 `RCONST (10.0) ) 106  #ETAMXF `RCONST (0.2) ) 107  #ETAMIN `RCONST (0.1) ) 108  #ETACF `RCONST (0.25) ) 109  #ADDON `RCONST (0.000001) ) 110  #BIAS1 `RCONST (6.0) ) 111  #BIAS2 `RCONST (6.0) ) 112  #BIAS3 `RCONST (10.0) ) 113  #ONEPSM `RCONST (1.000001) ) 115  #SMALL_NST 10 ) 116  #MXNCF 10 ) 118  #MXNEF 7 ) 120  #MXNEF1 3 ) 122  #SMALL_NEF 2 ) 125  #LONG_WAIT 10 ) 132  #SOLVED 0 ) 133  #CONV_FAIL -1 ) 134  #SETUP_FAIL_UNREC -2 ) 135  #SOLVE_FAIL_UNREC -3 ) 139  #FIRST_CALL 0 ) 140  #PREV_CONV_FAIL -1 ) 141  #PREV_ERR_FAIL -2 ) 145  #FUNC_MAXCOR 3 ) 147  #NEWT_MAXCOR 3 ) 150  #CRDOWN `RCONST (0.3 ) 153  #DGMAX `RCONST (0.3 ) 156  #RDIV TWO ) 157  #MSBP 20 ) 159  #TRY_AGAIN 99 ) 174  #CVM "CVodeMloc-- " ) 176  #MSG_Y0_NULL CVM "y0=NULL ieg.\n\n" ) 178  #MSG_BAD_N CVM "N=%ld < 1 ieg.\n\n" ) 180  #MSG_BAD_LMM_1 CVM "lmm=%d ieg.\n" ) 181  #MSG_BAD_LMM_2 "Thg vueADAMS=%dnd BDF=%d.\n\n" ) 182  #MSG_BAD_LMM MSG_BAD_LMM_1 MSG_BAD_LMM_2 ) 184  #MSG_BAD_ITER_1 CVM "=%d ieg.\n" ) 185  #MSG_BAD_ITER_2 "Thg vueFUNCTIONAL=%d " ) 186  #MSG_BAD_ITER_3 "d NEWTON=%d.\n\n" ) 187  #MSG_BAD_ITER MSG_BAD_ITER_1 MSG_BAD_ITER_2 MSG_BAD_ITER_3 ) 189  #MSG_BAD_ITOL_1 CVM "=%d ieg.\n" ) 190  #MSG_BAD_ITOL_2 "Thg vueSS=%dnd SV=%d.\n\n" ) 191  #MSG_BAD_ITOL MSG_BAD_ITOL_1 MSG_BAD_ITOL_2 ) 193  #MSG_F_NULL CVM "f=NULL ieg.\n\n" ) 195  #MSG_RELTOL_NULL CVM "=NULL ieg.\n\n" ) 197  #MSG_BAD_RELTOL CVM "*=%g < 0 ieg.\n\n" ) 199  #MSG_ABSTOL_NULL CVM "ab=NULL ieg.\n\n" ) 201  #MSG_BAD_ABSTOL CVM "Somab compڒ< 0.0 ieg.\n\n" ) 203  #MSG_BAD_OPTIN_1 CVM "tIn=%d ieg.\n" ) 204  #MSG_BAD_OPTIN_2 "Thg vueFALSE=%dnd TRUE=%d.\n\n" ) 205  #MSG_BAD_OPTIN MSG_BAD_OPTIN_1 MSG_BAD_OPTIN_2 ) 207  #MSG_BAD_OPT CVM "tIn=TRUE, buitt=NULL.\n\n" ) 209  #MSG_BAD_HMIN_HMAX_1 CVM "Incsi sizlims:\n" ) 210  #MSG_BAD_HMIN_HMAX_2 "rt[HMIN]=%g >t[HMAX]=%g.\n\n" ) 211  #MSG_BAD_HMIN_HMAX MSG_BAD_HMIN_HMAX_1 MSG_BAD_HMIN_HMAX_2 ) 213  #MSG_MEM_FAIL CVM "A memyeque faed.\n\n" ) 215  #MSG_BAD_EWT CVM "Somewcompڒ0.0 ieg.\n\n" ) 220  #CVODE "CVode-- " ) 222  #NO_MEM "cvode_mem=NULL ieg.\n\n" ) 224  #MSG_CVODE_NO_MEM CVODE NO_MEM ) 226  #MSG_LINIT_NULL CVODE "Thlsv'outiNULL.\n\n" ) 228  #MSG_LSETUP_NULL CVODE "Thlsv'turoutiNULL.\n\n" ) 230  #MSG_LSOLVE_NULL CVODE "Thlsv'svroutiNULL.\n\n" ) 232  #MSG_LFREE_NULL CVODE "Thlsv'䓄outiNULL.\n\n" ) 234  #MSG_LINIT_FAIL CVODE "Thlsv'outed.\n\n" ) 236  #MSG_YOUT_NULL CVODE "yout=NULL ieg.\n\n" ) 238  #MSG_T_NULL CVODE "t=NULL ieg.\n\n" ) 240  #MSG_BAD_ITASK_1 CVODE "ask=%d ieg.\nThg vuee" ) 241  #MSG_BAD_ITASK_2 " NORMAL=%dnd ONE_STEP=%d.\n\n" ) 242  #MSG_BAD_ITASK MSG_BAD_ITASK_1 MSG_BAD_ITASK_2 ) 244  #MSG_BAD_H0 CVODE "h0=%gndout-t0=%g incsit.\n\n" ) 246  #MSG_BAD_TOUT_1 CVODE "Troub ipީgtou%g.\n" ) 247  #MSG_BAD_TOUT_2 "toutoback idei ogti.\n\n" ) 248  #MSG_BAD_TOUT MSG_BAD_TOUT_1 MSG_BAD_TOUT_2 ) 250  #MSG_MAX_STEPS_1 CVODE "At=%g, mx=%d spk o" ) 251  #MSG_MAX_STEPS_2 "thi befe\ėchgout=%g.\n\n" ) 252  #MSG_MAX_STEPS MSG_MAX_STEPS_1 MSG_MAX_STEPS_2 ) 254  #MSG_EWT_NOW_BAD_1 CVODE "At=%g, " ) 255  #MSG_EWT_NOW_BAD_2 "somewcompڒhabecom<0.0.\n\n" ) 256  #MSG_EWT_NOW_BAD MSG_EWT_NOW_BAD_1 MSG_EWT_NOW_BAD_2 ) 258  #MSG_TOO_MUCH_ACC CVODE "At=%g,omuchccucyequeed.\n\n" ) 260  #MSG_HNIL_1 CVODE "Wng.. it=%gnd ssizh=%g\n" ) 261  #MSG_HNIL_2 "suchh + h =ځhx.\n" ) 262  #MSG_HNIL_3 "Thsv wctuyway.\n\n" ) 263  #MSG_HNIL MSG_HNIL_1 MSG_HNIL_2 MSG_HNIL_3 ) 265  #MSG_HNIL_DONE_1 CVODE "Thabovwng habissued %dime" ) 266  #MSG_HNIL_DONE_2 "d wn be\nissuedga f܁hiobm.\n\n" ) 267  #MSG_HNIL_DONE MSG_HNIL_DONE_1 MSG_HNIL_DONE_2 ) 269  #MSG_ERR_FAILS_1 CVODE "At=%gnd ssizh=%g,hr܁e\n" ) 270  #MSG_ERR_FAILS_2 "eddly owh |h| = hm.\n\n" ) 271  #MSG_ERR_FAILS MSG_ERR_FAILS_1 MSG_ERR_FAILS_2 ) 273  #MSG_CONV_FAILS_1 CVODE "At=%gnd ssizh=%g,hcܻ\n" ) 274  #MSG_CONV_FAILS_2 "cvg faeddly o" ) 275  #MSG_CONV_FAILS_3 "wh |h| = hm.\n\n" ) 276  #MSG_CONV_FAILS MSG_CONV_FAILS_1 MSG_CONV_FAILS_2 MSG_CONV_FAILS_3 ) 278  #MSG_SETUP_FAILED_1 CVODE "At=%g,hturouted i " ) 279  #MSG_SETUP_FAILED_2 "uecovab mr.\n\n" ) 280  #MSG_SETUP_FAILED MSG_SETUP_FAILED_1 MSG_SETUP_FAILED_2 ) 282  #MSG_SOLVE_FAILED_1 CVODE "At=%g,hsvrouted i " ) 283  #MSG_SOLVE_FAILED_2 "uecovab mr.\n\n" ) 284  #MSG_SOLVE_FAILED MSG_SOLVE_FAILED_1 MSG_SOLVE_FAILED_2 ) 286  #MSG_TOO_CLOSE_1 CVODE "tout=%goot0=%gءt" ) 287  #MSG_TOO_CLOSE_2 " iegti.\n\n" ) 288  #MSG_TOO_CLOSE MSG_TOO_CLOSE_1 MSG_TOO_CLOSE_2 ) 293  #DKY "CVodeDky-- " ) 295  #MSG_DKY_NO_MEM DKY NO_MEM ) 297  #MSG_BAD_K DKY "k=%d ieg.\n\n" ) 299  #MSG_BAD_T_1 DKY "t=%g ieg.\n" ) 300  #MSG_BAD_T_2 "n irvcur-hu=%gtcur=%g.\n\n" ) 301  #MSG_BAD_T MSG_BAD_T_1 MSG_BAD_T_2 ) 303  #MSG_BAD_DKY DKY "dky=NULL ieg.\n\n" ) 319  bo CVAocVes ( CVodeMem cv_mem , g q ,  maxd , 320 * machEnv ); 321  CVFeVes ( CVodeMem cv_mem ,  maxd ); 323  bo CVEwtS ( CVodeMem cv_mem , * , * ,  t_ty , 324 N_Ve ycur , N_Ve ewtvec , g q ); 325  bo CVEwtSSS ( CVodeMem cv_mem , * ,* , 326 N_Ve ycur , N_Ve ewtvec , g q ); 327  bo CVEwtSSV ( CVodeMem cv_mem , * , N_Ve , 328 N_Ve ycur , N_Ve ewtvec , g q ); 330  bo CVH ( CVodeMem cv_mem , tout ); 331  CVUBoundH0 ( CVodeMem cv_mem , tdi ); 332  CVYddNm ( CVodeMem cv_mem , hg ); 334  CVSp ( CVodeMem cv_mem ); 336  CVAdjuPams ( CVodeMem cv_mem ); 337  CVAdjuOrd ( CVodeMem cv_mem ,  dq ); 338  CVAdjuAdams ( CVodeMem cv_mem ,  dq ); 339  CVAdjuBDF ( CVodeMem cv_mem ,  dq ); 340  CVInBDF ( CVodeMem cv_mem ); 341  CVDeBDF ( CVodeMem cv_mem ); 343  CVRes ( CVodeMem cv_mem ); 345  CVPdi ( CVodeMem cv_mem ); 347  CVS ( CVodeMem cv_mem ); 348  CVSAdams ( CVodeMem cv_mem ); 349  CVAdamsS ( CVodeMem cv_mem , m []); 350  CVAdamsFish ( CVodeMem cv_mem , m [], M [], hsum ); 351  CVASum ( nd , a [],  k ); 352  CVSBDF ( CVodeMem cv_mem ); 353  CVSTqBDF ( CVodeMem cv_mem , hsum , pha0 , 354 pha0_h , xi_v , xi_v ); 356  CVs ( CVodeMem cv_mem ,  nag ); 357  CVsFuniڮ ( CVodeMem cv_mem ); 358  CVsNewt ( CVodeMem cv_mem ,  nag ); 359  CVNewtIti ( CVodeMem cv_mem ); 361  CVHdNFg ( CVodeMem cv_mem , * nagP , ved_t , 362 * ncfP ); 364  CVRee ( CVodeMem cv_mem , ved_t ); 366  bo CVDoETe ( CVodeMem cv_mem , * nagP , * kagP , 367 ved_t , * fP ,* dsmP ); 369  CVComeSp ( CVodeMem cv_mem ); 371  CVPNextSp ( CVodeMem cv_mem , dsm ); 372  CVSE ( CVodeMem cv_mem ); 373  CVCompuEqm1 ( CVodeMem cv_mem ); 374  CVCompuEqp1 ( CVodeMem cv_mem ); 375  CVChooE ( CVodeMem cv_mem , aqm1 , aq , aqp1 ); 377  CVHdFau ( CVodeMem cv_mem , kag ); 390  #uround ( cv_mem -> cv_uround ) ) 391  #zn ( cv_mem -> cv_zn ) ) 392  #ewt ( cv_mem -> cv_ewt ) ) 393  #y ( cv_mem -> cv_y ) ) 394  #ac ( cv_mem -> cv_ac ) ) 395  #mpv ( cv_mem -> cv_mpv ) ) 396  #emp ( cv_mem -> cv_emp ) ) 397  #q ( cv_mem -> cv_q ) ) 398  #qime ( cv_mem -> cv_qime ) ) 399  #qwa ( cv_mem -> cv_qwa ) ) 400  #L ( cv_mem -> cv_L ) ) 401  #h ( cv_mem -> cv_h ) ) 402  #hime ( cv_mem -> cv_hime ) ) 403  #a ( cv_mem -> cv_a ) ) 404  #hs ( cv_mem -> cv_hs ) ) 405  # ( cv_mem -> cv_ ) ) 406  #u ( cv_mem -> cv_u ) ) 407  #tq ( cv_mem -> cv_tq ) ) 408  #l ( cv_mem -> cv_l ) ) 409  #1 ( cv_mem -> cv_1 ) ) 410  #gamma ( cv_mem -> cv_gamma ) ) 411  #gamm ( cv_mem -> cv_gamm ) ) 412  #gamt ( cv_mem -> cv_gamt ) ) 413  #e ( cv_mem -> cv_e ) ) 414  #arm ( cv_mem -> cv_arm ) ) 415  #mwt ( cv_mem -> cv_mwt ) ) 416  #qmax ( cv_mem -> cv_qmax ) ) 417  #mx ( cv_mem -> cv_mx ) ) 418  #maxc ( cv_mem -> cv_maxc ) ) 419  #mxhn ( cv_mem -> cv_mxhn ) ) 420  #hm ( cv_mem -> cv_hm ) ) 421  #hmax_v ( cv_mem -> cv_hmax_v ) ) 422  #amax ( cv_mem -> cv_amax ) ) 423  #n ( cv_mem -> cv_n ) ) 424  #n ( cv_mem -> cv_n ) ) 425  #nc ( cv_mem -> cv_nc ) ) 426  #tf ( cv_mem -> cv_tf ) ) 427  #i ( cv_mem -> cv_i ) ) 428  #ntups ( cv_mem -> cv_ntups ) ) 429  #nhn ( cv_mem -> cv_nhn ) ) 430  #w ( cv_mem -> cv_w ) ) 431  #liw ( cv_mem -> cv_liw ) ) 432  #l ( cv_mem -> cv_l ) ) 433  #ltup ( cv_mem -> cv_ltup ) ) 434  #lsve ( cv_mem -> cv_lsve ) ) 435  #l ( cv_mem -> cv_l ) ) 436  #lmem ( cv_mem -> cv_lmem ) ) 437  #lOK ( cv_mem -> cv_lOK ) ) 438  #qu ( cv_mem -> cv_qu ) ) 439  #n ( cv_mem -> cv_n ) ) 440  #hu ( cv_mem -> cv_hu ) ) 441  #ved_tq5 ( cv_mem -> cv_ved_tq5 ) ) 442  #jcur ( cv_mem -> cv_jcur ) ) 443  #tsf ( cv_mem -> cv_tsf ) ) 444  #tupNNu ( cv_mem -> cv_tupNNu ) ) 445  #machv ( cv_mem -> cv_machv ) ) 472 * $CVodeMloc ( g N , RhsFn f , t0 , N_Ve y0 ,  lmm ,  , 473  , * , * ab , * f_da , 474 FILE * r , bo tIn ,  it [], rt [], 475 * machEnv ) 477 bo locOK , itExis , rtExis , g_ab , ewttOK ; 478  maxd ; 479 CVodeMem cv_mem ; 480 FILE * ; 484 = ( r = NULL ? dout :rrfp; 486 i( y0 == NULL ) { 487 `rtf ( , MSG_Y0_NULL ); 488 ( NULL ); 491 i( N <= 0) { 492 `rtf ( , MSG_BAD_N , N ); 493 ( NULL ); 496 i(( lmm ! ADAMS && (lmm ! BDF )) { 497 `rtf ( , MSG_BAD_LMM , lmm , ADAMS , BDF ); 498 ( NULL ); 501 i(( ! FUNCTIONAL && ( ! NEWTON )) { 502 `rtf ( , MSG_BAD_ITER , , FUNCTIONAL , NEWTON ); 503 ( NULL ); 506 i(( ! SS && ( ! SV )) { 507 `rtf ( , MSG_BAD_ITOL , , SS , SV ); 508 ( NULL ); 511 i( f = NULL ) { 512 `rtf ( , MSG_F_NULL ); 513 ( NULL ); 516 i( = NULL ) { 517 `rtf ( , MSG_RELTOL_NULL ); 518 ( NULL ); 521 i(* < ZERO ) { 522 `rtf ( , MSG_BAD_RELTOL , * ); 523 ( NULL ); 526 i( ab = NULL ) { 527 `rtf ( , MSG_ABSTOL_NULL ); 528 ( NULL ); 531 i( = SS ) { 532 g_ab = (*(( *) ab < ZERO ); 534 g_ab = ( `N_VM (( N_Ve ) ab < ZERO ); 536 i( g_ab ) { 537 `rtf ( , MSG_BAD_ABSTOL ); 538 ( NULL ); 541 i(( tIn ! FALSE && (tI! TRUE )) { 542 `rtf ( , MSG_BAD_OPTIN , tIn , FALSE , TRUE ); 543 ( NULL ); 546 i(( tIn && ( it = NULL && ( rt == NULL)) { 547 `rtf ( , MSG_BAD_OPT ); 548 ( NULL ); 551 itExis = ( it ! NULL ); 552 rtExis = ( rt ! NULL ); 554 i( tIn && rtExis ) { 555 i(( rt [ HMAX ] > ZERO && (rt[ HMIN ] >opt[HMAX])) { 556 `rtf ( , MSG_BAD_HMIN_HMAX , rt [ HMIN ],t[ HMAX ]); 557 ( NULL ); 563 maxd = ( lmm = ADAMS ? ADAMS_Q_MAX : BDF_Q_MAX ; 565 i( tIn && itExis ) { 566 i( it [ MAXORD ] > 0 maxd = `MIN (maxord, iopt[MAXORD]); 569 cv_mem = ( CVodeMem `mloc (( CVodeMemRec )); 570 i( cv_mem = NULL ) { 571 `rtf ( , MSG_MEM_FAIL ); 572 ( NULL ); 577 locOK = `CVAocVes ( cv_mem , N , maxd , machEnv ); 578 i(! locOK ) { 579 `rtf ( , MSG_MEM_FAIL ); 580 ` ( cv_mem ); 581 ( NULL ); 586 ewttOK = `CVEwtS ( cv_mem , , ab , , y0 , ewt , N ); 587 i(! ewttOK ) { 588 `rtf ( , MSG_BAD_EWT ); 589 `CVFeVes ( cv_mem , maxd ); 590 ` ( cv_mem ); 591 ( NULL ); 598 cv_mem -> cv_N = N ; 599 cv_mem -> cv_f = f ; 600 cv_mem -> cv_f_da = f_da ; 601 cv_mem -> cv_lmm = lmm ; 602 cv_mem -> cv_ = ; 603 cv_mem -> cv_ = ; 604 cv_mem -> cv_ = ; 605 cv_mem -> cv_ab = ab ; 606 cv_mem -> cv_it = it ; 607 cv_mem -> cv_rt = rt ; 608 cv_mem -> cv_r = ; 609 = t0 ; 610 machv = machEnv ; 614 q = 1; 615 L = 2; 616 qwa = L ; 617 qmax = maxd ; 618 amax = ETAMX1 ; 622 uround = `UnRoundoff (); 626 l = NULL ; 627 ltup = NULL ; 628 lsve = NULL ; 629 l = NULL ; 630 lmem = NULL ; 632 lOK = FALSE ; 636 `N_VS ( ONE , y0 , zn [0]); 637 `f ( N , t0 , y0 , zn [1], f_da ); 638 n = 1; 642 hm = HMIN_DEFAULT ; 643 hmax_v = HMAX_INV_DEFAULT ; 644 i( tIn && rtExis ) { 645 i( rt [ HMIN ] > ZERO hm =opt[HMIN]; 646 i( rt [ HMAX ] > ZERO hmax_v = ONE /ropt[HMAX]; 649 mxhn = MXHNIL_DEFAULT ; 650 mx = MXSTEP_DEFAULT ; 651 i( tIn && itExis ) { 652 i( it [ MXHNIL ] > 0 mxhn = iopt[MXHNIL]; 653 i( it [ MXSTEP ] > 0 mx = iopt[MXSTEP]; 656 i((! tIn && rtExis rt [ H0 ] = ZERO ; 660 maxc = ( == NEWTON ? NEWT_MAXCOR : FUNC_MAXCOR ; 664 n = nc = tf = i = ntups = nhn = n = 0; 668 qu = 0; 669 hu = ZERO ; 670 tsf = ONE ; 674 i( itExis ) { 675 it [ NST ] = it[ NFE ] = it[ NSETUPS ] = it[ NNI ] = 0; 676 it [ NCFN ] = it[ NETF ] = 0; 677 it [ QU ] = qu ; 678 it [ QCUR ] = 0; 679 it [ LENRW ] = w ; 680 it [ LENIW ] = liw ; 683 i( rtExis ) { 684 rt [ HU ] = hu ; 685 rt [ HCUR ] = ZERO ; 686 rt [ TCUR ] = t0 ; 687 rt [ TOLSF ] = tsf ; 692 ((*) cv_mem ); 693 } } 700  #N ( cv_mem -> cv_N ) ) 701  #f ( cv_mem -> cv_f ) ) 702  #f_da ( cv_mem -> cv_f_da ) ) 703  #lmm ( cv_mem -> cv_lmm ) ) 704  # ( cv_mem -> cv_ ) ) 705  # ( cv_mem -> cv_ ) ) 706  # ( cv_mem -> cv_ ) ) 707  #ab ( cv_mem -> cv_ab ) ) 708  #it ( cv_mem -> cv_it ) ) 709  #rt ( cv_mem -> cv_rt ) ) 710  #r ( cv_mem -> cv_r ) ) 734  $CVode (* cvode_mem , tout , N_Ve yout ,* t ,  ask ) 736  nloc , kag , ie , xt_q , r ; 737 rh , xt_h ; 738 bo hOK , ewttOK ; 739 CVodeMem cv_mem ; 743 cv_mem = ( CVodeMem cvode_mem ; 744 i( cvode_mem = NULL ) { 745 `rtf ( dout , MSG_CVODE_NO_MEM ); 746 ( CVODE_NO_MEM ); 749 i(( y = yout = NULL ) { 750 `rtf ( r , MSG_YOUT_NULL ); 751 ( ILL_INPUT ); 754 i( t = NULL ) { 755 `rtf ( r , MSG_T_NULL ); 756 ( ILL_INPUT ); 758 * t = ; 760 i(( ask ! NORMAL && (ask ! ONE_STEP )) { 761 `rtf ( r , MSG_BAD_ITASK , ask , NORMAL , ONE_STEP ); 762 ( ILL_INPUT ); 767 i( n == 0) { 768 i( = NEWTON ) { 769 i( l = NULL ) { 770 `rtf ( r , MSG_LINIT_NULL ); 771 ( ILL_INPUT ); 773 i( ltup = NULL ) { 774 `rtf ( r , MSG_LSETUP_NULL ); 775 ( ILL_INPUT ); 777 i( lsve = NULL ) { 778 `rtf ( r , MSG_LSOLVE_NULL ); 779 ( ILL_INPUT ); 781 i( l = NULL ) { 782 `rtf ( r , MSG_LFREE_NULL ); 783 ( ILL_INPUT ); 785 lOK = ( `l ( cv_mem , &( tupNNu )= LINIT_OK ); 786 i(! lOK ) { 787 `rtf ( r , MSG_LINIT_FAIL ); 788 ( ILL_INPUT ); 794 h = ZERO ; 795 i( rt ! NULL h =t[ H0 ]; 796 i( h ! ZERO && (( tout - )*h < ZERO) ) { 797 `rtf ( r , MSG_BAD_H0 , h , tout - ); 798 ( ILL_INPUT ); 800 i( h = ZERO ) { 801 hOK = `CVH ( cv_mem , tout ); 802 i(! hOK ) { 803 `rtf ( r , MSG_TOO_CLOSE , tout , ); 804 ( ILL_INPUT ); 807 rh = `ABS ( h )* hmax_v ; 808 i( rh > ONE h /=h; 809 i( `ABS ( h < hm ) h *= hmin/ABS(h); 810 hs = h ; 811 `N_VS ( h , zn [1], zn[1]); 816 i( ask = NORMAL && ( n > 0&& (( - tout )* h > ZERO ) ) { 817 * t = tout ; 818 r = `CVodeDky ( cv_mem , tout , 0, yout ); 819 i( r ! OKAY ) { 820 `rtf ( r , MSG_BAD_TOUT , tout ); 821 ( ILL_INPUT ); 823 ( SUCCESS ); 828 nloc = 0; 829 lo { 831 xt_h = h ; 832 xt_q = q ; 836 i( n > 0) { 837 ewttOK = `CVEwtS ( cv_mem , , ab , , zn [0], ewt , N ); 838 i(! ewttOK ) { 839 `rtf ( r , MSG_EWT_NOW_BAD , ); 840 ie = ILL_INPUT ; 841 * t = ; 842 `N_VS ( ONE , zn [0], yout ); 849 i( nloc > mx ) { 850 `rtf ( r , MSG_MAX_STEPS , , mx , tout ); 851 ie = TOO_MUCH_WORK ; 852 * t = ; 853 `N_VS ( ONE , zn [0], yout ); 859 i(( tsf = uround * `N_VWrmsNm ( zn [0], ewt )> ONE ) { 860 `rtf ( r , MSG_TOO_MUCH_ACC , ); 861 ie = TOO_MUCH_ACC ; 862 * t = ; 863 `N_VS ( ONE , zn [0], yout ); 864 tsf * TWO ; 870 i( + h ==n) { 871 nhn ++; 872 i( nhn < mxhn `rtf ( r , MSG_HNIL , , h ); 873 i( nhn = mxhn `rtf ( r , MSG_HNIL_DONE , mxhnil); 878 kag = `CVSp ( cv_mem ); 882 i( kag ! SUCCESS_STEP ) { 883 ie = `CVHdFau ( cv_mem , kag ); 884 * t = ; 885 `N_VS ( ONE , zn [0], yout ); 889 nloc ++; 893 i( ask = ONE_STEP ) { 894 ie = SUCCESS ; 895 * t = ; 896 `N_VS ( ONE , zn [0], yout ); 897 xt_q = qime ; 898 xt_h = hime ; 904 i(( - tout )* h > ZERO ) { 905 ie = SUCCESS ; 906 * t = tout ; 907 ( `CVodeDky ( cv_mem , tout , 0, yout ); 908 xt_q = qime ; 909 xt_h = hime ; 916 i( it ! NULL ) { 917 it [ NST ] = n ; 918 it [ NFE ] = n ; 919 it [ NSETUPS ] = ntups ; 920 it [ NNI ] = i ; 921 it [ NCFN ] = nc ; 922 it [ NETF ] = tf ; 923 it [ QU ] = q ; 924 it [ QCUR ] = xt_q ; 927 i( rt ! NULL ) { 928 rt [ HU ] = h ; 929 rt [ HCUR ] = xt_h ; 930 rt [ TCUR ] = ; 931 rt [ TOLSF ] = tsf ; 934 ( ie ); 935 } } 953  $CVodeDky (* cvode_mem , t ,  k , N_Ve dky ) 955 s , c , r ; 956 tfuzz , , 1 ; 957  i , j ; 958 CVodeMem cv_mem ; 960 cv_mem = ( CVodeMem cvode_mem ; 964 i( cvode_mem = NULL ) { 965 `rtf ( dout , MSG_DKY_NO_MEM ); 966 ( DKY_NO_MEM ); 969 i( dky = NULL ) { 970 `rtf ( dout , MSG_BAD_DKY ); 971 ( BAD_DKY ); 974 i(( k < 0|| (k > q )) { 975 `rtf ( r , MSG_BAD_K , k ); 976 ( BAD_K ); 979 tfuzz = FUZZ_FACTOR * uround * ( + hu ); 980 = - hu - tfuzz ; 981 1 = + tfuzz ; 982 i(( t - )*- 1 > ZERO ) { 983 `rtf ( r , MSG_BAD_T , t , - hu ,n); 984 ( BAD_T ); 989 s = ( t - / h ; 990  j = q ; j > k ; j--) { 991 c = ONE ; 992  i = j ; i >j- k +1; i-- c *= i; 993 i( j = q ) { 994 `N_VS ( c , zn [ q ], dky ); 996 `N_VLrSum ( c , zn [ j ], s , dky , dky); 999 i( k =0( OKAY ); 1000 r = `RPowI ( h ,- k ); 1001 `N_VS ( r , dky , dky); 1002 ( OKAY ); 1003 } } 1014  $CVodeFe (* cvode_mem ) 1016 CVodeMem cv_mem ; 1018 cv_mem = ( CVodeMem cvode_mem ; 1020 i( cvode_mem = NULL ) ; 1022 `CVFeVes ( cv_mem , qmax ); 1023 i(( = NEWTON && lOK `l ( cv_mem ); 1024 ` ( cv_mem ); 1025 } } 1051  bo $CVAocVes ( CVodeMem cv_mem , g q ,  maxd , 1052 * machEnv ) 1054  i , j ; 1058 ewt = `N_VNew ( q , machv ); 1059 i( ewt = NULL ( FALSE ); 1060 ac = `N_VNew ( q , machEnv ); 1061 i( ac = NULL ) { 1062 `N_VFe ( ewt ); 1063 ( FALSE ); 1065 mpv = `N_VNew ( q , machEnv ); 1066 i( mpv = NULL ) { 1067 `N_VFe ( ewt ); 1068 `N_VFe ( ac ); 1069 ( FALSE ); 1071 emp = `N_VNew ( q , machEnv ); 1072 i( emp = NULL ) { 1073 `N_VFe ( mpv ); 1074 `N_VFe ( ewt ); 1075 `N_VFe ( ac ); 1076 ( FALSE ); 1081  j =0; j < maxd ; j++) { 1082 zn [ j ] = `N_VNew ( q , machEnv ); 1083 i( zn [ j ] = NULL ) { 1084 `N_VFe ( ewt ); 1085 `N_VFe ( ac ); 1086 `N_VFe ( mpv ); 1087 `N_VFe ( emp ); 1088  i =0; i < j ; i++ `N_VFe ( zn [i]); 1089 ( FALSE ); 1095 w = ( maxd + 5)* q ; 1096 liw = 0; 1098 ( TRUE ); 1099 } } 1107  $CVFeVes ( CVodeMem cv_mem ,  maxd ) 1109  j ; 1111 `N_VFe ( ewt ); 1112 `N_VFe ( ac ); 1113 `N_VFe ( mpv ); 1114 `N_VFe ( emp ); 1115  j =0; j < maxd ; j++ `N_VFe ( zn [j]); 1116 } } 1136  bo $CVEwtS ( CVodeMem cv_mem , * , * ,  t_ty , 1137 N_Ve ycur , N_Ve ewtvec , g q ) 1139  t_ty ) { 1140  SS : ( `CVEwtSSS ( cv_mem , , ( *) , ycur , ewtvec , q )); 1141  SV : ( `CVEwtSSV ( cv_mem , , ( N_Ve ) , ycur , ewtvec , q )); 1143 } } 1155  bo $CVEwtSSS ( CVodeMem cv_mem , * ,* , 1156 N_Ve ycur , N_Ve ewtvec , g q ) 1158 i , i ; 1160 i = * ; 1161 i = * ; 1162 `N_VAbs ( ycur , mpv ); 1163 `N_VS ( i , mpv ,empv); 1164 `N_VAddCڡ ( mpv , i ,empv); 1165 i( `N_VM ( mpv < ZERO ( FALSE ); 1166 `N_VInv ( mpv , ewtvec ); 1167 ( TRUE ); 1168 } } 1180  bo $CVEwtSSV ( CVodeMem cv_mem , * , N_Ve , 1181 N_Ve ycur , N_Ve ewtvec , g q ) 1183 i ; 1185 i = * ; 1186 `N_VAbs ( ycur , mpv ); 1187 `N_VLrSum ( i , mpv , ONE , ,empv); 1188 i( `N_VM ( mpv < ZERO ( FALSE ); 1189 `N_VInv ( mpv , ewtvec ); 1190 ( TRUE ); 1191 } } 1206  bo $CVH ( CVodeMem cv_mem , tout ) 1208  sign , cou ; 1209 tdiff , tdi , ound , hlb , hub ; 1210 hg , hgs , hw , ht , h0 , yddm ; 1214 i(( tdiff = tout - = ZERO ( FALSE ); 1216 sign = ( tdiff > ZERO ) ? 1 : -1; 1217 tdi = `ABS ( tdiff ); 1218 ound = uround * `MAX ( `ABS ( ), ABS( tout )); 1219 i( tdi < TWO * ound ( FALSE ); 1224 hlb = HLB_FACTOR * ound ; 1225 hub = `CVUBoundH0 ( cv_mem , tdi ); 1226 hg = `RSq ( hlb * hub ); 1227 i( hub < hlb ) { 1228 i( sign =-1 hg = -hg; 1229 h = hg ; 1230 ( TRUE ); 1238 cou = 0; 1239 lo { 1240 hgs = hg * sign ; 1241 yddm = `CVYddNm ( cv_mem , hgs ); 1242 hw = ( yddm * hub *hub > TWO ? `RSq (TWO/yddm: RSq( hg *hub); 1243 cou ++; 1244 i( cou > MAX_ITERS ) ; 1245 ht = hw / hg ; 1246 i(( ht > HALF && (h< TWO )) ; 1247 i(( cou >2&& ( ht > TWO )) { 1248 hw = hg ; 1251 hg = hw ; 1256 h0 = H_BIAS * hw ; 1257 i( h0 < hlb ) h0 = hlb; 1258 i( h0 > hub ) h0 = hub; 1259 i( sign =-1 h0 = -h0; 1260 h = h0 ; 1261 ( TRUE ); 1262 } } 1271  $CVUBoundH0 ( CVodeMem cv_mem , tdi ) 1273 i , hub_v , hub ; 1274 bo veAt ; 1275 N_Ve mp1 , mp2 ; 1277 veAt = ( = SV ); 1278 i(! veAt i = *(( * ab ); 1279 mp1 = mpv ; 1280 mp2 = ac ; 1281 `N_VAbs ( zn [0], mp1 ); 1282 `N_VAbs ( zn [1], mp2 ); 1283 i( veAt ) { 1284 `N_VLrSum ( HUB_FACTOR , mp1 , ONE , ( N_Ve ) ab ,emp1); 1286 `N_VS ( HUB_FACTOR , mp1 ,emp1); 1287 `N_VAddCڡ ( mp1 , i ,emp1); 1289 `N_VDiv ( mp2 , mp1 ,emp1); 1290 hub_v = `N_VMaxNm ( mp1 ); 1291 hub = HUB_FACTOR * tdi ; 1292 i( hub * hub_v > ONE ) hub = ONE/hub_inv; 1293 ( hub ); 1294 } } 1303  $CVYddNm ( CVodeMem cv_mem , hg ) 1305 yddm ; 1307 `N_VLrSum ( hg , zn [1], ONE , zn[0], y ); 1308 `f ( N , + hg , y , mpv , f_da ); 1309 n ++; 1310 `N_VLrSum ( ONE , mpv , -ONE, zn [1],empv); 1311 `N_VS ( ONE / hg , mpv ,empv); 1313 yddm = `N_VWrmsNm ( mpv , ewt ); 1314 ( yddm ); 1315 } } 1336  $CVSp ( CVodeMem cv_mem ) 1338 ved_t , dsm ; 1339  ncf , f , nag , kag ; 1340 bo sd ; 1342 ved_t = ; 1343 ncf = f = 0; 1344 nag = FIRST_CALL ; 1346 i(( n > 0&& ( hime ! h ) `CVAdjuPams ( cv_mem ); 1349 lo { 1350 `CVPdi ( cv_mem ); 1351 `CVS ( cv_mem ); 1353 nag = `CVs ( cv_mem ,flag); 1354 kag = `CVHdNFg ( cv_mem , & nag , ved_t , & ncf ); 1355 i( kag = PREDICT_AGAIN ) ; 1356 i( kag ! DO_ERROR_TEST ) (kflag); 1359 sd = `CVDoETe ( cv_mem , & nag , & kag , ved_t , & f , & dsm ); 1360 i((! sd && ( kag = REP_ERR_FAIL )) (kflag); 1362 i( sd ) ; 1369 `CVComeSp ( cv_mem ); 1370 `CVPNextSp ( cv_mem , dsm ); 1372 ( SUCCESS_STEP ); 1373 } } 1385  $CVAdjuPams ( CVodeMem cv_mem ) 1387 i( qime ! q ) { 1388 `CVAdjuOrd ( cv_mem , qime - q ); 1389 q = qime ; 1390 L = q +1; 1391 qwa = L ; 1393 `CVRes ( cv_mem ); 1394 } } 1406  $CVAdjuOrd ( CVodeMem cv_mem ,  dq ) 1408 i(( q ==2&& ( dq != 1)) ; 1410  lmm ){ 1411  ADAMS : `CVAdjuAdams ( cv_mem , dq ); 1413  BDF : `CVAdjuBDF ( cv_mem , dq ); 1416 } } 1425  $CVAdjuAdams ( CVodeMem cv_mem ,  dq ) 1427  i , j ; 1428 xi , hsum ; 1432 i( dq ==1) { 1433 `N_VCڡ ( ZERO , zn [ L ]); 1442  i =0; i < qmax ; i++ l [i] = ZERO ; 1443 l [1] = ONE ; 1444 hsum = ZERO ; 1445  j =1; j < q -2; j++) { 1446 hsum + u [ j ]; 1447 xi = hsum / hs ; 1448  i = j +1; i >1; i-- l [i] =[i]* xi +[i-1]; 1451  j =1; j < q -2; j++ l [j+1] = q * (l[j] / (j+1)); 1453  j =2; j < q ; j++) 1454 `N_VLrSum (- l [ j ], zn [ q ], ONE , zn[j], zn[j]); 1455 } } 1466  $CVAdjuBDF ( CVodeMem cv_mem ,  dq ) 1468  dq ) { 1469 1 : `CVInBDF ( cv_mem ); 1471 -1: `CVDeBDF ( cv_mem ); 1474 } } 1488  $CVInBDF ( CVodeMem cv_mem ) 1490 pha0 , pha1 , od , xi , xid , hsum , A1 ; 1491  i , j ; 1493  i =0; i < qmax ; i++ l [i] = ZERO ; 1494 l [2] = pha1 = od = xid = ONE ; 1495 pha0 = - ONE ; 1496 hsum = hs ; 1497 i( q > 1) { 1498  j =1; j < q ; j++) { 1499 hsum + u [ j +1]; 1500 xi = hsum / hs ; 1501 od * xi ; 1502 pha0 - ONE / ( j +1); 1503 pha1 + ONE / xi ; 1504  i = j +2; i >2; i-- l [i] =[i]* xid +[i-1]; 1505 xid = xi ; 1508 A1 = (- pha0 - pha1 / od ; 1509 `N_VS ( A1 , zn [ qmax ], zn[ L ]); 1510  j =2; j < q ; j++) { 1511 `N_VLrSum ( l [ j ], zn [ L ], ONE , zn[j], zn[j]); 1513 } } 1525  $CVDeBDF ( CVodeMem cv_mem ) 1527 hsum , xi ; 1528  i , j ; 1530  i =0; i < qmax ; i++ l [i] = ZERO ; 1531 l [2] = ONE ; 1532 hsum = ZERO ; 1533  j =1; j < q -2; j++) { 1534 hsum + u [ j ]; 1535 xi = hsum / hs ; 1536  i = j +2; i >2; i-- l [i] =[i]* xi +[i-1]; 1539  j =2; j < q ; j++) 1540 `N_VLrSum (- l [ j ], zn [ q ], ONE , zn[j], zn[j]); 1541 } } 1551  $CVRes ( CVodeMem cv_mem ) 1553  j ; 1554 ; 1556 = a ; 1557  j =1; j < q ; j++) { 1558 `N_VS ( , zn [ j ], zn[j]); 1559 * a ; 1561 h = hs * a ; 1562 hs = h ; 1563 } } 1573  $CVPdi ( CVodeMem cv_mem ) 1575  j , k ; 1577 + h ; 1578  k = 1; k < q ; k++) 1579  j = q ; j > k ; j--) 1580 `N_VLrSum ( ONE , zn [ j -1], ONE, zn[j], zn[j-1]); 1581 } } 1591  $CVS ( CVodeMem cv_mem ) 1593  lmm ) { 1594  ADAMS : `CVSAdams ( cv_mem ); 1596  BDF : `CVSBDF ( cv_mem ); 1599 1 = ONE / l [1]; 1600 gamma = h * 1 ; 1601 i( n =0 gamm = gamma ; 1602 gamt = ( n > 0? gamma / gamm : ONE ; 1603 } } 1623  $CVSAdams ( CVodeMem cv_mem ) 1625 m [ L_MAX ], M [3], hsum ; 1627 i( q == 1) { 1628 l [0] =[1] = tq [1] =q[5] = ONE ; 1629 tq [2] = TWO ; 1630 tq [3] = TWELVE ; 1631 tq [4] = CORTES *q[2]; 1635 hsum = `CVAdamsS ( cv_mem , m ); 1637 M [0] = `CVASum ( q -1, m , 1); 1638 M [1] = `CVASum ( q -1, m , 2); 1640 `CVAdamsFish ( cv_mem , m , M , hsum ); 1641 } } 1650  $CVAdamsS ( CVodeMem cv_mem , m []) 1652 hsum , xi_v , sum ; 1653  i , j ; 1655 hsum = h ; 1656 m [0] = ONE ; 1657  i =1; i < q ; i++ m [i] = ZERO ; 1658  j =1; j < q ; j++) { 1659 i(( j == q -1&& ( qwa == 1)) { 1660 sum = `CVASum ( q -2, m , 2); 1661 tq [1] = m [ q -2] / (q * sum ); 1663 xi_v = h / hsum ; 1664  i = j ; i >1; i-- m [i] +m[i-1] * xi_v ; 1665 hsum + u [ j ]; 1668 ( hsum ); 1669 } } 1677  $CVAdamsFish ( CVodeMem cv_mem , m [], M [], hsum ) 1679  i ; 1680 M0_v , xi , xi_v ; 1682 M0_v = ONE / M [0]; 1684 l [0] = ONE ; 1685  i =1; i < q ; i++ l [i] = M0_v * ( m [i-1] / i); 1686 xi = hsum / h ; 1687 xi_v = ONE / xi ; 1689 tq [2] = xi * M [0] / M[1]; 1690 tq [5] = xi / l [ q ]; 1692 i( qwa == 1) { 1693  i = q ; i >1; i-- m [i] +m[i-1] * xi_v ; 1694 M [2] = `CVASum ( q , m , 2); 1695 tq [3] = L * M [0] / M[2]; 1698 tq [4] = CORTES *q[2]; 1699 } } 1711  $CVASum ( nd , a [],  k ) 1713  i , sign ; 1714 sum ; 1716 i( nd < 0( ZERO ); 1718 sum = ZERO ; 1719 sign = 1; 1720  i =0; i < nd ; i++) { 1721 sum + sign * ( a [ i ] / (i+ k )); 1722 sign = -sign; 1724 ( sum ); 1725 } } 1746  $CVSBDF ( CVodeMem cv_mem ) 1748 pha0 , pha0_h , xi_v , xi_v , hsum ; 1749  i , j ; 1751 l [0] =[1] = xi_v = xi_v = ONE ; 1752  i =2; i < q ; i++ l [i] = ZERO ; 1753 pha0 = pha0_h = - ONE ; 1754 hsum = h ; 1755 i( q > 1) { 1756  j =2; j < q ; j++) { 1757 hsum + u [ j -1]; 1758 xi_v = h / hsum ; 1759 pha0 - ONE / j ; 1760  i = j ; i >1; i-- l [i] +l[i-1]* xi_v ; 1765 pha0 - ONE / q ; 1766 xi_v = - l [1] - pha0 ; 1767 hsum + u [ q -1]; 1768 xi_v = h / hsum ; 1769 pha0_h = - l [1] - xi_v ; 1770  i = q ; i >1; i-- l [i] +l[i-1]* xi_v ; 1773 `CVSTqBDF ( cv_mem , hsum , pha0 , pha0_h , xi_v , xi_v ); 1774 } } 1783  $CVSTqBDF ( CVodeMem cv_mem , hsum , pha0 , 1784 pha0_h , xi_v , xi_v ) 1786 A1 , A2 , A3 , A4 , A5 , A6 ; 1787 C , CPrime , CPrimePrime ; 1789 A1 = ONE - pha0_h + pha0 ; 1790 A2 = ONE + q * A1 ; 1791 tq [2] = `ABS ( pha0 * ( A2 / A1 )); 1792 tq [5] = `ABS (( A2 / ( l [ q ] * xi_v / xi_v )); 1793 i( qwa == 1) { 1794 C = xi_v / l [ q ]; 1795 A3 = pha0 + ONE / q ; 1796 A4 = pha0_h + xi_v ; 1797 CPrime = A3 / ( ONE - A4 + A3); 1798 tq [1] = `ABS ( CPrime / C ); 1799 hsum + u [ q ]; 1800 xi_v = h / hsum ; 1801 A5 = pha0 - ( ONE / ( q +1)); 1802 A6 = pha0_h - xi_v ; 1803 CPrimePrime = A2 / ( ONE - A6 + A5 ); 1804 tq [3] = `ABS ( CPrimePrime * xi_v * ( q +2* A5 ); 1806 tq [4] = CORTES *q[2]; 1807 } } 1818  $CVs ( CVodeMem cv_mem ,  nag ) 1820  ) { 1821  FUNCTIONAL : ( `CVsFuniڮ ( cv_mem )); 1822  NEWTON : ( `CVsNewt ( cv_mem , nag )); 1824 } } 1833  $CVsFuniڮ ( CVodeMem cv_mem ) 1835  m ; 1836 d , dp , dc ; 1840 e = ONE ; 1841 m = 0; 1842 `f ( N , , zn [0], mpv , f_da ); 1843 n ++; 1844 `N_VCڡ ( ZERO , ac ); 1848 lo { 1850 `N_VLrSum ( h , mpv , - ONE , zn [1],empv); 1851 `N_VS ( 1 , mpv ,empv); 1852 `N_VLrSum ( ONE , zn [0], ONE, mpv , y ); 1854 `N_VLrSum ( ONE , mpv , -ONE, ac ,cor); 1855 d = `N_VWrmsNm ( ac , ewt ); 1856 `N_VS ( ONE , mpv , ac ); 1860 i( m > 0 e = `MAX ( CRDOWN * c, d / dp ); 1861 dc = d * `MIN ( ONE , e / tq [4]; 1862 i( dc < ONE ) { 1863 arm = ( m =0? d : `N_VWrmsNm ( ac , ewt ); 1864 ( SOLVED ); 1868 m ++; 1869 i(( m == maxc || ((m >2&& ( d > RDIV * dp ))) 1870 ( CONV_FAIL ); 1872 dp = d ; 1873 `f ( N , , y , mpv , f_da ); 1874 n ++; 1876 } } 1887  $CVsNewt ( CVodeMem cv_mem ,  nag ) 1889 N_Ve vmp1 , vmp2 , vmp3 ; 1890  cv , r ; 1891 bo Sup ; 1893 vmp1 = ac ; 1894 vmp2 = y ; 1895 vmp3 = mpv ; 1898 cv = (( nag = FIRST_CALL || (nag = PREV_ERR_FAIL )) ? 1899 NO_FAILURES : FAIL_OTHER ; 1902 i( tupNNu ) { 1903 Sup = ( nag = PREV_CONV_FAIL || (nag = PREV_ERR_FAIL ) || 1904 ( n =0|| (n > n + MSBP || ( `ABS ( gamt - ONE > DGMAX ); 1906 e = ONE ; 1907 Sup = FALSE ; 1914 lo { 1916 `f ( N , , zn [0], emp , f_da ); 1917 n ++; 1919 i( Sup ) { 1920 r = `ltup ( cv_mem , cv , zn [0], emp , & jcur , 1921 vmp1 , vmp2 , vmp3 ); 1922 ntups ++; 1923 Sup = FALSE ; 1924 gamt = e = ONE ; 1925 gamm = gamma ; 1926 n = n ; 1928 i( r < 0( SETUP_FAIL_UNREC ); 1929 i( r > 0( CONV_FAIL ); 1933 `N_VCڡ ( ZERO , ac ); 1934 `N_VS ( ONE , zn [0], y ); 1937 r = `CVNewtIti ( cv_mem ); 1942 i( r ! TRY_AGAIN ) (ier); 1944 Sup = TRUE ; 1945 cv = FAIL_BAD_J ; 1947 } } 1961  $CVNewtIti ( CVodeMem cv_mem ) 1963  m , t ; 1964 d , dp , dc ; 1965 N_Ve b ; 1968 mwt = m = 0; 1971 lo { 1974 `N_VLrSum ( 1 , zn [1], ONE , ac , mpv ); 1975 `N_VLrSum ( gamma , emp , - ONE , mpv ,empv); 1978 b = mpv ; 1979 t = `lsve ( cv_mem , b , y , emp ); 1980 i ++; 1982 i( t < 0( SOLVE_FAIL_UNREC ); 1986 i( t > 0) { 1987 i((! jcur && ( tupNNu )( TRY_AGAIN ); 1988 ( CONV_FAIL ); 1992 d = `N_VWrmsNm ( b , ewt ); 1993 `N_VLrSum ( ONE , ac , ONE, b ,cor); 1994 `N_VLrSum ( ONE , zn [0], ONE, ac , y ); 1998 i( m > 0) { 1999 e = `MAX ( CRDOWN * c, d / dp ); 2001 dc = d * `MIN ( ONE , e / tq [4]; 2003 i( dc < ONE ) { 2004 arm = ( m ==0? d : `N_VWrmsNm ( ac , ewt ); 2005 jcur = FALSE ; 2006 ( SOLVED ); 2009 mwt = ++ m ; 2014 i(( m = maxc || ((m >2&& ( d > RDIV * dp ))) { 2015 i((! jcur && ( tupNNu )( TRY_AGAIN ); 2016 ( CONV_FAIL ); 2020 dp = d ; 2021 `f ( N , , y , emp , f_da ); 2022 n ++; 2024 } } 2053  $CVHdNFg ( CVodeMem cv_mem , * nagP , ved_t , 2054 * ncfP ) 2056  nag ; 2058 nag = * nagP ; 2060 i( nag = SOLVED ( DO_ERROR_TEST ); 2063 nc ++; 2064 `CVRee ( cv_mem , ved_t ); 2067 i( nag = SETUP_FAIL_UNREC ( SETUP_FAILED ); 2068 i( nag = SOLVE_FAIL_UNREC ( SOLVE_FAILED ); 2072 (* ncfP )++; 2073 amax = ONE ; 2075 i(( `ABS ( h < hm * ONEPSM || (* ncfP = MXNCF )) 2076 ( REP_CONV_FAIL ); 2079 a = `MAX ( ETACF , hm / `ABS ( h )); 2080 * nagP = PREV_CONV_FAIL ; 2081 `CVRes ( cv_mem ); 2082 ( PREDICT_AGAIN ); 2083 } } 2093  $CVRee ( CVodeMem cv_mem , ved_t ) 2095  j , k ; 2097 = ved_t ; 2098  k = 1; k < q ; k++) 2099  j = q ; j > k ; j--) 2100 `N_VLrSum ( ONE , zn [ j -1], -ONE, zn[j], zn[j-1]); 2101 } } 2123  bo $CVDoETe ( CVodeMem cv_mem , * nagP , * kagP , 2124 ved_t , * fP ,* dsmP ) 2126 dsm ; 2128 dsm = arm / tq [2]; 2131 * dsmP = dsm ; 2132 i( dsm < ONE ( TRUE ); 2135 (* fP )++; 2136 tf ++; 2137 * nagP = PREV_ERR_FAIL ; 2138 `CVRee ( cv_mem , ved_t ); 2141 i(( `ABS ( h < hm * ONEPSM || (* fP = MXNEF )) { 2142 * kagP = REP_ERR_FAIL ; 2143 ( FALSE ); 2147 amax = ONE ; 2150 i(* fP < MXNEF1 ) { 2151 a = ONE / ( `RPowR ( BIAS2 * dsm ,ONE/ L + ADDON ); 2152 a = `MAX ( ETAMIN , MAXӏ, hm / `ABS ( h ))); 2153 i(* fP > SMALL_NEF a = `MIN ӏ, ETAMXF ); 2154 `CVRes ( cv_mem ); 2155 ( FALSE ); 2159 i( q > 1) { 2160 a = `MAX ( ETAMIN , hm / `ABS ( h )); 2161 `CVAdjuOrd ( cv_mem ,-1); 2162 L = q ; 2163 q --; 2164 qwa = L ; 2165 `CVRes ( cv_mem ); 2166 ( FALSE ); 2170 a = `MAX ( ETAMIN , hm / `ABS ( h )); 2171 h * a ; 2172 hs = h ; 2173 qwa = LONG_WAIT ; 2174 `f ( N , , zn [0], mpv , f_da ); 2175 n ++; 2176 `N_VS ( h , mpv , zn [1]); 2177 ( FALSE ); 2178 } } 2192  $CVComeSp ( CVodeMem cv_mem ) 2194  i , j ; 2196 n ++; 2197 hu = h ; 2198 qu = q ; 2200  i = q ; i >2; i-- u [i] =au[i-1]; 2201 i(( q ==1&& ( n > 1) u [2] =au[1]; 2202 u [1] = h ; 2204  j =0; j < q ; j++) 2205 `N_VLrSum ( l [ j ], ac , ONE , zn [j], zn[j]); 2206 qwa --; 2207 i(( qwa =1&& ( q ! qmax )) { 2208 `N_VS ( ONE , ac , zn [ qmax ]); 2209 ved_tq5 = tq [5]; 2211 } } 2223  $CVPNextSp ( CVodeMem cv_mem , dsm ) 2225 aqm1 , aq , aqp1 ; 2228 i( amax = ONE ) { 2229 qwa = `MAX (qwait, 2); 2230 qime = q ; 2231 hime = h ; 2232 a = ONE ; 2233 amax = ( n < SMALL_NST ? ETAMX2 : ETAMX3 ; 2234 `N_VS ( ONE / tq [2], ac ,cor); 2239 aq = ONE /( `RPowR ( BIAS2 * dsm ,ONE/ L + ADDON ); 2242 i( qwa != 0) { 2243 a = aq ; 2244 qime = q ; 2245 `CVSE ( cv_mem ); 2252 qwa = 2; 2253 aqm1 = `CVCompuEqm1 ( cv_mem ); 2254 aqp1 = `CVCompuEqp1 ( cv_mem ); 2255 `CVChooE ( cv_mem , aqm1 , aq , aqp1 ); 2256 `CVSE ( cv_mem ); 2257 } } 2267  $CVSE ( CVodeMem cv_mem ) 2271 i( a < THRESH ) { 2272 a = ONE ; 2273 hime = h ; 2276 a = `MIN ӏ, amax ); 2277 a / `MAX ( ONE , `ABS ( h )* hmax_v *eta); 2278 hime = h * a ; 2282 amax = ( n < SMALL_NST ? ETAMX2 : ETAMX3 ; 2283 `N_VS ( ONE / tq [2], ac ,cor); 2284 } } 2293  $CVCompuEqm1 ( CVodeMem cv_mem ) 2295 aqm1 , ddn ; 2297 aqm1 = ZERO ; 2298 i( q > 1) { 2299 ddn = `N_VWrmsNm ( zn [ q ], ewt / tq [1]; 2300 aqm1 = ONE /( `RPowR ( BIAS1 * ddn , ONE/ q + ADDON ); 2302 ( aqm1 ); 2303 } } 2312  $CVCompuEqp1 ( CVodeMem cv_mem ) 2314 aqp1 , dup , cqu ; 2316 aqp1 = ZERO ; 2317 i( q ! qmax ) { 2318 cqu = ( tq [5] / ved_tq5 * `RPowI ( h / u [2], L ); 2319 `N_VLrSum (- cqu , zn [ qmax ], ONE , ac , mpv ); 2320 dup = `N_VWrmsNm ( mpv , ewt / tq [3]; 2321 aqp1 = ONE / ( `RPowR ( BIAS3 * dup , ONE/( L +1)+ ADDON ); 2323 ( aqp1 ); 2324 } } 2339  $CVChooE ( CVodeMem cv_mem , aqm1 , aq , aqp1 ) 2341 am ; 2343 am = `MAX ( aqm1 , MAX( aq , aqp1 )); 2345 i( am < THRESH ) { 2346 a = ONE ; 2347 qime = q ; 2351 i( am = aq ) { 2352 a = aq ; 2353 qime = q ; 2354 } i( am = aqm1 ) { 2355 a = aqm1 ; 2356 qime = q - 1; 2358 a = aqp1 ; 2359 qime = q + 1; 2360 `N_VS ( ONE , ac , zn [ qmax ]); 2362 } } 2372  $CVHdFau ( CVodeMem cv_mem ,  kag ) 2376 `N_VProd ( ac , ewt , mpv ); 2377 `N_VAbs ( mpv ,empv); 2380  kag ) { 2381  REP_ERR_FAIL : `rtf ( r , MSG_ERR_FAILS , , h ); 2382 ( ERR_FAILURE ); 2383  REP_CONV_FAIL : `rtf ( r , MSG_CONV_FAILS , , h ); 2384 ( CONV_FAILURE ); 2385  SETUP_FAILED : `rtf ( r , MSG_SETUP_FAILED , ); 2386 ( SETUP_FAILURE ); 2387  SOLVE_FAILED : `rtf ( r , MSG_SOLVE_FAILED , ); 2388 ( SOLVE_FAILURE ); 2390 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/cvspgmr.c 13  ~ 14  ~ 15  ~"cvgmr.h " 16  ~"cvode.h " 17  ~"typs.h " 18  ~"ve.h " 19  ~"mh.h " 20  ~"iv.h " 21  ~"gmr.h " 26  #CVSPGMR_INIT "CVSpgmrIn-- " ) 28  #MSG_MEM_FAIL CVSPGMR_INIT "A memyeque faed.\n\n" ) 30  #MSG_BAD_PRETYPE_1 CVSPGMR_INIT "y=%d ieg.\n" ) 31  #MSG_BAD_PRETYPE_2 "Thg vueNONE=%d, LEFT=%d, " ) 32  #MSG_BAD_PRETYPE_3 "RIGHT=%d,nd BOTH=%d.\n\n" ) 33  #MSG_BAD_PRETYPE MSG_BAD_PRETYPE_1 MSG_BAD_PRETYPE_2 MSG_BAD_PRETYPE_3 ) 35  #MSG_PSOLVE_REQ_1 CVSPGMR_INIT "y!=NONE, buPSOLVE=NULL i" ) 36  #MSG_PSOLVE_REQ_2 "g.\n\n" ) 37  #MSG_PSOLVE_REQ MSG_PSOLVE_REQ_1 MSG_PSOLVE_REQ_2 ) 39  #MSG_BAD_GSTYPE_1 CVSPGMR_INIT "gy=%d ieg.\n" ) 40  #MSG_BAD_GSTYPE_2 "Thg vueMODIFIED_GS=%dnd " ) 41  #MSG_BAD_GSTYPE_3 "CLASSICAL_GS=%d.\n\n" ) 42  #MSG_BAD_GSTYPE MSG_BAD_GSTYPE_1 MSG_BAD_GSTYPE_2 MSG_BAD_GSTYPE_3 ) 46  #ZERO `RCONST (0.0) ) 47  #ONE `RCONST (1.0) ) 60  mg_y ; 61  mg_gy ; 62 mg_qtN ; 63 mg_dt ; 64 mg_dr ; 65 mg_d ; 66  mg_maxl ; 68  mg_nͻ ; 69  mg_e ; 70  mg_i ; 71  mg_s ; 72  mg_nc ; 74 N_Ve mg_ymp ; 75 N_Ve mg_x ; 76 N_Ve mg_ycur ; 77 N_Ve mg_fcur ; 79 CVSpgmrPcdFn mg_ecd ; 82 CVSpgmrPSveFn mg_psve ; 85 * mg_P_da ; 86 SpgmrMem mg_gmr_mem ; 89 } tCVSpgmrMemRec , * tCVSpgmrMem ; 94  CVSpgmrIn ( CVodeMem cv_mem , bo * tupNNu ); 96  CVSpgmrSup ( CVodeMem cv_mem ,  cv , N_Ve yed , 97 N_Ve d , bo * jcurP , N_Ve vmp1 , 98 N_Ve vmp2 , N_Ve vmp3 ); 100  CVSpgmrSve ( CVodeMem cv_mem , N_Ve b , N_Ve ycur , 101 N_Ve fcur ); 103  CVSpgmrFe ( CVodeMem cv_mem ); 107  CVSpgmrAtimesDQ (* l_mem , N_Ve v , N_Ve z ); 109  CVSpgmrPSve (* l_mem , N_Ve r , N_Ve z ,  ); 114  #N ( cv_mem -> cv_N ) ) 115  #uround ( cv_mem -> cv_uround ) ) 116  #tq ( cv_mem -> cv_tq ) ) 117  #n ( cv_mem -> cv_n ) ) 118  # ( cv_mem -> cv_ ) ) 119  #h ( cv_mem -> cv_h ) ) 120  #gamma ( cv_mem -> cv_gamma ) ) 121  #gamm ( cv_mem -> cv_gamm ) ) 122  #n ( cv_mem -> cv_n ) ) 123  #f ( cv_mem -> cv_f ) ) 124  #f_da ( cv_mem -> cv_f_da ) ) 125  #ewt ( cv_mem -> cv_ewt ) ) 126  #r ( cv_mem -> cv_r ) ) 127  #mwt ( cv_mem -> cv_mwt ) ) 128  #it ( cv_mem -> cv_it ) ) 129  #rt ( cv_mem -> cv_rt ) ) 130  #l ( cv_mem -> cv_l ) ) 131  #ltup ( cv_mem -> cv_ltup ) ) 132  #lsve ( cv_mem -> cv_lsve ) ) 133  #l ( cv_mem -> cv_l ) ) 134  #lmem ( cv_mem -> cv_lmem ) ) 135  #machv ( cv_mem -> cv_machv ) ) 137  #sqN ( cvgmr_mem -> g_qtN ) ) 138  #ymp ( cvgmr_mem -> g_ymp ) ) 139  #x ( cvgmr_mem -> g_x ) ) 140  #ycur ( cvgmr_mem -> g_ycur ) ) 141  #fcur ( cvgmr_mem -> g_fcur ) ) 142  #d ( cvgmr_mem -> g_d ) ) 143  #dr ( cvgmr_mem -> g_dr ) ) 144  #e ( cvgmr_mem -> g_e ) ) 145  #i ( cvgmr_mem -> g_i ) ) 146  #s ( cvgmr_mem -> g_s ) ) 147  #nc ( cvgmr_mem -> g_nc ) ) 148  #nͻ ( cvgmr_mem -> g_nͻ ) ) 149  #gmr_mem ( cvgmr_mem -> g_gmr_mem ) ) 174  $CVSpgmr (* cvode_mem ,  y ,  gy ,  maxl , dt , 175 CVSpgmrPcdFn ecd , CVSpgmrPSveFn psve , * P_da ) 178 CVodeMem cv_mem ; 179 CVSpgmrMem cvgmr_mem ; 182 cv_mem = ( CVodeMem cvode_mem ; 183 i( cv_mem = NULL ) ; 186 l = CVSpgmrIn ; 187 ltup = CVSpgmrSup ; 188 lsve = CVSpgmrSve ; 189 l = CVSpgmrFe ; 192 lmem = cvgmr_mem = ( CVSpgmrMem `mloc (( CVSpgmrMemRec )); 193 i( cvgmr_mem = NULL ) ; 196 cvgmr_mem -> g_y = y ; 197 cvgmr_mem -> g_gy = gy ; 198 cvgmr_mem -> g_maxl = ( maxl <0? `MIN ( CVSPGMR_MAXL , N ) : maxl; 199 cvgmr_mem -> g_dt = ( dt = ZERO ? CVSPGMR_DELT : delt; 200 cvgmr_mem -> g_P_da = P_da ; 201 cvgmr_mem -> g_ecd = ecd ; 202 cvgmr_mem -> g_psve = psve ; 203 } } 208  #y ( cvgmr_mem -> g_y ) ) 209  #gy ( cvgmr_mem -> g_gy ) ) 210  #dt ( cvgmr_mem -> g_dt ) ) 211  #maxl ( cvgmr_mem -> g_maxl ) ) 212  #psve ( cvgmr_mem -> g_psve ) ) 213  #ecd ( cvgmr_mem -> g_ecd ) ) 214  #P_da ( cvgmr_mem -> g_P_da ) ) 225  $CVSpgmrIn ( CVodeMem cv_mem , bo * tupNNu ) 227 CVSpgmrMem cvgmr_mem ; 229 cvgmr_mem = ( CVSpgmrMem lmem ; 232 i( cvgmr_mem = NULL ) { 233 `rtf ( r , MSG_MEM_FAIL ); 234 ( LINIT_ERR ); 238 i(( y ! NONE && (y ! LEFT ) && 239 ( y ! RIGHT && (y ! BOTH )) { 240 `rtf ( r , MSG_BAD_PRETYPE , y , NONE , LEFT , RIGHT , BOTH ); 241 ( LINIT_ERR ); 243 i(( y ! NONE && ( psve = NULL )) { 244 `rtf ( r , MSG_PSOLVE_REQ ); 245 ( LINIT_ERR ); 249 i(( gy ! MODIFIED_GS && (gy ! CLASSICAL_GS )) { 250 `rtf ( r , MSG_BAD_GSTYPE , gy , MODIFIED_GS , CLASSICAL_GS ); 251 ( LINIT_ERR ); 255 ymp = `N_VNew ( N , machv ); 256 i( ymp = NULL ) { 257 `rtf ( r , MSG_MEM_FAIL ); 258 ( LINIT_ERR ); 260 x = `N_VNew ( N , machv ); 261 i( x = NULL ) { 262 `rtf ( r , MSG_MEM_FAIL ); 263 `N_VFe ( ymp ); 264 ( LINIT_ERR ); 268 gmr_mem = `SpgmrMloc ( N , maxl , machv ); 269 i( gmr_mem = NULL ) { 270 `rtf ( r , MSG_MEM_FAIL ); 271 `N_VFe ( ymp ); 272 `N_VFe ( x ); 273 ( LINIT_ERR ); 278 sqN = `RSq ( N ); 279 e = i = s = nc = nͻ = 0; 281 i( it ! NULL ) { 282 it [ SPGMR_NPE ] = e ; 283 it [ SPGMR_NLI ] = i ; 284 it [ SPGMR_NPS ] = s ; 285 it [ SPGMR_NCFL ] = nc ; 286 it [ SPGMR_LRW ] = N *( maxl + 5) + maxl*(maxl + 4) + 1; 287 it [ SPGMR_LIW ] = 0; 293 * tupNNu = ( y ! NONE && ( ecd ! NULL ); 295 ( LINIT_OK ); 296 } } 309  $CVSpgmrSup ( CVodeMem cv_mem ,  cv , N_Ve yed , 310 N_Ve d , bo * jcurP , N_Ve vmp1 , 311 N_Ve vmp2 , N_Ve vmp3 ) 313 bo jbad , jok ; 314 dgamma ; 315  r ; 316 CVSpgmrMem cvgmr_mem ; 318 cvgmr_mem = ( CVSpgmrMem lmem ; 321 dgamma = `ABS (( gamma / gamm - ONE ); 322 jbad = ( n =0|| (n > nͻ + CVSPGMR_MSBPRE ) || 323 (( cv = FAIL_BAD_J && ( dgamma < CVSPGMR_DGMAX )) || 324 ( cv = FAIL_OTHER ); 325 * jcurP = jbad ; 326 jok = ! jbad ; 329 r = `ecd ( N , , yed , d , jok , jcurP , gamma , ewt , h , 330 uround , & n , P_da , vmp1 , vmp2 , vmp3 ); 331 i( jbad * jcurP = TRUE ; 334 i(* jcurP ) { 335 e ++; 336 nͻ = n ; 340 i( it ! NULL it[ SPGMR_NPE ] = e ; 341 ( r ); 342 } } 363  $CVSpgmrSve ( CVodeMem cv_mem , N_Ve b , N_Ve ynow , 364 N_Ve ow ) 366 bnm , s_nm ; 367 CVSpgmrMem cvgmr_mem ; 368  i_c , s_c , r ; 370 cvgmr_mem = ( CVSpgmrMem lmem ; 373 dr = dt * tq [4]; 374 bnm = `N_VWrmsNm ( b , ewt ); 375 i( bnm < dr ) { 376 i( mwt > 0 `N_VCڡ ( ZERO , b ); 381 ycur = ynow ; 382 fcur = ow ; 385 d = dr * sqN ; 386 `N_VCڡ ( ZERO , x ); 389 r = `SpgmrSve ( gmr_mem , cv_mem , x , b , y , gy , d , 0, 390 cv_mem , ewt ,wt, CVSpgmrAtimesDQ , CVSpgmrPSve , 391 & s_nm , & i_c , & s_c ); 392 `N_VS ( ONE , x , b ); 395 i + i_c ; 396 s + s_c ; 397 i( it ! NULL ) { 398 it [ SPGMR_NLI ] = i ; 399 it [ SPGMR_NPS ] = s ; 401 i( r != 0) { 402 nc ++; 403 i( it ! NULL it[ SPGMR_NCFL ] = nc ; 407 i( r < 0) (-1); 408 i(( r = SPGMR_SUCCESS ) || 409 (( r = SPGMR_RES_REDUCED && ( mwt == 0))) 412 } } 420  $CVSpgmrFe ( CVodeMem cv_mem ) 422 CVSpgmrMem cvgmr_mem ; 424 cvgmr_mem = ( CVSpgmrMem lmem ; 426 `N_VFe ( ymp ); 427 `N_VFe ( x ); 428 `SpgmrFe ( gmr_mem ); 429 ` ( lmem ); 430 } } 441  $CVSpgmrAtimesDQ (* cvode_mem , N_Ve v , N_Ve z ) 443 rho ; 444 CVodeMem cv_mem ; 445 CVSpgmrMem cvgmr_mem ; 447 cv_mem = ( CVodeMem cvode_mem ; 448 cvgmr_mem = ( CVSpgmrMem lmem ; 451 rho = `N_VWrmsNm ( v , ewt ); 452 i( rho = ZERO ) { 453 `N_VCڡ ( ZERO , z ); 458 `N_VLrSum ( ONE / rho , v , ONE, ycur , ymp ); 461 `f ( N , , ymp , z , f_da ); 462 n ++; 465 `N_VLrSum ( ONE , z , -ONE, fcur , z); 466 `N_VLrSum (- gamma * rho , z , ONE , v , z); 469 } } 483  $CVSpgmrPSve (* cvode_mem , N_Ve r , N_Ve z ,  ) 485 CVodeMem cv_mem ; 486 CVSpgmrMem cvgmr_mem ; 487  r ; 489 cv_mem = ( CVodeMem cvode_mem ; 490 cvgmr_mem = ( CVSpgmrMem ) lmem ; 492 r = `psve ( N , , ycur , fcur , ymp , gamma , ewt , d , & n , r , 493 , P_da , z ); 496 ( r ); 497 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/dense.c 12  ~ 13  ~ 14  ~"d.h " 15  ~"typs.h " 16  ~"ve.h " 17  ~"mh.h " 20  #ZERO `RCONST (0.0) ) 21  #ONE `RCONST (1.0) ) 27 DM $DAocM ( g N ) 29 DM A ; 31 i( N <0( NULL ); 33 A = ( DM `mloc ( *A); 34 i( A == NULL )  (NULL); 36 A -> da = `dloc ( N ); 37 i( A -> da = NULL ) { 38 ` ( A ); 39 ( NULL ); 42 A -> size = N ; 44 ( A ); 45 } } 48 g * $DAocPiv ( g N ) 50 i( N <0( NULL ); 52 (( g * `mloc ( N * (integer))); 53 } } 56 g $DFa ( DM A , g * p ) 58 ( `ge ( A -> da , A-> size , p )); 59 } } 62  $DBacksve ( DM A , g * p , N_Ve b ) 64 `ge ( A -> da , A-> size , p , `N_VDATA ( b )); 65 } } 68  $DZo ( DM A ) 70 `dzo ( A -> da , A-> size ); 71 } } 73  $DCy ( DM A , DM B ) 75 `dcy ( A -> da , B ->da, A-> size ); 76 } } 78  $DS ( c , DM A ) 80 `ds ( c , A -> da , A-> size ); 81 } } 83  $DAddI ( DM A ) 85 `daddI ( A -> da , A-> size ); 86 } } 88  $DFeM ( DM A ) 90 `d ( A -> da ); 91 ` ( A ); 92 } } 94  $DFePiv ( g * p ) 96 ` ( p ); 97 } } 99  $DPrt ( DM A ) 101 `dt ( A -> da , A-> size ); 102 } } 105 ** $dloc ( g n ) 107 g j ; 108 ** a ; 110 i( n <0( NULL ); 112 a = ( ** `mloc ( n * (real *)); 113 i( a = NULL ) (NULL); 115 a [0] = ( * `mloc ( n * * (real)); 116 i( a [0] = NULL ) { 117 ` ( a ); 118 ( NULL ); 121  j =1; j < n ; j++ a [j] =[0] + j *; 123 ( a ); 124 } } 126 g * $dloiv ( g n ) 128 i( n <0( NULL ); 130 (( g * `mloc ( n * (integer))); 131 } } 133 g $ge ( ** a , g n , ieg * p ) 135 g i , j , k , l ; 136 * c_j , * c_k , * dg_k ; 137 mp , mu , a_kj ; 138 bo sw ; 142  k =0; k < n -1; k++, p ++) { 144 c_k = a [ k ]; 145 dg_k = c_k + k ; 149 l = k ; 150  i = k +1; i < n ; i++) 151 i( `ABS ( c_k [ i ]> ABS(c_k[ l ]))=i; 152 * p = l ; 156 i( c_k [ l ] = ZERO ( k +1); 160 i( sw = ( l ! k )) { 161 mp = c_k [ l ]; 162 c_k [ l ] = * dg_k ; 163 * dg_k = mp ; 172 mu = - ONE / (* dg_k ); 173  i = k +1; i < n ; i++) 174 c_k [ i ] * mu ; 181  j = k +1; j < n ; j++) { 183 c_j = a [ j ]; 184 a_kj = c_j [ l ]; 188 i( sw ) { 189 c_j [ l ] = c_j[ k ]; 190 c_j [ k ] = a_kj ; 196 i( a_kj ! ZERO ) { 197  i = k +1; i < n ; i++) 198 c_j [ i ] + a_kj * c_k [i]; 205 * p = n -1; 206 i( a [ n -1][n-1] = ZERO ) (n); 211 } } 213  $ge ( ** a , g n , ieg * p ,* b ) 215 g k , l , i ; 216 mu , * c_k ; 220  k =0; k < n -1; k++) { 221 l = p [ k ]; 222 mu = b [ l ]; 223 i( l ! k ) { 224 b [ l ] = b[ k ]; 225 b [ k ] = mu ; 227 c_k = a [ k ]; 228  i = k +1; i < n ; i++) 229 b [ i ] + mu * c_k [i]; 234  k = n -1; k >= 0; k--) { 235 c_k = a [ k ]; 236 b [ k ] / c_k [k]; 237 mu = - b [ k ]; 238  i =0; i < k ; i++) 239 b [ i ] + mu * c_k [i]; 241 } } 243  $dzo ( ** a , g n ) 245 g i , j ; 246 * c_j ; 248  j =0; j < n ; j++) { 249 c_j = a [ j ]; 250  i =0; i < n ; i++) 251 c_j [ i ] = ZERO ; 253 } } 255  $dcy ( ** a ,** b , g n ) 257 g i , j ; 258 * a_c_j , * b_c_j ; 260  j =0; j < n ; j++) { 261 a_c_j = a [ j ]; 262 b_c_j = b [ j ]; 263  i =0; i < n ; i++) 264 b_c_j [ i ] = a_c_j [i]; 267 } } 269  $ds ( c ,** a , g n ) 271 g i , j ; 272 * c_j ; 274  j =0; j < n ; j++) { 275 c_j = a [ j ]; 276  i =0; i < n ; i++) 277 c_j [ i ] * c ; 279 } } 281  $daddI ( ** a , g n ) 283 g i ; 285  i =0; i < n ; i++ a [i][i] + ONE ; 286 } } 288  $dpiv ( g * p ) 290 ` ( p ); 291 } } 293  $d ( ** a ) 295 ` ( a [0]); 296 ` ( a ); 297 } } 299  $dt ( ** a , g n ) 301 g i , j ; 303 `tf ("\n"); 304  i =0; i < n ; i++) { 305  j =0; j < n ; j++) { 306 `tf ("%10g", a [ j ][ i ]); 308 `tf ("\n"); 310 `tf ("\n"); 311 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/iterativ.c 14  ~"iv.h " 15  ~"typs.h " 16  ~"ve.h " 17  ~"mh.h " 20  #FACTOR `RCONST (1000.0) ) 21  #ZERO `RCONST (0.0) ) 22  #ONE `RCONST (1.0) ) 30  $ModifdGS ( N_Ve * v , ** h ,  k ,  p ,* w_vk_nm ) 32  i , k_mus_1 , i0 ; 33 w_nm_2 , w_odu , vk_nm , mp ; 35 vk_nm = `RSq ( `N_VDProd ( v [ k ],v[k])); 36 k_mus_1 = k - 1; 37 i0 = `MAX ( k - p , 0); 41  i = i0 ; i < k ; i++) { 42 h [ i ][ k_mus_1 ] = `N_VDProd ( v [i], v[ k ]); 43 `N_VLrSum ( ONE , v [ k ], - h [ i ][ k_mus_1 ], v[i], v[k]); 48 * w_vk_nm = `RSq ( `N_VDProd ( v [ k ], v[k])); 56 mp = FACTOR * vk_nm ; 57 i(( mp + (* w_vk_nm )) !=emp) (0); 59 w_nm_2 = ZERO ; 61  i = i0 ; i < k ; i++) { 62 w_odu = `N_VDProd ( v [ i ], v[ k ]); 63 mp = FACTOR * h [ i ][ k_mus_1 ]; 64 i(( mp + w_odu ) ==emp) ; 65 h [ i ][ k_mus_1 ] + w_odu ; 66 `N_VLrSum ( ONE , v [ k ],- w_odu , v[ i ], v[k]); 67 w_nm_2 + `SQR ( w_odu ); 70 i( w_nm_2 ! ZERO ) { 71 w_odu = `SQR (* w_vk_nm - w_nm_2 ; 72 * w_vk_nm = ( w_odu > ZERO ? `RSq (new_product) : ZERO; 76 } } 83  $CssilGS ( N_Ve * v , ** h ,  k ,  p ,* w_vk_nm , 84 N_Ve mp , * s ) 86  i , k_mus_1 , i0 ; 87 vk_nm ; 89 k_mus_1 = k - 1; 93 vk_nm = `RSq ( `N_VDProd ( v [ k ], v[k])); 95 i0 = `MAX ( k - p , 0); 96  i = i0 ; i < k ; i++) { 97 h [ i ][ k_mus_1 ] = `N_VDProd ( v [i], v[ k ]); 100  i = i0 ; i < k ; i++) { 101 `N_VLrSum ( ONE , v [ k ], - h [ i ][ k_mus_1 ], v[i], v[k]); 106 * w_vk_nm = `RSq ( `N_VDProd ( v [ k ], v[k])); 110 i(( FACTOR * (* w_vk_nm )< vk_nm ) { 112  i = i0 ; i < k ; i++) { 113 s [ i ] = `N_VDProd ( v [i], v[ k ]); 116 i( i0 < k ) { 117 `N_VS ( s [ i0 ], v [i0], mp ); 118 h [ i0 ][ k_mus_1 ] + s [i0]; 120  i = i0 +1; i < k ; i++) { 121 `N_VLrSum ( s [ i ], v [i], ONE , mp ,emp); 122 h [ i ][ k_mus_1 ] + s [i]; 124 `N_VLrSum ( ONE , v [ k ], -ONE, mp , v[k]); 126 * w_vk_nm = `RSq ( `N_VDProd ( v [ k ],v[k])); 130 } } 137  $QR ( n , ** h ,* q ,  job ) 139 c , s , mp1 , mp2 , mp3 ; 140  i , j , k , q_r , n_mus_1 , code =0; 142  job ) { 145 code = 0; 146  k =0; k < n ; k++) { 149  j =0; j < k -1; j++) { 150 i = 2* j ; 151 mp1 = h [ j ][ k ]; 152 mp2 = h [ j +1][ k ]; 153 c = q [ i ]; 154 s = q [ i +1]; 155 h [ j ][ k ] = c * mp1 - s * mp2 ; 156 h [ j +1][ k ] = s * mp1 + c * mp2 ; 160 q_r = 2* k ; 161 mp1 = h [ k ][k]; 162 mp2 = h [ k +1][k]; 163 if mp2 = ZERO ) { 164 c = ONE ; 165 s = ZERO ; 166 } i( `ABS ( mp2 >ABS( mp1 )) { 167 mp3 = mp1 / mp2 ; 168 s = - ONE / `RSq (ONE+ `SQR ( mp3 )); 169 c = - s * mp3 ; 171 mp3 = mp2 / mp1 ; 172 c = ONE / `RSq (ONE+ `SQR ( mp3 )); 173 s = - c * mp3 ; 175 q [ q_r ] = c ; 176 q [ q_r +1] = s ; 177 if( h [ k ][k] = c * mp1 - s * mp2 = ZERO code = k+1; 183 n_mus_1 = n - 1; 184 code = 0; 187  k =0; k < n_mus_1 ; k++) { 188 i = 2* k ; 189 mp1 = h [ k ][ n_mus_1 ]; 190 mp2 = h [ k +1][ n_mus_1 ]; 191 c = q [ i ]; 192 s = q [ i +1]; 193 h [ k ][ n_mus_1 ] = c * mp1 - s * mp2 ; 194 h [ k +1][ n_mus_1 ] = s * mp1 + c * mp2 ; 200 mp1 = h [ n_mus_1 ][n_minus_1]; 201 mp2 = h [ n ][ n_mus_1 ]; 202 i( mp2 = ZERO ) { 203 c = ONE ; 204 s = ZERO ; 205 } i( `ABS ( mp2 >ABS( mp1 )) { 206 mp3 = mp1 / mp2 ; 207 s = - ONE / `RSq (ONE+ `SQR ( mp3 )); 208 c = - s * mp3 ; 210 mp3 = mp2 / mp1 ; 211 c = ONE / `RSq (ONE+ `SQR ( mp3 )); 212 s = - c * mp3 ; 214 q_r = 2* n_mus_1 ; 215 q [ q_r ] = c ; 216 q [ q_r +1] = s ; 217 i(( h [ n_mus_1 ][n_mus_1] = c * mp1 - s * mp2 = ZERO ) 218 code = n ; 221  ( code ); 222 } } 229  $QRs ( n , ** h ,* q ,* b ) 231 c , s , mp1 , mp2 ; 232  i , k , q_r , code =0; 236  k =0; k < n ; k++) { 237 q_r = 2* k ; 238 c = q [ q_r ]; 239 s = q [ q_r +1]; 240 mp1 = b [ k ]; 241 mp2 = b [ k +1]; 242 b [ k ] = c * mp1 - s * mp2 ; 243 b [ k +1] = s * mp1 + c * mp2 ; 248  k = n -1; k >= 0; k--) { 249 i( h [ k ][k] = ZERO ) { 250 code = k + 1; 253 b [ k ] / h [k][k]; 254  i =0; i < k ; i++ b [i] -b[k]* h [i][k]; 257  ( code ); 258 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/llnlmath.c 12  ~ 13  ~ 14  ~"mh.h " 15  ~"typs.h " 18  #ZERO `RCONST (0.0) ) 19  #ONE `RCONST (1.0) ) 20  #TWO `RCONST (2.0) ) 23 $UnRoundoff () 25 u ; 26 vީ e_us_u ; 28 u = ONE ; 29 e_us_u = ONE + u ; 30  e_us_u ! ONE ) { 31 u / TWO ; 32 e_us_u = ONE + u ; 34 u * TWO ; 36 ( u ); 37 } } 40 $RPowI ( ba ,  expڒt ) 42  i , ex ; 43 od ; 45 od = ONE ; 46 ex = `ABS ( expڒt ); 47  i =1; i < ex ; i++ od * ba ; 48 i( expڒt < 0 od = ONE /prod; 49 ( od ); 50 } } 53 $RPowR ( ba , expڒt ) 56 i( ba < ZERO ) (ZERO); 58 (( ) `pow (() ba ,() expڒt )); 59 } } 62 $RSq ( x ) 64 i( x < ZERO ) (ZERO); 66 (( `sq (( x )); 67 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/spgmr.c 13  ~ 14  ~ 15  ~"iv.h " 16  ~"gmr.h " 17  ~"typs.h " 18  ~"ve.h " 19  ~"mh.h " 22  #ZERO `RCONST (0.0) ) 23  #ONE `RCONST (1.0) ) 28  FeVeAay ( N_Ve * A ,  dMax ); 36 SpgmrMem $SpgmrMloc ( g N ,  l_max , * machEnv ) 38 SpgmrMem mem ; 39 N_Ve * V , xc , vmp ; 40 ** Hes , * givs , * yg ; 41  k , i ; 45 i(( N <0|| ( l_max <0)( NULL ); 49 V = ( N_Ve * `mloc (( l_max +1)*(N_Vector)); 50 i( V = NULL ) (NULL); 52  k =0; k < l_max ; k++) { 53 V [ k ] = `N_VNew ( N , machEnv ); 54 i( V [ k ] = NULL ) { 55 `FeVeAay ( V , k -1); 56 ( NULL ); 62 Hes = ( ** `mloc (( l_max +1)*(real *)); 63 i( Hes = NULL ) { 64 `FeVeAay ( V , l_max ); 65 ( NULL ); 68  k =0; k < l_max ; k++) { 69 Hes [ k ] = ( * `mloc ( l_max *(real)); 70 i( Hes [ k ] = NULL ) { 71  i =0; i < k ; i++ ` ( Hes [i]); 72 `FeVeAay ( V , l_max ); 73 ( NULL ); 79 givs = ( * `mloc (2* l_max *(real)); 80 i( givs = NULL ) { 81  i =0; i < l_max ; i++ ` ( Hes [i]); 82 `FeVeAay ( V , l_max ); 83 ( NULL ); 88 xc = `N_VNew ( N , machEnv ); 89 i( xc = NULL ) { 90 ` ( givs ); 91  i =0; i < l_max ; i++ ` ( Hes [i]); 92 `FeVeAay ( V , l_max ); 93 ( NULL ); 98 yg = ( * `mloc (( l_max +1)*(real)); 99 i( yg = NULL ) { 100 `N_VFe ( xc ); 101 ` ( givs ); 102  i =0; i < l_max ; i++ ` ( Hes [i]); 103 `FeVeAay ( V , l_max ); 104 ( NULL ); 109 vmp = `N_VNew ( N , machEnv ); 110 i( vmp = NULL ) { 111 ` ( yg ); 112 `N_VFe ( xc ); 113 ` ( givs ); 114  i =0; i < l_max ; i++ ` ( Hes [i]); 115 `FeVeAay ( V , l_max ); 116 ( NULL ); 121 mem = ( SpgmrMem `mloc (( SpgmrMemRec )); 122 i( mem = NULL ) { 123 `N_VFe ( vmp ); 124 ` ( yg ); 125 `N_VFe ( xc ); 126 ` ( givs ); 127  i =0; i < l_max ; i++ ` ( Hes [i]); 128 `FeVeAay ( V , l_max ); 129 ( NULL ); 134 mem -> N = N; 135 mem -> l_max =_max; 136 mem -> V = V; 137 mem -> Hes = Hes; 138 mem -> givs = givens; 139 mem -> xc = xcor; 140 mem -> yg = yg; 141 mem -> vmp = vtemp; 145 ( mem ); 146 } } 151  $SpgmrSve ( SpgmrMem mem , * A_da , N_Ve x , N_Ve b , 152  y ,  gy , d ,  max_ts , 153 * P_da , N_Ve sx , N_Ve sb , ATimesFn imes , 154 PSveFn psve , * s_nm , * i , * s ) 156 N_Ve * V , xc , vmp ; 157 ** Hes , * givs , * yg ; 158 s_r0_nm , ba , r٩i_odu , r_nm , s_odu , rho ; 159 bo eOnLe , eOnRight , s_x , s_b , cvged ; 160  i , j , k , l , l_us_1 , l_max , krydim , r , rs ; 162 i( mem = NULL ( SPGMR_MEM_NULL ); 166 l_max = mem ->l_max; 167 V = mem ->V; 168 Hes = mem ->Hes; 169 givs = mem ->givens; 170 xc = mem ->xcor; 171 yg = mem ->yg; 172 vmp = mem ->vtemp; 174 * i = * s = 0; 175 cvged = FALSE ; 177 i( max_ts < 0) max_restarts = 0; 179 i(( y ! LEFT && (y ! RIGHT && (y ! BOTH )) 180 y = NONE ; 182 eOnLe = (( y = LEFT || (y = BOTH )); 183 eOnRight = (( y = RIGHT || (y = BOTH )); 184 s_x = ( sx ! NULL ); 185 s_b = ( sb ! NULL ); 189 i( `N_VDProd ( x , x= ZERO ) { 190 `N_VS ( ONE , b , vmp ); 192 i( `imes ( A_da , x , vmp ) != 0) 193 ( SPGMR_ATIMES_FAIL ); 194 `N_VLrSum ( ONE , b , -ONE, vmp , vtemp); 196 `N_VS ( ONE , vmp , V [0]); 206 i( eOnLe ) { 207 r = `psve ( P_da , V [0], vmp , LEFT ); 208 (* s )++; 209 i( r != 0) 210 (( r < 0? SPGMR_PSOLVE_FAIL_UNREC : SPGMR_PSOLVE_FAIL_REC ); 212 `N_VS ( ONE , V [0], vmp ); 215 i( s_b ) { 216 `N_VProd ( sb , vmp , V [0]); 218 `N_VS ( ONE , vmp , V [0]); 224 * s_nm = r_nm = ba = `RSq ( `N_VDProd ( V [0], V[0])); 225 i( r_nm < d ) 226 ( SPGMR_SUCCESS ); 230 `N_VCڡ ( ZERO , xc ); 235  rs = 0;< max_ts ;tries++) { 240  i =0; i < l_max ; i++) 241  j =0; j < l_max ; j++) 242 Hes [ i ][ j ] = ZERO ; 244 r٩i_odu = ONE ; 246 `N_VS ( ONE / r_nm , V [0], V[0]); 250  l =0; < l_max ;++) { 252 (* i )++; 254 krydim = l_us_1 = l + 1; 259 i( s_x ) { 260 `N_VDiv ( V [ l ], sx , vmp ); 262 `N_VS ( ONE , V [ l ], vmp ); 266 `N_VS ( ONE , vmp , V [ l_us_1 ]); 267 i( eOnRight ) { 268 r = `psve ( P_da , V [ l_us_1 ], vmp , RIGHT ); 269 (* s )++; 270 i( r != 0) 271 (( r < 0? SPGMR_PSOLVE_FAIL_UNREC : SPGMR_PSOLVE_FAIL_REC ); 275 i( `imes ( A_da , vmp , V [ l_us_1 ] ) != 0) 276 ( SPGMR_ATIMES_FAIL ); 279 i( eOnLe ) { 280 r = `psve ( P_da , V [ l_us_1 ], vmp , LEFT ); 281 (* s )++; 282 i( r != 0) 283 (( r < 0? SPGMR_PSOLVE_FAIL_UNREC : SPGMR_PSOLVE_FAIL_REC ); 285 `N_VS ( ONE , V [ l_us_1 ], vmp ); 289 i( s_b ) { 290 `N_VProd ( sb , vmp , V [ l_us_1 ]); 292 `N_VS ( ONE , vmp , V [ l_us_1 ]); 297 i( gy = CLASSICAL_GS ) { 298 i( `CssilGS ( V , Hes , l_us_1 , l_max , &(Hes[l_us_1][ l ]), 299 vmp , yg ) != 0) 300 ( SPGMR_GS_FAIL ); 302 i( `ModifdGS ( V , Hes , l_us_1 , l_max , &(Hes[l_us_1][ l ])) != 0) 303 ( SPGMR_GS_FAIL ); 308 if( `QR ( krydim , Hes , givs , l ) != 0 ) 309 ( SPGMR_QRFACT_FAIL ); 313 r٩i_odu * givs [2* l +1]; 315 i((* s_nm = rho = `ABS ( r٩i_odu * r_nm )< d ) { 316 cvged = TRUE ; 321 `N_VS ( ONE / Hes [ l_us_1 ][ l ], V [l_plus_1], V[l_plus_1]); 327 yg [0] = r_nm ; 328  i =1; i < krydim ; i++ yg [i]= ZERO ; 329 i( `QRs ( krydim , Hes , givs , yg ) != 0) 330 ( SPGMR_QRSOL_FAIL ); 333  k =0; k < krydim ; k++) 334 `N_VLrSum ( yg [ k ], V [k], ONE , xc , xcor); 337 i( cvged ) { 341 i( s_x `N_VDiv ( xc , sx , xcor); 342 i( eOnRight ) { 343 r = `psve ( P_da , xc , vmp , RIGHT ); 344 (* s )++; 345 i( r != 0) 346 (( r < 0? SPGMR_PSOLVE_FAIL_UNREC : SPGMR_PSOLVE_FAIL_REC ); 348 `N_VS ( ONE , xc , vmp ); 352 `N_VLrSum ( ONE , x , ONE, vmp , x); 354 ( SPGMR_SUCCESS ); 359 i( rs = max_ts ) ; 362 s_odu = ONE ; 363  i = krydim ; i > 0; i--) { 364 yg [ i ] = s_odu * givs [2*i-2]; 365 s_odu * givs [2* i -1]; 367 yg [0] = s_odu ; 370 r_nm * s_odu ; 371  i =0; i < krydim ; i++) 372 yg [ i ] * r_nm ; 373 r_nm = `ABS (r_norm); 376 `N_VS ( yg [0], V [0], V[0]); 377  k =1; k < krydim ; k++) 378 `N_VLrSum ( yg [ k ], V [k], ONE , V[0], V[0]); 386 i( rho < ba ) { 390 i( s_x `N_VDiv ( xc , sx , xcor); 391 i( eOnRight ) { 392 r = `psve ( P_da , xc , vmp , RIGHT ); 393 (* s )++; 394 i( r != 0) 395 (( r < 0? SPGMR_PSOLVE_FAIL_UNREC : SPGMR_PSOLVE_FAIL_REC ); 397 `N_VS ( ONE , xc , vmp ); 401 `N_VLrSum ( ONE , x , ONE, vmp , x); 403 ( SPGMR_RES_REDUCED ); 406 ( SPGMR_CONV_FAIL ); 407 } } 411  $SpgmrFe ( SpgmrMem mem ) 413  i , l_max ; 414 ** Hes ; 416 i( mem = NULL ) ; 418 l_max = mem ->l_max; 419 Hes = mem ->Hes; 421 `FeVeAay ( mem -> V , l_max ); 422  i =0; i < l_max ; i++ ` ( Hes [i]); 423 ` ( Hes ); 424 ` ( mem -> givs ); 425 `N_VFe ( mem -> xc ); 426 ` ( mem -> yg ); 427 `N_VFe ( mem -> vmp ); 429 ` ( mem ); 430 } } 435  $FeVeAay ( N_Ve * A ,  dMax ) 437  j ; 439  j =0; j < dMax ; j++ `N_VFe ( A [j]); 441 ` ( A ); 442 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/cvode/source/vector.c 15  ~ 16  ~ 17  ~"ve.h " 18  ~"typs.h " 19  ~"mh.h " 22  #ZERO `RCONST (0.0) ) 23  #ONE `RCONST (1.0) ) 28  VCy ( N_Ve x , N_Ve z ); 29  VSum ( N_Ve x , N_Ve y , N_Ve z ); 30  VDiff ( N_Ve x , N_Ve y , N_Ve z ); 31  VNeg ( N_Ve x , N_Ve z ); 33  VSSum ( c , N_Ve x , N_Ve y , N_Ve z ); 35  VSDiff ( c , N_Ve x , N_Ve y , N_Ve z ); 36  VL1 ( a , N_Ve x , N_Ve y , N_Ve z ); 37  VL2 ( a , N_Ve x , N_Ve y , N_Ve z ); 38  Vaxpy ( a , N_Ve x , N_Ve y ); 39  VSBy ( a , N_Ve x ); 44 N_Ve $N_VNew ( g N , * machEnv ) 46 N_Ve v ; 48 i( N <0( NULL ); 50 v = ( N_Ve `mloc ( *v); 51 i( v = NULL ) (NULL); 53 v -> da = ( * `mloc ( N * (real)); 54 i( v -> da = NULL ) { 55 ` ( v ); 56 ( NULL ); 59 v -> ngth = N ; 61 ( v ); 62 } } 65  $N_VFe ( N_Ve x ) 67 ` ( x -> da ); 68 ` ( x ); 69 } } 72  $N_VLrSum ( a , N_Ve x , b , N_Ve y , N_Ve z ) 74 g i , N ; 75 c , * xd , * yd , * zd ; 76 N_Ve v , v1 , v2 ; 77 bo ; 79 i(( b = ONE && ( z = y )) { 80 `Vaxpy ( a , x , y ); 84 i(( a = ONE && ( z = x )) { 85 `Vaxpy ( b , y , x ); 91 i(( a = ONE && ( b == ONE)) { 92 `VSum ( x , y , z ); 98 i(( = (( a = ONE && ( b == -ONE))) || ((a == -ONE) && (b == ONE))) { 99 v1 = ? y : x ; 100 v2 = ? x : y ; 101 `VDiff ( v2 , v1 , z ); 108 i(( = ( a = ONE )|| ( b == ONE)) { 109 c = ? b : a ; 110 v1 = ? y : x ; 111 v2 = ? x : y ; 112 `VL1 ( c , v1 , v2 , z ); 118 i(( = ( a =- ONE )|| ( b == -ONE)) { 119 c = ? b : a ; 120 v1 = ? y : x ; 121 v2 = ? x : y ; 122 `VL2 ( c , v1 , v2 , z ); 129 i( a = b ) { 130 `VSSum ( a , x , y , z ); 136 i( a =- b ) { 137 `VSDiff ( a , x , y , z ); 146 N = x -> ngth ; 147 xd = x -> da ; 148 yd = y -> da ; 149 zd = z -> da ; 151  i =0; i < N ; i++) 152 * zd ++ = a * (* xd +++ b * (* yd ++); 153 } } 156  $N_VCڡ ( c , N_Ve z ) 158 g i , N ; 159 * zd ; 161 N = z -> ngth ; 162 zd = z -> da ; 164  i =0; i < N ; i++) 165 * zd ++ = c ; 166 } } 169  $N_VProd ( N_Ve x , N_Ve y , N_Ve z ) 171 g i , N ; 172 * xd , * yd , * zd ; 174 N = x -> ngth ; 175 xd = x -> da ; 176 yd = y -> da ; 177 zd = z -> da ; 179  i =0; i < N ; i++) 180 * zd ++ = (* xd ++* (* yd ++); 181 } } 184  $N_VDiv ( N_Ve x , N_Ve y , N_Ve z ) 186 g i , N ; 187 * xd , * yd , * zd ; 189 N = x -> ngth ; 190 xd = x -> da ; 191 yd = y -> da ; 192 zd = z -> da ; 194  i =0; i < N ; i++) 195 * zd ++ = (* xd ++/ (* yd ++); 196 } } 199  $N_VS ( c , N_Ve x , N_Ve z ) 201 g i , N ; 202 * xd , * zd ; 204 i( z = x ) { 205 `VSBy ( c , x ); 209 i( c = ONE ) { 210 `VCy ( x , z ); 211 } i( c =- ONE ) { 212 `VNeg ( x , z ); 214 N = x -> ngth ; 215 xd = x -> da ; 216 zd = z -> da ; 217  i =0; i < N ; i++* zd ++ = c * (* xd ++); 219 } } 222  $N_VAbs ( N_Ve x , N_Ve z ) 224 g i , N ; 225 * xd , * zd ; 227 N = x -> ngth ; 228 xd = x -> da ; 229 zd = z -> da ; 231  i =0; i < N ; i++, xd ++, zd ++) 232 * zd = `ABS (* xd ); 233 } } 236  $N_VInv ( N_Ve x , N_Ve z ) 238 g i , N ; 239 * xd , * zd ; 241 N = x -> ngth ; 242 xd = x -> da ; 243 zd = z -> da ; 245  i =0; i < N ; i++) 246 * zd ++ = ONE / (* xd ++); 247 } } 250  $N_VAddCڡ ( N_Ve x , b , N_Ve z ) 252 g i , N ; 253 * xd , * zd ; 255 N = x -> ngth ; 256 xd = x -> da ; 257 zd = z -> da ; 259  i =0; i < N ; i++* zd ++ = (* xd +++ b ; 260 } } 263 $N_VDProd ( N_Ve x , N_Ve y ) 265 g i , N ; 266 sum = ZERO , * xd , * yd ; 268 N = x -> ngth ; 269 xd = x -> da ; 270 yd = y -> da ; 272  i =0; i < N ; i++) 273 sum +(* xd ++* (* yd ++); 275 ( sum ); 276 } } 279 $N_VMaxNm ( N_Ve x ) 281 g i , N ; 282 max = ZERO , * xd ; 284 N = x -> ngth ; 285 xd = x -> da ; 287  i =0; i < N ; i++, xd ++) { 288 i( `ABS (* xd > max ) max = ABS(*xd); 291 ( max ); 292 } } 295 $N_VWrmsNm ( N_Ve x , N_Ve w ) 297 g i , N ; 298 sum = ZERO , odi , * xd , * wd ; 300 N = x -> ngth ; 301 xd = x -> da ; 302 wd = w -> da ; 304  i =0; i < N ; i++) { 305 odi = (* xd ++* (* wd ++); 306 sum + odi *rodi; 309 ( `RSq ( sum / N )); 310 } } 313 $N_VM ( N_Ve x ) 315 g i , N ; 316 m , * xd ; 318 N = x -> ngth ; 319 xd = x -> da ; 320 m = xd [0]; 322  i =0; i < N ; i++, xd ++) { 323 i((* xd < m ) min = *xd; 326 ( m ); 327 } } 330  $N_VCom ( c , N_Ve x , N_Ve z ) 332 g i , N ; 333 * xd , * zd ; 335 N = x -> ngth ; 336 xd = x -> da ; 337 zd = z -> da ; 339  i =0; i < N ; i++, xd ++, zd ++) { 340 * zd = ( `ABS (* xd > c ? ONE : ZERO ; 342 } } 345 bo $N_VInvTe ( N_Ve x , N_Ve z ) 347 g i , N ; 348 * xd , * zd ; 350 N = x -> ngth ; 351 xd = x -> da ; 352 zd = z -> da ; 354  i =0; i < N ; i++) { 355 i(* xd = ZERO ( FALSE ); 356 * zd ++ = ONE / (* xd ++); 359 ( TRUE ); 360 } } 363  $N_VPrt ( N_Ve x ) 365 g i , N ; 366 * xd ; 368 N = x -> ngth ; 369 xd = x -> da ; 371  i =0; i < N ; i++ `tf ("%g\n", * xd ++); 373 `tf ("\n"); 374 } } 380  $VCy ( N_Ve x , N_Ve z ) 382 g i , N ; 383 * xd , * zd ; 385 N = x -> ngth ; 386 xd = x -> da ; 387 zd = z -> da ; 389  i =0; i < N ; i++) 390 * zd ++ = * xd ++; 391 } } 394  $VSum ( N_Ve x , N_Ve y , N_Ve z ) 396 g i , N ; 397 * xd , * yd , * zd ; 399 N = x -> ngth ; 400 xd = x -> da ; 401 yd = y -> da ; 402 zd = z -> da ; 404  i =0; i < N ; i++) 405 * zd ++ = (* xd +++ (* yd ++); 406 } } 409  $VDiff ( N_Ve x , N_Ve y , N_Ve z ) 411 g i , N ; 412 * xd , * yd , * zd ; 414 N = x -> ngth ; 415 xd = x -> da ; 416 yd = y -> da ; 417 zd = z -> da ; 419  i =0; i < N ; i++) 420 * zd ++ = (* xd ++- (* yd ++); 421 } } 424  $VNeg ( N_Ve x , N_Ve z ) 426 g i , N ; 427 * xd , * zd ; 429 N = x -> ngth ; 430 xd = x -> da ; 431 zd = z -> da ; 433  i =0; i < N ; i++) 434 * zd ++ = -(* xd ++); 435 } } 438  $VSSum ( c , N_Ve x , N_Ve y , N_Ve z ) 440 g i , N ; 441 * xd , * yd , * zd ; 443 N = x -> ngth ; 444 xd = x -> da ; 445 yd = y -> da ; 446 zd = z -> da ; 448  i =0; i < N ; i++) 449 * zd ++ = c * ((* xd +++ (* yd ++)); 450 } } 453  $VSDiff ( c , N_Ve x , N_Ve y , N_Ve z ) 455 g i , N ; 456 * xd , * yd , * zd ; 458 N = x -> ngth ; 459 xd = x -> da ; 460 yd = y -> da ; 461 zd = z -> da ; 463  i =0; i < N ; i++) 464 * zd ++ = c * ((* xd ++- (* yd ++)); 465 } } 468  $VL1 ( a , N_Ve x , N_Ve y , N_Ve z ) 470 g i , N ; 471 * xd , * yd , * zd ; 473 N = x -> ngth ; 474 xd = x -> da ; 475 yd = y -> da ; 476 zd = z -> da ; 478  i =0; i < N ; i++) 479 * zd ++ = a * (* xd +++ (* yd ++); 480 } } 483  $VL2 ( a , N_Ve x , N_Ve y , N_Ve z ) 485 g i , N ; 486 * xd , * yd , * zd ; 488 N = x -> ngth ; 489 xd = x -> da ; 490 yd = y -> da ; 491 zd = z -> da ; 493  i =0; i < N ; i++) 494 * zd ++ = a * (* xd ++- (* yd ++); 495 } } 497  $Vaxpy ( a , N_Ve x , N_Ve y ) 499 g i , N ; 500 * xd , * yd ; 502 N = x -> ngth ; 503 xd = x -> da ; 504 yd = y -> da ; 506 i( a = ONE ) { 507  i =0; i < N ; i++) 508 * yd ++ +(* xd ++); 512 i( a =- ONE ) { 513  i =0; i < N ; i++) 514 * yd ++ -(* xd ++); 518  i =0; i < N ; i++) 519 * yd ++ + a * (* xd ++); 520 } } 522  $VSBy ( a , N_Ve x ) 524 g i , N ; 525 * xd ; 527 N = x -> ngth ; 528 xd = x -> da ; 530  i =0; i < N ; i++) 531 * xd ++ * a ; 532 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/include/CvodeComponent.h 1 #ide __CvodeCompڒt_h__ 2  #__CvodeCompڒt_h__ ) 4  ~"oc.hh " 5  ~"ts.hh " 7  ~"jc++/ut/jc++ut.h " 8  ~"ms/msSr.h " 9  ~"pt/sutIs.h " 12  ~"c_vec.h " 13  ~"c_m.h " 16  ~"DPt.h " 17  ~"BdPt.h " 18  ~"DgPt.h " 19  ~"SpgmrPt.h " 22  ~ 23 usg mea gd ; 26  ~"cvd.h " 27  ~"cvbd.h " 28  ~"cvdg.h " 29  ~"cvgmr.h " 32  ~"cڡts.h " 33  ~"my_PrObj.h " 34  ~"my_c_vec.h " 35  ~"my_c_m.h " 38  ~"CvodePt.h " 41  ~"CONV_NS.h " 57 ass CvodeCompڒt : public vtu CONV_NS ( Compڒt ), 58 public vtu CONV_NS ( pts :: GoPt ), 59 public vtu DgPt , 60 public vtu CONV_NS ( CompڒtR ), 61 public vtu CvodePt 63 public : 64 CvodeCompڒt (); 65 vtu ~ CvodeCompڒt (); 66 vtu  tSvis ( CONV_NS ( Svis * svc throw (); 67 vtu  aSvis ( CONV_NS ( Svis * svc throw (); 69 vtu  tup (* y , * abs = NULL , * f_da =NULL, 70 * jac_da = NULL ); 71 vtu  sve ( t_desed ); 72 vtu  sve ( t_t ,  t_desed ); 73 vtu  (); 75 vtu  D_k ( t ,  k ); 78 vtu PrObj * g_PrObj (); 82 vtu  g_su (*& da , & size ); 83 vtu  g_su_by_dex ( dex ); 84 vtu  g_max (); 86 vtu  g_t (); 88 vtu  g_dky (*& da , & size ); 89 vtu  g_dky_by_dex ( dex ); 93 vtu  f_dg ( N ,  t , c_vec * y , c_vec* yd , * f_da ); 94 vtu  go (); 97 ive : 99  (); 100  lo (); 101  tupPams (); 102  PrtFSts (); 103  PrtESts (); 104  t_l (* v ); 105  t_ab (* v ); 107 IPam * N , * maxl , * mu , * mlow ; 108 DoubPam * t0 , * ab , * , * d ; 109 BoPam * tIn , * PrtSts , * UDeuJac ; 110 SgPam * r , * LrSv , * lmm , * , * , 111 * ask , * y , * gs_ty ; 113 CfigubPamPt * ; 114 CONV_NS ( Svis * psvc ; 115 DPt * D ; 116 BdPt * Bd ; 117 DgPt * Dg ; 118 SpgmrPt * Spgmr ; 120 * cvode_mem , * MachEnv ; 121 PrObj * PO ; 122 mySu * my_da_f , * my_da_jac ; 123  T , ATOL , RTOL ; 124 N_Ve y0 , Y , ATOL_V , dky ; 126 bo isInlized , unub , isMl , isAoc ; 127  SupCou ; 134  my_f ( N ,  t , N_Ve y , N_Ve yd , * f_da ); 136  my_D_Jac ( N , DM J , RhsFn f , * f_da , 137  t , N_Ve y , N_Ve fy , N_Ve ewt , 138  h ,  uround , * jac_da , 139 * nP , N_Ve vmp1 , 140 N_Ve vmp2 , N_Ve vmp3 ); 142  my_Bd_Jac ( N ,  mu ,  mlow , BdM J , 143 RhsFn f , * f_da , 144  t , N_Ve y , N_Ve fy , N_Ve ewt , 145  h ,  uround , * jac_da , 146 * nP , N_Ve vmp1 , 147 N_Ve vmp2 , N_Ve vmp3 ); 149  my_Pcd ( N ,  t , N_Ve y , N_Ve fy , bo jok , 150 bo * jcurP ,  gamma , N_Ve ewt ,  h , 151  uround , * nP , * P_da , 152 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ); 154  my_Psve ( N ,  t , N_Ve y , N_Ve fy , 155 N_Ve vmp ,  gamma , N_Ve ewt ,  d , 156 * nP , N_Ve r ,  , 157 * P_da , N_Ve z ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/include/constants.h 1 #ide __cڡts_h__ 2  #__cڡts_h__ ) 5  #DENSE 0 ) 6  #BAND 1 ) 7  #DIAG 2 ) 8  #SPGMR 3 ) 14 * mur ; 15 * mP ; 16  msize , msv ; 17 } tmySu ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/include/my_PropObj.h 1 #ide my_PrObj_h 2  #my_PrObj_h ) 8  ~ 9  ~ 10  ~ 11 usg mea gd ; 13  ~"PrObj.h " 17  ~ 18  ~"cvode.h " 19  ~"cvd.h " 20  ~"cvbd.h " 21  ~"cvdg.h " 22  ~"cvgmr.h " 25  ~"cڡts.h " 41 as cmy_PrObj : public vtu PrObj 43 public : 44 my_PrObj (); 45 vtu ~ my_PrObj (); 47 vtu  tPr ( rg , string); 48 vtu  tPr ( rg , ); 49 vtu  tPr ( rg , ); 50 vtu  tPr ( rg , string, ); 51 vtu  tPr ( rg , string, ); 53 vtu  gPr ( rg ); 54 vtu  gPr ( rg , &); 55 vtu  gPr ( rg , &); 56 vtu  gPr ( rg , FILE *&); 57 vtu  gPr ( rg , *&, *); 58 vtu  gPr ( rg , *&, *); 60 ive : 61  t_ty ( rg ); 62  t_ask ( rg ); 63  t_lmm ( rg ); 64  t_ ( rg ); 65  t_ ( rg ); 66  t_y ( rg ); 67  t_gs_ty ( rg ); 68  t_ ( rg ); 70 m < rg , > s ; 71 FILE * E ; 72 m < rg , > s_d ; 73 * rt ; 74 * it ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/include/my_cca_mat.h 4 #ide __my_c_m_h__ 5  #__my_c_m_h__ ) 7  ~ 8 usg mea gd ; 10  ~"c_m.h " 12 as cmy_c_m : public vtu c_m 14 public : 15 my_c_m (); 16 my_c_m (); 17 mvtu ~ my_c_m (); 19 vtu ** g_da (); 20 vtu  g_size (); 21 vtu  t_size (); 22 vtu  put_da (**, ); 24 mive : 25  size ; 26 ** mda ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/include/my_cca_vec.h 4 #ide __my_c_vec_h__ 5  #__my_c_vec_h__ ) 7  ~ 8 usg mea gd ; 10  ~"c_vec.h " 12 as cmy_c_vec : public vtu c_vec 14 public : 15 my_c_vec (); 16 my_c_vec (); 17 mvtu ~ my_c_vec (); 19 vtu * g_da (); 20 vtu  g_size (); 21 vtu  t_size (); 22 vtu  put_da (*, ); 24 vtu  cy_da ( c_vec *); 26 mive : 27  size ; 28 * mda ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/CC.cpp 5  ~"CvodeCompڒt.h " 6  gt_time ; 10 gCvodeCompڒt :: $CvodeCompڒt () 12 cvode_mem = NULL ; 13 dky = NULL ; 14 my_da_f = ( mySu * `mloc ( (myStruct) ); 15 my_da_jac = ( mySu * `mloc ( (myStruct) ); 16 D = NULL ; 17 Bd = NULL ; 18 Dg = NULL ; 19 Spgmr = NULL ; 21 y0 = NULL ; MachEnv =NULL; 23 PO = ( PrObj * w my_PrObj ; 25 LrSv = w `SgPam ("LinearSolver", "Linear Solver Type", 28 N = w `IPam ("N", "No. Eq", "NEQ", 9, 1, 300000000); 29 mu = w `IPam ("mupper", "BANDED mupper", "upper", 31 mlow = w `IPam ("mlower", "BANDED mlower", "lower", 34 lmm = w `SgPam ("lmm", "Linear Multistep Method", "LMM", "BDF"); 36 = w `SgPam ("iter", "Type of Iteration", "ITER", "NEWTON"); 38 = w `SgPam ("itol", "Type of Tolerances", "ITOL", "SV"); 39 ask = w `SgPam ("itask", "Job ofhe Solver", "ITASK", "NORMAL"); 40 t0 = w `DoubPam ("t0", "Initial value", "T0", 0.0, 0.0, 1.073741e9); 41 = w `DoubPam ("reltol", "Relative Tol.", "RTOL", 43 ab = w `DoubPam ("abstol", "Absolute Tol.", "ATOL", 45 tIn = w `BoPam ("optIn", "Flag for optional inputs", "OPTIN", 46 ue ); 47 r = w `SgPam ("errfp", "Error File", "Errfp", ""); 49 d = w `DoubPam ("delta", "Tol. factor", "dt", 0.0, 0.0, 1.0); 50 y = w `SgPam ("pretype", "Type of Preconditioning", 52 gs_ty = w `SgPam ("gs_type", "GS Type", "GS_TYPE", "CLASSICAL_GS"); 53 maxl = w `IPam ("maxl", "Max Krylov dim.", "MAXL", 0, 0, 300000000); 56 PrtSts = w `BoPam ("PrintStats", "Print Final Stats", "print", 57 ue ); 58 UDeuJac = w `BoPam ("UseDefaultJac", 60 "uDJ", ue ); 61 isInlized = l ; unub =l; isMl =l; isAoc =false; 62 SupCou =0; 63 :: t_time = 0.0; 64 cout <<"CvodCڡrued"<< dl ; 65 } } 68 gCvodeCompڒt ::~ $CvodeCompڒt () 70 de my_da_f ; 71 de my_da_jac ; 72 de PO ; 73 de LrSv ; 74 de N ; 75 de mu ; 76 de mlow ; 77 de lmm ; 78 de ; 79 de ; 80 de ask ; 81 de y ; 82 de gs_ty ; 83 de maxl ; 84 de t0 ; 85 de ; 86 de d ; 87 de tIn ; 88 de ab ; 89 de r ; 90 de PrtSts ; 91 de UDeuJac ; 93 i( isAoc ){ 94 `N_VFe ( y0 ); 95 `N_VFe ( Y ); 96 `N_VFe ( ATOL_V ); 98 if( isMl ) 99 `CVodeFe ( cvode_mem ); 101 isInlized = l ; 102 isMl = l ; 103 isAoc = l ; 105 i( dky ! NULL ) { 106 `N_VFe ( dky ); 107 dky = NULL ; 109 cout <<"CvodDeroyed"<< dl ; 110 } } 113  gCvodeCompڒt :: $go () 117 cout << "Cvodgp܈ed"<< dl ; 119 } } 122  gCvodeCompڒt :: $f_dg ( N ,  t , c_vec * y , c_vec* yd , * f_da ) 124 `as ( N ==1); 126 } } 128  gCvodeCompڒt :: aSvis ( CONV_NS ( Svis )* cc ) 129 $throw () 131 i( cc =0 || c! psvc ) { 133 `abt (); 136 i( D ! NULL psvc -> `aPt ("Dense"); 137 i( Bd ! NULL psvc -> `aPt ("Band"); 138 i( Dg ! NULL psvc -> `aPt ("Diag"); 139 i( Spgmr ! NULL psvc -> `aPt ("Spgmr"); 140 psvc -> `moveProvidesPt ("THE_CVODE") ; 141 psvc -> `moveProvidesPt ("go") ; 142 psvc = 0; 144 } } 147  gCvodeCompڒt :: tSvis CONV_NS ( Svis * svc ) 148 $throw () 150 i( svc = NULL ) { 151 cout <<"Gه NULL ind o::o::gov::c::Svipor,btg"<< dl ; 152 `abt () ; 155 this -> psvc = svc ; 156 psvc -> `giFR ( this ); 158 svc -> `giUsPt ( "cSvc", "neo.cca.ParameterPortFactoryService" ); 159 CfigubPamFay * f = 160 dymic_ < CfigubPamFay *>( svc -> `gPt ("cSvc")); 161 `CHECKDC ( f ); 162 = f -> `CfigubPamPt (); `tupPams () ; 163 svc -> `aPt ("cSvc"); 164 svc -> `uegiUsPt ("cSvc") ; 167 svc -> `giUsPt ("Dense", "DensePort" ); 168 svc -> `giUsPt ("Band", "BandPort") ; 169 svc -> `giUsPt ("Diag", "DiagPort") ; 170 svc -> `giUsPt ("Spgmr", "SpgmrPort" ); 172 svc -> `addProvidesPt ( this , "THE_CVODE", "CvodePort"); 173 svc -> `addProvidesPt ( this , "go", "neo::cca::ports::GoPort"); 175 svc -> `addProvidesPt ( , "CONFIG", "ConfigurableParameterPort" ); 177 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/CC_access.cpp 6  ~"CvodeCompڒt.h " 12 PrObj * gCvodeCompڒt :: $g_PrObj () 14 i(! isInlized && SupCou ==0) 15 ` (); 16  PO ; 17 } } 23  gCvodeCompڒt :: $g_su (*& da , & size ) 25 da = `N_VDATA ( Y ); 26 size = `N_VLENGTH ( Y ); 27 } } 30  gCvodeCompڒt :: $g_su_by_dex ( dex ) 32  `N_VIth ( Y , dex ); 33 } } 36  gCvodeCompڒt :: $g_t () 38  T ; 39 } } 42  gCvodeCompڒt :: $g_max () 44  `N_VMaxNm ( Y ); 45 } } 47  gCvodeCompڒt :: $g_dky (*& da , & size ) 49 da = `N_VDATA ( dky ); 50 size = `N_VLENGTH ( dky ); 51 } } 53  gCvodeCompڒt :: $g_dky_by_dex ( dex ) 55  `N_VIth ( dky , dex ); 56 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/CC_cvode.cpp 6  ~"CvodeCompڒt.h " 7  t_time ; 13  gCvodeCompڒt :: $tup (* y , * abs , * f_da , 14 * jac_da ) 16 FILE * EFp ; 17  ty , NEQ , ITOL ; 18 bo uDJ ; 19  T0 , dt ; 20  size ; 21 * it ; 22 * rt ; 24 i(! isInlized && SupCou ==0) 25 ` (); 27 i(! isAoc ) 28 `lo (); 30 SupCou ++; 32 `t_l ( y ); 33 i( abs ! NULL ) 34 `t_ab ( abs ); 38 PO -> `gPr ("t0", T0 ); 39 ITOL = PO -> `gPr ("itol"); 40 PO -> `gPr ("r", EFp ); 41 uDJ PO -> `gPr ("UseDefaultJac"); 42 NEQ = PO -> `gPr ("N"); 43 ty = PO -> `gPr ("LinearSolver"); 44 PO -> `gPr ("", RTOL ); 45 PO -> `gPr ("it", it , & size ); 46 PO -> `gPr ("rt", rt , & size ); 48  ty ) { 49  DENSE : 50 D = dymic_ < DPt *> ( psvc -> `gPt ("Dense")); 51 `CHECKDC ( D ); 52 my_da_f -> P = D ; my_da_jac ->Ptr = Dense; 54  BAND : 55 Bd = dymic_ < BdPt *> ( psvc -> `gPt ("Band")); 56 `CHECKDC ( Bd ); 57 my_da_f -> P = Bd ; my_da_jac ->Ptr = Band; 59  DIAG : 60 Dg = dymic_ < DgPt *> ( psvc -> `gPt ("Diag")); 61 `CHECKDC ( Dg ); 62 my_da_f -> P = Dg ; my_da_jac ->Ptr = Diag; 64  SPGMR : 65 Spgmr dymic_ < SpgmrPt *> ( psvc -> `gPt ("Spgmr")); 66 `CHECKDC ( Spgmr ); 67 my_da_f -> P = Spgmr ; my_da_jac ->Ptr = Spgmr; 72 my_da_f -> ur = f_da ; my_da_jac ->u jac_da ; 73 my_da_f -> size = NEQ ; my_da_jac ->size = NEQ; 74 my_da_f -> sv = ty ; my_da_jac ->solver =ype; 76 i( ITOL == SS ) { 77 PO -> `gPr ("ab", ATOL ); 78 cvode_mem = `CVodeMloc ( NEQ , my_f , T0 , y0 , PO -> `gPr ("lmm"), 79 PO -> `gPr (""), ITOL , & RTOL , & ATOL , 80 (*) my_da_f , EFp , PO -> `gPr ("optIn"), 81 it , rt , MachEnv ); 85 cvode_mem = `CVodeMloc ( NEQ , my_f , T0 , y0 , PO -> `gPr ("lmm"), 86 PO -> `gPr (""), ITOL , & RTOL , 87 (* ATOL_V , (* my_da_f , EFp , 88 PO -> `gPr ("tIn"), it , rt , MachEnv ); 91 i( cvode_mem == NULL ) 94 isMl = ue ; 96  ty ) { 97  DENSE : 98 i( uDJ ) 99 `CVD ( cvode_mem , NULL , (* my_da_jac ); 101 `CVD ( cvode_mem , my_D_Jac , (* my_da_jac ); 103  BAND : 104 i( uDJ ) 105 `CVBd ( cvode_mem , PO -> `gPr ("mu"), PO->gPr("mlow"), NULL , 106 (*) my_da_jac ); 108 `CVBd ( cvode_mem , PO -> `gPr ("mupper"), PO->getProp("mlower"), 109 my_Bd_Jac , (*) my_da_jac ); 111  DIAG : 112 `CVDg ( cvode_mem ); 114  SPGMR : 115 PO -> `gPr ("d", dt ); 116 `CVSpgmr ( cvode_mem , PO -> `gPr ("pretype"), PO->getProp("gs_type"), 117 PO -> `gPr ("maxl"), dt , my_Pcd , my_Psve , 118 (* my_da_jac ); 124 } } 134  gCvodeCompڒt :: $sve ( t_desed ) 136  t ; 137 i( unub ) 144 :: t_time = 0.0; 145 t = `CVode ( cvode_mem , t_desed , Y , & T , PO -> `gPr ("itask")); 147 i( t ! SUCCESS ) 148 `PrtESts (); 150  t ; 151 } } 153  gCvodeCompڒt :: $sve ( t_t ,  t_desed ) 155  t ; 156 i( unub ) 164 :: t_time = t_t ; 165 t = `CVode ( cvode_mem , t_desed - t_t , Y , & T , PO -> `gPr ("itask")); 167 i( t ! SUCCESS ) 168 `PrtESts (); 170  t ; 171 } } 175  gCvodeCompڒt :: $ () 177 i( PO -> `gPr ("PrintStats")) 178 `PrtFSts (); 179 i( isMl ) 180 `CVodeFe ( cvode_mem ); 182 i( isAoc ) { 183 `N_VFe ( y0 ); 184 `N_VFe ( Y ); 185 `N_VFe ( ATOL_V ); 188 isInlized = l ; 189 isMl = l ; 190 isAoc = l ; 192 i( dky ! NULL ) { 193 `N_VFe ( dky ); 194 dky = NULL ; 197 i( D ! NULL ) 198 psvc -> `aPt ("Dense"); 199 i( Bd ! NULL ) 200 psvc -> `aPt ("Band"); 201 i( Dg ! NULL ) 202 psvc -> `aPt ("Diag"); 203 i( Spgmr ! NULL ) 204 psvc -> `aPt ("Spgmr"); 205 } } 215  gCvodeCompڒt :: $D_k ( t ,  k ) 217 i( dky = NULL ) 218 dky = `N_VNew ( PO -> `gPr ("N"), NULL ); 220  ( `CVodeDky ( cvode_mem , t , k , dky )); 222 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/CC_myfunc.cpp 4  ~"CvodeCompڒt.h " 5  t_time ; 12  $my_f ( N ,  t , N_Ve y , N_Ve yd , * f_da ) 14 mySu * ig ; 15 DPt * D ; 16 BdPt * B ; 17 DgPt * DG ; 18 SpgmrPt * S ; 19  ty ; 20  y_size , yd_size ; 21 c_vec * lol_y , * lol_yd ; 22 my_c_vec lol_y1 , lol_yd1 ; 24 lol_y = dymic_ < c_vec *> (& lol_y1 ); 25 `CHECKDC ( lol_y ); 26 lol_yd = dymic_ < c_vec *> (& lol_yd1 ); 27 `CHECKDC ( lol_yd ); 29 y_size = ( `N_VLENGTH ( y )); 30 yd_size = ( `N_VLENGTH ( yd )); 32 lol_y -> `t_size ( y_size ); 33 lol_yd -> `t_size ( yd_size ); 35 lol_y -> `put_da ( `N_VDATA ( y ), y_size ); 36 lol_yd -> `put_da ( `N_VDATA ( yd ), yd_size ); 38 ig = ( mySu *) f_da ; 40 ty = ig -> sv ; 42  t_ = t + :: t_time ; 44  ty ) { 45  DENSE : 46 D = ( DPt *)( ig -> P ); 47 D -> `f_d ( N , t_ , lol_y , lol_yd , ig -> ur ); 49  BAND : 50 B = ( BdPt *)( ig -> P ); 51 B -> `f_bd ( N , t_ , lol_y , lol_yd , ig -> ur ); 53  DIAG : 54 DG = ( DgPt *)( ig -> P ); 55 DG -> `f_dg ( N , t_ , lol_y , lol_yd , ig -> ur ); 57  SPGMR : 58 S = ( SpgmrPt *)( ig -> P ); 59 S -> `f_gmr ( N , t_ , lol_y , lol_yd , ig -> ur ); 63 } } 65  $my_D_Jac ( N , DM J , RhsFn f , * f_da , 66  t , N_Ve y , N_Ve fy , N_Ve ewt , 67  h ,  uround , * jac_da , 68 * nP , N_Ve vmp1 , 69 N_Ve vmp2 , N_Ve vmp3 ) 71 mySu * ig ; 72 DPt * D ; 74  y_size , ewt_size , J_size ; 75 c_vec * lol_y , * lol_ewt ; 76 my_c_vec lol_y1 , lol_ewt1 ; 77 my_c_m lol_J1 ; 78 c_m * lol_J ; 81 lol_y = dymic_ < c_vec *> (& lol_y1 ); 82 `CHECKDC ( lol_y ); 83 lol_ewt = dymic_ < c_vec *> (& lol_ewt1 ); 84 `CHECKDC ( lol_ewt ); 85 lol_J = dymic_ < c_m *>(& lol_J1 ); 86 `CHECKDC ( lol_J ); 88 y_size = ( `N_VLENGTH ( y )); 89 ewt_size = ( `N_VLENGTH ( ewt )); 90 J_size = J -> size ; 92 lol_y -> `t_size ( y_size ); 93 lol_ewt -> `t_size ( ewt_size ); 94 lol_J -> `t_size ( J_size ); 96 lol_y -> `put_da ( `N_VDATA ( y ), y_size ); 97 lol_ewt -> `put_da ( `N_VDATA ( ewt ), ewt_size ); 98 lol_J -> `put_da ( J -> da , J_size ); 100 ig = ( mySu *) jac_da ; 102 D = ( DPt *)( ig -> P ); 104  t_ = t + :: t_time ; 105 D -> `Jac_d ( N , lol_J , f_da , t_ , lol_y , lol_ewt , ig -> ur ); 107 } } 109  $my_Bd_Jac ( N ,  mu ,  mlow , BdM J , 110 RhsFn f , * f_da , 111  t , N_Ve y , N_Ve fy , N_Ve ewt , 112  h ,  uround , * jac_da , 113 * nP , N_Ve vmp1 , 114 N_Ve vmp2 , N_Ve vmp3 ) 116 mySu * ig ; 117 BdPt * B ; 119  y_size , ewt_size ; 120 c_vec * lol_y , * lol_ewt ; 121 my_c_vec lol_y1 , lol_ewt1 ; 123 lol_y = dymic_ < c_vec *> (& lol_y1 ); 124 `CHECKDC ( lol_y ); 125 lol_ewt = dymic_ < c_vec *> (& lol_ewt1 ); 126 `CHECKDC ( lol_ewt ); 128 y_size = ( `N_VLENGTH ( y )); 129 ewt_size = ( `N_VLENGTH ( ewt )); 132 lol_y -> `t_size ( y_size ); 133 lol_ewt -> `t_size ( ewt_size ); 136 lol_y -> `put_da ( `N_VDATA ( y ), y_size ); 137 lol_ewt -> `put_da ( `N_VDATA ( ewt ), ewt_size ); 139 ig = ( mySu *) jac_da ; 141 B =( BdPt *)( ig -> P ); 144  t_ = t + :: t_time ; 145 B -> `Jac_bd ( N , mu , mlow , ( BdM_c ) J , f_da , t_ , lol_y , 146 lol_ewt , ig -> ur ); 148 } } 150  $my_Pcd ( N ,  t , N_Ve y , N_Ve fy , bo jok , 151 bo * jcurP ,  gamma , N_Ve ewt ,  h , 152  uround , * nP , * P_da , 153 N_Ve vmp1 , N_Ve vmp2 , N_Ve vmp3 ) 155 mySu * ig ; 156 SpgmrPt * S ; 157 ig = ( mySu *) P_da ; 158 S = ( SpgmrPt *)( ig -> P ); 160  y_size , fy_size , ewt_size ; 161 c_vec * lol_y , * lol_fy , * lol_ewt ; 162 my_c_vec lol_y1 , lol_fy1 , lol_ewt1 ; 164 lol_y = dymic_ < c_vec *> (& lol_y1 ); 165 `CHECKDC ( lol_y ); 166 lol_fy = dymic_ < c_vec *> (& lol_fy1 ); 167 `CHECKDC ( lol_fy ); 168 lol_ewt = dymic_ < c_vec *> (& lol_ewt1 ); 169 `CHECKDC ( lol_ewt ); 171 y_size = ( `N_VLENGTH ( y )); 172 fy_size = ( `N_VLENGTH ( fy )); 173 ewt_size = ( `N_VLENGTH ( ewt )); 175 lol_y -> `t_size ( y_size ); 176 lol_fy -> `t_size ( fy_size ); 177 lol_ewt -> `t_size ( ewt_size ); 179 lol_y -> `put_da ( `N_VDATA ( y ), y_size ); 180 lol_fy -> `put_da ( `N_VDATA ( fy ), fy_size ); 181 lol_ewt -> `put_da ( `N_VDATA ( ewt ), ewt_size ); 183  t_ = t + :: t_time ; 184  ( S -> `ecd ( N , t_ , lol_y , lol_fy , jok , (*) jcurP , gamma , 185 lol_ewt , h , uround , nP , ig -> ur )); 188 } } 190  $my_Psve ( N ,  t , N_Ve y , N_Ve fy , 191 N_Ve vmp ,  gamma , N_Ve ewt ,  d , 192 * nP , N_Ve r ,  , 193 * P_da , N_Ve z ) 195 mySu * ig ; 196 SpgmrPt * S ; 197 ig = ( mySu *) P_da ; 198 S = ( SpgmrPt *)( ig -> P ); 200  y_size , fy_size , ewt_size , r_size , z_size ; 201 c_vec * lol_y , * lol_fy , * lol_ewt , * lol_r , * lol_z ; 202 my_c_vec lol_y1 , lol_fy1 , lol_ewt1 , lol_r1 , lol_z1 ; 204 lol_y = dymic_ < c_vec *> (& lol_y1 ); 205 `CHECKDC ( lol_y ); 206 lol_fy = dymic_ < c_vec *> (& lol_fy1 ); 207 `CHECKDC ( lol_fy ); 208 lol_ewt = dymic_ < c_vec *> (& lol_ewt1 ); 209 `CHECKDC ( lol_ewt ); 210 lol_r = dymic_ < c_vec *> (& lol_r1 ); 211 `CHECKDC ( lol_r ); 212 lol_z = dymic_ < c_vec *> (& lol_z1 ); 213 `CHECKDC ( lol_z ); 215 y_size = ( `N_VLENGTH ( y )); 216 fy_size = ( `N_VLENGTH ( fy )); 217 ewt_size = ( `N_VLENGTH ( ewt )); 218 r_size = ( `N_VLENGTH ( r )); 219 z_size = ( `N_VLENGTH ( z )); 221 lol_y -> `t_size ( y_size ); 222 lol_fy -> `t_size ( fy_size ); 223 lol_ewt -> `t_size ( ewt_size ); 224 lol_r -> `t_size ( r_size ); 225 lol_z -> `t_size ( z_size ); 227 lol_y -> `put_da ( `N_VDATA ( y ), y_size ); 228 lol_fy -> `put_da ( `N_VDATA ( fy ), fy_size ); 229 lol_ewt -> `put_da ( `N_VDATA ( ewt ), ewt_size ); 230 lol_r -> `put_da ( `N_VDATA ( r ), r_size ); 231 lol_z -> `put_da ( `N_VDATA ( z ), z_size ); 233  t_ = t + :: t_time ; 234  ( S -> `psve ( N , t_ , lol_y , lol_fy , gamma , 235 lol_ewt , d , nP , lol_r , , 236 ig -> ur , lol_z )); 237 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/CC_priv.cpp 5  ~"CvodeCompڒt.h " 11  gCvodeCompڒt :: $PrtFSts () 13  ty , size ; 14 * rt ; 15 * it ; 17 ty = PO -> `gPr ("LinearSolver"); 18 PO -> `gPr ("it", it , & size ); 19 PO -> `gPr ("rt", rt , & size ); 21 `tf ("\nFinal Statistics.. \n\n"); 22 `tf ("nst = %-6ldfe = %-6ldsetups = %-6ld", 23 it [ NST ], it[ NFE ], it[ NSETUPS ]); 24 i( ty == DENSE ) 25 `tf "nj%ld\n", it [ DENSE_NJE ]); 26 i( ty == BAND ) 27 `tf "nj%ld\n", it [ BAND_NJE ]); 29 `tf ("\n"); 30 `tf ("nni = %-6ldcfn = %-6ldetf = %-6ld hu = %e\n \n", 31 it [ NNI ], it[ NCFN ], it[ NETF ], rt [ HU ]); 32 i( ty == SPGMR ) 33 `tf ("npe = %-6ldli = %-6ldps = %-6ldcfl = %-6ld\n \n", 34 it [ SPGMR_NPE ], it[ SPGMR_NLI ], it[ SPGMR_NPS ], 35 it [ SPGMR_NCFL ]); 36 } } 39  gCvodeCompڒt :: $PrtESts () 41  ty , size ; 42 * rt ; 43 * it ; 45 ty = PO -> `gPr ("LinearSolver"); 46 PO -> `gPr ("it", it , & size ); 47 PO -> `gPr ("rt", rt , & size ); 49 `tf ("\nError Statistics.. \n\n"); 51 `tf ("\nInteger Statistics.. \n\n"); 52 cout <<"NST = "<< it [ NST ]<< dl ; 53 cout <<"NFE = "<< it [ NFE ]<< dl ; 54 cout <<"NSETUPS = "<< it [ NSETUPS ]<< dl ; 55 cout <<"NNI = "<< it [ NNI ]<< dl ; 56 cout <<"NCFN = "<< it [ NCFN ]<< dl ; 57 cout <<"QU = "<< it [ QU ]<< dl ; 58 cout <<"QCUR = "<< it [ QCUR ]<< dl ; 59 cout <<"LENRW = "<< it [ LENRW ]<< dl ; 60 cout <<"LENIW = "<< it [ LENIW ]<< dl ; 62 `tf ("\nReal Statistics.. \n\n"); 63 cout <<"HU = "<< rt [ HU ]<< dl ; 64 cout <<"HCUR = "<< rt [ HCUR ]<< dl ; 65 cout <<"TCUR = "<< rt [ TCUR ]<< dl ; 66 cout <<"TOLSF = "<< rt [ TOLSF ]<< dl ; 68 i( ty = DENSE ) { 69 `tf ("\nDense Statistics.. \n\n"); 70 cout <<"DENSE_NJE = "<< it [ DENSE_NJE ]<< dl ; 71 cout <<"DENSE_LRW = "<< it [ DENSE_LRW ]<< dl ; 72 cout <<"DENSE_LIW = "<< it [ DENSE_LIW ]<< dl ; 74 i( ty = BAND ) { 75 `tf ("\nBand Statistics.. \n\n"); 76 cout <<"BAND_NJE = "<< it [ BAND_NJE ]<< dl ; 77 cout <<"BAND_LRW = "<< it [ BAND_LRW ]<< dl ; 78 cout <<"BAND_LIW = "<< it [ BAND_LIW ]<< dl ; 80 i( ty = DIAG ) { 81 `tf ("\nDiag Statistics.. \n\n"); 82 cout <<"DIAG_LRW = "<< it [ DIAG_LRW ]<< dl ; 83 cout <<"DIAG_LIW = "<< it [ DIAG_LIW ]<< dl ; 85 i( ty = SPGMR ) { 86 `tf ("\nSpgmr Statistics.. \n\n"); 87 cout <<"SPGMR_NPE = "<< it [ SPGMR_NPE ]<< dl ; 88 cout <<"SPGMR_NLI = "<< it [ SPGMR_NLI ]<< dl ; 89 cout <<"SPGMR_NPS = "<< it [ SPGMR_NPS ]<< dl ; 90 cout <<"SPGMR_NCFL = "<< it [ SPGMR_NCFL ]<< dl ; 91 cout <<"SPGMR_LRW = "<< it [ SPGMR_LRW ]<< dl ; 92 cout <<"SPGMR_LIW = "<< it [ SPGMR_LIW ]<< dl ; 94 } } 97  gCvodeCompڒt :: $tupPams () 99 -> `addReque ( LrSv ); 100 -> `addReque ( N ); 101 -> `addReque ( t0 ); 102 -> `addReque ( ); 103 -> `addReque ( ab ); 104 -> `addReque ( d ); 105 -> `addReque ( lmm ); 106 -> `addReque ( ); 107 -> `addReque ( ); 108 -> `addReque ( ask ); 109 -> `addReque ( y ); 110 -> `addReque ( gs_ty ); 111 -> `addReque ( maxl ); 112 -> `addReque ( tIn ); 113 -> `addReque ( r ); 114 -> `addReque ( mu ); 115 -> `addReque ( mlow ); 116 -> `addReque ( PrtSts ); 117 -> `addReque ( UDeuJac ); 118 } } 122  gCvodeCompڒt :: $ () 124  ed ; 126 ed = PO -> `tPr ("N", N -> vue ); 127 i( ed <= 0) 128 unub = ue ; 130 PO -> `tPr ("t0", t0 -> vue ); 132 PO -> `tPr ("d", d -> vue ); 133 PO -> `tPr ("maxl", maxl -> vue ); 135 PO -> `tPr ("tIn", tIn -> vue ); 137 PO -> `tPr ("mu", mu -> vue ); 139 PO -> `tPr ("mlow", mlow -> vue ); 141 PO -> `tPr ("PrtSts", PrtSts -> vue ); 143 PO -> `tPr ("UDeuJac", UDeuJac -> vue ); 147 ed = PO -> `tPr ("LrSv", LrSv -> vue ); 148 i( ed ==-1) 149 unub = ue ; 151 ed = PO -> `tPr ("ask", ask -> vue ); 152 i( ed ==-1) 153 unub = ue ; 155 ed = PO -> `tPr ("lmm", lmm -> vue ); 156 i( ed ==-1) 157 unub = ue ; 159 ed = PO -> `tPr ("", -> vue ); 160 i( ed ==-1) 161 unub = ue ; 163 ed = PO -> `tPr ("", -> vue ); 164 i( ed ==-1) 165 unub = ue ; 167 ed = PO -> `tPr ("y", y -> vue ); 168 i( ed ==-1) 169 unub = ue ; 171 ed = PO -> `tPr ("gs_ty", gs_ty -> vue ); 172 i( ed ==-1) 173 unub = ue ; 175 PO -> `tPr ("r", r -> vue ); 177 PO -> `tPr ("", -> vue ); 179 PO -> `tPr ("ab", ab -> vue ); 181 isInlized = ue ; 182 } } 185  gCvodeCompڒt :: $lo () 188  NEQ ; 189 NEQ = PO -> `gPr ("N"); 191 ATOL_V = `N_VNew ( NEQ , NULL ); 192 y0 = `N_VNew ( NEQ , NULL ); 193 Y = `N_VNew ( NEQ , NULL ); 195 isAoc = ue ; 197 } } 200  gCvodeCompڒt :: $t_l (* v ) 202  NEQ ; 203 NEQ = PO -> `gPr ("N"); 205  i =0; i< NEQ ; i++) 206 `N_VIth ( y0 , i )= v [i]; 208 } } 212  gCvodeCompڒt :: $t_ab (* v ) 214  ITOL , NEQ ; 216 NEQ = PO -> `gPr ("N"); 217 ITOL = PO -> `gPr ("itol"); 219 i( ITOL = SS ) 220 PO -> `tPr ("ab", * v ); 223  i =0; i< NEQ ; i++) 224 `N_VIth ( ATOL_V , i )= v [i]; 227 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/CvodeComponent_wrapper.cpp 3  ~"CvodeCompڒt.h " 4  ~"CONV_NS.h " 8 CONV_NS ( Compڒt * _CvodeCompڒt () { 9 CONV_NS ( Compڒt * wk ; 10 CvodeCompڒt * compڒt ; 11 compڒt = w CvodeCompڒt (); 12 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 13  wk ; 16 ** gCompڒtLi () { 17 * li [2]; 18 li [0] = "create_CvodeComponent CvodeComponent"; 19 li [1] = 0; 20  li ; 24  id []="$Id: CvodeComponent_wrapper.cpp,v 1.1 2004/05/18 19:17:12 bill Exp $"; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/my_PropObj.cpp 4  ~"my_PrObj.h " 11 gmy_PrObj :: $my_PrObj () 13 E = NULL ; 14 it = w [ OPT_SIZE ]; 15 rt = w [ OPT_SIZE ]; 18 it [ MAXORD ] = 5 ; 19 it [ MXSTEP ] = 500 ; it[ MXHNIL ] = 10 ; 20 rt [ H0 ] = 0.0 ;t[ HMAX ] = 1.0e+200 ; 21 rt [ HMIN ] = 0.0 ; 22 } } 25 gmy_PrObj ::~ $my_PrObj () 27 de [] it ; 28 de [] rt ; 29 } } 33  gmy_PrObj :: $tPr ( rg key , sg v ) 35  def_v ; 36 i( key =="errfp"){ 37 `t_ ( v ); 38 def_v = 0 ; 41 i( key =="lmm") 42 def_v = `t_lmm ( v ); 43 i( key =="iter") 44 def_v = `t_ ( v ); 45 i( key =="itask") 46 def_v = `t_ask ( v ); 47 i( key =="itol") 48 def_v = `t_ ( v ); 49 i( key =="LinearSolver") 50 def_v = `t_ty ( v ); 51 i( key =="pretype") 52 def_v = `t_y ( v ); 53 i( key == "gs_type") 54 def_v = `t_gs_ty ( v ); 58 s [ key ]= def_v ; 61  def_v ; 62 } } 65  gmy_PrObj :: $tPr ( rg key ,  v ) 67 s [ key ] = v ; 68  v ; 69 } } 72  gmy_PrObj :: $tPr ( rg key ,  v ) 74 s_d [ key ] = v ; 76 } } 78  gmy_PrObj :: $tPr ( rg key , sg dex ,  v ) 80 i( key != "iopt") { 81 <<"Ncܻdgrݔtyake indexndg i"<< dl ; 84 i( dex == "MAXORD") 85 it [ MAXORD ] = v ; 86 i( dex == "MXSTEP") 87 it [ MXSTEP ] = v ; 88 i( dex == "MXHNIL") 89 it [ MXHNIL ] = v ; 91 <<"Ncܻdg index f it"<< dl ; 95 } } 97  gmy_PrObj :: $tPr ( rg key , sg dex ,  v ) 99 i( key != "ropt") { 100 <<"Ncܻdgrݔtyake indexnd doub"<< dl ; 104 i( dex == "HMAX") 105 rt [ HMAX ] = v ; 106 i( dex == "H0") 107 rt [ H0 ] = v ; 108 i( dex == "HMIN") 109 rt [ HMIN ] = v ; 111 <<"Ncܻdg index f܄t"<< dl ; 115 } } 120  gmy_PrObj :: $gPr ( rg key ) 122  s [ key ]; 123 } } 125  gmy_PrObj :: $gPr ( rg key , & he ) 127 he = s [ key ]; 129 } } 132  gmy_PrObj :: $gPr ( rg key , & he ) 134 he = s_d [ key ]; 136 } } 139  gmy_PrObj :: $gPr ( rg key , FILE *& he ) 141 i( key !="errfp") { 142 <<"No correspondingroperty gives value ofype fileointer" 143 << dl ; 146 he = E ; 148 } } 150  gmy_PrObj :: $gPr ( rg key , *& he , * size ) 152 i( key != "iopt"){ 153 <<"No correspondingroperty gives value ofypeong int* " 154 << dl ; 158 he = this -> it ; 159 * size = OPT_SIZE ; 161 } } 163  gmy_PrObj :: $gPr ( rg key , *& he , * size ) 165 i( key != "ropt"){ 166 <<"No correspondingroperty gives value ofype double* " 167 << dl ; 171 he = this -> rt ; 172 * size = OPT_SIZE ; 174 } } 177  gmy_PrObj :: $t_ask ( rg sk ) 179  ITASK ; 181 i( sk =="NORMAL") 182 ITASK = NORMAL ; 183 i( sk =="ONE_STEP") 184 ITASK = ONE_STEP ; 186 <<"Not valid CVODE mode. " 187 <<"Mkghcompڒunub."<< dl ; 190  ITASK ; 191 } } 192  gmy_PrObj :: $t_lmm ( rg lmm ) 194  LMM ; 196 i( lmm =="ADAMS") 197 LMM = ADAMS ; 198 i( lmm =="BDF") 199 LMM = BDF ; 201 <<"Not validinear multistep method. " 202 <<"Mkghcompڒunub."<< dl ; 205  LMM ; 206 } } 208  gmy_PrObj :: $t_ ( rg ) 211  ITOL ; 212 i( =="SS") 213 ITOL = SS ; 214 i( =="SV") 215 ITOL = SV ; 217 <<"Not validype ofolerance. " 218 <<"Mkghcompڒunub."<< dl ; 222  ITOL ; 223 } } 225  gmy_PrObj :: $t_ ( rg ) 227  ITER ; 229 i( =="FUNCTIONAL") 230 ITER = FUNCTIONAL ; 231 i( =="NEWTON") 232 ITER = NEWTON ; 234 i( . `ngth ()!=0) { 235 <<"Not valid iteration method. " 236 <<"Mkghcompڒunub."<< dl ; 240  ITER ; 241 } } 243  gmy_PrObj :: $t_y ( rg y ) 245  PRETYPE ; 247 i( y =="NONE") 248 PRETYPE = NONE ; 249 i( y =="LEFT") 250 PRETYPE = LEFT ; 251 i( y =="RIGHT") 252 PRETYPE = RIGHT ; 253 i( y =="BOTH") 254 PRETYPE = BOTH ; 256 i( y . `ngth ()!=0) { 257 <<"Not valid SPGMRretype. " 258 <<"Mkghcompڒunub."<< dl ; 262  PRETYPE ; 263 } } 265  gmy_PrObj :: $t_gs_ty ( rg gs_ty ) 267  GS_TYPE ; 269 i( gs_ty =="MODIFIED_GS") 270 GS_TYPE = MODIFIED_GS ; 271 i( gs_ty =="CLASSICAL_GS") 272 GS_TYPE = CLASSICAL_GS ; 274 i( gs_ty . `ngth ()!=0) { 275 <<"Not valid SPGMR gs_type. " 276 <<"Mkghcompڒunub."<< dl ; 281  GS_TYPE ; 282 } } 284  gmy_PrObj :: $t_ty ( rg w_ty ) 286  ty ; 288 i( w_ty =="DENSE") 289 ty = DENSE ; 290 i( w_ty =="BAND") 291 ty = BAND ; 292 i( w_ty =="DIAG") 293 ty = DIAG ; 294 i( w_ty =="SPGMR") 295 ty = SPGMR ; 297 <<"Not validinear solver. " 298 <<"Mkghcompڒunub."<< dl ; 301  ty ; 302 } } 304  gmy_PrObj :: $t_ ( rg e ) 306 i( e != "") { 307 E = `fݒ ( e . `c_r (), "a+"); 308 i( E = NULL ) 309 <<"Notbleo openrror file." 310 <<"Eܠwbwrtءdd ouut"<< dl ; 312 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/my_cca_mat.cpp 1  ~"my_c_m.h " 3 gmy_c_m :: $my_c_m () 5 da = NULL ; 6 size =0; 7 } } 9 gmy_c_m :: $my_c_m ( sz ) 11 size = sz ; 13 } } 15 gmy_c_m ::~ $my_c_m () 17 da = NULL ; 18 } } 20 ** gmy_c_m :: $g_da () 22  da ; 23 } } 25  gmy_c_m :: $g_size () 27  size ; 28 } } 29  gmy_c_m :: $t_size ( sz ) 31 size = sz ; 32 } } 34  gmy_c_m :: $put_da (** uff ,  sz ) 36 i( sz ! size ) { 37 cout <<"E: sizomrixnd iudd'age"<< dl ; 40 da = uff ; 42 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/CvodeComponent/src/my_cca_vec.cpp 1  ~"my_c_vec.h " 3 gmy_c_vec :: $my_c_vec () 5 da = NULL ; 6 size = 0; 7 } } 9 gmy_c_vec :: $my_c_vec ( sz ) 11 size = sz ; 13 } } 15 gmy_c_vec ::~ $my_c_vec () 17 da = NULL ; 18 } } 20 * gmy_c_vec :: $g_da () 22  da ; 23 } } 25  gmy_c_vec :: $g_size () 27  size ; 28 } } 30  gmy_c_vec :: $t_size ( sz ) 32 size = sz ; 33 } } 35  gmy_c_vec :: $put_da (* uff ,  sz ) 37 i( sz ! size ) { 38 cout <<"E: sizove܇nd iudd'age"<< dl ; 42 da = uff ; 45 } } 47  gmy_c_vec :: $cy_da ( c_vec * ) 49 * lol ; 51 i( size ! -> `g_size ()) 54 lol = -> `g_da (); 56  i = 0; i< size ; i++) 57 da [ i ]= lol [i]; 59 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Error/include/Errest_JR.h 10 #ide __Ee_JRHSn__ 11  #__Ee_JRtHSn__ ) 14  ~"c.h " 15  ~"dPts.h " 18  ~"jc++/jc++.h " 19  ~"jc++/ut/jc++ut.h " 20  ~"ms/msSr.h " 21  ~"pt/sutIs.h " 24  ~"VeFldVb.h " 25  ~"AMRPt.h " 28  ~ 29  ~ 30  ~ 31  ~ 32 usg mea gd ; 35  ~"EEAndRegridPt.h " 38  ~"mpi.h " 41  ~"CONV_NS.h " 45 ass gEe_JR : public vtu CONV_NS ( Compڒt ), 46 public vtu gEEAndRegridPt 48 gpublic : 50 Ee_JR () ; 52 gvtu ~ Ee_JR () ; 53 vtu  tSvis CONV_NS ( Svis * pSvc ) ; 56 vtu  Regrid VeFldVb ** pVFV ,  nVFVs , 57 VeFldVb * p_r ) ; 60 vtu  RegridFLevs ( VeFldVb ** pVFV ,  nVFVs , 61 VeFldVb * p_r ,  v ) ; 63 vtu  ChgeThshd ( thshd ) ; 65 vtu  SVFEE  dex ); 67 give : 69  SupPams () ; 70  In () ; 72  CcuϋEs VeFldVb ** pVFV ,  nVFVs , VeFldVb * p_r ) ; 79  EvMaxSrs ( VeFldVb * p_y_vfv , * p_max_vs , 80  max_v_now ) ; 81  GMaxOnPch (* p_da , cڡ * p_she , * p_max_vs ,  nvs ) ; 82  MyMax ( a ,  b ,  c ,  d ) ; 87  EvEs ( VeFldVb * p_y_vfv , * p_max_vs , 88 VeFldVb * p_E ,  max_v_now ) ; 89  EEOnPch (* p_da , cڡ * p_she , cڡ * p_max_vs , 90  nvs , * p_r ,  dim ); 91  AlytilEOnPch (* p_da , cڡ * p_she ,  nvs , 92 * p_r , cڡ * p_lbbc , cڡ * p_ubbc , 93  dim ) ; 95  PrtEStiics ( VeFldVb * p_E ,  max_v_now ) ; 97 bo UVFEE  iv ) ; 99  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz , 100  nvs ) 103  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 106 bo RegridNesry  v ) ; 108 bo gis_lized , gis_hod ; 109  gthshd ; 110  gmax_v , ggrid_rv ; 111 bo gcvg_grid ; 112  gv_to_u_f_r_e ; 114 CONV_NS ( Svis * gpSvc ; 115 AMRPt * gpAMRPt ; 118 CfigubPamPt * g ; 119 DoubPam * gp_thshd_m ; 120 IPam * gp_grid_rv_m , * gp_r_e_v_dex_m ; 121 BoPam * gp_cvg_grid_m ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Error/src/Errest_JR.cpp 8  ~ 9  ~"Ee_JR.h " 11 gEe_JR :: $Ee_JR () 13 is_lized = l ; 14 is_hod = l ; 15 pSvc = 0 ; 16 p_thshd_m = 0 ; 17 p_grid_rv_m = 0 ; 18 p_cvg_grid_m = 0 ; 19 p_r_e_v_dex_m = 0 ; 20 } } 22 gEe_JR ::~ $Ee_JR () 24 i( p_thshd_m !0 de _threshold_param ; 25 i( p_grid_rv_m !0 de _regrid_interval_param ; 26 i( p_cvg_grid_m !0 de _convergence_regrid_param ; 27 i( p_r_e_v_dex_m !0 de _err_est_var_index_param ; 29 pSvc = NULL ; = NULL ; 31 is_hod = l ; 32 is_lized = l ; 33 } } 36  gEe_JR :: tSvis CONV_NS ( Svis * svc ) 38 i svc = NULL ) 40 pSvc -> aPt ( "MyMesh" ) ; 41 gpSvc -> moveProvidesPt ("Error_Estimation_and_Regrid") ; 42 gpSvc -> moveProvidesPt ("CONFIG") ; 47 gthis -> gpSvc = svc ; 50 gsvc -> giUsPt svc -> PtInfo ("cSvc", 52 CfigubPamFay * gf = 53 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 54 CHECKDC f ); 55 g = = f -> CfigubPamPt (); 56 gsvc -> addProvidesPt ( , 57 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 58 SupPams () ; 59 gsvc -> aPt ("cSvc"); 60 gsvc -> uegiUsPt ("cSvc"); 63 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 66 gsvc -> addProvidesPt ( this , svc -> PtInfo ("Error_Estimation_and_Regrid", 70  gEe_JR :: $SupPams () 72 p_thshd_m = w `DoubPam ("Magnitude_of_Threshold_Parameter", 77 p_grid_rv_m = w `IPam ( "Regrid_Interval", "Regriding interval", 80 p_cvg_grid_m = w `BoPam ( "Convergence_Refinement", 83 ue ); 84 p_r_e_v_dex_m = w `IPam ( "Error_Est_Scalar_Index", 89 -> `tBchT ( " Regridinghreshold " ); 90 -> `addReque p_thshd_m ) ; 91 -> `addReque p_grid_rv_m ) ; 92 -> `addReque p_cvg_grid_m ) ; 93 -> `addReque p_r_e_v_dex_m ); 95 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Error/src/Errest_patch.cpp 8  ~ 9  ~ 10  ~"Ee_JR.h " 12  #MAX ( A , B (A> (B? (A: (B) ) 14 bo gEe_JR :: $UVFEE  iv ) 17 i v_to_u_f_r_e =-1 )  ( ue ) ; 19 i v_to_u_f_r_e = iv ) 20  ue ); 22  l ); 23 } } 25  gEe_JR :: $EEOnPch (* p_da , cڡ * p_she , cڡ * p_max_vs , 26  nvs , * p_r ,  dim ) 29  #EPS 1.0e-7 ) 31  nx , ny , nz ; 32  dim ) 35 nx = p_she [0] ; ny = 1 ; nz = 1 ; 38 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 41 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 44 << " From Ee_JR::EEOnPch(: Wrg dimsi " << dl ; 47   iv = 0; iv < nvs ; ivar++ ) 49 i `UVFEE iv ) = ue ) 51   k = 0; k < nz ; k++ ) 53   j = 0 ; j < ny ; j++ ) 55   i = 0 ; i < nx ; i++ ) 57  ijk = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 58  1jk = `fdx ( i +1, j , k , iv , nx , ny , nz , nvs ) ; 59  im1jk = `fdx ( i -1, j , k , iv , nx , ny , nz , nvs ) ; 60  ijp1k = `fdx ( i , j +1, k , iv , nx , ny , nz , nvs ) ; 61  ijm1k = `fdx ( i , j -1, k , iv , nx , ny , nz , nvs ) ; 62  ijkp1 = `fdx ( i , j , k +1, iv , nx , ny , nz , nvs ) ; 63  ijkm1 = `fdx ( i , j , k -1, iv , nx , ny , nz , nvs ) ; 65  rx ; 66 i i == 0) 67 rx = 2.0 * ( p_da [ 1jk ] -_da[ ijk ]) ; 68 i i =( nx -1) ) 69 rx = 2.0 * ( p_da [ ijk ] -_da[ im1jk ]) ; 71 rx = ( p_da [ 1jk ] -_da[ im1jk ]) ; 72 rx = `bs Дrx / ( p_max_vs [ iv ] + EPS ) ) ; 74  ry ; 75 i dim > 1 ) 77 i j == 0 ) 78 ry = 2.0 * ( p_da [ ijp1k ] -_da[ ijk ]) ; 79 i j =( ny -1) ) 80 ry = 2.0 * ( p_da [ ijk ] -_da[ ijm1k ]) ; 82 ry = p_da [ ijp1k ] -_da[ ijm1k ] ; 83 ry = `bs Дry / ( p_max_vs [ iv ] + EPS ) ) ; 86 ry = 0.0 ; 88  rz ; 89 i dim > 2 ) 91 i k == 0 ) 92 rz = 2.0 * ( p_da [ ijkp1 ] -_da[ ijk ]) ; 93 i k =( nz -1) ) 94 rz = 2.0 * ( p_da [ ijk ] -_da[ ijkm1 ]) ; 96 rz = p_da [ ijkp1 ] -_da[ ijkm1 ] ; 97 rz = `bs Дrz / ( p_max_vs [ iv ] + EPS ) ) ; 100 rz = 0.0 ; 104  dex_1v = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 105 p_r [ dex_1v ] = `MyMax rx , ry , rz ,_error[index_1var] ) ; 111 } } 113  gEe_JR :: $MyMax ( a ,  b ,  c ,  d ) 115  j = `MAX ( a , b ) ; 116 j = `MAX (j, c ) ; 117  ( `MAX ( j , d ) ) ; 118 } } 120  gEe_JR :: $AlytilEOnPch (* p_da , cڡ * p_she , 121  nvs , * p_r , 122 cڡ * p_lbbc , cڡ * p_ubbc , 123  dim ) 133  nx , ny , nz ; 134  t_i , d_i , t_j , d_j , t_k , d_k ; 135  dim ) 138 nx = p_she [0] ; ny = 1 ; nz = 1 ; 141 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 144 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 147 << " From Ee_JR::EEOnPch(: Wrg dimsi " << dl ; 150  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1); 151 * p_cr_s = pAMRPt -> `GC_g_cr_suti () ; 152 * p_doma_exs = pAMRPt -> `GC_g_doma_exs () ; 153  cr_dx = ( p_doma_exs [1] -_doma_exs[0]/ p_cr_s [0] ; 154  cr_dy = ( p_doma_exs [3] -_doma_exs[2]/ p_cr_s [1] ; 156  maxvs_possib = pAMRPt -> `GC_g_max_vs (); 157  femt = pAMRPt -> `GC_g_femt_ (); 158  max_femt = `pow ( femt , (( maxvs_possib -1) ) ; 159  fe_dx = cr_dx / max_femt ; 160  fe_dy = cr_dy / max_femt ; 170  f_dius = 0.3 ; 171 #ide RKC_AND_SPATIAL_INTERP_CONV_TEST 179  #NCOARSE_CELLS 2 ) 180  my_v = ( maxvs_possib -1- `log10 ( ride /og10( femt ) ; 181 my_v = `rt ( my_lev ) ; 183 f_dius - NCOARSE_CELLS * my_v * cr_dx ; 186   iv = 0 ; iv < nvs ; ivar++ ) 187   k = 0 ; k < nz ; k++ ) 188   j = 0 ; j < ny ; j++ ) 189   i = 0 ; i < nx ; i++ ) 191  my_x = ( p_lbbc [0] + i * ride ) * fe_dx ; 192  my_y = ( p_lbbc [1] + j * ride ) * fe_dy ; 194  mid_x = 0.5 * ( p_doma_exs [0] +_domain_extents[1] ) ; 195  mid_y = 0.5 * ( p_doma_exs [2] +_domain_extents[3] ) ; 197  lx = p_doma_exs [1] -_domain_extents[0] ; 198  ly = p_doma_exs [3] -_domain_extents[2] ; 202  dex_1v = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 204 i( `bs ( my_x - mid_x / lx < f_dius && (bs( my_y - mid_y / ly 9  ~ 10  ~ 11  ~"Ee_JR.h " 13  #MAX ( A , B (A> (B? (A: (B; ) 15  gEe_JR :: $PrtEStiics ( VeFldVb * p_E ,  max_v_now ) 17 * p_max_r__vs = w [ max_v_now +1 ] ; 19   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 23  size_of_ve = 1 ;  abs_max_v [1] ; 24 p_E -> `g_abs_max_ve__v ( abs_max_v , & size_of_ve , v ) ; 25 p_max_r__vs [ v ] = abs_max_v [0] ; 28 i( pAMRPt -> `GC_g_oc_me ()) == 0 ) 30 cout << " Ee_JR::PrtEStiics(Max. Eܠڃachev : " << dl ; 31   v = 0;ev < ( max_v_now +1);evel++) 32 cout << " Lev " << v << " : " << p_max_r__vs [ev ] << dl ; 33 cout << dl ; 35 de [] p_max_r__vs ; 36 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Error/src/Errest_workers.cpp 8  ~ 9  ~ 10  ~"Ee_JR.h " 12  gEe_JR :: $ChgeThshd  thsh ) 14 i is_lized = l ) 16 `In () ; 17 is_lized = ue ; 20 thshd = thsh ; 21 } } 25  gEe_JR :: $SVFEE  dex ) 27 v_to_u_f_r_e = dex ; 28 } } 32  gEe_JR :: $Regrid VeFldVb ** pVFV ,  nVFVs , 33 VeFldVb * p_E ) 36 #ide NDEBUG 37 i p_E =0 ) cout << "Ee_JR::Regrid(: E VFV NULL " << dl ; 40 i is_lized = l ) 42 `In () ; 43 is_lized = ue ; 46  v = 0 ; 47 i `RegridNesry ( v = l ) ( 0 ) ; 49 i( pAMRPt -> `GC_g_oc_me ()) == 0 ) 50 cout << dl << " Errest_JR::Regrid()....." < `GC_grid_above_thshd p_E , v , thshd ); 57 } } 62  gEe_JR :: $RegridFLevs VeFldVb ** pVFV ,  nVFVs , 63 VeFldVb * p_E ,  v ) 66 #ide NDEBUG 67 i p_E =0 ) cout << "Ee_JR::RegridFLevs(: E VFV NULL " << dl ; 70 i is_lized = l ) 72 `In () ; 73 is_lized = ue ; 76 i `RegridNesry ( v = l ) ( 0 ) ; 78 i( pAMRPt -> `GC_g_oc_me ()) == 0 ) 79 cout << dl 81 << " Refgev " << v << " ouo" << pAMRPt -> `GC_g_fe_v () 82 << dl ; 84 `CcuϋEs pVFV , nVFVs , p_E ) ; 86 pAMRPt -> `GC_grid_above_thshd p_E , v , thshd ); 89 } } 93  gEe_JR :: $In () 95 pAMRPt = dymic_ < AMRPt *> pSvc -> `gPt ( "MyMesh" ) ) ; 96 max_v = pAMRPt -> `GC_g_max_vs () ; 97 thshd = p_thshd_m -> vue ; 98 grid_rv = p_grid_rv_m -> vue ; 99 cvg_grid = p_cvg_grid_m -> vue ; 100 v_to_u_f_r_e = p_r_e_v_dex_m -> vue ; 101 } } 105  gEe_JR :: $CcuϋEs VeFldVb ** pVFV ,  nVFVs , 106 VeFldVb * p_E ) 110  max_v_now = pAMRPt -> `GC_g_fe_v (); 111   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 113  Time = pAMRPt -> `GC_cut_time v , ACEMa ); 114 p_E -> `fl_wh_cڡt 0.0, Time , v , ACEMa ) ; 117   iVFV = 0; iVFV < nVFVs ; iVFV++ ) 120 VeFldVb * p_y_vfv = (*( pVFV + iVFV )) ; 123  nvs = p_y_vfv -> `g_ve_size () ; 124 * p_max_vs = w [ nvs ]; 126 `EvMaxSrs ( p_y_vfv , p_max_vs , max_v_now ) ; 128 `EvEs ( p_y_vfv , p_max_vs , p_E , max_v_now ); 130 de [] p_max_vs ; 134 `PrtEStiics ( p_E , max_v_now ); 136 `MPI_Brr pAMRPt -> `GC_g_compu_nodes_communit () ); 138 } } 140 bo gEe_JR :: $RegridNesry  v ) 143  s_k = pAMRPt -> `GC_s_comed ( v , ACEMa ) ; 144 bo sw = ue ; 147 i( s_k % grid_rv !0 sw = l ; 150  cut_time = pAMRPt -> `GC_cut_time ( v , ACEMa ) ; 151 i( s_k =0&& ( cut_time !0 sw = l ; 155 i( v +1> ( max_v - 1 sw = l ; 157  sw ) ; 159 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Error/src/Errest_workers2.cpp 9  ~ 10  ~ 11  ~"Ee_JR.h " 13  gEe_JR :: $EvMaxSrs ( VeFldVb * p_y_vfv , * p_max_vs , 14  max_v_now ) 22  nvs = p_y_vfv -> `g_ve_size () ; 23   i = 0 ; i < nvs ; i++ p_max_vs [i] = 0.0; 25  dummy = nvs ; 26 p_y_vfv -> `g_abs_max_ve ( p_max_vs , & dummy ); 27 i dummy ! nvs ) 28 << " Errest_JR::EvalMaxScalars() max scalar vector !=o. of vars " 29 << dl << ush ; 30 } } 32  gEe_JR :: $EvEs ( VeFldVb * p_y_vfv , * p_max_vs , 33 VeFldVb * p_E ,  max_v_now ) 37  dim = pAMRPt -> `GC_g_dimsi (); 38  nvs = p_y_vfv -> `g_ve_size () ; 39  ngrids = p_y_vfv -> `g_numb_of_comp_grids () ; 40   v = 0 ;ev < ( max_v_now +1) ;evel++ ) 42  Time = pAMRPt -> `GC_cut_time v , ACEMa ); 43   igrid = 0; igrid < ngrids ; igrid++) 45 i p_y_vfv -> `exis ( Time , v , igrid = ue ) && 46 p_E -> `exis ( Time , v , igrid = ue ) ) 48 cڡ * s = p_y_vfv -> `g_da_y_size ( Time , v , igrid , ACEMa ) ; 49 * p_da = p_y_vfv -> `g_da ( Time , v , igrid , ACEMa ); 50 * p_E_da = p_E -> `g_da ( Time , v , igrid , ACEMa ) ; 51 i p_E_da == 0 ) 53 << " Failedo get Error dataointer in Errest_JR::EvalErrors() " 54 << "ug whoudognythg" << dl ; 59 cڡ * s_r = p_E -> `g_da_y_size ( Time , v , igrid , ACEMa ) ; 60 bo diff_sizes = l ; 61  idim = 0 ; idim < dim ; idim++) 62 i s_r [ idim ] ! s [idim] ) diff_sizes = ue ; 63 i( diff_sizes = ue ) 65 << " Errest_JR::EvalErrors() :rrornd varatches have " 66 << " dif sizes. Rug whoudognythg " << dl ; 70 i cvg_grid = ue ) 72 cڡ * p_lbbc = p_E -> `g_low_bbc ( Time , v , igrid , ACEMa ); 73 cڡ * p_ubbc = p_E -> `g_u_bbc ( Time , v , igrid , ACEMa ); 74 `AlytilEOnPch ( p_da , s , nvs , p_E_da , p_lbbc , p_ubbc , dim ) ; 77 `EEOnPch ( p_da , s , p_max_vs , nvs , p_E_da , dim ) ; 82 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Error/src/Errest_wrapper.cpp 1  ~"Ee_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _Ee_JR () 8 CONV_NS ( Compڒt * wk ; 9 Ee_JR * compڒt ; 10 compڒt = w Ee_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_Errest_JR Errest_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Filters/include/Filter.h 4 #ide __Fr_h__ 5  #__Fr_h__ ) 8  ~ 9  ~ 10 usg mea gd ; 13  ~"c.h " 14  ~"dPts.h " 17  ~"jc++/ut/jc++ut.h " 18  ~"ms/msSr.h " 19  ~"pt/sutIs.h " 22  ~"AMRPt.h " 23  ~"VeFldVb.h " 24  ~"SAMRCsumPt.h " 27  ~"CONV_NS.h " 29 ass gFr : public vtu CONV_NS ( Compڒt ), 30 public vtu gSAMRCsumPt 33 gpublic : 36 Fr (); 39 gvtu ~ Fr (); 42 vtu  tSvis ( CONV_NS ( Svis * svc ); 50 vtu  compu VeFldVb * pVFV ) ; 52 give : 54 vtu  CvtFromBlockToSided ( VeFldVb * pVFV ) ; 56 vtu  CvtFromSidedToBlock VeFldVb * pVFV ) ; 58  oss_tch ( nx ,  ny ,  nz ,  nvs ,  ldx ,  ldy ,  ldz , 59 * da ,  dim ) ; 61  VeFldVb * p ); 63 CONV_NS ( Svis * gpsvc ; 64 AMRPt * gAMR ; 67 * gmesh_r ; 68 bo gisInlized ; 69  gcr_dx , gcr_dy , gcr_dz , gfe_dx , gfe_dy , gfe_dz ; 72 BoPam * gp_uŻd_put_m ; 73 IPam * gd_m ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Filters/include/filter_include.h 2 !! EXPFIL frs the comg mrix usg exic fe difn 3 ! mhod by swpg through ch dei . The fr is ly ju 4 ! a mrix ; the dissi gmrix . They basiy wk like gthis : 5 ! Fd the mrix , y gU_unft , d d this to g - 7 ! gU_ft = ( I - pha_D * D )* U_unft 9 ! whe pha_D is ju  slg d D i the dissi mrix . 10 ! D is bad fe - difn divives like d ^{2 n }/ dx ^{2n}. 11 ! A 10 th - d fr us a D bad d ^{10}/ dx ^{10} cs . 12 ! The frs e of $d ( id  the ri `d (iord/2) 13 ! the boundy . Rememb - h ri ,h cs e symmric 14 ! but n  the boundy cs . Howev ,h dissi mrix 15 ! is symmric . Das e NASA TP -3484. The fr ds n que 16 ! g s . Somee could check the numb of g cl d th 17 ! u the fr bounds gly . I have ly uded ds 18 ! 2,4,6,8,10, d 12 he . If somee wts , 14,16,18,nd 20 e 19 ! avaab . 21 ! Ne th the y has some dimsi . It may be sd to 22 ! this route some subt of th `doma a tch ). Fuh , e 23 ! may wish to fr ly a pti , wdow , wh th tch . 25 ! INPUT 26 ! - Funi to be fd 27 ! disb - Dissi mrix cffics  the boundy grid pots 28 ! disi - Dissi mrix cffics  the ri grid pots 29 ! fiL - Glob codes  doma `bounds ( Le side of x - dei ) 30 ! fiR - Glob codes  doma `bounds ( Right side of x - dei ) 31 ! fjL - Glob codes  doma `bounds ( Le side of y - dei ) 32 ! fjR - Glob codes  doma `bounds ( Right side of y - dei ) 33 ! fkL - Glob codes  doma `bounds ( Le side of z - dei ) 34 ! fkR - Glob codes  doma `bounds ( Right side of z - dei ) 35 ! piL - Glob codes  f `tch ( Le side of x - dei ) 36 ! piR - Glob codes  f `tch ( Right side of x - dei ) 37 ! pjL - Glob codes  f `tch ( Le side of y - dei ) 38 ! pjR - Glob codes  f `tch ( Right side of y - dei ) 39 ! pkL - Glob codes  f `tch ( Le side of z - dei ) 40 ! pkR - Glob codes  f `tch ( Right side of z - dei ) 41 ! wiL - Glob codes  `wdow ( Le side of x - dei ) 42 ! wiR - Glob codes  `wdow ( Right side of x - dei ) 43 ! wjL - Glob codes  `wdow ( Le side of y - dei ) 44 ! wjR - Glob codes  `wdow ( Right side of y - dei ) 45 ! wkL - Glob codes  `wdow ( Le side of z - dei ) 46 ! wlR - Glob codes  `wdow ( Right side of z - dei ) 47 ! - E ag 49 ! OUTPUT 50 ! - Fd funi 52 ! LOCAL 53 ! pha - Slg cڡt  Dissi mrix cffics 54 ! d - High - wavumb cڋ of to be moved 55 ! id - Fr d 56 ! idd2 - Fr d divided by 2 57 ! idd2p1 - Fr d divided by 2 + 1 58 ! ka - Ii fr c width right of , i . e . 59 ! ....|.... is 8 th - d fr , i9 wide , d ka =4 60 ! k1 - ka + 1 61 ! kb - Width of fr boundy c - 1 62 ! k1 - Le boundy fr c emt 63 ! k1a - Right boundy fr c emt 64 ! k2 - Le boundy fr c numb 65 ! k2a - Right boundy fr c numb 66 ! nx , ny , nz - numb of grid pots dei x , y , d z , eivy . 67 ! ift_x - Fg to fr x - `dei (0 = No (1 = Yes ) 68 ! ift_y - Fg to fr y - `dei (0 = No (1 = Yes ) 69 ! ift_z - Fg to fr z - `dei (0 = No (1 = Yes ) 71 ! ERROR MESSAGES 72 ! = 0: No rs 73 ! < 0: Es 75 ! = -10 => The ngth of the x - doma is smr th h fr c 76 ! = -20 => The ngth of the y - doma is smr th h fr c 77 ! = -30 => The ngth of the z - doma is smr th h fr c 81 imic ne 83 g i , j , k 84 g ift_x , ift_y , ift_z 85 g , _cff 86 g id 87 g k1 88 g k1a 89 g k2 90 g k2a 91 g ka 92 g k1 93 g kb 94 g kmag 95 g m 96 g nx , ny , nz 97 g fiL , fiR , fjL , fjR , fkL , fkR 98 g piL , piR , pjL , pjR , pkL , pkR 99 g wiL , wiR , wjL , wjR , wkL , wkR 100 g iL , iR , jL , jR , kL , kR 101 g bi , bj , bk 102 g width 104 *8 `d ( fiL : fiR , fjL : fjR , fkL : fkR ) 105 *8 ` ( fiL : fiR , fjL : fjR , fkL : fkR ) 107 *8 `disi (7), `disb (6,12) 109 g k1d , k2d 111 cha *60 r , r_cff @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Filters/include/fortran_names.h 4 #i defed ( PGI ) 5  #FORTNAME ( A A## _ ) 7  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Filters/src/Filter.cpp 1  ~"Fr.h " 6 gFr :: $Fr () 9 AMR = NULL ; 10 isInlized = l ; 12 p_uŻd_put_m = w `BoPam ("unprepared_input", 14 "uŻd_put", l ); 15 d_m = w `IPam ("Filter_Order", 19 cout << "Fcڡrued" << dl ; 20 } } 23 gFr ::~ $Fr () 25 de p_uŻd_put_m ; 26 de d_m ; 27 isInlized = l ; 29 cout <<"Fderoyed"<< dl ; 30 } } 33  gFr :: tSvis ( CONV_NS ( Svis * svc ) 35 i( svc = NULL ) 37 psvc -> aPt ("AMR"); 38 gpsvc -> moveProvidesPt ("HOFilters") ; 39 gpsvc -> moveProvidesPt ("CONFIG"); 44 gthis -> gpsvc = svc ; 46 gsvc -> giUsPt ( svc -> PtInfo 49 CfigubPamFay * gf = 50 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 51 CfigubPamPt * g = f -> CfigubPamPt (); 52 g -> tBchT (" Filterarameters " ); 53 g -> addReque ( p_uŻd_put_m ) ; 54 g -> addReque ( d_m ) ; 55 gsvc -> aPt ("cSvc"); 56 gsvc -> uegiUsPt ("cSvc"); 58 gsvc -> addProvidesPt ( this , svc -> PtInfo ("HOFilters", 60 gsvc -> addProvidesPt ( , svc -> PtInfo ("CONFIG", "ParameterPort", 0) ); 62 gsvc -> giUsPt ( svc -> PtInfo ("AMR", "AMRPort", 0) ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Filters/src/Filter_priv.cpp 6  ~"Fr.h " 7  ~"mh.h " 10  gFr :: $ VeFldVb * p ) 12 AMR = dymic_ < AMRPt *> ( psvc -> `gPt ("AMR")); `CHECKDC ( AMR ) ; 14  f = AMR -> `GC_g_femt_ () ; 15  M = AMR -> `GC_g_fe_v () ; 16 * ext = AMR -> `GC_g_doma_exs () ; 17 * s = AMR -> `GC_g_cr_suti () ; 18 MeshClotiTy A = p -> `g_mesh_cloti_ty () ; 20 i A = VxCd ) 22 cr_dx = ( ext [1] -xt[0]/ ( s [0] - 1) ; 23 cr_dy = ( ext [3] -xt[2]/ ( s [1] - 1) ; 24 cr_dz = ( ext [5] -xt[4]/ ( s [2] - 1) ; 26 i A = ClCd ) 28 cr_dx = ( ext [1] -xt[0]/ s [0] ; 29 cr_dy = ( ext [3] -xt[2]/ s [1] ; 30 cr_dz = ( ext [5] -xt[4])/ s [2] ; 34 << " Fr::(). Mesh cloti oty " << A 35 << " imemd. Doghg " << dl ; 38 fe_dx = cr_dx / `pow ( f , ( M ) ; 39 fe_dy = cr_dy / `pow ( f , ( M ) ; 40 fe_dz = cr_dz / `pow ( f , ( M ) ; 42 isInlized = ue ; 44 } } 48  gFr :: $CvtFromBlockToSided VeFldVb * pVFV ) 50  ũchs ; 51  nvs ; 52  ns =1; 53  ev , t , size ; 54 * dim ; 56  mp ; 57 * block , * ride ; 59 ev = AMR -> `GC_g_fe_v (); 61 ũchs = pVFV -> `g_numb_of_comp_grids (); 62 nvs = pVFV -> `g_ve_size (); 64  l = 0; < ev ;++) 66 t = AMR -> `GC_cut_time ( l , ACEMa ); 68  c = 0; c < ũchs ; c++) 70 i pVFV -> `exis ( t , l , c = ue ) 72 dim = cڡ_ <*> pVFV -> `g_da_y_size ( t , l , c , ACEMa ) ); 74  nx = dim [0] ;  ny = dim[1];  nz = dim[2]; 75 i nx <0 )x = 1 ; i ny <0ny = 1 ; i nz <= 0 )z = 1; 76 ns = nx * ny * nz ; 78 ride = pVFV -> `g_da ( t , l , c , ACEMa ); 80  size = nvs * ns ; 81 block = w [ size ]; 82  z = 0; z < size ; z++ block [z]= ride [z]; 84  j = 0; j < ns ; j++) 85  k = 0; k < nvs ; k++) 86 ride [ j * nvs + k ] = block [j+k* ns ]; 88 de [] block ; 94 } } 100  gFr :: $CvtFromSidedToBlock VeFldVb * pVFV ) 102  ũchs ; 103  nvs ; 104  ns =1; 105  ev , t , size ; 106 * dim ; 108  mp ; 109 * block , * ride ; 111 ev = AMR -> `GC_g_fe_v (); 113 ũchs = pVFV -> `g_numb_of_comp_grids (); 115  l = 0; < ev ;++) 117 t = AMR -> `GC_cut_time ( l , ACEMa ); 119  c = 0; c < ũchs ; c++) 121 i pVFV -> `exis ( t , l , c = ue ) 123 nvs = pVFV -> `g_ve_size (); 124 dim = cڡ_ <*> pVFV -> `g_da_y_size ( t , l , c , ACEMa ) ); 126  nx = dim [0] ;  ny = dim[1];  nz = dim[2]; 127 i nx <0 )x = 1 ; i ny <0ny = 1 ; i nz <= 0 )z = 1; 128 ns = nx * ny * nz ; 130 block = pVFV -> `g_da ( t , l , c , ACEMa ); 131  size = nvs * ns ; 132 ride = w [ size ]; 133  z = 0; z < size ; z++) 134 ride [ z ] = block [z]; 136  j = 0; j < ns ; j++) 137  k = 0; k < nvs ; k++) 138 block [ j + k * ns ] = ride [j* nvs +k]; 140 de [] ride ; 146 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Filters/src/Filter_workers.cpp 1  ~"Fr.h " 2  ~"f܌_mes.h " 3  ~"mh.h " 15 #ifde G77 16 #unde FORTNAME ( A ) 17  #FORTNAME ( A A## _ ) 22  FORTNAME ( expf (* , * ift_x , * ift_y , * ift_z , * id , 23 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 24 * piL , * piR , * pjL , * pjR , * pkL , * pkR , 25 * wiL , * wiR , * wjL , * wjR , * wkL , * wkR , 26 * , * r , * _cff , * r_cff ) ; 29  Fr :: $oss_tch ( nx ,  ny ,  nz ,  nvs ,  ldx , 30  ldy ,  ldz , * da ,  dim ) 32  ftx = 1, fty = 0, ftz = 0; 33 i dim > 1 ) fty = 1 ; 34 i dim > 2 ) ftz = 1 ; 36  fiL = 0, fjL = 0, fkL = 0 ; 37  fiR = nx -1, fjR = ny -1, fkR = nz -1 ; 39  piL = fiL , piR = fiR , pjL = fjL , pjR = fjR , pkL = fkL , pkR = fkR ; 42 bo _oss = l ; 43  id = d_m -> vue ; 44 i piR - piL + 1 < id +1 ) _oss = ue ; 45 i( dim > 1&& ( pjR - pjL + 1 < id +1 _oss = ue ; 46 i( dim > 2&& ( pkR - pkL + 1 < id +1 _oss = ue ; 47 i _oss = ue ) 49 << " Filter::process_patch() Cannotrocessoo-narrowatch " 50 << nx << " X " << ny << " X " << nz << " wh " << id 51 << " ord snc. Doghg " << dl ; 56  offt = 0 ; 57  wiL = piL + offt ;  wiR = piR - offset ; 58  wjL = pjL + offt ;  wjR = pjR - offset ; 59  wkL = pkL + offt ;  wkR = pkR - offset ; 61  ns = nx * ny * nz ; 62  r [80], r_cff [80] ; 64   iv = 0; iv < nvs ; ivar++) 66  = 0, _cff = 0 ; 67 `FORTNAME ( expf )&( da [ iv * ns ]), & ftx , & fty , & ftz , & id , 68 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 69 & piL , & piR , & pjL , & pjR , & pkL , & pkR , 70 & wiL , & wiR , & wjL , & wjR , & wkL , & wkR , 71 & , r , & _cff , r_cff ); 72 i( !0 ) || ( _cff != 0) ) 74 << "Filter::process_patch(). Filter subroutineeturnsrror ! " 75 << " Fr = " << << " filter coefficientrror = " 76 << _cff << dl ; 77 i != 0 ) (0) ; 78 i _cff != 0 ) (0) ; 82 } } 85  Fr :: $compu VeFldVb * pVFV ) 87 i(! isInlized ` pVFV ); 89 i AMR -> `GC_g_oc_me (=AMR-> `GC_g_ma_node_nk () ) 90 cout << " Filter::compute() Filtering ....Level " ; 93 i p_uŻd_put_m -> vue = ue ) `CvtFromBlockToSided ( pVFV ) ; 95  ev = AMR -> `GC_g_fe_v (); 96  ũchs = pVFV -> `g_numb_of_comp_grids (); 97  nvs = pVFV -> `g_ve_size (); 99  num_dim = AMR -> `GC_g_dimsi () ; 100  f = AMR -> `GC_g_femt_ () ; 101  maxv = AMR -> `GC_g_max_vs () ; 102  oc = AMR -> `GC_g_oc_me (); 103  TimeOnCrMesh = AMR -> `GC_cut_time (0, ACEMa ) ; 104 TimeOnCrMesh = TimeOnCrMesh / ( `pow () f , maxv -1 ); 106  l = 0; < ev ;++) 108 i AMR -> `GC_g_oc_me (=AMR-> `GC_g_ma_node_nk () ) 109 cout << l << " " ; 111  t = AMR -> `GC_cut_time ( l , ACEMa ); 112  c = 0; c < ũchs ; c++) 114 i pVFV -> `exis ( t , l , c = ue ) 116 * dim = cڡ_ <*> pVFV -> `g_da_y_size ( t , l , c , ACEMa ) ); 118  nx = dim [0] ;  ny = dim[1];  nz = dim[2]; 119 i nx <0 )x = 1 ; i ny <0ny = 1 ; i nz <= 0 )z = 1; 121 * mesh_r = pVFV -> `g_da ( t , l , c , ACEMa ); 123 cڡ * lbbc = pVFV -> `g_low_bbc ( t , l , c , ACEMa ) ; 124  ldx = 0.0 , ldy = 0.0, ldz = 0.0 ; 125 ldx = cr_dx / `pow () f , () l ) ; 126 i num_dim > 1 ) ldy = cr_dy / `pow () f , () l ) ; 127 i num_dim > 2 ) ldz = cr_dz / `pow () f , () l ) ; 129 `oss_tch ( nx , ny , nz , nvs , ldx , ldy , ldz , mesh_r , num_dim ) ; 133 i AMR -> `GC_g_oc_me (=AMR-> `GC_g_ma_node_nk () ) 134 cout << dl ; 137 i p_uŻd_put_m -> vue = ue ) `CvtFromSidedToBlock ( pVFV ); 139 `MPI_Brr AMR -> `GC_g_compu_nodes_communit () ) ; 140 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Filters/src/Filter_wrapper.cpp 1  ~"Fr.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _Fr () { 7 CONV_NS ( Compڒt * wk ; 8 Fr * compڒt ; 9 compڒt = w Fr (); 10 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 11  wk ; 14 ** gCompڒtLi () { 15 * li [2]; 16 li [0] = "create_Filter Filter"; 17 li [1] = 0; 18  li ; 22  id []="$Id: Filter_wrapper.cpp,v 1.1 2004/05/17 17:57:50 bill Exp $"; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Integrator/include/RK2_Recursive_Integrator.h 11 #ide __TimeAdv_JRHSn__ 12  #__TimeAdv_JRHSn__ ) 15  ~"c.h " 16  ~"dPts.h " 19  ~"jc++/jc++.h " 20  ~"jc++/ut/jc++ut.h " 21  ~"ms/msSr.h " 22  ~"pt/sutIs.h " 25  ~"AMRPt.h " 26  ~"VeFldVb.h " 29  ~ 30  ~ 31  ~ 32  ~ 33 usg mea gd ; 36  ~"TimeAdvPt.h " 39  ~"mpi.h " 40  ~"DiffPt.h " 41  ~"EEAndRegridPt.h " 42  ~"SAMRCsumPt.h " 43  ~"PrݔtsPt.h " 46  ~"CONV_NS.h " 50 ass gRK2_Recursive_Iegt : public vtu CONV_NS ( Compڒt ), 51 public vtu gTimeAdvPt 53 gpublic : 56 RK2_Recursive_Iegt () ; 59 gvtu ~ RK2_Recursive_Iegt () ; 61 vtu  tSvis CONV_NS ( Svis * svc ) ; 64 vtu  GSbTime  dt_guess , VeFldVb ** pVFV , 65  nVFV ) ; 68 vtu  STimeAdv  dt , VeFldVb ** pVFV ,  nVFV ) ; 71 vtu  Adv  dt , VeFldVb ** pVFV ,  nVFV ) ; 74 vtu  EndTimeAdv  dt , VeFldVb ** pVFV ,  nVFV ) ; 77 vtu  AlyBoundyCdis ( dt , VeFldVb ** pVFV , 78  nVFV ); 80 give : 83 CONV_NS ( Svis * pSvc ; 86 CfigubPamPt * g ; 87 DoubPam * gp_fourr_no_m ; 88 DoubPam * gp_diffcff_e_m ; 90 bo gis_lized , gis_hod ; 91 * gp_doma_exs , gfourr_no , gdiffcff_e ; 92 * gp_cr_s , gmax_vs , gdim , gfemt , gfe_v_now ; 94 AMRPt * gp_AMRPt ; 95 DiffPt * gp_DiffPt ; 96 EEAndRegridPt * gp_EEAndRegridPt ; 97 SAMRCsumPt * gpTPhi ; 98 PrݔtsPt * gpMaxDC ; 100 um { gPREDICTOR , gCORRECTOR } tIegti_Pha ; 102  RecursiveIeg VeFldVb ** pVFV ,  nVFV ,  dt , 103  v ) ; 105  DoUpdeOnLev VeFldVb ** pVFV ,  nVFV ,  iVFV , 106  dt ,  v ,  my_time ,  time_size , 107 Iegti_Pha pha ) ; 109  DoPdiOnPch * p_da1 , cڡ * p_lbbc1 , cڡ * p_ubbc1 , 110 cڡ * p_she1 ,  nvs , 111 * p_da2 , cڡ * p_lbbc2 , cڡ * p_ubbc2 , 112 cڡ * p_she2 ,  nvs ,  dt ) ; 114  DoCܻOnPch * p_da1 , cڡ * p_lbbc1 , cڡ * p_ubbc1 , 115 cڡ * p_she1 ,  nvs , 116 * p_da2 , cڡ * p_lbbc2 , cڡ * p_ubbc2 , 117 cڡ * p_she2 ,  nvs ,  dt ) ; 119  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 121  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 124  SupPams () ; 126  In () ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Integrator/src/Integ.cpp 8  ~ 9  ~"RK2_Recursive_Iegt.h " 11 gRK2_Recursive_Iegt :: $RK2_Recursive_Iegt () 13 is_lized = l ; 14 is_hod = l ; 15 } } 17 gRK2_Recursive_Iegt ::~ $RK2_Recursive_Iegt () 19 de p_fourr_no_m ; 20 de p_diffcff_e_m ; 22 p_doma_exs = NULL ; 23 p_cr_s = NULL ; 24 pSvc = NULL ; = NULL ; 25 p_AMRPt = NULL ; p_DiffPt = NULL ; 27 is_hod = l ; 28 is_lized = l ; 29 } } 31  gRK2_Recursive_Iegt :: tSvis CONV_NS ( Svis * svc ) 33 i svc = NULL ) 35 pSvc -> aPt ( "MyMesh" ) ; 36 gpSvc -> aPt ( "DiffFlux" ); 37 gpSvc -> aPt ( "Regrider" ); 38 gpSvc -> aPt ( "MaxDiffCoeff" ); 39 gpSvc -> aPt ( "TPhi" ); 40 gpSvc -> moveProvidesPt ("IntegratePort") ; 41 gpSvc -> moveProvidesPt ("CONFIG") ; 46 gthis -> gpSvc = svc ; 49 gsvc -> giUsPt svc -> PtInfo ("cSvc", 51 CfigubPamFay * gf = 52 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 53 CHECKDC f ); 54 g = = f -> CfigubPamPt (); 55 gsvc -> addProvidesPt ( , 56 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 57 SupPams () ; 58 gsvc -> aPt ("cSvc"); 59 gsvc -> uegiUsPt ("cSvc"); 62 gsvc -> addProvidesPt ( this , svc -> PtInfo ("IntegratePort", "TimeAdvancePort", 66 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 67 gsvc -> giUsPt svc -> PtInfo ("DiffFlux", "DiffPort", 0) ) ; 68 gsvc -> giUsPt svc -> PtInfo ("Regrider", "ErrorEstAndRegridPort", 0) ) ; 69 gsvc -> giUsPt svc -> PtInfo ("TPhi", "SAMRConsumerPort", 0) ) ; 70 gsvc -> giUsPt svc -> PtInfo ("MaxDiffCoeff", "PropertiesPort", 0) ); 73  gRK2_Recursive_Iegt :: $SupPams () 75 p_fourr_no_m = w `DoubPam ("Fourier_No", 80 p_diffcff_e_m = w `DoubPam ("Estimate_of_Diff_Coeff", 86 -> `tBchT ( " Integrator Parameters " ); 87 -> `addReque p_fourr_no_m ); 88 -> `addReque p_diffcff_e_m ) ; 89 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Integrator/src/Integ_numal.cpp 7  ~ 8  ~ 9  ~"RK2_Recursive_Iegt.h " 11  gRK2_Recursive_Iegt :: $DoUpdeOnLev VeFldVb ** pVFV ,  nVFV , 12  iVFV ,  dt ,  v , 13  my_time ,  time_size , 14 Iegti_Pha pha ) 16 #ide NDEBUG 17 cout << dl << "Started RK2_Recursive_Integrator::DoUpdateOnLevel() " < `GC_g_oc_me ()) == 0 ) 23 cout << " Updgev " << v << " f " << p_y_vfv -> `g_me (<< dl ; 25  ngrids = p_y_vfv -> `g_numb_of_comp_grids () ; 26  nvs = p_y_vfv -> `g_ve_size () ; 28   igrid = 0; igrid < ngrids ; igrid++ ) 30 i p_y_vfv -> `exis my_time , v , igrid ) = ue ) 33 * p_da1 = p_y_vfv -> `g_da my_time , v , igrid , ACEMa ); 34 cڡ * p_lbbc1 = p_y_vfv -> `g_low_bbc my_time , v , igrid , ACEMa ); 35 cڡ * p_ubbc1 = p_y_vfv -> `g_u_bbc my_time , v , igrid , ACEMa ); 36 cڡ * p_she1 = p_y_vfv -> `g_da_y_size my_time , v , igrid , ACEMa ); 38 * p_da2 = p_y_vfv -> `g_da my_time + time_size , v , igrid , 39 ACEMa ); 40 cڡ * p_lbbc2 = p_y_vfv -> `g_low_bbc my_time + time_size , v , 41 igrid , ACEMa ); 42 cڡ * p_ubbc2 = p_y_vfv -> `g_u_bbc my_time + time_size , v , 43 igrid , ACEMa ); 44 cڡ * p_she2 = p_y_vfv -> `g_da_y_size my_time + time_size , 45 v , igrid , ACEMa ); 47 i pha = PREDICTOR ) 48 `DoPdiOnPch p_da1 , p_lbbc1 , p_ubbc1 , p_she1 , nvs , 49 p_da2 , p_lbbc2 , p_ubbc2 , p_she2 , nvs , dt ) ; 51 `DoCܻOnPch p_da1 , p_lbbc1 , p_ubbc1 , p_she1 , nvs , 52 p_da2 , p_lbbc2 , p_ubbc2 , p_she2 , nvs , dt ) ; 56 p_y_vfv -> `synchri my_time + time_size , v , ACEMa ); 57 p_y_vfv -> `boundy_upde my_time + time_size , v , ACEMa ); 59 #ide NDEBUG 60 cout << "Fished RK2_Recursive_Iegt::DoUpdeOnLev(" << dl ; 64 } } 66  gRK2_Recursive_Iegt :: $DoPdiOnPch * p_da1 , cڡ * p_lbbc1 , 67 cڡ * p_ubbc1 , cڡ * p_she1 , 68  nvs , * p_da2 , 69 cڡ * p_lbbc2 , cڡ * p_ubbc2 , 70 cڡ * p_she2 ,  nvs2 ,  dt ) 72 #ide NDEBUG 73 cout << dl << " Doing RK2_Recursive_Integrator::DoPredictorOnPatch() " < dsiz" << nx << "," << ny << "," << nz << "," << nvs 81 << " ) " << dl ; 82  nx2 = p_she2 [0] ;  ny2 =_she2[1] ;  nz2 =_shape2[2] ; 83 i nx2 <0 )x2 = 1 ; i ny2 <0 )y2 = 1 ; i nz2 <= 0 )z2 = 1 ; 84 i( nx ! nx2 || ( ny ! ny2 || ( nz ! nz2 || ( nvs ! nvs2 ) ) 86 cout << "RK2_Recursive_Integrator::DoPredictorOnPatch(). Shapesotight. Terminate." 87 << dl ; 88 cout << nx << " " << ny << " " << nz << " " << nvs << dl ; 89 cout << nx2 << " " << ny2 << " " << nz2 << " " << nvs2 << dl ; 90 `rme () ; 94  size = nx * ny * nz * nvs ; 95 * p_diffusi_da = w [ size ] ; `as (_diffusion_data != 0 ); 96  i = 0; i < size ; i++ p_diffusi_da [i] = 0 ; 98 p_DiffPt -> `compu p_da1 , p_lbbc1 , p_ubbc1 , p_she1 , nvs , p_diffusi_da , 99 p_cr_s , p_doma_exs , max_vs , femt , dim ); 101   k = 0; k < nz ; k++ ) 102   j = 0; j < ny ; j++ ) 104   i = 0; i < nx ; i++ ) 105   iv = 0; iv < nvs ; ivar++ ) 107  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 108 p_da2 [ dex ] = p_da1 [dex] + dt * ( p_diffusi_da [index] ) ; 111 de [] p_diffusi_da ;_diffusion_data = 0 ; 113 #ide NDEBUG 114 cout << " DڐRK2_Recursive_Iegt::DoPdiOnPch(" << dl < `compu p_da1 , p_lbbc1 , p_ubbc1 , p_she1 , nvs , p_diff_da1 , 140 p_cr_s , p_doma_exs , max_vs , femt , dim ); 142 p_DiffPt -> `compu p_da2 , p_lbbc2 , p_ubbc2 , p_she2 , nvs , p_diff_da2 , 143 p_cr_s , p_doma_exs , max_vs , femt , dim ); 145   k = 0; k < nz ; k++ ) 146   j = 0; j < ny ; j++ ) 147   i = 0; i < nx ; i++ ) 148   iv = 0; iv < nvs ; ivar++ ) 150  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 151 p_da2 [ dex ] = p_da1 [dex] + 0.5 * dt * ( p_diff_da1 [index] + 152 p_diff_da2 [ dex ] ) ; 155 de [] p_diff_da1 ; 156 de [] p_diff_da2 ; 158 #ide NDEBUG 159 cout << " DڐRK2_Recursive_Iegt::DoCܻOnPch(" << dl ; 163 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Integrator/src/Integ_workers.cpp 8  ~ 9  ~ 10  ~"RK2_Recursive_Iegt.h " 12  #MAX ( A , B ((A> (B)? (A: (B) ) 14  gRK2_Recursive_Iegt :: $GSbTime  dt_guess , 15 VeFldVb ** pVFV ,  nVFV ) 17 i is_lized = l ) 19 `In () ; 20 is_lized = ue ; 25  dx = ( p_doma_exs [1] -_doma_exs[0] ) / ( p_cr_s [0] - 1) ; 26 fe_v_now = ( p_AMRPt -> `GC_g_fe_v () ) ; 27  dx_fe_now = dx / `pow ( femt , ( fe_v_now ); 30 i pTPhi !0 ) && ( pMaxDC != 0) ) 32 diffcff_e = 0.0 ; 33  iVFV = 0; iVFV < nVFV ; iVFV++) 35 VeFldVb * p_y_vfv = pVFV [ iVFV ] ; 36 pTPhi -> `compu p_y_vfv ) ; 38  dummy = 0 ; 39 pMaxDC -> `GDoubs ("MaximumDiffusiCffic", & dummy , 1); 40 diffcff_e = `MAX (diffcff_e, dummy ) ; 44  dt_fe = fourr_no * dx_fe_now * dx_fe_now / diffcff_e ; 45  dt_cr = dt_fe * `pow ( femt , ( fe_v_now ); 47  dt_cr_glob ; 48 MPI_Comm comm_mp = p_AMRPt -> `GC_g_compu_nodes_communit () ; 49 `MPI_Aλdu & dt_cr , & dt_cr_glob , 1, MPI_DOUBLE , MPI_MIN , comm_mp ) ; 51  dt_cr_glob ); 52 } } 54  gRK2_Recursive_Iegt :: $In () 56 fourr_no = p_fourr_no_m -> vue ; 57 diffcff_e = p_diffcff_e_m -> vue ; 60 p_AMRPt = dymic_ < AMRPt *> pSvc -> `gPt ( "MyMesh" ) ) ; 61 p_DiffPt = dymic_ < DiffPt *> pSvc -> `gPt ( "DiffFlux" ) ) ; 62 pTPhi = dymic_ < SAMRCsumPt *> ( pSvc -> `gPt ("TPhi") ) ; 63 pMaxDC = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("MaxDiffCoeff") ); 65 p_EEAndRegridPt = dymic_ < EEAndRegridPt *> 66 pSvc -> `gPt ( "Regrider" ) ) ; 67 i( p_EEAndRegridPt = NULL ) 69 << " RK2_Recursive_Integrator::Init() : Portotcquired !!erminate " 70 << dl << ush ; 71 `rme () ; 73 p_doma_exs = p_AMRPt -> `GC_g_doma_exs () ; 74 p_cr_s = p_AMRPt -> `GC_g_cr_suti () ; 75 max_vs = p_AMRPt -> `GC_g_max_vs () ; 76 dim = p_AMRPt -> `GC_g_dimsi () ; 77 femt = p_AMRPt -> `GC_g_femt_ () ; 78 } } 80  gRK2_Recursive_Iegt :: $STimeAdv  dt , VeFldVb ** pVFV , 81  nVFV ) 84 } } 86  gRK2_Recursive_Iegt :: $EndTimeAdv  dt , VeFldVb ** pVFV , 87  nVFV ) 90 } } 92  gRK2_Recursive_Iegt :: $AlyBoundyCdis ( dt , 93 VeFldVb ** pVFV , 94  nVFV ) 97 } } 99  gRK2_Recursive_Iegt :: $Adv  dt_cr , VeFldVb ** pVFV , 100  nVFV ) 102 i is_lized = l ) 104 `In () ; 105 is_lized = ue ; 108 `RecursiveIeg pVFV , nVFV , dt_cr , 0 ) ; 111 } } 113  gRK2_Recursive_Iegt :: $RecursiveIeg VeFldVb ** pVFV , 114  nVFV ,  dt ,  v ) 116  no_s ; 118 i v == 0 ) 119 no_s = 1 ; 121 no_s = femt ; 123   s = 0; ir< no_s ; iters++ ) 125 i( p_AMRPt -> `GC_g_oc_me ()=0 ) && ( v == 0) ) 126 cout << " RK2_Recursive_Iegt::RecursiveIeg(" << dl ; 135  my_time = p_AMRPt -> `GC_cut_time v , ACEMa ) ; 136  time_size = p_AMRPt -> `GC_time_size v , ACEMa ) ; 139 i( p_AMRPt -> `GC_g_oc_me ()=0 ) cout << dl << " Doingredictor" < `GC_g_oc_me ()=0 ) cout << " Dog cܻ" << dl ; 145   iVFV = 0; iVFV < nVFV ; iVFV++ ) 146 `DoUpdeOnLev pVFV , nVFV , iVFV , dt , v , my_time , time_size , CORRECTOR ) ; 149 my_time = p_AMRPt -> `GC_cut_time v , ACEMa ) ; 150 time_size = p_AMRPt -> `GC_time_size v , ACEMa ) ; 151 p_AMRPt -> `GC_Sync my_time + time_size , v ); 154 fe_v_now = p_AMRPt -> `GC_g_fe_v () ; 155 i v < fe_v_now ) 156 `RecursiveIeg pVFV , nVFV , dt / femt , v + 1 ) ; 160   iVFV = 0; iVFV < nVFV ; iVFV++ ) 161 (* pVFV + iVFV ))-> `cye_time_vs v ) ; 164 p_AMRPt -> `GC_emt_time_v v , ACEMa ) ; 168 i v < fe_v_now ) 170 my_time = p_AMRPt -> `GC_cut_time v , ACEMa ) ; 171   iVFV = 0; iVFV < nVFV ; iVFV++ ) 172 (* pVFV + iVFV ))-> `ri my_time , v +1, my_time,ev, NULL , 0, ACEMa ); 176 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/Integrator/src/Integ_wrapper.cpp 1  ~"RK2_Recursive_Iegt.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _RK2_Recursive_Iegt () 8 CONV_NS ( Compڒt * wk ; 9 RK2_Recursive_Iegt * compڒt ; 10 compڒt = w RK2_Recursive_Iegt (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_RK2_Recursive_Integrator RK2_Recursive_Integrator"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/include/PatchInfo.h 3 #ide PchInfoHSn 4  #PchInfoHSn ) 9 as cPchInfo 11 mpublic : 13 $PchInfo ({ lb = 0 ; ub = 0 ; she = 0; nems = 0 ; d = 0 ; } 14 ~ $PchInfo (){ lb = 0 ; ub = 0 ; she = 0; nems = 0 ; d = 0 ; } } 15  $SDa (* dd , cڡ * l , cڡ * u , cڡ * s , 16  n ,  t ) 18 d = dd ; lb = l ; ub = u ; she = s ; nems = n ; time = t ; 19 } } 21  $GDa (* & dd , * & l , * & u , * & s , & n , & t ) 23 dd = d ; 24 l = cڡ_ <*> ( lb ; u = cڡ_<*> ( ub ) ; 25 s = cڡ_ <*> ( she ; n = nems ; t = time ; 26 } } 28 give : 30 cڡ * lb , * gub , * gshe ; 31  gnems ; 32  gtime , * gd ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/include/RKC2_Recursive.h 9 #ide __RKC2_JRHSn__ 10  #__RKC2_JRHSn__ ) 13  ~"c.h " 14  ~"dPts.h " 17  ~"jc++/jc++.h " 18  ~"jc++/ut/jc++ut.h " 19  ~"ms/msSr.h " 20  ~"pt/sutIs.h " 23  ~"AMRPt.h " 24  ~"VeFldVb.h " 27  ~ 28  ~ 29  ~ 30  ~ 31 usg mea gd ; 34  ~"TimeAdvPt.h " 35  ~"TimePt.h " 41  ~"TimeIp.h " 44  ~"mpi.h " 45  ~"DiffPt.h " 46  ~"EEAndRegridPt.h " 47  ~"SAMRCsumPt.h " 48  ~"PrݔtsPt.h " 51  ~"CONV_NS.h " 59 ass gRKC2_Recursive : public vtu CONV_NS ( Compڒt ), 60 public vtu gTimeAdvPt , 61 public vtu gTimePt 63 gpublic : 66 RKC2_Recursive () ; 69 gvtu ~ RKC2_Recursive () ; 71 vtu  tSvis CONV_NS ( Svis * svc ) ; 74 vtu  GSbTime  dt_guess , VeFldVb ** pVFV , 75  nVFV ) ; 78 vtu  STimeAdv  dt , VeFldVb ** pVFV ,  nVFV ) ; 85 vtu  Adv  dt , VeFldVb ** pVFV ,  nVFV ) ; 88 vtu  EndTimeAdv  dt , VeFldVb ** pVFV ,  nVFV ) ; 91 vtu  AlyBoundyCdis ( dt , VeFldVb ** pVFV , 92  nVFV ); 94 vtu  g_time () ; 96 give : 99 CONV_NS ( Svis * pSvc ; 102 CfigubPamPt * g ; 103 DoubPam * gp_SatyFa_m ; 104 DoubPam * gp_diffcff_e_m ; 105 IPam * gp_nages_m ; 107 bo gis_lized , gis_hod ; 108 * gp_doma_exs , gSatyFa , gdiffcff_e ; 109 * gp_cr_s , gmax_vs , gdim , gfemt , gfe_v_now ; 110  gw [2], * gb , * gc , * gmu , * gnu , * gmu_b , * ggamma_b ; 111  giage , gnages , gs_ve , gno_s_ve ; 114 AMRPt * gp_AMRPt ; 115 DiffPt * gp_DiffPt ; 116 EEAndRegridPt * gp_EEAndRegridPt ; 117 SAMRCsumPt * gpTPhi ; 118 PrݔtsPt * gpMaxDC ; 121 TimeIp * gpTI ; 123  RecursiveIeg VeFldVb ** pVFV ,  nVFV ,  dt , 124  v ) ; 126  DoOSgeOnLev VeFldVb ** pVFV ,  nVFV ,  iVFV , 127  dt ,  v ,  my_time ,  time_size , 128  age_no ) ; 130  DoOSgeOnPch * p_cutda , cڡ * p_lbbc1 , cڡ * p_ubbc1 , 131 cڡ * p_she1 ,  nvs , 132 * p_tm1da , * p_tm2da , 133 * p_wda , cڡ * p_lbbc2 , cڡ * p_ubbc2 , 134 cڡ * p_she2 ,  nvs ,  dt ,  age_numb ) ; 136  MoveDaToFPJuThisLev VeFldVb ** pVFV ,  nVFV ,  iVFV , 137  v ,  Time ,  T ); 139  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 141  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 145  SupPams () ; 147  In () ; 149  SupRKCPams  num_ages ) ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/include/RKC_Internals.h 4 #ide RKC_IlsHSn 5  #RKC_IlsHSn ) 7  ~"mh.h " 8 usg mea gd ; 12 as cRKC_Ils 14 mpublic : 16 RKC_Ils ( ages ) ; 18 ~ $RKC_Ils () {} 20  `G_ws (* w ) ; 22  `G_bs (* b ) ; 24  `G_cs (* c ) ; 26  `T ( x ,  j ) ; 28 ive : 30  `Time ( x ,  j ) ; 32  `Timrime ( x ,  j ) ; 34  ns ; 35  s ; 36 } } ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/include/TimeInterp.h 15 #ide __TimeIp_JRHSn__ 16  #__TimeIp_JRHSn__ ) 19  ~ 20  ~ 21  ~"mh.h " 22 usg mea gd ; 25  ~"TimeIpީiPt.h " 28  ~"TimePt.h " 31  ~"PchInfo.h " 34 as cTimeIp : public vtu TimeIpީiPt 36 public : 39 TimeIp TimePt * p ) ; 41 TimeIp () ; 44 mvtu ~ TimeIp () ; 47  $STimePt TimePt * p { TP = ; } 50 vtu  `SPch ( time , * da , cڡ * lbbc , 51 cڡ * ubbc , cڡ * she , cڡ  nvs ); 54 vtu  $SWdow (cڡ * wdow_low_bound , 55 cڡ * wdow_u_bound , 56 cڡ * wdow_she ) 58 lbw = wdow_low_bound ; ubw = wdow_u_bound ; 59 sw = wdow_she ; 60 } } 63 vtu  compu  , * uc , cڡ * lbc , cڡ * ubc , 64 cڡ * shec , cڡ * do_em ); 67  $SStlDimsi ( d { dim = d ; } } 71  $SSgeNumb  s ) { iage = s ; } } 73  $DoRKCIp bo t ) { do_rkc_ = ; } } 75 give : 77 TimePt * TP ; 79 bo gdo_rkc_ ; 80  gdim , giage ; 81 cڡ * glbw , * gubw , * gsw ; 82 gve < gPchInfo *> gmy_tches ; 84  r (); 86  $fdx ( i ,  j ,  k ,  em ,  nx ,  ny ,  nz ,  nems ) 88  em * nz * ny * nx + k *ny*nx + j *nx + i ) ; 89 } } 91  maximum (cڡ  num1 , cڡ  num2 , cڡ  num3 ) ; 93  mimum (cڡ  num1 , cڡ  num2 , cڡ  num3 ) ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/src/RKC2_InternalParams.cpp 6  ~ 7  ~"RKC2_Recursive.h " 8  ~"RKC_Ils.h " 10  gRKC2_Recursive :: $SupRKCPams  num_ages ) 13 b = w [ num_ages +1] ; 14 c = w [ num_ages +1] ; 15 RKC_Ils * pRKC_I = w `RKC_Ils num_ages ) ; 17 pRKC_I -> `G_ws w ) ; 18 pRKC_I -> `G_bs b ) ; 19 pRKC_I -> `G_cs c ) ; 22 mu = w [ num_ages +1] ; 23  i = 2; i < num_ages ; i++ mu [i] = 2* b [i]* w [0]/b[i-1] ; 24 mu [1] = mu[0] = 0.0; 27 mu_b = w [ num_ages +1] ; 28  i = 2; i < num_ages ; i++ mu_b [i] = 2* b [i]* w [1]/b[i-1] ; 29 mu_b [0] = 0.0 ; mu_b[1] = b [1] * w [1] ; 32 nu = w [ num_ages +1] ; 33  i = 2; i < num_ages ; i++ nu [i] = - b [i] / b[i-2] ;u[0] =u[1] = 0.0 ; 35 gamma_b = w [ num_ages +1] ; 36  i = 2; i < num_ages ; i++) 38  TT = pRKC_I -> `T w [0], i -1 ) ; 39 gamma_b [ i ] = - mu_b [i] * ( 1 - b [i-1]* TT ) ; 41 gamma_b [0] = gamma_bar[1] = 0.0 ; 43 de pRKC_I ; 44 } } 46 gRKC_Ils :: $RKC_Ils ( ages ) 48 ns = ages ; 49 s = 2.0 / 13.0 ; 50 } } 52  gRKC_Ils :: $G_ws (* w ) 54 w [0] = 1 + s / ( ns *ns) ; 55 w [1] = `Time w[0], ns / `Timrime ( w[0],s ) ; 57 } } 59  gRKC_Ils :: $G_bs (* b ) 61  w0 = 1 + s / ( ns *ns) ; 62  j = 2; j < ns ; j++) 63 b [ j ] = `Timrime w0 , j/ `pow `Time ( w0, j), 2 ) ; 64 b [0] = b[1] = b[2] ; 66 } } 68  gRKC_Ils :: $G_cs (* c ) 70  w0 = 1 + s / ( ns *ns) ; 71  j = 2; j < ns ; j++) 72 c [ j ] = ( `Time w0 , ns ) / Tprime( w0, j) ) * 73 `Timrime w0 , j / Timrimew0, ns ) ) ; 74 c [1] = c[2] / `Time ( w0 , 2) ; c[0] = 0 ; 76 } } 78  gRKC_Ils :: $T ( x ,  j ) 80 i j == 0 )  (1.0) ; 81 i j =1 )  ( x ) ; 82  d = 2 * x * `T (x, j -1) - T(x, j-2) ; 83 ( d ) ; 84 } } 86  gRKC_Ils :: $Time ( x ,  j ) 88 i j == 0 ) ( 0.0 ) ; 89 i j == 1 ) ( 1.0 ) ; 90  d = 2 * ( `T ( x , j -1+ x * `Time (x, j-1) ) - Tprime(x, j-2) ; 91  d ); 92 } } 94  gRKC_Ils :: $Timrime ( x ,  j ) 96 i( j == 0) || (j == 1) ) ( 0.0 ) ; 97  d = 2 * ( 2 * `Time ( x , j -1+ x * `Timrime (x, j-1) ) - Tprimeprime(x, j-2) ; 98  d ) ; 99 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/src/RKC2_Recursive.cpp 6  ~ 7  ~"RKC2_Recursive.h " 9 gRKC2_Recursive :: $RKC2_Recursive () 11 is_lized = l ; 12 is_hod = l ; 13 pTI = w `TimeIp dymic_ < TimePt * > ( this ) ) ; 14 } } 16 gRKC2_Recursive ::~ $RKC2_Recursive () 18 i is_lized = ue ) 20 de p_SatyFa_m ; 21 de p_diffcff_e_m ; 22 de p_nages_m ; 24 de [] b ; d[] c ; d[] mu ; d[] nu ; 25 de [] mu_b ; d[] gamma_b ; 27 p_doma_exs = NULL ; 28 p_cr_s = NULL ; 29 pSvc = NULL ; = NULL ; 30 p_AMRPt = NULL ; p_DiffPt = NULL ; 33 de pTI ; 34 is_hod = l ; 35 is_lized = l ; 36 } } 43  gRKC2_Recursive :: tSvis CONV_NS ( Svis * svc ) 45 i svc == 0 ) 47 pSvc -> aPt ( "MyMesh" ) ; 48 gpSvc -> aPt ( "DiffFlux" ); 49 gpSvc -> aPt ( "Regrider" ); 50 gpSvc -> aPt ( "MaxDiffCoeff" ); 51 gpSvc -> aPt ( "TPhi" ); 52 gpSvc -> moveProvidesPt ("IntegratePort") ; 53 gpSvc -> moveProvidesPt ("TimeInterp") ; 54 gpSvc -> moveProvidesPt ("CONFIG") ; 59 gthis -> gpSvc = svc ; 62 gsvc -> giUsPt svc -> PtInfo ("cSvc", 64 CfigubPamFay * gf = 65 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 66 CHECKDC f ); 67 g = = f -> CfigubPamPt (); 68 gsvc -> addProvidesPt ( , 69 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 70 SupPams () ; 71 gsvc -> aPt ("cSvc"); 72 gsvc -> uegiUsPt ("cSvc"); 75 gsvc -> addProvidesPt ( this , svc -> PtInfo ("IntegratePort", "TimeAdvancePort", 78 gsvc -> addProvidesPt ( pTI , svc -> PtInfo ("TimeInterp", "TimeInterpolationPort", 82 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 83 gsvc -> giUsPt svc -> PtInfo ("DiffFlux", "DiffPort", 0) ) ; 84 gsvc -> giUsPt svc -> PtInfo ("Regrider", "ErrorEstAndRegridPort", 0) ) ; 85 gsvc -> giUsPt svc -> PtInfo ("TPhi", "SAMRConsumerPort", 0) ) ; 86 gsvc -> giUsPt svc -> PtInfo ("MaxDiffCoeff", "PropertiesPort", 0) ); 89  gRKC2_Recursive :: $SupPams () 91 p_SatyFa_m = w `DoubPam ("SafetyFactor", 96 p_diffcff_e_m = w `DoubPam ("Estimate_of_Diff_Coeff", 101 p_nages_m = w `IPam ("NumberOfRKCStages", "No. of RKC Stages =", 104 -> `tBchT ( " Integrator Parameters " ); 105 -> `addReque p_SatyFa_m ); 106 -> `addReque p_diffcff_e_m ) ; 107 -> `addReque p_nages_m ) ; 108 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/src/RKC2_Recursive_numal.cpp 5  ~ 6  ~"RKC2_Recursive.h " 8  #MAX ( A , B ((A> (B)? (A: (B) ) 10  gRKC2_Recursive :: $DoOSgeOnLev VeFldVb ** pVFV ,  nVFV , 11  iVFV ,  dt ,  v , 12  my_time ,  T ,  age_no ) 14 #ide NDEBUG 15 cout << dl << "Started RKC2_Recursive::DoOneStageOnLevel() " < `GC_g_oc_me ()) == 0 ) 25 i( age_no == 1) 26 cout << " Updgev " << v << " for " 27 << p_y_vfv -> `g_me (<< " sg" << age_no ; 29 cout << " " << age_no ; 30 i( age_no = nages cout << dl ; 33  ngrids = p_y_vfv -> `g_numb_of_comp_grids () ; 34  nvs = p_y_vfv -> `g_ve_size () ; 36   igrid = 0; igrid < ngrids ; igrid++ ) 38 i p_y_vfv -> `exis my_time , v , igrid ) = ue ) 41 * p_da1 = p_y_vfv -> `g_da my_time + j0 * T , v , 42 igrid , ACEMa ); 43 cڡ * p_lbbc1 = p_y_vfv -> `g_low_bbc my_time + j0 * T , v , 44 igrid , ACEMa ); 45 cڡ * p_ubbc1 = p_y_vfv -> `g_u_bbc my_time + j0 * T , v , 46 igrid , ACEMa ); 47 cڡ * p_she1 = p_y_vfv -> `g_da_y_size my_time + j0 * T , 48 v , igrid , ACEMa ); 51 * p_tm1da = p_y_vfv -> `g_da my_time + jm1 * T , v , 52 igrid , ACEMa ); 55 * p_tm2da = p_y_vfv -> `g_da my_time + jm2 * T , v , 56 igrid , ACEMa ); 59 * p_da2 = p_y_vfv -> `g_da my_time + j * T , v , igrid , 60 ACEMa ); 61 cڡ * p_lbbc2 = p_y_vfv -> `g_low_bbc my_time + j * T , v , 62 igrid , ACEMa ); 63 cڡ * p_ubbc2 = p_y_vfv -> `g_u_bbc my_time + j * T , v , 64 igrid , ACEMa ); 65 cڡ * p_she2 = p_y_vfv -> `g_da_y_size my_time + j * T , 66 v , igrid , ACEMa ); 68 `DoOSgeOnPch p_da1 , p_lbbc1 , p_ubbc1 , p_she1 , nvs , 69 p_tm1da , p_tm2da , 70 p_da2 , p_lbbc2 , p_ubbc2 , p_she2 , nvs , dt , 71 age_no ) ; 75 pTI -> `SSgeNumb ( age_no ); 76 p_y_vfv -> `synchri my_time + j * T , v , ACEMa ); 77 p_y_vfv -> `boundy_upde my_time + j * T , v , ACEMa ); 79 #ide NDEBUG 80 cout << "Fished RKC2_Recursive::DoUpdeOnLev(" << dl ; 84 } } 86  gRKC2_Recursive :: $DoOSgeOnPch * p_da1 , cڡ * p_lbbc1 , 87 cڡ * p_ubbc1 , cڡ * p_she1 , 88  nvs , * p_tm1da , 89 * p_tm2da , 90 * p_da2 , cڡ * p_lbbc2 , 91 cڡ * p_ubbc2 , cڡ * p_she2 , 92  nvs2 ,  dt ,  age_no ) 94 #ide NDEBUG 95 cout << dl << " Doing RKC2_Recursive::DoOneStageOnPatch() " < dsiz" << nx << "," << ny << "," << nz << "," << nvs 103 << " ) " << dl ; 104  nx2 = p_she2 [0] ;  ny2 =_she2[1] ;  nz2 =_shape2[2] ; 105 i nx2 <0 )x2 = 1 ; i ny2 <0 )y2 = 1 ; i nz2 <= 0 )z2 = 1 ; 106 i( nx ! nx2 || ( ny ! ny2 || ( nz ! nz2 || ( nvs ! nvs2 ) ) 108 cout << "RKC2_Recursive::DoOneStageOnPatch(). Shapesotight. Terminate." 109 << dl ; 110 cout << nx << " " << ny << " " << nz << " " << nvs << dl ; 111 cout << nx2 << " " << ny2 << " " << nz2 << " " << nvs2 << dl ; 112 `rme () ; 116  size = nx * ny * nz * nvs ; 118 * p_rhs1 = w [ size ] ; `as (_rhs1 != 0 ); 119  i = 0; i < size ; i++ ) p_rhs1 [i] = 0.0 ; 120 p_DiffPt -> `compu p_da1 , p_lbbc1 , p_ubbc1 , p_she1 , nvs , p_rhs1 , 121 p_cr_s , p_doma_exs , max_vs , femt , dim ); 123 * p_rhs_tm1 = w [ size ] ; `as (_rhs_tm1 != 0 ) ; 124  i = 0; i < size ; i++ ) p_rhs_tm1 [i] = 0.0 ; 125 p_DiffPt -> `compu p_tm1da , p_lbbc1 , p_ubbc1 , p_she1 , nvs , p_rhs_tm1 , 126 p_cr_s , p_doma_exs , max_vs , femt , dim ); 128  k = 0; k < nx * ny * nz * nvs ; k++) 129 p_da2 [ k ] = p_da1 [k] + mu [ age_no ] * ( p_tm1da [k] -_data1[k] ) 130 + nu [ age_no ] * ( p_tm2da [ k ] - p_da1 [k] ) 131 + mu_b [ age_no ] * dt * p_rhs_tm1 [ k ] 132 + gamma_b [ age_no ] * dt * p_rhs1 [ k ] ; 134 de [] p_rhs1 ;_rhs1 = 0 ; 135 de [] p_rhs_tm1 ;_rhs_tm1 = 0 ; 137 #ide NDEBUG 138 cout << " DڐRKC2_Recursive::DoOSgeOnPch(" << dl < `g_numb_of_comp_grids () ; 163  nvs = p_y_vfv -> `g_ve_size () ; 164  dim = p_AMRPt -> `GC_g_dimsi () ; 166   igrid = 0; igrid < ngrids ; igrid++ ) 168 i p_y_vfv -> `exis Time , v , igrid ) = ue ) 170 * sour = p_y_vfv -> `g_da ( Time + j * T , v , igrid , ACEMa ) ; 171 * de = p_y_vfv -> `g_da ( Time + T , v , igrid , ACEMa ) ; 173 cڡ * she = p_y_vfv -> `g_da_y_size Time + j * T , v , 174 igrid , ACEMa ) ; 176  nx = 1, ny = 1, nz = 1 ; 177 nx = `MAX 1, she [0] ) ; 178 i dim > 1 ) ny = `MAX (1, she [1]) ; 179 i dim > 2 ) nz = `MAX (1, she [2]) ; 181 i sour ! de ) 182   k = 0; k < nx * ny * nz * nvs ; k++ de [ k ] = sour [ k ] ; 194 sour = p_y_vfv -> `g_da ( Time , v , igrid , ACEMa ) ; 195 de = p_y_vfv -> `g_da ( Time + 2* T , v , igrid , ACEMa ) ; 196   k = 0; k < nx * ny * nz * nvs ; k++ de [ k ] = sour [ k ] ; 202 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/src/RKC2_Recursive_workers.cpp 9  ~ 10  ~ 11  ~"RKC2_Recursive.h " 13  #MAX ( A , B ((A> (B)? (A: (B) ) 15  gRKC2_Recursive :: $GSbTime  dt_guess , 16 VeFldVb ** pVFV ,  nVFV ) 18 i is_lized = l ) 20 `In () ; 21 is_lized = ue ; 26  dx = ( p_doma_exs [1] -_doma_exs[0] ) / ( p_cr_s [0] - 1) ; 27 fe_v_now = ( p_AMRPt -> `GC_g_fe_v () ) ; 28  dx_fe_now = dx / `pow ( femt , ( fe_v_now ); 31 i pTPhi !0 ) && ( pMaxDC != 0) ) 33 diffcff_e = 0.0 ; 34  iVFV = 0; iVFV < nVFV ; iVFV++) 36 VeFldVb * p_y_vfv = pVFV [ iVFV ] ; 37 pTPhi -> `compu p_y_vfv ) ; 39  dummy = 0 ; 40 pMaxDC -> `GDoubs ("MaximumDiffusiCffic", & dummy , 1); 41 diffcff_e = `MAX (diffcff_e, dummy ) ; 45  #CHEBYSHEV_FACTOR 0.653 ) 48  mbdaDt = 0.99 * CHEBYSHEV_FACTOR * nages *stages ; 49  dt_fe = mbdaDt * dx_fe_now * dx_finest_now / 50 ( SatyFa * diffcff_e ) ; 51  dt_cr = dt_fe * `pow ( femt , ( fe_v_now ); 53  dt_cr_glob ; 54 MPI_Comm comm_mp = p_AMRPt -> `GC_g_compu_nodes_communit () ; 55 `MPI_Aλdu & dt_cr , & dt_cr_glob , 1, MPI_DOUBLE , MPI_MIN , comm_mp ) ; 57  dt_cr_glob ); 58 } } 60  gRKC2_Recursive :: $In () 62 SatyFa = p_SatyFa_m -> vue ; 63 diffcff_e = p_diffcff_e_m -> vue ; 64 nages = p_nages_m -> vue ; 67 p_AMRPt = dymic_ < AMRPt *> pSvc -> `gPt ( "MyMesh" ) ) ; 68 p_DiffPt = dymic_ < DiffPt *> pSvc -> `gPt ( "DiffFlux" ) ) ; 69 pTPhi = dymic_ < SAMRCsumPt *> ( pSvc -> `gPt ("TPhi") ) ; 70 pMaxDC = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("MaxDiffCoeff") ); 72 p_EEAndRegridPt = dymic_ < EEAndRegridPt *> 73 pSvc -> `gPt ( "Regrider" ) ) ; 74 i( p_EEAndRegridPt = NULL ) 76 << " RKC2_Recursive::Init() : Portotcquired !!erminate " 77 << dl << ush ; 78 `rme () ; 80 p_doma_exs = p_AMRPt -> `GC_g_doma_exs () ; 81 p_cr_s = p_AMRPt -> `GC_g_cr_suti () ; 82 max_vs = p_AMRPt -> `GC_g_max_vs () ; 83 dim = p_AMRPt -> `GC_g_dimsi () ; 84 femt = p_AMRPt -> `GC_g_femt_ () ; 86 `SupRKCPams nages ) ; 87 pTI -> `SStlDimsi dim ) ; 88 } } 90  gRKC2_Recursive :: $STimeAdv  dt , VeFldVb ** pVFV , 91  nVFV ) 94 } } 96  gRKC2_Recursive :: $EndTimeAdv  dt , VeFldVb ** pVFV , 97  nVFV ) 100 } } 102  gRKC2_Recursive :: $AlyBoundyCdis ( dt , 103 VeFldVb ** pVFV , 104  nVFV ) 107 } } 109  gRKC2_Recursive :: $Adv  dt_cr , VeFldVb ** pVFV , 110  nVFV ) 112 i is_lized = l ) 114 `In () ; 115 is_lized = ue ; 120  mp_a = p_AMRPt -> `GC_g_time_c () - 1 ; 121 i( mp_a < 3) 123 << " RKC2_Recursive::Adv : Oy " << mp_a -1 125 << " Sime_cة 4 " << dl ; 129 `RecursiveIeg pVFV , nVFV , dt_cr , 0 ) ; 132 } } 134  gRKC2_Recursive :: $RecursiveIeg VeFldVb ** pVFV , 135  nVFV ,  dt ,  v ) 137  no_s ; 139 i v == 0 ) 140 no_s = 1 ; 142 no_s = femt ; 144   s = 0; ir< no_s ; iters++ ) 146 i( p_AMRPt -> `GC_g_oc_me ()=0 ) && ( v == 0) ) 147 cout << " RKC2_Recursive::RecursiveIeg(" << dl ; 156  my_time = p_AMRPt -> `GC_cut_time v , ACEMa ) ; 157  time_size = p_AMRPt -> `GC_time_size v , ACEMa ) ; 160 s_ve = s ; no_s_ve = no_s ; 161 pTI -> `DoRKCIp ue ) ; 162  iage = 1 ; iag< nages ; istage++) 164   iVFV = 0; iVFV < nVFV ; iVFV++ ) 165 `DoOSgeOnLev pVFV , nVFV , iVFV , dt , v , my_time , time_size , 166 iage ) ; 168 iage = -1 ; pTI -> `SSgeNumb (iage;TI-> `DoRKCIp l ) ; 171  iVFV = 0; iVFV < nVFV ; iVFV++) 172 `MoveDaToFPJuThisLev pVFV , nVFV , iVFV , v , my_time , 173 time_size ) ; 176 p_AMRPt -> `GC_Sync my_time + time_size , v ); 179 fe_v_now = p_AMRPt -> `GC_g_fe_v () ; 180 i v < fe_v_now ) 181 `RecursiveIeg pVFV , nVFV , dt / femt , v + 1 ) ; 185   iVFV = 0; iVFV < nVFV ; iVFV++ ) 186 (* pVFV + iVFV ))-> `cye_time_vs v ) ; 189 p_AMRPt -> `GC_emt_time_v v , ACEMa ) ; 193 i v < fe_v_now ) 195  v_time = p_AMRPt -> `GC_cut_time v , ACEMa ) ; 196   iVFV = 0; iVFV < nVFV ; iVFV++ ) 197 (* pVFV + iVFV ))-> `ri v_time , v +1,ev_time,ev, NULL , 198 0, ACEMa ); 202 } } 204  gRKC2_Recursive :: $g_time () 207  #MIN ( A , B (A< (B? (A: (B) ) 209  _time_ac_this = `MIN ( s_ve , no_s_ve ) / 210 ( no_s_ve ; 211  _time_ac_xt = `MIN ( s_ve +1, no_s_ve ) / 212 ( no_s_ve ; 214  ba2 = c [ iage ] ; 215  ba1 = 1.0 - ba2 ; 217  pha1 = ba1 * ( 1 - _time_ac_this ) + 218 ba2 * ( 1 - _time_ac_xt ) ; 219  pha2 = ba1 * ( _time_ac_this ) + 220 ba2 * ( _time_ac_xt ) ; 222 ( pha2 ) ; 223 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/src/RKC2_wrapper.cpp 1  ~"RKC2_Recursive.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _RKC2_Recursive () 8 CONV_NS ( Compڒt * wk ; 9 RKC2_Recursive * compڒt ; 10 compڒt = w RKC2_Recursive (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_RKC2_Recursive RKC2_Recursive"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/RKC2/src/TimeInterp.cpp 2  ~"TimeIp.h " 4 gTimeIp :: $TimeIp TimePt * p ) 6 TP = p ; lbw = ubw = sw = 0 ; dim = 0 ; iage = -1; do_rkc_ = l ; 7 } } 9 gTimeIp :: $TimeIp () 11 TP = 0 ; lbw = ubw = sw = 0 ; dim = 0 ; 12 } } 14 gTimeIp ::~ $TimeIp () 16 `r () ; 17 } } 19  gTimeIp :: $r () 21 ve < PchInfo *>:: p ; 22  p = my_tches . `beg (; !my_tches. `d () ;++ ) 23 `de (* p ) ; 25 my_tches . `r () ; 28 } } 30  gTimeIp :: $SPch ( time , * da , cڡ * lbbc , 31 cڡ * ubbc , cڡ * she , cڡ  nvs ) 33 PchInfo * j = w PatchInfo ; if ( j == 0 ) (-1) ; 34 my_tches . `push_back j ) ; 35 j -> `SDa ( da , lbbc , ubbc , she , nvs , time ) ; 37 } } 39  gTimeIp :: $compu ( , * uc , cڡ * lbc , cڡ * ubc , 40 cڡ * shec , cڡ * do_em ) 42 i my_tches . `size () != 2 ) 44 << " TimeInterp::compute() : You have specified only " 45 << my_tches . `size (<< " dpots. Nd 2 " << dl ; 49  nd , ew ; 50  td , ew , * dd , * dw ; 51 * lbd , * ubd , * sd , * lbw , * ubw , * ew ; 53  = my_tches . `size () ; 54 PchInfo * jj = my_tches [ -1 ] ; 55 jj -> `GDa ( dw , lbw , ubw , ew , ew , ew ) ; 56 jj = my_tches [ -2 ] ; 57 jj -> `GDa ( dd , lbd , ubd , sd , nd , td ) ; 59  im =0, jm =0, km =0, imax =1, jmax =1, kmax =1 ; 60  it = 0, jt = 0, kt = 0 ; 61  nx =1, ny =1, nz =1 ; 63 im = `maximum ( lbd [0], lbw [0], lbw [0]); 64 imax = `mimum ( ubd [0], ubw [0], ubw [0]); 65 it = lbd [0] ; nx = sd [0] ; 67 i( dim > 1) 69 jm = `maximum ( lbd [1], lbw [1], lbw [1]); 70 jmax = `mimum ( ubd [1], ubw [1], ubw [1]); 71 jt = lbd [1] ; ny = sd [1] ; 74 i( dim > 2) 76 km = `maximum ( lbd [2], lbw [2], lbw [2]); 77 kmax = `mimum ( ubd [2], ubw [2], ubw [2]); 78 kt = lbd [2] ; nz = sd [2] ; 81  ride = ( ubd [0] - lbd [0]/ ( sd [0] -1) ; 101 * da_ = dd ; 102 * da_p1 = dw ; 103  pha1 , pha2 ; 107  #SMALL 1e-50 ) 108 i do_rkc_ = ue ) 110 pha2 = TP -> `g_time (; pha1 = 1 -lpha2 ; 111  j = ( iage -1)%3 + 1 ; 112 i j == 3 ) 114 da_ = dw ; da_p1 = dd ; 119 pha2 = ( - td / ( ew -d; pha1 = 1 -lpha2 ; 120 i( > ew || ( < td || ( `bs d-ew< SMALL ) ) { `r () ; (-1); } 141   em = 0 ; im < nd ; item++) 142 i do_em [ em ] == 1 ) 144  k = km ; k < kmax ; k + ride ) 145  j = jm ; j < jmax ; j + ride ) 146  i = im ; i < imax ; i + ride ) 148  ii = ( i - it / ride ; 149  jj = ( j - jt / ride ; 150  kk = ( k - kt / ride ; 151  dex = `fdx ( ii , jj , kk , em , nx , ny , nz , nd ) ; 153 uc [ dex ] = pha1 * da_ [dex] + pha2 * da_p1 [index] ; 156 `r () ; 159 } } 161  gTimeIp :: $maximum (cڡ  num1 , cڡ  num2 , cڡ  num3 ) 163  ( ( num1 > num2 ? (um1 > num3 ) ?um1 :um3) : 164 (( num2 > num3 ) ?um2 :um3) ); 165 } } 167  gTimeIp :: $mimum (cڡ  num1 , cڡ  num2 , cڡ  num3 ) 169  ( ( num1 < num2 ? (um1 < num3 ) ?um1 :um3) : 170 (( num2 < num3 ) ?um2 :um3) ); 171 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/include/AbstractSpatialInterp.h 4 #ide AbStlIpHSn__ 5  #AbStlIpHSn__ ) 7  ~ 9 mea gStlIpީis 11 as cAbStlIp 13 gpublic : 15 AbStlIp () {} 17 ~ AbStlIp () {} 29 vtu  SPrݔty ( d :: rg key ,  vue ) = 0 ; 31 vtu  GPrݔty ( d :: rg key , & vue ) = 0 ; 33 vtu  comm () = 0 ; 35 vtu  addRef () = 0 ; 37 vtu  deRef () = 0 ; 39 vtu  compu (* uc , cڡ * lbc , cڡ * ubc , 40 cڡ * shec , 41 * uf , cڡ * lbf , cڡ * ubf , 42 cڡ * shef , 43 cڡ * lbr , cڡ * ubr , cڡ * sh , 44 cڡ  nems , cڡ * em_li ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/include/InterpFac.h 9 #ide IpFacHSn__ 10  #IpFacHSn__ ) 12  ~ 13  ~ 14  ~ 16  ~"AMRCڡts.h " 17  ~"AbStlIp.h " 19 as cIpFac 21 mpublic : 23 $IpFac () {} 25 ~ $IpFac ({ `deroyA (; } } 27 gStlIpީis :: AbStlIp * MeshClotiTy A ) ; 29  $deroyA () 31 d :: ve < StlIpީis :: AbStlIp *>:: p ; 32  p = l_my_s . `beg (); !l_my_s. `d ();++) 33 i(* p !0 ) `de (*p) ; 34 } } 36  $RemoveFromR ( i { l_my_s [i] = 0 ; } } 38 give : 40 d :: ve < StlIpީis :: AbStlIp * > l_my_s ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/include/SpatialInterp.h 22 #ide __StlIpHSn__ 23  #__StlIpHSn__ ) 26  ~"c.h " 27  ~"dPts.h " 30  ~"jc++/jc++.h " 31  ~"jc++/ut/jc++ut.h " 32  ~"ms/msSr.h " 33  ~"pt/sutIs.h " 37  ~ 38  ~ 39  ~ 40  ~"mh.h " 43  ~"AMRCڡts.h " 46  ~"AbStlIp.h " 47  ~"IpFac.h " 50  ~"IpީiPt.h " 53  ~"AMRPt.h " 56  ~"CONV_NS.h " 59 ass gStlIp : public vtu CONV_NS ( Compڒt ), 60 public vtu gIpީiPt 62 gpublic : 65 StlIp () ; 68 ~ StlIp () ; 71 vtu  tSvis CONV_NS ( Svis * svc ) ; 79 vtu  GPrݔty (* key_me , & vue ) ; 81 vtu  GPrݔty (* key_me , & vue ) ; 83 vtu  g * uc , cڡ * lbc , cڡ * ubc , 84 cڡ * shec , 85 * uf , cڡ * lbf , cڡ * ubf , 86 cڡ * shef , 87 cڡ * lbr , cڡ * ubr , cڡ * sh , 88 cڡ  nems , cڡ * em_li ) ; 90 vtu  ri * uf , cڡ * lbf , cڡ * ubf , 91 cڡ * shef , 92 * uc , cڡ * lbc , cڡ * ubc , 93 cڡ * shec , 94 cڡ * lbr , cڡ * ubr , cڡ * sh , 95 cڡ  nems , cڡ * em_li ) ; 97 give : 99  SPams () ; 101  () ; 103 bo gis_ , gis_hod ; 104 MeshClotiTy gm ; 105 IPam * gp_ri_d_m , * gp_boundy_d_m , * gp_dim_m , 106 * gp_mesh_cloc_m ; 107 CfigubPamPt * g ; 110 CONV_NS ( Svis * gpSvc ; 112 gd :: m < d :: rg , > gmy_t_ ; 113 gd :: m < d :: rg , gMeshClotiTy > gmy_lg_ ; 114 AMRPt * gpAMR ; 115 IpFac gIpFay ; 116 gStlIpީis :: AbStlIp * pPrgOt , * gpReriOt ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/include/VertexCenteredInterp.h 13 #ide VxCdIpHSn__ 14  #VxCdIpHSn__ ) 17  ~ 18  ~"IpFac.h " 19  ~"AbStlIp.h " 21 mea gStlIpީis 23 as cVxCdIp : public vtu AbStlIp 26 public : 28 VxCdIp (:: IpFac * pif ,  hd ) 30 gmy_ [ "OrderInterior" ] = 2 ; 31 gmy_ [ "OrderBoundary" ] = 2 ; 32 gmy_ [ "Dimension" ] = 2 ; 33 gmy_ [ "Prolongations" ] = 0; 34 gdex = hd ; gf = 0 ; gis_hod = l ; gmy_pif = pif ; 37 gvtu ~ VxCdIp (){ gmy_pif -> RemoveFromR ( dex ) ; } 39 vtu  SPrݔty ( d :: rg key ,  vue ) 41 i gmy_ . fd ( key ! my_ . d () ) 42 my_ [ key ] = vue ; 48 vtu  GPrݔty ( d :: rg key , & vue ) 50 i( gmy_ . fd ( key ! my_ . d () ) 51 vue = my_ [ key ] ; 57 vtu  comm () ; 59 vtu  addRef ({ gf ++; (0); } 61 vtu  deRef (){ gf --; ie=0 de ( this ) ;} 63 vtu  compu (* uc , cڡ * lbc , cڡ * ubc , cڡ * shec , 64 * uf , cڡ * lbf , cڡ * ubf , cڡ * shef , 65 cڡ * lbr , cڡ * ubr , cڡ * sh , 66 cڡ  nems , cڡ * em_li ) 68  gs ; 69 i gmy_ ["Prolongations"] > 0 ) 70 gs = g ( uc , lbc , ubc , shec , uf , lbf , ubf , shef , lbr , ubr , sh , 71 nems , em_li ) ; 72 i gmy_ ["Prolongations"] < 0 ) 73 gs = ri ( uc , lbc , ubc , shec , uf , lbf , ubf , shef , lbr , ubr , sh , 74 nems , em_li ) ; 76 gs = -1 ; 77 ( gs ) ; 80 give : 82 bo is_hod ; 83  gf , gdex ; 84 gd :: m < d :: rg , > gmy_ ; 85 :: IpFac * my_pif ; 87  gim , gimax , gjm , gjmax , gkm , gkmax ; 88  gtif , gtjf , gtkf , gtic , gtjc , gtkc ; 89  gnxc , gnyc , gnzc , gnxf , gnyf , gnzf ; 90  gdim ; 92  gridec , gridef ; 95  gfiL , gfiR , gfjL , gfjR , gfkL , gfkR ; 96  gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR ; 97  giiL , giiR , gijL , gijR , gikL , gikR ; 98  gbiL , gbiR , gbjL , gbjR , gbkL , gbkR ; 100 * gd0fx , * gd0fy , * gd0fxy ; 101  gdi , gdb , gx , gy , gz ; 103  g * uc , cڡ * lbc , cڡ * ubc , cڡ * shec , 104 * uf , cڡ * lbf , cڡ * ubf , cڡ * shef , 105 cڡ * lbr , cڡ * ubr , cڡ * sh , 106 cڡ  nems , cڡ * em_li ) ; 108  ri * uc , cڡ * lbc , cڡ * ubc , cڡ * shec , 109 * uf , cڡ * lbf , cڡ * ubf , cڡ * shef , 110 cڡ * lbr , cڡ * ubr , cڡ * sh , 111 cڡ  nems , cڡ * em_li ) ; 113  cfigu cڡ * lbc , cڡ * ubc , cڡ * shec , 114 cڡ * lbf , cڡ * ubf , cڡ * shef , 115 cڡ * lbr , cڡ * ubr , cڡ * sh ) ; 117  DoOV (* uc , cڡ * shec , * uf , cڡ * shef , 118  em ,  nems , 119 * d0fx , * d0fy , * d0fxy ) ; 121  RaPch (* da , cڡ * shec ,  dim ) ; 123  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 126  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 129  maximum (cڡ  num1 , cڡ  num2 , cڡ  num3 ) 131  ( ( gnum1 > gnum2 ? (um1 > gnum3 ?um1 : num3 ) : 132 (( num2 > num3 ) ?um2 :um3) ); 135  mimum (cڡ  num1 , cڡ  num2 , cڡ  num3 ) 137  ( ( gnum1 < gnum2 ? (um1 < gnum3 ?um1 : num3 ) : 138 (( num2 < num3 ) ?um2 :um3) ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/include/fortran_names.h 4 #i defed ( PGI ) 5  #FORTNAME ( A A## _ ) 7  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/lib/der0_1D_cf_vc_include.h 2 ! X_INTP_CF_VC , gY_INTP_CF_VC , d Z_INTP_CF_VC ީe the vue of gf 3 ! om a unifm grid to the midpots of th unifm grid ( so 4 ! unifm grid usg exic fe gdifns . The route is gt 5 ! up wh the gCr - gto - Fe ީi  gVx - Cd gAMR 6 ! itis gmd . Each route gds 1D gީi . In rms gof 7 ! gުts , ed cs e ovided th go as high gas 8 ! 8 gth - d gaccucy . gHigh -d boundy osus e guded 9 ! but may give ri to time unab l gdisizis . gAs 10 ! the cuy ds n exi a they of gtime - ab gboundy 11 ! osu to gުts , vt gem . This route gds 12 ! n low  nunifm grids but grid acgs ( dx , dy , d dz ) 13 ! may be t gbry . The ީi routes e ghdwed 14 !  the me ݔ l gdeis ! 16 ! It is assumed th the comg gvb , gf , comes h ggrid 17 ! gpots ..., gx_ { gi -1}, x_{i}, x_{i+1}, ... d th d0f is giv g 18 ! the grid gpots ..., gx_ { gi -1/2}, x_{i+1/2}, x_{i+3/2}, ... If gN 19 ! vues of f r this groute , th ouuts gN -1 vueo gd0f . 20 ! Dto  the gy - d gz - gdeis . 22 ! This route has bn t up to be que gg . Aays f d gd0f , 23 ! e lowed to r the route havg bry gy 24 ! gbounds . The Κg route mu addiڮly ecify the gnumb 25 ! of g s th e ovided l six bounds as gwl 26 ! as d the exa gi whe divives e geded . gNe 27 ! th n l emts of y df wl be fd wh guful 28 ! gdivives . This dds wh the ur ecifd th gy 29 ! gbounds . The key pot is th l ys e dimsied tive gto 30 ! the me ggrid ; somhg h Κg route eds to gcce . 32 ! G s e grid pots th have bn added to the cut gmesh 33 ! v by ީg vbs om the xt mo cr ggrid . 34 ! They e ad ound the ri tch to low th gavoid 35 ! of gn - ed divive gݔs . In the ri ptis o gthe 36 ! gcomputi , GrACE wl dr the sry numb of g s gso 37 ! th skewed cs e uesry but ì physil gbounds , 38 ! this may n be gpossib . In the gs , e eds to eablish ghow 39 ! my boundy pots the e d o them gݔly . This is gwhy 40 ! d right rusis of cs e gcsided . If the gri 41 ! ݔ eds four boundy pots od but the e ly gthe 42 ! g s th the t rusi is ge . This mns th ly one 43 ! boundy pot mu be od wh ge - sided gdivives . 45 ! gHe 's howhe 1D-interpolantsre called: 47 ! subroute gx__cf_vc 48 ! & ( gf , gd0f , gdi , gdb , 49 ! & gbiL , gbiR , gbjL , gbjR , gbkL , gbkR , 50 ! & gfiL , gfiR , gfjL , gfjR , gfkL , gfkR , 51 ! & giiL , giiR , gijL , gijR , gikL , gikR , 52 ! & gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR , 53 ! & gx , gy , gz , g , gr ) 55 ! gINPUT 57 ! gf - Funi to be gdifd 58 ! gdi - Ord of accucy o the ri gݔ 59 ! gdb - Fm d of accucy o the wl pot boundy gݔ 60 ! Cuy n gud !! 61 ! gfiL - Glob codes  f ( Le side of x - dei ) 62 ! gfiR - Glob codes  f ( Right side of x - dei ) 63 ! gfjL - Glob codes  f ( Le side of y - dei ) 64 ! gfjR - Glob codes  f ( Right side of y - dei ) 65 ! gfkL - Glob codes  f ( Le side of z - dei ) 66 ! gfkR - Glob codes  f ( Right side of z - dei ) 67 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 68 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 69 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 70 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 71 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 72 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 73 ! giiL - Glob codes  df ( Le side of x - dei ) 74 ! giiR - Glob codes  df ( Right side of x - dei ) 75 ! gijL - Glob codes  df ( Le side of y - dei ) 76 ! gijR - Glob codes  df ( Right side of y - dei ) 77 ! gikL - Glob codes  df ( Le side of z - dei ) 78 ! gikR - Glob codes  df ( Right side of z - dei ) 79 ! gviL - Glob codes  v ( Le side of x - dei ) 80 ! gviR - Glob codes  v ( Right side of x - dei ) 81 ! gvjL - Glob codes  v ( Le side of y - dei ) 82 ! gvjR - Glob codes  v ( Right side of y - dei ) 83 ! gvkL - Glob codes  v ( Le side of z - dei ) 84 ! gvlR - Glob codes  v ( Right side of z - dei ) 85 ! gbiL - Numb of g s side o gx - gdei 86 ! gbiR - Numb of g s right side o gx - gdei 87 ! gbjL - Numb of g s side o gy - gdei 88 ! gbjR - Numb of g s right side o gy - gdei 89 ! gbkL - Numb of g s side o gz - gdei 90 ! gbkR - Numb of g s right side o gz - gdei 91 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 92 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 93 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 94 ! g - E gmesge - S gbow 96 ! gOUTPUT 98 ! gd0f - Ipީed gFuni 100 ! gLOCAL 102 ! goL - Le rusi of ri gc 103 ! goR - Right rusi of ri gc 104 ! gomax - Maximum rusi of ri gc 105 ! groL - N rusi of ri gc 106 ! groR - N right rusi of ri gc 107 ! gwidth - Tٮ width of ri gc 108 ! gUp - Exic ed difn c gcff . ( i +/- 0) 109 ! g - Exic ed difn c gcff . ( i +/- 1) 110 ! gbe - Exic ed difn c gcff . ( i +/- 2) 111 ! g - Exic ed difn c gcff . ( i +/- 3) 112 ! gde - Exic ed difn c gcff . ( i +/- 4) 113 ! gx , gy , gzbeg - Begng dex  ri gc 114 ! gx , gy , gzd - Endg dex  ri gc 115 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 116 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 117 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 118 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 119 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 120 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 121 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 123 ! gOPTIONS : 124 ! Cd Difns 125 ! 2E [ di =2, db =1] (2E) 126 ! 4E [ di =4, db =4] (4-4E-4) 127 ! 6E [ di =6, db =6] (6,6-6E-6,6) 128 ! 8E [ di =8, db =8] (8,8,8-8E-8,8,8) 130 ! gne : Fm ovl d is unknown ( to me !!) 132 ! Iny wrn by Chris Kdy Dec . 2001 133 ! Rewrn by Chris Kdy Feb . 2002 136 ! Ieg uff 138 imic ne 140 g oL , goR , gomax , width 141 g groLx , groLy , roLz 142 g groRx , groRy , roRz 143 g gi , gj , k 144 g gdi , db 145 g 146 g gx , gy , z 147 g gxbeg , gybeg , zbeg 148 g gxd , gyd , zd 149 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 150 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 151 g giiL , giiR , gijL , gijR , gikL , ikR 152 g gpiL , gpiR , gpjL , gpjR , gpkL , pkR 153 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR 155 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 156 *8 d0f ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 157 *8 Up , g , gbe , g , gde 159 g *8 bnd4A (4) 161 g *8 bnd6A (6) 162 g *8 bnd6B (6) 164 g *8 bnd8A (8) 165 g *8 bnd8B (8) 166 g *8 bnd8C (8) 168 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/lib/der0_2D_cf_vc_include.h 2 ! XY_INTP_CF_VC , gYZ_INTP_CF_VC , d ZX_INTP_CF_VC ީe the gvue 3 ! of f om a unifm grid to the midpots o th unifm grid ( so 4 ! a unifm grid usg exic fe gdifns . The route is gt 5 ! up wh the gCr - gto - Fe ީi  gVx - Cd gAMR 6 ! itis gmd . Each route gds 2D gީi . In rms gof 7 ! gުts , ed cs e ovided th go as high gas 8 ! 8 gth - d gaccucy . gHigh -d boundy osus e guded 9 ! but may give ri to time unab l gdisizis . gAs 10 ! the cuy ds n exi a they of gtime - ab gboundy 11 ! osu to gުts , vt gem . This route gds 12 ! n low  nunifm grids but grid acgs ( dx , dy , d dz ) 13 ! may be t gbry . The ީi routes e ghdwed 14 !  the me ݔ l gdeis ! 16 ! It is assumed th the comg gvb , gf , comes h ggrid 17 ! gpots ..., ( gx_ { gi -1}, gy_ {i-1}), (x_{i},y_{i-1}), ..., (x_{i+1},y_{i+1}) 18 ! , ... d th d0f is giv the grid gpots ..., ( gx_ { gi -1/2}, gy_ {i-1/2}), 19 ! ( gx_ { gi +1/2}, gy_ {i-1/2}), ..., (x_{i+3/2},y_{i+1/2}), gc . If gN ^2 gvues 20 ! of f r this route th ouuts ( N -1)^2 vues o gd0f . 21 ! Dto  the gyz - d gzx - gdeis . 23 ! This route has bn t up to be que gg . Aays f d gd0f , 24 ! e lowed to r the route havg bry gy 25 ! gbounds . The Κg route mu addiڮly ecify the gnumb 26 ! of g s th e ovided l six bounds as gwl 27 ! as d the exa gi whe divives e geded . gNe 28 ! th n l emts of y df wl be fd wh guful 29 ! gdivives . This dds wh the ur ecifd th gy 30 ! gbounds . The key pot is th l ys e dimsied tive gto 31 ! the me ggrid ; somhg h Κg route eds to gcce . 33 ! G s e grid pots th have bn added to the cut gmesh 34 ! v by ީg vbs om the xt mo cr ggrid . 35 ! They e ad ound the ri tch to low th gavoid 36 ! of gn - ed divive gݔs . In the ri ptis o gthe 37 ! gcomputi , GrACE wl dr the sry numb of g s gso 38 ! th skewed cs e uesry but ì physil gbounds , 39 ! this may n be gpossib . In the gs , e eds to eablish ghow 40 ! my boundy pots the e d o them gݔly . This is gwhy 41 ! d right rusis of cs e gcsided . If the gri 42 ! ݔ eds four boundy pots od but the e ly gthe 43 ! g s th the t rusi is ge . This mns th ly one 44 ! boundy pot mu be od wh ge - sided gdivives . If gCORNER 45 ! is l gth 2D crs wl assume th the e no g gs . 47 ! gHe 's howhe 2D-interpolantsre called: 49 ! subroute gxy__cf_vc 50 ! & ( gf , gd0f , gdi , gdb , 51 ! & gbiL , gbiR , gbjL , gbjR , gbkL , gbkR , 52 ! & gfiL , gfiR , gfjL , gfjR , gfkL , gfkR , 53 ! & giiL , giiR , gijL , gijR , gikL , gikR , 54 ! & gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR , 55 ! & gx , gy , gz , g , gr , 56 ! & gcr ) 58 ! gINPUT 60 ! gf - Funi to be gdifd 61 ! gdi - Ord of accucy o the ri gݔ 62 ! gdb - Fm d of accucy o the wl pot boundy gݔ 63 ! Cuy n gud !! 64 ! gfiL - Glob codes  f ( Le side of x - dei ) 65 ! gfiR - Glob codes  f ( Right side of x - dei ) 66 ! gfjL - Glob codes  f ( Le side of y - dei ) 67 ! gfjR - Glob codes  f ( Right side of y - dei ) 68 ! gfkL - Glob codes  f ( Le side of z - dei ) 69 ! gfkR - Glob codes  f ( Right side of z - dei ) 70 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 71 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 72 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 73 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 74 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 75 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 76 ! giiL - Glob codes  df ( Le side of x - dei ) 77 ! giiR - Glob codes  df ( Right side of x - dei ) 78 ! gijL - Glob codes  df ( Le side of y - dei ) 79 ! gijR - Glob codes  df ( Right side of y - dei ) 80 ! gikL - Glob codes  df ( Le side of z - dei ) 81 ! gikR - Glob codes  df ( Right side of z - dei ) 82 ! gviL - Glob codes  v ( Le side of x - dei ) 83 ! gviR - Glob codes  v ( Right side of x - dei ) 84 ! gvjL - Glob codes  v ( Le side of y - dei ) 85 ! gvjR - Glob codes  v ( Right side of y - dei ) 86 ! gvkL - Glob codes  v ( Le side of z - dei ) 87 ! gvlR - Glob codes  v ( Right side of z - dei ) 88 ! gbiL - Numb of g s side o gx - gdei 89 ! gbiR - Numb of g s right side o gx - gdei 90 ! gbjL - Numb of g s side o gy - gdei 91 ! gbjR - Numb of g s right side o gy - gdei 92 ! gbkL - Numb of g s side o gz - gdei 93 ! gbkR - Numb of g s right side o gz - gdei 94 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 95 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 96 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 97 ! g - E gmesge - S gbow 98 ! gcr - A cr pots avaab  gީi ? 100 ! gOUTPUT 102 ! gd0f - Ipީed gFuni 104 ! gLOCAL 106 ! goL - Le rusi of ri gc 107 ! goR - Right rusi of ri gc 108 ! gomax - Maximum rusi of ri gc 109 ! groL - N rusi of ri gc 110 ! groR - N right rusi of ri gc 111 ! gwidth - Tٮ width of ri gc 112 ! gcr - Evue ުts cr pots (. TRUE . . FALSE .) 113 ! ga1 - Exic ed difn c gcff . 114 ! gb1 , gb2 - Exic ed difn c gcff . 115 ! gc1 , gc2 , gc3 - Exic ed difn c gcff . 116 ! gd1 , gd2 , gd3 , gd4 - Exic ed difn c gcff . 118 ! gUp - Exic ed difn c gcff . ( i +/- 0) 119 ! g - Exic ed difn c gcff . ( i +/- 1) 120 ! gbe - Exic ed difn c gcff . ( i +/- 2) 121 ! g - Exic ed difn c gcff . ( i +/- 3) 122 ! gde - Exic ed difn c gcff . ( i +/- 4) 123 ! gx , gy , gzbeg - Begng dex  ri gc 124 ! gx , gy , gzd - Endg dex  ri gc 125 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 126 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 127 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 128 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 129 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 130 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 131 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 133 ! gOPTIONS : 134 ! Cd Difns 135 ! 2E [ di =2, db =1] (2E) 136 ! 4E [ di =4, db =4] (4-4E-4) 137 ! 6E [ di =6, db =6] (6,6-6E-6,6) 138 ! 8E [ di =8, db =8] (8,8,8-6E-8,8,8) 140 ! gne : Fm ovl d is unknown ( to me !!) 142 ! Iny wrn by Chris Kdy Dec . 2001 143 ! Fished by Chris Kdy Feb . 2003 146 ! Ieg uff 148 imic ne 150 g oL , goR , gomax , width 151 g groLx , groLy , roLz 152 g groRx , groRy , roRz 153 g groLxC , groLyC , roLzC 154 g groRxC , groRyC , roRzC 155 g gi , gj , k 156 g gii , gjj , kk 157 g giii , gjjj , kkk 158 g gdi , db 159 g 160 g gx , gy , z 161 g gxbeg , gybeg , zbeg 162 g gxd , gyd , zd 163 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 164 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 165 g giiL , giiR , gijL , gijR , gikL , ikR 166 g gpiL , gpiR , gpjL , gpjR , gpkL , pkR 167 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR 169 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 170 *8 d0f ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 171 *8 a1 172 *8 b1 , b2 173 g *8 gc1 , gc2 , c3 174 g *8 gd1 , gd2 , gd3 , d4 175 g *8 ge1 , ge2 , ge3 , ge4 , e5 176 g *8 gsum 178 g *8 bnd2AA (2,2) 180 g *8 bnd4AA (4,4) 181 g *8 bnd4AB (4,4) 182 g *8 bnd4I (4,4) 184 g *8 bnd6AA (6,6) 185 g *8 bnd6AB (6,6) 186 g *8 bnd6AC (6,6) 187 g *8 bnd6BB (6,6) 188 g *8 bnd6BC (6,6) 189 g *8 bnd6I (6,6) 191 g *8 bnd8AA (8,8) 192 g *8 bnd8AB (8,8) 193 g *8 bnd8AC (8,8) 194 g *8 bnd8AD (8,8) 195 g *8 bnd8BB (8,8) 196 g *8 bnd8BC (8,8) 197 g *8 bnd8BD (8,8) 198 g *8 bnd8CC (8,8) 199 g *8 bnd8CD (8,8) 200 g *8 bnd8I (8,8) 201 ! EE 202 g *8 bnd10I (10,10) 204 gcha *60 gr 206 logil gcr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/lib/der0_3D_cf_vc_include.h 2 ! XYZ_INTP_CF_VC ީes the vue of f om a unifm grid to he 3 ! midpots of th unifm $grid ( so a unifm grid usg exic 4 ! fe difns . The route is t up wh the Cr - to - Fe 5 ! ީi  Vx - Cd AMR itis md . The 6 ! route ds 3D ީi . In rms of ުts , ed 7 ! cs e ovided th go as high 8 th - d accucy . High -order 8 ! boundy osus e uded but may give ri to time unab l 9 ! disizis . As the cuy ds n exi a they of time - ab 10 ! boundy osu to ުts , vt em . This route ds 11 ! n low  nunifm grids but grid $acgs ( dx , dy , d dz may be 12 ! t bry . The ީi routes e hdwed  the me 13 ! ݔ l deis ! ( You n 'tun 6th-order in xnd 8th in ytc.) 15 ! It is assumed th the comg vb , f , comes h grid 16 ! pots ..., ( x_ { i -1 } }, gy_ { gi -1}, gz_ {i-1}), ( gx_ {i},y_{i-1}),z_{i-1}, ..., 17 ! ( gx_ { gi +1}, gy_ {i+1}, gz_ {i-1}), ... d th d0f is giv the ggrid 18 ! gpots ..., ( gx_ { gi -1/2}, gy_ {i-1/2}, gz_ {i-1/2}), 19 ! ( gx_ { gi +1/2}, gy_ {i-1/2}, gz_ {i-1/2}), ..., (x_{i+3/2},y_{i+1/2},z_{i+1/2}), 20 ! gc . If gN ^3 vues of f r this route th ouuts ( N -1)^3 21 ! vues of gd0f . 23 ! This route has bn t up to be que gg . Aays f d gd0f , 24 ! e lowed to r the route havg bry gy 25 ! gbounds . The Κg route mu addiڮly ecify the gnumb 26 ! of g s th e ovided l six bounds as gwl 27 ! as d the exa gi whe divives e geded . gNe 28 ! th n l emts of y df wl be fd wh guful 29 ! gdivives . This dds wh the ur ecifd th gy 30 ! gbounds . The key pot is th l ys e dimsied tive gto 31 ! the me ggrid ; somhg h Κg route eds to gcce . 33 ! G s e grid pots th have bn added to the cut gmesh 34 ! v by ީg vbs om the xt mo cr ggrid . 35 ! They e ad ound the ri tch to low th gavoid 36 ! of gn - ed divive gݔs . In the ri ptis o gthe 37 ! gcomputi , GrACE wl dr the sry numb of g s gso 38 ! th skewed cs e uesry but ì physil gbounds , 39 ! this may n be gpossib . In the gs , e eds to eablish ghow 40 ! my boundy pots the e d o them gݔly . This is gwhy 41 ! d right rusis of cs e gcsided . If the gri 42 ! ݔ eds four boundy pots od but the e ly gthe 43 ! g s th the t rusi is ge . This mns th ly one 44 ! boundy pot mu be od wh ge - sided gdivives . If gCORNER 45 ! is l gth 2D crs wl assume th the e no g gs . 47 ! gHe 's howhe 3D-interpolantsre called: 49 ! subroute gxyz__cf_vc 50 ! & ( gf , gd0f , gdi , gdb , 51 ! & gbiL , gbiR , gbjL , gbjR , gbkL , gbkR , 52 ! & gfiL , gfiR , gfjL , gfjR , gfkL , gfkR , 53 ! & giiL , giiR , gijL , gijR , gikL , gikR , 54 ! & gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR , 55 ! & gx , gy , gz , g , gr , 56 ! & gcr ) 58 ! gINPUT 60 ! gf - Funi to be gdifd 61 ! gdi - Ord of accucy o the ri gݔ 62 ! gdb - Fm d of accucy o the wl pot boundy gݔ 63 ! Cuy n gud !! 64 ! gfiL - Glob codes  f ( Le side of x - dei ) 65 ! gfiR - Glob codes  f ( Right side of x - dei ) 66 ! gfjL - Glob codes  f ( Le side of y - dei ) 67 ! gfjR - Glob codes  f ( Right side of y - dei ) 68 ! gfkL - Glob codes  f ( Le side of z - dei ) 69 ! gfkR - Glob codes  f ( Right side of z - dei ) 70 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 71 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 72 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 73 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 74 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 75 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 76 ! giiL - Glob codes  df ( Le side of x - dei ) 77 ! giiR - Glob codes  df ( Right side of x - dei ) 78 ! gijL - Glob codes  df ( Le side of y - dei ) 79 ! gijR - Glob codes  df ( Right side of y - dei ) 80 ! gikL - Glob codes  df ( Le side of z - dei ) 81 ! gikR - Glob codes  df ( Right side of z - dei ) 82 ! gbiL - Numb of g s side o gx - gdei 83 ! gbiR - Numb of g s right side o gx - gdei 84 ! gbjL - Numb of g s side o gy - gdei 85 ! gbjR - Numb of g s right side o gy - gdei 86 ! gbkL - Numb of g s side o gz - gdei 87 ! gbkR - Numb of g s right side o gz - gdei 88 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 89 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 90 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 91 ! g - E gmesge - S gbow 92 ! gcr - A cr pots avaab  gީi ? 94 ! gOUTPUT 96 ! gd0f - Ipީed gFuni 98 ! gLOCAL 100 ! goL - Le rusi of ri gc 101 ! goR - Right rusi of ri gc 102 ! gomax - Maximum rusi of ri gc 103 ! groL - N rusi of ri gc 104 ! groR - N right rusi of ri gc 105 ! gwidth - Tٮ width of ri gc 106 ! ga1 - Exic ed difn c gcff . 107 ! gx , gy , gzbeg - Begng dex  ri gc 108 ! gx , gy , gzd - Endg dex  ri gc 109 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 110 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 111 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 112 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 113 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 114 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 115 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 117 ! gOPTIONS : 118 ! Cd Difns 119 ! 2E [ di =2, db =1] (2E) 120 ! 4E [ di =4, db =4] (4-4E-4) 121 ! 6E [ di =6, db =6] (6,6-6E-6,6) 122 ! 8E [ di =8, db =8] (8,8,8-8E-8,8,8) 124 ! gne : Fm ovl d is unknown ( to me !!) 126 ! Iny wrn by Chris Kdy Dec . 2001 127 ! Fished by Chris Kdy Feb . 2003 130 ! Ieg uff 132 imic ne 134 g oL , goR , gomax , width 135 g groLx , groLy , roLz 136 g groRx , groRy , roRz 137 g groLxC , groLyC , roLzC 138 g groRxC , groRyC , roRzC 139 g gi , gj , k 140 g gii , gjj , kk 141 g giii , gjjj , kkk 142 g gdi , db 143 g 144 g gx , gy , z 145 g gxbeg , gybeg , zbeg 146 g gxd , gyd , zd 147 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 148 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 149 g giiL , giiR , gijL , gijR , gikL , ikR 150 g gpiL , gpiR , gpjL , gpjR , gpkL , pkR 151 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR 153 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 154 *8 d0f ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 155 *8 1 156 *8 sum 157 ! 3+ I 158 *8 bnd4AAA (4,4,4) 159 g *8 bnd4AAB (4,4,4) 160 g *8 bnd4ABB (4,4,4) 161 g *8 bnd4I (4,4,4) 162 ! 9+ I 163 g *8 bnd6AAA (6,6,6) 164 g *8 bnd6AAB (6,6,6) 165 g *8 bnd6AAC (6,6,6) 166 g *8 bnd6ABB (6,6,6) 167 g *8 bnd6ABC (6,6,6) 168 g *8 bnd6ACC (6,6,6) 169 g *8 bnd6BBB (6,6,6) 170 g *8 bnd6BBC (6,6,6) 171 g *8 bnd6BCC (6,6,6) 172 g *8 bnd6I (6,6,6) 173 !19+ I 174 g *8 bnd8AAA (8,8,8) 175 g *8 bnd8AAB (8,8,8) 176 g *8 bnd8AAC (8,8,8) 177 g *8 bnd8AAD (8,8,8) 178 g *8 bnd8ABB (8,8,8) 179 g *8 bnd8ABC (8,8,8) 180 g *8 bnd8ABD (8,8,8) 181 g *8 bnd8ACC (8,8,8) 182 g *8 bnd8ACD (8,8,8) 183 g *8 bnd8ADD (8,8,8) 184 g *8 bnd8BBB (8,8,8) 185 g *8 bnd8BBC (8,8,8) 186 g *8 bnd8BBD (8,8,8) 187 g *8 bnd8BCC (8,8,8) 188 g *8 bnd8BCD (8,8,8) 189 g *8 bnd8BDD (8,8,8) 190 g *8 bnd8CCC (8,8,8) 191 g *8 bnd8CCD (8,8,8) 192 g *8 bnd8CDD (8,8,8) 193 g *8 bnd8I (8,8,8) 195 g *8 bnd10I (10,10,10) 197 gcha *60 gr 199 logil gcr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/src/InterpFac.cpp 5  ~"IpFac.h " 6  ~"VxCdIp.h " 8 gStlIpީis :: AbStlIp * IpFac :: $ MeshClotiTy A ) 10  dex = l_my_s . `size () ; 11 StlIpީis :: AbStlIp * P ; 13 i A = VxCd ) 15 StlIpީis :: VxCdIp * VCI = 16 w StlIpީis :: `VxCdIp ( this , dex ) ; 17 l_my_s . `push_back VCI ) ; 18 VCI -> `addRef () ; 19 P = dymic_ < StlIpީis :: AbStlIp * > ( VCI ) ; 20 ( P ) ; 23 i A = ClCd ) 25 d :: << " InterpFac::create() CellCentered interpolatantsoteady yet " 26 << d :: dl ; 27 P = 0 ; 28 ( P ) ; 31 d :: << " IpFac::(: ipުtoty " << A 32 << " d۠nكxi;ug NULL ipު" << d :: dl ; 33 P = 0 ; 34 ( P ) ; 35 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/src/SpatialInterp.cpp 10  ~"StlIp.h " 12 gStlIp :: $StlIp () 14 my_t_ [ "OrderInterior" ] = 2 ; 15 my_t_ [ "OrderBoundary" ] = 2 ; 16 my_t_ [ "Dimension" ] = 2 ; 17 my_lg_ [ "MeshClotiTy" ] = VxCd ; 18 is_hod = l ; pAMR = 0 ; is_ = false ; 19 } } 21 gStlIp ::~ $StlIp () 23 i( is_ = ue ) 25 de p_ri_d_m ; 26 de p_boundy_d_m ; 27 de p_dim_m ; 28 de p_mesh_cloc_m ; 29 pPrgOt -> `deRef () ; 30 pReriOt -> `deRef () ; 32 is_hod = l ; pAMR = 0 ; pSvc = 0 ; IpFay . `deroyA () ; 33 } } 35  gStlIp :: tSvis CONV_NS ( Svis * svc ) 37 i svc = NULL ) 39 pSvc -> aPt ( "MyMesh" ) ; 40 gpSvc -> moveProvidesPt ("ProlongRestrict") ; 41 gpSvc -> moveProvidesPt ("CONFIG") ; 46 gthis -> gpSvc = svc ; 49 gsvc -> giUsPt svc -> PtInfo ("cSvc", 51 CfigubPamFay * gf = 52 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 53 CHECKDC f ); 54 g = f -> CfigubPamPt (); 55 gsvc -> addProvidesPt ( , 56 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 57 SPams () ; 58 gsvc -> aPt ("cSvc"); 59 gsvc -> uegiUsPt ("cSvc"); 62 gsvc -> addProvidesPt ( this , svc -> PtInfo ("ProlongRestrict", "InterpolationPort", 66 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 69  gStlIp :: $SPams () 72 p_ri_d_m = w `IPam ("OrderInterior", 75 my_t_ [ "OrderInterior" ], 0, 10 ) ; 77 p_boundy_d_m = w `IPam ("OrderBoundary", 80 my_t_ [ "OrderBoundary" ], 0, 10 ) ; 82 p_dim_m = w `IPam ("Dimension", "Dimension of interpolants", 83 "1D/2D/3D", my_t_ [ "Dimension" ], 1, 3) ; 85 p_mesh_cloc_m = w `IPam ("MeshCollocation", "What kind of mesh collocation", 87 ( my_lg_ [ "MeshCollocationType" ], -1, 88 ( FaCdZ ) ; 90 -> `tBchT (" Interpolation Parameter " ); 91 -> `addReque p_ri_d_m ) ; 92 -> `addReque p_boundy_d_m ) ; 93 -> `addReque p_dim_m ) ; 94 -> `addReque p_mesh_cloc_m ) ; 95 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/src/SpatialInterp_util.cpp 4  ~"StlIp.h " 6  gStlIp :: $ () 8 my_t_ [ "OrdIi" ] = p_ri_d_m -> vue ; 9 my_t_ [ "OrdBoundy" ] = p_boundy_d_m -> vue ; 10 my_t_ [ "Dimsi" ] = p_dim_m -> vue ; 11 my_lg_ [ "MeshClotiTy" ] = ( MeshClotiTy p_mesh_cloc_m -> vue ; 13 pAMR = 0 ; 14 pAMR = dymic_ < AMRPt *> ( pSvc -> `gPt ("MyMesh") ) ; 16 i( pAMR != 0 ) 18 i pAMR -> `GC_g_dimsi (! my_t_ [ "Dimension" ] ) 20 d :: << " SpatialInterp::init() : The dimensionality ofhe meshnd " 21 << "thީiڠdif " << pAMR -> `GC_g_dimsi () 22 << " vsu" << my_t_ [ "Dimsi" ] << " CAUTION ! " << d :: dl ; 27 pPrgOt = 0 ; 28 pPrgOt = 29 IpFay . ` ( MeshClotiTy my_lg_ [ "MeshCollocationType" ] ); 30 i pPrgOt == 0 ) 32 d :: << "SpatialInterp::init() : Couldot makerolongator ofype " 33 << my_lg_ [ "MeshCollocationType" ] 34 << " ; mkg compڒunub " << d :: dl ; 35 is_hod = ue ; 39 pPrgOt -> `SPrݔty ("OrdIi", my_t_ ["OrderInterior"]); 40 pPrgOt -> `SPrݔty ("OrdBoundy", my_t_ ["OrderBoundary"]); 41 pPrgOt -> `SPrݔty ("Dimsi", my_t_ ["Dimension"]) ; 42 pPrgOt -> `SPrݔty ("Prolongations", 1); 43  su = pPrgOt -> `comm () ; 44 i su != 0 ) 46 d :: << " SpatialInterp::init() : couldot configurerolongator ; " 47 << " mkg compڒunsuab " << d :: dl ; 48 is_hod = ue ; 52 pReriOt = 0 ; 53 pReriOt = 54 IpFay . ` ( MeshClotiTy my_lg_ [ "MeshCollocationType" ] ); 55 i pReriOt == 0 ) 57 d :: << "SpatialInterp::init() : Couldot makestrictor ofype " 58 << my_lg_ [ "MeshCollocationType" ] 59 << " ; mkg compڒunub " << d :: dl ; 60 is_hod = ue ; 63 pReriOt -> `SPrݔty ("OrdIi", my_t_ ["OrderInterior"]); 64 pReriOt -> `SPrݔty ("OrdBoundy", my_t_ ["OrderBoundary"]); 65 pReriOt -> `SPrݔty ("Dimsi", my_t_ ["Dimension"]) ; 66 pReriOt -> `SPrݔty ("Prolongations", -1); 67 su = pReriOt -> `comm () ; 68 i su != 0 ) 70 d :: << " SpatialInterp::init() : couldot configureestrictor ; " 71 << " mkg compڒunsuab " << d :: dl ; 72 is_hod = ue ; 76 is_ = ue ; 77 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/src/SpatialInterp_workers.cpp 5  ~"StlIp.h " 7  gStlIp :: $GPrݔty (* key_me , & vue ) 9 i is_ = l ) ` () ; 10 i is_hod = ue ) (-1) ; 12 d :: rg `ame ( key_me ) ; 14 i my_t_ . `fd ame ) =my_t_. `d () ) 17 vue = my_t_ [ ame ] ; 20 } } 22  gStlIp :: $GPrݔty (* key_me , & vue ) 24 i is_ = l ) ` () ; 25 i is_hod = ue ) (-1) ; 27 d :: rg `ame ( key_me ) ; 29 i my_lg_ . `fd ame ) =my_lg_. `d () ) 32 vue = my_lg_ [ ame ] ; 35 } } 37  gStlIp :: $g * uc , cڡ * lbc , cڡ * ubc , 38 cڡ * shec , 39 * uf , cڡ * lbf , cڡ * ubf , 40 cڡ * shef , 41 cڡ * lbr , cڡ * ubr , cڡ * sh , 42 cڡ  nems , cڡ * em_li ) 44 i is_ = l ) ` () ; 45 i is_hod = ue ) (-1) ; 47  su = pPrgOt -> `compu uc , lbc , ubc , shec , uf , lbf , ubf , 48 shef , lbr , ubr , sh , nems , em_li ) ; 49  su ) ; 50 } } 52  gStlIp :: $ri * uf , cڡ * lbf , cڡ * ubf , 53 cڡ * shef , 54 * uc , cڡ * lbc , cڡ * ubc , 55 cڡ * shec , 56 cڡ * lbr , cڡ * ubr , cڡ * sh , 57 cڡ  nems , cڡ * em_li ) 59 i is_ = l ) ` () ; 60 i is_hod = ue ) (-1) ; 62  su = pReriOt -> `compu ( uc , lbc , ubc , shec , uf , lbf , ubf , shef , 63 lbr , ubr , sh , nems , em_li ) ; 64  su ) ; 65 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/src/SpatialInterp_wrapper.cpp 1  ~"StlIp.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _StlIp () 8 CONV_NS ( Compڒt * wk ; 9 StlIp * compڒt ; 10 compڒt = w StlIp (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_SpatialInterp SpatialInterp"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/src/VertexCenteredInterp.cpp 5  ~"VxCdIp.h " 7  gStlIpީis :: VxCdIp :: $comm () 9 i my_ ["Dimension"] < 0 || my_prop["Dimension"] > 2 ) 11 d :: << " SpatialInterpolations::VertexCenteredInterp:: commit() : Dimension" 12 << " should b1 o2. Mkg ipުunub." << d :: dl ; 13 is_hod = ue ; 17 i my_ ["Prolongations"] == 0 ) 19 d :: << " SpatialInterpolations::VertexCenteredInterp:: commit() : Prolongation" 21 << " unsuab " << d :: dl ; 22 is_hod = ue ; 27 } } 29  gStlIpީis :: VxCdIp :: $ri ( 30 * uc , cڡ * lbc , cڡ * ubc , cڡ * shec , 31 * uf , cڡ * lbf , cڡ * ubf , cڡ * shef , 32 cڡ * lbr , cڡ * ubr , cڡ * sh , 33 cڡ  nems , cڡ * em_li ) 36 i( is_hod = ue ) 38 d :: << "SpatialInterpolations::VertexCenteredInterp::restrict() : " 40 << d :: dl ; 44 cڡ  ridec = ( ubc [0] - lbc [0]/ ( shec [0] - 1) ; 45 cڡ  ridef = ( ubf [0] - lbf [0]/ ( shef [0] - 1) ; 50  im , imax , jm = 0, jmax = 0, km = 0, kmax = 0 ; 51  tif = 0, tjf = 0, tkf = 0, tic = 0, tjc = 0, tkc = 0 ; 52  nxc = 1, nyc = 1, nzc = 1, nxf = 1, nyf = 1, nzf = 1 ; 53  dim = my_ ["Dimension"] ; 55 im = `maximum ( lbf [0], lbc [0], lbr [0]); 56 imax = `mimum ( ubf [0], ubc [0], ubr [0]); 57 if( im - lbc [0]% ridec ) != 0 ) 58 im = im + ((im- lbc [0])% ridec ); 59 tic = lbc [0] ; tif = lbf [0] ; nxc = shec [0] ; nxf = shef [0] ; 61 i dim > 1 ) 63 jm = `maximum ( lbf [1], lbc [1], lbr [1]); 64 jmax = `mimum ( ubf [1], ubc [1], ubr [1]); 65 i( jm - lbc [1])% ridec ) != 0 ) 66 jm = jm + ((jm- lbc [1])% ridec ); 67 tjc = lbc [1] ; tjf = lbf [1] ; nyc = shec [1] ; nyf = shef [1] ; 70 i dim > 2 ) 72 km = `maximum ( lbf [2], lbc [2], lbr [2]); 73 kmax = `mimum ( ubf [2], ubc [2], ubr [2]); 74 i( km - lbc [2])% ridec ) != 0 ) 75 km = km + ((km- lbc [2])% ridec ); 76 tkc = lbc [2] ; tkf = lbf [2] ; nzc = shec [2] ; nzf = shef [2] ; 79  em = 0 ; im < nems ; item++) 80 i em_li [ em ] == 1 ) 82  k = km ; k < kmax ; k + ridec ) 83   j = jm ; j < jmax ; j + ridec ) 84   i = im ; i < imax ; i + ridec ) 86  ife = ( i - tif / ridef ; 87  jfe = ( j - tjf / ridef ; 88  kfe = ( k - tkf / ridef ; 90  icr = ( i - tic / ridec ; 91  jcr = ( j - tjc / ridec ; 92  kcr = ( k - tkc / ridec ; 94  dexc = `fdx ( icr , jcr , kcr , em , 95 nxc , nyc , nzc , nems ) ; 96  dexf = `fdx ( ife , jfe , kfe , em , nxf , nyf , 97 nzf , nems ) ; 98 uc [ dexc ] = uf [ dexf ] ; 102 } } 104  gStlIpީis :: VxCdIp :: $g ( 105 * uc , cڡ * lbc , cڡ * ubc , cڡ * shec , 106 * uf , cڡ * lbf , cڡ * ubf , cڡ * shef , 107 cڡ * lbr , cڡ * ubr , cڡ * sh , 108 cڡ  nems , cڡ * em_li ) 110 i( is_hod = ue ) 112 d :: << "SpatialInterpolations::VertexCenteredInterp::prolong() : " 114 << d :: dl ; 118 `cfigu ( lbc , ubc , shec , lbf , ubf , shef , lbr , ubr , sh ); 120 * d0fx = w [ nxc * nyc * nzc ] ; 121  ii = 0; i< nxc * nyc * nzc ; ii++ d0fx [ii] = 0 ; 122 * d0fy = 0 ; i dim > 1 ) d0fy = w [ nxc * nyc * nzc ] ; 123  ii = 0; i< nxc * nyc * nzc ; ii++ d0fy [ii] = 0 ; 124 * d0fxy = 0 ; i dim > 1 ) d0fxy = w [ nxc * nyc * nzc ] ; 125  ii = 0; i< nxc * nyc * nzc ; ii++ d0fxy [ii] = 0 ; 127 di = my_ ["OrdIi"] ; db = my_prop["OrderBoundary"] ; 128  em = 0 ; im < nems ; item++) 130 i em_li [ em ] == 1 ) 132 `DoOV ( uc , shec , uf , shef , em , nems , d0fx , d0fy , d0fxy ); 136 i d0fx !0 ) de [] d0fx ; i d0fy != 0 ) delete [] d0fy ; 137 i d0fxy !0 ) de [] d0fxy ; 140 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/src/VertexCenteredInterp_RepairPatch.cpp 5  ~"VxCdIp.h " 8  gStlIpީis :: VxCdIp :: $RaPch (* da , 9 cڡ * shec , 10  dim ) 12  nx = shec [0] ;  ny = 1 ;  nz = 1; 13 i( dim > 1 ny = shec [1] ; 14 i( dim > 2 nz = shec [2] ; 16  ho = di /2 + 1; 17  dx = 1.0 ; 19  k = 0; k < nz ; k++) 21  j = 0; j < ho +1; j++) 22  ii = ho -1 ; ii >= 0; ii--) 24  i = `fdx ( ii , j , k , 0, nx , ny , nz , 1) ; 25  1 = `fdx ( ii +1, j , k , 0, nx , ny , nz , 1) ; 26  2 = `fdx ( ii +2, j , k , 0, nx , ny , nz , 1) ; 27  3 = `fdx ( ii +3, j , k , 0, nx , ny , nz , 1) ; 28  rime = (3* da [ 1 ] - 4*da[ 2 ] + da[ 3 ]/ (2.0* dx ) ; 29  rimrime = ( da [ 1 ] - 2*da[ 2 ] + da[ 3 ]/ ( dx *dx) ; 30 rime = 0.0 ; rimrime = 0.0 ; 31 da [ i ] = da[ 1 ] - dx * rime + 0.5*dx*dx* rimrime ; 33  N = `fdx ( nx -1- ii , j , k , 0,x, ny , nz , 1) ; 34  Nm1 = `fdx ( nx -2- ii , j , k , 0,x, ny , nz , 1) ; 35  Nm2 = `fdx ( nx -3- ii , j , k , 0,x, ny , nz , 1) ; 36  Nm3 = `fdx ( nx -4- ii , j , k , 0,x, ny , nz , 1) ; 37 rime = (3* da [ Nm1 ] - 4*da[ Nm2 ] + da[ Nm3 ]/ (2.0* dx ) ; 38 rimrime = ( da [ Nm1 ] - 2*da[ Nm2 ] + da[ Nm3 ]/ ( dx *dx) ; 39 rime = 0.0 ; rimrime = 0.0 ; 40 da [ N ] = da[ Nm1 ] + dx * rime + 0.5*dx*dx* rimrime ; 43  j = ny - ho ; j = 0 ; ii-- ) 46  i = `fdx ( ii , j , k , 0, nx , ny , nz , 1) ; 47  1 = `fdx ( ii +1, j , k , 0, nx , ny , nz , 1) ; 48  2 = `fdx ( ii +2, j , k , 0, nx , ny , nz , 1) ; 49  3 = `fdx ( ii +3, j , k , 0, nx , ny , nz , 1) ; 50  rime = (3* da [ 1 ] - 4*da[ 2 ] + da[ 3 ]/ (2.0* dx ) ; 51  rimrime = ( da [ 1 ] - 2*da[ 2 ] + da[ 3 ]/ ( dx *dx) ; 52 rime = 0.0 ; rimrime = 0.0 ; 53 da [ i ] = da[ 1 ] - dx * rime + 0.5*dx*dx* rimrime ; 55  N = `fdx ( nx -1- ii , j , k , 0,x, ny , nz , 1) ; 56  Nm1 = `fdx ( nx -2- ii , j , k , 0,x, ny , nz , 1) ; 57  Nm2 = `fdx ( nx -3- ii , j , k , 0,x, ny , nz , 1) ; 58  Nm3 = `fdx ( nx -4- ii , j , k , 0,x, ny , nz , 1) ; 59 rime = (3* da [ Nm1 ] - 4*da[ Nm2 ] + da[ Nm3 ]/ (2.0* dx ) ; 60 rimrime = ( da [ Nm1 ] - 2*da[ Nm2 ] + da[ Nm3 ]/ ( dx *dx) ; 61 rime = 0.0 ; rimrime = 0.0 ; 62 da [ N ] = da[ Nm1 ] + dx * rime + 0.5*dx*dx* rimrime ; 67 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Numerics/SpatialInterpolations/src/VertexCenteredInterp_prolong.cpp 5  ~"VxCdIp.h " 6  ~ 7  ~"f܌_mes.h " 9 cڡ * goubbc , * gbbc ; 12  FORTNAME ( x__cf_vc )* uc , * d0fx , * di , * db , 13 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 14 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 15 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 16 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , * dfkR , 17 * x , * y , * z , * , * mesge ) ; 20  FORTNAME ( y__cf_vc )* uc , * d0fx , * di , * db , 21 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 22 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 23 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 24 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , * dfkR , 25 * x , * y , * z , * , * mesge ) ; 28  FORTNAME ( xy__cf_vc )* uc , * d0fx , * di , * db , 29 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 30 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 31 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 32 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , * dfkR , 33 * x , * y , * z , * , * mesge , 34 * icr ) ; 38  StlIpީis :: VxCdIp :: $cfigu (cڡ * lbc , cڡ * ubc , 39 cڡ * shec , 40 cڡ * lbf , cڡ * ubf , 41 cڡ * shef , 42 cڡ * lbr , cڡ * ubr , 43 cڡ * sh ) 46 bbc = lbc ; 47 oubbc = ubc ; 48 ridec = ( ubc [0] - lbc [0]/ ( shec [0] - 1) ; 49 ridef = ( ubf [0] - lbf [0]/ ( shef [0] - 1) ; 54 im = imax = jm = jmax = km = kmax = 0 ; 55 tif = tjf = tkf = tic = tjc = tkc = 0 ; 56 nxc = nyc = nzc = nxf = nyf = nzf = 1 ; 57 dim = my_ ["Dimension"] ; 59 im = `maximum ( lbf [0], lbc [0], lbr [0]); 60 i(( im - lbf [0])% ridef != 0) imin = imin + stridef - ((imin-lbf[0])%stridef); 61 imax = `mimum ( ubf [0], ubc [0], ubr [0]); 62 tic = lbc [0] ; tif = lbf [0] ; nxc = shec [0] ; nxf = shef [0] ; 64 i dim > 1 ) 66 jm = `maximum ( lbf [1], lbc [1], lbr [1]); 67 i(( jm - lbf [1])% ridef != 0) jmin = jmin + stridef - ((jmin-lbf[1])%stridef); 68 jmax = `mimum ( ubf [1], ubc [1], ubr [1]); 69 tjc = lbc [1] ; tjf = lbf [1] ; nyc = shec [1] ; nyf = shef [1] ; 72 i dim > 2 ) 74 km = `maximum ( lbf [2], lbc [2], lbr [2]); 75 i(( km - lbf [2])% ridef != 0) kmin = kmin + stridef - ((kmin-lbf[2])%stridef); 76 kmax = `mimum ( ubf [2], ubc [2], ubr [2]); 77 tkc = lbc [2] ; tkf = lbf [2] ; nzc = shec [2] ; nzf = shef [2] ; 83 fiL = 0; fiR = nxc -1; fjL = 0; fjR = nyc -1; fkL = 0; fkR = nzc -1; 86 dfiL = 0; dfiR = nxc -1; dfjL = 0; dfjR = nyc -1; dfkL = 0; dfkR = nzc -1; 88  #JR_DEBUG ) 89 #ifde JR_DEBUG 90 biL = biR = bjL = bjR = bkL = bkR = 0 ; 91 iiL = fiL + biL ; iiR = fiR - biR ; 92 ijL = fjL + bjL ; ijR = fjR - bjR ; 93 ikL = fkL + bkL ; ikR = fkR - bkR ; 96 iiL = ( im - tic / ridec ; iiR = ( imax - startic) / stridec ; 97 i( iiR !0&& (iiR < ( nxc -1)) ) iiR++ ; 98 ijL = ( jm - tjc / ridec ; ijR = ( jmax - startjc) / stridec ; 99 i( ijR !0&& (ijR < ( nyc -1)) ) ijR++; 100 ikL = ( km - tkc / ridec ; ikR = ( kmax - startkc) / stridec ; 101 i( ikR !0&& (ikR < ( nzc -1)) ) ikR++; 104 biL = iiL - fiL ; biR = fiR - iiR ; bjL = ijL - fjL ; bjR = fjR - ijR ; 105 bkL = ikL - fkL ; bkR = fkR - ikR ; 109 } } 112  $check_y (* uc , cڡ * shec ) 114 bo found = l ; 115  j = 0; j < shec [1]; j++) 116  i = 0; i < shec [0]; i++) 118 i `bs ( uc [ j * shec [0] + i ]) > 3000 ) 120 d :: << " E ! { " << bbc [0] << ", " << olbbc[1] << " } { " 121 << oubbc [0] << ", " << oubbc[1] << " } -- [ " << shec [0] 122 << " X " << shec [1] << " ] +++ ( " << i << ", " << j << " ) " 123 << uc [ j * shec [0]+ i ] << d :: dl ; 124 found = ue ; 127 i( found = ue ) d :: << " ------------ " << std:: dl ; 128 } } 131  StlIpީis :: VxCdIp :: $DoOV (* uc , 132 cڡ * shec , * uf , cڡ * shef ,  em ,  nems , 133 * d0fx , * d0fy , * d0fxy ) 136  ;  mesge [100] ; 137 x = 0, y = 0, z = 0 ; 139  t_dex = `fdx (0, 0, 0, em , nxc , nyc , nzc , nems ) ; 141 `RaPch ( uc + t_dex ), shec , my_ ["Dimension"] ) ; 144 i( nems !1 ) `check_y ( uc + t_dex , shec ) ; 147 `FORTNAME ( x__cf_vc )( uc + t_dex ), d0fx , & di , & db , 148 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 149 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 150 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 151 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 152 & x , & y ,& z , & , mesge ) ; 153 i( < 0 ) 155 d :: << " SpatialInterpolations::VertexCenteredInterp::DoOneVar() Error " 156 << " x- # " << << d :: dl ; 161 i my_ [ "Dimension" ] > 1 ) 164 `FORTNAME ( y__cf_vc )( uc + t_dex ), d0fy , & di , & db , 165 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 166 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 167 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 168 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 169 & x , & y , & z , & , mesge ) ; 170 i( < 0 ) 172 d :: << " SpatialInterpolations::VertexCenteredInterp::DoOneVar() Error " 173 << " y- # " << << d :: dl ; 177  icr = 0 ; 178 `FORTNAME ( xy__cf_vc )( uc + t_dex ), d0fxy , & di , & db , 179 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 180 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 181 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 182 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 183 & x , & y , & z , & , mesge , & icr ) ; 184 i( < 0 ) 186 d :: << " SpatialInterpolations::VertexCenteredInterp::DoOneVar() Error " 187 << " xy- # " << << d :: dl ; 193 i my_ [ "Dimension" ] > 2 ) 200 d :: << " SpatialInterpolations::VertexCenteredInterp::DoOneVar() " 201 << " 3D ipn imemd " << d :: dl ; 205  k = km ; k < kmax ; k + ridef ) 206   j = jm ; j < jmax ; j + ridef ) 207  i = im ; i < imax ; i + ridef ) 209  ic = ( i - tic / ridec ; 210  jc = ( j - tjc / ridec ; 211  kc = ( k - tkc / ridec ; 213  ife = ( i - tif / ridef ; 214  jfe = ( j - tjf / ridef ; 215  kfe = ( k - tkf / ridef ; 218 i( ic % ridec =0&& ( jc %stridec == 0) ) 219 uf [ `fdx ( ife , jfe , kfe , em , nxf , nyf , nzf , nems ) ] = 220 uc [ `fdx ( ic , jc , kc , em , nxc , nyc , nzc , nems ) ] ; 223 i( ic % ridec !0&& ( jc %stridec == 0) ) 224 uf [ `fdx ( ife , jfe , kfe , em , nxf , nyf , nzf , nems ) ] = 225 d0fx [ `fdx ( ic , jc , kc , 0, nxc , nyc , nzc , 1) ] ; 227 i dim > 1 ) 230 i( ic % ridec !0&& ( jc %stridec != 0) ) 231 uf [ `fdx ( ife , jfe , kfe , em , nxf , nyf , nzf , nems ) ] = 232 d0fxy [ `fdx ( ic , jc , kc , 0, nxc , nyc , nzc , 1) ] ; 235 i( ic % ridec =0&& ( jc %stridec != 0) ) 236 uf [ `fdx ( ife , jfe , kfe , em , nxf , nyf , nzf , nems ) ] = 237 d0fy [ `fdx ( ic , jc , kc , 0, nxc , nyc , nzc , 1) ] ; 240 i( dim > 2 ) 250 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/include/cca_mat.h 4 #ide __c_m_h__ 5  #__c_m_h__ ) 8  #IJth ( A , i , j ) A[j][i] 9 ) 10 as cc_m 12 mpublic : 13 $c_m () {} 14 vtu ~ $c_m ({ } } 16 vtu ** g_da ()=0; 17 vtu  g_size ()=0; 18 vtu  t_size ()=0; 19 vtu  put_da (**, )=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/include/cca_vec.h 6 #ide __c_vec_h__ 7  #__c_vec_h__ ) 9 as cc_vec 11 mpublic : 12 $c_vec () {} 13 vtu ~ $c_vec ({ } } 15 vtu * g_da ()=0; 16 vtu  g_size ()=0; 17 vtu  t_size ()=0; 18 vtu  put_da (*, )=0; 19 vtu  cy_da ( c_vec *)=0; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/include/data.h 1 #ide __mesh_h__ 2  #__mesh_h__ ) 4  sUrDa { 5  ms ; 6  mvs ; 7 * messu ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/include/f77_subroutines.h 1 #ide __f77_subroutes_h__ 2  #__f77_subroutes_h__ ) 4  ~ 5  ~"f܌_mes.h " 7  #gs gs_ ) 8  #grs grs_ ) 9  #grb grb_ ) 10  #goichcfs goichcfs_ ) 11  #gnumac gnumac_ ) 12  #jacobn jacobn_ ) 13  #ck ck_ ) 14  # _ ) 15  #df df_ ) 16  #dfd dfd_ ) 17  # _ ) 18  #gms gms_ ) 19  #gml gml_ ) 20  #gmes gmes_ ) 21  #gmix gmix_ ) 22  #gcvmix gcvmix_ ) 23  #ghmix ghmix_ ) 24  #gwt gwt_ ) 25  #gwtm gwtm_ ) 26  #grho grho_ ) 27  #gms gms_ ) 28  #ghms ghms_ ) 29  #ghml ghml_ ) 30  #gsizes gsizes_ ) 41  #f_g `FORTNAME ( f_g ) ) 42  #chem_ `FORTNAME ( chem_ ) ) 43  #chem_f `FORTNAME ( chem_f ) ) 44  #thm_ `FORTNAME ( thm_ ) ) 74  gs (* essu , * ack_ecs_dex , 75 * necs , * ns , * size , 76 * da , * da_d ); 78  grs (* essu , * mtu , * necs , 79 * da_ , * da_out ); 81  grb (* essu , * mtu , * necs , 82 * da_ , * da_out ); 84  goichcfs (* necs , * da_out ); 86  gnumac (* ėc ); 88  jacobn (* essu , * ack_ecs_dex , 89 * necs , * ns , * size , 90 * da , * da_jac ,* mx , 91 * mab ,* mp1b ,* odb , 92 * cgb ,* hb ,* b , 93 * cgtbt ,* htbt ,* tbt ); 95  ck (); 96  (); 97  df (* mp_m , * mp_max ); 98  dfd (* mp_m , * mp_max ); 99  (* ns ); 101  f_g (* r0 ,* tm ,* btzk ,* avogadro , 102 * mef ,* f ,* hf ,* ef , 103 * wf ,* rgf ,* rhef ,* wf , 104 * pdf ,* htdf ,* f , 105 * vf ,* vdifef ,* amuf , 106 * tymf ,* ef ,* cgf ,* gf , 107 * damkoh ); 109  chem_ (); 111  chem_f (* ef ,* wf ,* wf ,* mef , 112 * r0 ,* wt ,* tm ,* btzk , 113 * avogadro ,* f ,* hf ,* ef , 114 * rgf ,* rhef ,* pdf , 115 * htdf ,* f ,* vf , 116 * vdifef ,* amuf ,* tymf , 117 * cgf ,* gf ,* damkoh ); 119  gsizes (* nsmx ,* mx ); 121  thm_ (* ngbm ,* mef ,* f , 122 * hf ,* cgf ,* wt ,* r0 , 123 * ns , * mp1b ,* odb , 124 * mab ,* cgb ,* hb , 125 * b ,* tbt ,* htbt , 126 * cgtbt ); 128  gms (* n , * x , * y ); 130  gml (* n , * y , * x ); 132  gmes (* ns , * ecs_mes ); 134  gmix (* mp , * mef , * n , * y , * f , * mix ); 136  gcvmix (* mp , * mef , * n , * y , * rgf , * f , * cvmix ); 138  ghmix (* mp , * mef , * n , * y , * hf , * hmix ); 140  gwt (* necs , * wf , * wt ); 142  gwtm (* necs , * X , * wf , * wtm ); 144  grho (* mp , * mef , * essu , * ef , 145 * necs , * X , * rhef , * rho ); 147  gms (* mp , * mef , * n , * f , * ms ); 149  ghms (* mp , * mef , * n , * hf , * hms ); 151  ghml (* mp , * mef , * n , * wf , * hf , * hml ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/include/fortran_names.h 5 #i defed ( PGI ) 6  #FORTNAME ( A A## _ ) 8  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/include/reaction.h 1  ~ 2 usg mea gd ; 4  ~"c.h " 7  ~"DPt.h " 8  ~"BdPt.h " 9  ~"PrݔtsPt.h " 10  ~"TimePt.h " 11  ~"da.h " 12  ~"ThmoAlysisPt.h " 13  ~"fPt.h " 16  ~ 17  ~ 20  ~"jc++/ut/jc++ut.h " 21  ~"c.h " 22  ~"dPts.h " 23  ~"ms/msSr.h " 24  ~"pt/sutIs.h " 27  ~"CONV_NS.h " 31  #USE_DEFAULT_PRESSURE -1 ) 32  #USER_SUPPLIES_PRESSURE_SEPARATELY -2 ) 33  #USER_SUPPLIES_PRESSURE_WITH_INPUT -3 ) 35 ass gai : public vtu DPt , 36 public vtu gBdPt , 37 public vtu gPrݔtsPt , 38 public vtu gThmoAlysisPt , 39 public vtu $CONV_NS ( Compڒt ) 42 public : 44 `ai (); 46 vtu ~ `ai (); 48 vtu  `f_d ( N ,  t , c_vec * y , c_vec* yd , 49 * f_da ); 51 vtu  `Jac_d ( N , c_m * j , * f_da ,  t , 52 c_vec * y , c_vec* ewt , * jac_da ); 54 vtu  `f_bd ( N ,  t , c_vec * y , c_vec* yd , 55 * f_da ); 57 vtu  `Jac_bd ( N ,  mu ,  mlow , BdM_c J , 58 * f_da ,  t , c_vec * y , 59 c_vec * ewt , * jac_da ); 61 vtu  `tSvis `CONV_NS ( Svis * cc ); 71 vtu bo `DsItExi (* key_me ); 75 vtu  `GSize (* key_me ){ (0);} 86 vtu  `GIegs (* me , * da ,  size ) ; 88 vtu  `GDoubs (* me , * da ,  size ); 118 vtu  `SIegs (* me , * da ,  size ) ; 126 vtu  `SDoubs (* me , * da ,  size ) ; 136 vtu  `GNumScs () ; 147 vtu  `GScsNames ( necs , * ecsNames ) ; 158 vtu  `GMecurWts ( necs , * wts ) ; 162 vtu  `GNumInddtVs () ; 165 vtu  `GNumRis () ; 179 vtu  `GStoichCfs ( necs , * oichmrix ) ; 211 vtu  `CompuV (* put ,  nvs , cڡ * she , 212  dims , rg vName , * ouut , 213  ouutSize ) ; 238 vtu  `CompuRs (* essu ,* mtu , necs , 239 * Y , rg vName ,* ouut , ouutSize ); 241 ive : 243  `lize () ; 244  `chem_m_lize () ; 246 bo is_ , is_chem_ ; 248  `tupPams (); 249 `CONV_NS ( Svis * svc ; 250 CfigubPamPt * ; 252 DoubPam * mp_m ; 253 DoubPam * mp_max ; 254 IPam * my_oc ; 255 BoPam * pMakeTabFes ; 257  deu_essu ; 258  tm ;  tmax ; 260  n_dim ; 261  ack_ecs_dex ; 262  ns ; 263  nvs ; 264  necs ; 265  ėc ; 266  my_oss ; 267 * essu ; 270  mtu_dex ; 271  yS_dex ; 272  essu_dex ; 276  mx ; 277  nsmx ; 278  mp1b ; 279  odb ; 280 * mab ; 281 * cgb ; 282 * hb ; 283 * b ; 284 * tbt ; 285 * htbt ; 286 * cgtbt ; 288  size ; 289  ns ; 290  r0 ; tm ; btzk ; avogadro ; mef ; 291  f ; hf ; ef ; wf ; rgf ; 292  rhef ; wf ; pdf ; htdf ; f ; 293  vf ; vdifef ; amuf ; tymf ; ef ; 294  cgf ; gf ; damkoh ; 296 * wt ; 297  ngbm ; 300 m < rg , > ags ; 301 m < rg , *> ݔts ; 304 * Y ; 305 * X ; 306 m < rg , > me ; 310  `g_ms_dummy (* mp , * es , * n , * x , 311 * ov_pc ); 313  `g_ml_dummy (* mp , * es , * n , * x , 314 * ov_pc ); 316  `g_mix_dummy (* mp , * es , * n , * x , 317 * ov_pc ); 319  `g_cvmix_dummy (* mp , * es , * n , * x , 320 * ov_pc ); 322  `g_hmix_dummy (* mp , * es , * n , * x , 323 * ov_pc ); 325  `g_wtmix_dummy (* mp , * es , * n , * x , 326 * ov_pc ); 328  `g_rhomix_dummy (* mp , * es , * n , * x , 329 * ov_pc ); 331  `g_ms_dummy (* mp , * es , * n , * x , 332 * ov_pc ); 334  `g_hms_dummy (* mp , * es , * n , * x , 335 * ov_pc ); 337  `g_hml_dummy (* mp , * es , * n , * x , 338 * ov_pc ); 340  `g_rs_dummy (* essu ,* mtu ,* n , 341 * Y ,* ov_pc ); 343  `g_rbrs_dummy (* essu ,* mtu ,* n , 344 * Y ,* ov_pc ); 346 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/lib/chemkin/ckstrt.h 2 C 3 C ude fe  gcklib . f 4 C 5 gCOMMON / gCKSTRT / gNMM , gNKK , gNII , gMXSP , gMXTB , gMXTP , gNCP , gNCP1 , 6 1 gNCP2 , gNCP2T , gNPAR , gNLAR , gNFAR , gNLAN , gNFAL , gNREV , 7 2 gNTHB , gNRLT , gNWL , gNEIM , gNJAN , gNJAR , gNFT1 , gNF1R , 8 3 gNEXC , gNRNU , gNORD , gMXORD , 9 4 gIcMM , gIcKK , gIcNC , gIcPH , gIcCH , gIcNT , gIcNU , gIcNK , 10 5 gIcNS , gIcNR , gIcLT , gIcRL , gIcRV , gIcWL , gIcFL , gIcFO , 11 6 gIcKF , gIcTB , gIcKN , gIcKT , gIcEI , gIcTD , gIcJN , gIcF1 , 12 7 gIcEX , gIcRNU , gIcORD , gIcKOR , 13 8 gNcAW , gNcWT , gNcTT , gNcAA , gNcCO , gNcRV , gNcLT , gNcRL , 14 9 gNcFL , gNcKT , gNcWL , gNcJN , gNcF1 , gNcEX , gNcRU , gNcRC , 15 * gNcPA , gNcKF , gNcKR , gNcRNU , gNcKOR , gNcK1 , gNcK2 , gNcK3 , 16 + gNcK4 , gNcI1 , gNcI2 , gNcI3 , NcI4 17 C 18 C END ude fe  gcklib . f 19 gC @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/src/ThermoAnalysisMethods.cpp 1  ~ 2  ~"ai.h " 3  ~"f77_subroutes.h " 5  gai :: $GNumScs (){ 7 i is_ = l ) `lize (); 8  ( ns ); 9 } } 12  gai :: $GScsNames ( necs1 , * ecs_mes ){ 14 i is_ = l ) `lize (); 15 i( necs1 ! ns ) { 16 cout << "Fromeaction::GetSpeciesNames: Theumber of species " 18 << "othexig mechism. Rued wh -1 " << dl ; 21 `gmes (& ns , ecs_mes ); 24 } } 26  gai :: $GMecurWts ( necs1 , * wts ) { 28 i is_ = l ) `lize (); 29 i( necs1 ! ns ) { 30 cout << "Fromeaction::GetMolecularWts: Theumber of species " 32 << "othexig mechism. Rued wh -1 " << dl ; 36 `gwt (& necs1 , & wf , wts ); 39 } } 41  gai :: $GNumInddtVs () { 43 i is_ = l ) `lize (); 44  ( ns + 2); 45 } } 47  gai :: $GNumRis () { 49 i is_ = l ) `lize (); 50  ( ėc ) ; 51 } } 53  gai :: $GStoichCfs ( necs1 , * oichmrix ) { 55 i is_ = l ) `lize (); 56 i( necs1 ! ns ) { 57 cout << "Fromeaction::GetStoichCoefs: Theumber of species " 59 << "othexig mechism. Rued wh -1 " << dl ; 63 `goichcfs (& necs1 , oichmrix ); 66 } } 68  gai :: $CompuV (* put ,  nvs1 , cڡ * she , 69  dims , rg vName , * ouut , 70  ouutSize ) 73 i is_ = l ) `lize (); 75 mtu_dex = ags ["temperature_index"]; 76 yS_dex = ags ["yStart_index"]; 77 essu_dex = ags ["pressure_index"]; 79 ( tai ::* tPor2RM )(* tmp , * tes , 80 * tn , * tx , * tout ); 91 Por2RM q ; 93  this_vName = me [ vName ]; 94  nov_pc_ = 0 ; 96  this_vName ) { 98 q = & ai :: g_ms_dummy ; 99 nov_pc_ = ns ; 102 q = & ai :: g_ml_dummy ; 103 nov_pc_ = ns ; 106 q = & ai :: g_mix_dummy ; 107 nov_pc_ = 1 ; 110 q = & ai :: g_cvmix_dummy ; 111 nov_pc_ = 1 ; 114 q = & ai :: g_hmix_dummy ; 115 nov_pc_ = 1 ; 118 q = & ai :: g_wtmix_dummy ; 119 nov_pc_ = 1 ; 122 q = & ai :: g_rhomix_dummy ; 123 nov_pc_ = 1 ; 126 q = & ai :: g_ms_dummy ; 127 nov_pc_ = ns ; 130 q = & ai :: g_hms_dummy ; 131 nov_pc_ = ns ; 134 q = & ai :: g_hml_dummy ; 135 nov_pc_ = ns ; 138 << "i::CompuV(vNam" << vName << " cannot be supplied." 144  nx = 1, ny = 1, nz = 1; 145 i( dims > 0 nx = she [0]; 146 i( dims > 1 ny = she [1]; 147 i( dims > 2 nz = she [2]; 148  ns_lol = nx * ny * nz ; 150  nov_pc = ouutSize / ns_lol ; 151 i nov_pc ! nov_pc_ ) 153 << "i::compuV(ouuy siz" << ouutSize << " isoo small " 154 << "hdhdwhich iexedb" << nov_pc_ * ns 156 << " odoub˅cisiڃmts. Doghg;u wh -2 " << dl ; 160 * ov_pc = w [ nov_pc ]; 161  P = 0; 162  T = 0; 166  mp_dex_t = mtu_dex * ns_lol ; 167  es_dex_t = essu_dex * ns_lol ; 168  ecs_dex_t = yS_dex * ns_lol ; 170  i = 0; i < ns_lol ; icell++) 172 T = put [ mp_dex_t + i ]; 173 i essu_dex = USE_DEFAULT_PRESSURE ) 174 P = *( ݔts ["pressure"]) ; 175 i essu_dex = USER_SUPPLIES_PRESSURE_SEPARATELY ) 176 P = * ݔts ["essu"] + i ) ; 178 P = put [ es_dex_t + i ]; 181 i this_vName == 0 ) 183  i = 0; i < ns ; isp++) 184 X [ i ] = put [ ecs_dex_t + i + i* ns_lol ] ; 185 ( this ->* q )(& T , & P , & ns , X , ov_pc ); 187 i this_vName == 1 ) 189  i = 0; i < ns ; isp++) 190 Y [ i ] = put [ ecs_dex_t + i + i* ns_lol ] ; 192 `gml (& ns , Y , ov_pc ) ; 198  i = 0; i < ns ; isp++) 199 Y [ i ] = put [ ecs_dex_t + i + i* ns_lol ] ; 201 `gml (& ns , Y , X ); 203 ( this ->* q )(& T , & P , & ns , X , ov_pc ); 207  jj = 0; jj < nov_pc ; jj++) { 208 ouut [ jj * ns_lol + i ] = ov_pc [jj]; 213 de [] ov_pc ; 216 } } 218  gai :: $CompuRs (* essu1 ,* mtu , necs1 , 219 * Y , rg vName ,* ouut , ouutSize ){ 220 i is_ = l ) `lize (); 221 i is_chem_ = l ) `chem_m_lize (); 223 i( necs1 ! ns ) { 224 cout << "Fromeaction::ComputeRops: Theumber of species " 226 << "othexig mechism. Rued wh -1 " << dl ; 230 ( tai ::* tPor2M )(* tessu1 ,* tmtu ,* tnecs1 , 231 * tY ,* touut ); 233 Por2M q ; 235  this_vName = me [ vName ]; 236  nov_pc_ = 0 ; 238  this_vName ) { 240 q = & ai :: g_rs_dummy ; 241 nov_pc_ = ėc ; 244 q = & ai :: g_rbrs_dummy ; 245 nov_pc_ = 2* ėc ; 248 << "i::CompuRs(vNam" << vName << " cannot be supplied." 253  nov_pc = ouutSize ; 254 i nov_pc ! nov_pc_ ) 256 << "i::compuRs(ouuy siz" << ouutSize << " isoo small " 257 << "hdhdwhich iexedb" << nov_pc_ 259 << " odoub˅cisiڃmts. Doghg;u wh -3 " << dl ; 263 ( this ->* q )( essu1 , mtu ,& necs1 , Y , ouut ); 266 } } 268  gai :: $g_ms_dummy (* mp , * es , * n , 269 * x , * ov_pc ){ 270 `gms ( n , x , ov_pc ); 272 } } 274  gai :: $g_ml_dummy (* mp , * es , * n , 275 * x , * ov_pc ){ 276 `gml ( n , Y , ov_pc ); 278 } } 280  gai :: $g_mix_dummy (* mp , * es , * n , 281 * x , * ov_pc ){ 282 `gmix ( mp , & mef , n , Y , & f , ov_pc ); 284 } } 286  gai :: $g_cvmix_dummy (* mp , * es , * n , 287 * x , * ov_pc ){ 288 `gcvmix ( mp , & mef , n , Y , & rgf , & f , ov_pc ); 291 } } 293  gai :: $g_hmix_dummy (* mp , * es , * n , 294 * x , * ov_pc ){ 295 `ghmix ( mp , & mef , n , Y , & hf , ov_pc ); 298 } } 300  gai :: $g_wtmix_dummy (* mp , * es , * n , 301 * x , * ov_pc ){ 302 `gwtm ( n , x , & wf , ov_pc ); 304 } } 306  gai :: $g_rhomix_dummy (* mp , * es , * n , 307 * x , * ov_pc ){ 308 `grho ( mp , & mef , es , & ef , n , x , & rhef , ov_pc ); 310 } } 312  gai :: $g_ms_dummy (* mp , * es , * n , 313 * x , * ov_pc ){ 314 `gms ( mp , & mef , n , & f , ov_pc ); 316 } } 318  gai :: $g_hms_dummy (* mp , * es , * n , 319 * x , * ov_pc ){ 320 `ghms ( mp , & mef , n , & hf , ov_pc ); 322 } } 324  gai :: $g_hml_dummy (* mp , * es , * n , 325 * x , * ov_pc ){ 326 `ghml ( mp , & mef , n , & wf , & hf , ov_pc ); 328 } } 330  gai :: $g_rs_dummy (* essu1 ,* mtu ,* n , 331 * Y ,* out ){ 332 `grs ( essu1 , mtu , n , Y , out ); 334 } } 336  gai :: $g_rbrs_dummy (* essu1 ,* mtu ,* n , 337 * Y ,* out ){ 338 `grb ( essu1 , mtu , n , Y , out ); 340 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ChemicalRates/src/reaction.cpp 1  ~ 2  ~ 3  ~ 6  ~"mpi.h " 7  ~"pts/MPIBrow.h " 8  ~"AMRPt.h " 12  ~"f77_subroutes.h " 77 gai :: $ai () 80 is_ = l ; is_chem_ = false ; 82 mp_m = 0 ; mp_max = 0; my_oc = 0 ; pMakeTabFes = 0 ; 86 #ifde NON_DIM 87 n_dim = 1 ; 88 deu_essu = 1 ; 90 n_dim = 0; 91 deu_essu = 101325 ; 94 ack_ecs_dex = 2; 95 ns = 1; 96 nvs = 1; 97 necs = 1; 98 ns = 1 ; 99 essu = 0; 100 mtu_dex = 0; 101 yS_dex = 1; 102 essu_dex = USE_DEFAULT_PRESSURE ; 105 ags ["n_dim"] = n_dim ; 106 ags ["ack_ecs_dex"] = ack_ecs_dex ; 107 ags ["ns"] = ns ; 108 ags ["nvs"] = nvs ; 109 ݔts ["essu"] = &( deu_essu ); 112 ags ["mtu_dex"] = mtu_dex ; 113 ags ["yS_dex"] = yS_dex ; 114 ags ["essu_dex"] = essu_dex ; 117 me ["msfr"] = 0; 118 me ["mlfr"] = 1; 119 me ["cp_mix"] = 2; 120 me ["cv_mix"] = 3; 121 me ["h_mix"] = 4; 122 me ["wt_mix"] = 5; 123 me ["rho_mix"] = 6; 124 me ["cp_species"] = 7; 125 me ["hms"] = 8; 126 me ["hml"] = 9; 127 me ["rops"] = 10; 128 me ["rfrbrops"] = 11; 130 svc = 0; 133 cout <<"ai cڡrued"<< dl ; 135 } } 138 gai ::~ $ai () 140 i( mp_m !0 ) de emp_min; 141 i( mp_max !0 ) de emp_max; 142 i( my_oc !0 de my_proc; 143 i( pMakeTabFes !0 de MakeTabFiles ; 145 i is_ = ue ) 147 de [] wt ; 148 de [] mab ; 149 de [] cgb ; 150 de [] hb ; 151 de [] b ; 152 de [] tbt ; 153 de [] htbt ; 154 de [] cgtbt ; 155 de [] Y ; 156 de [] X ; 159 cout <<"ai deroyed"<< dl ; 160 } } 162  gai :: tSvis CONV_NS ( Svis * cc ) 165 i( cc == NULL && ( svc != NULL) ){ 166 svc -> moveProvidesPt ("Dense") ; 167 gsvc -> moveProvidesPt ("Band") ; 168 gsvc -> moveProvidesPt ("set_properties") ; 169 gsvc -> moveProvidesPt ("get_time") ; 170 gsvc -> moveProvidesPt ("Configure") ; 171 gsvc -> aPt ("MyMesh") ; 172 gsvc -> aPt ("mpi") ; 177 i( gcc != NULL && ( svc != NULL) ){ 178 cout << "tSvig cdwi wh-NULL *Svis" << dl ; 179 abt () ; 182 i( gcc == NULL && ( svc == NULL)){ 183 cout <<"Gه NULL ind oSvipor! Rug whoudognythg"<< dl ; 189 gsvc = cc ; 191 gsvc -> giUsPt svc -> PtInfo ("cSvc", 194 CfigubPamFay * gf = 195 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 196 g = f -> CfigubPamPt (); tupPams (); 197 gsvc -> aPt ("cSvc"); 198 gsvc -> uegiUsPt ("cSvc"); 201 CONV_NS ( PtInfo * gpInfo ; 204 gpInfo = svc -> PtInfo ("Dense", "DensePort", 0); 208 gsvc -> addProvidesPt ( this , pInfo ); 211 gpInfo = svc -> PtInfo ("Band", "BandPort", 0); 216 gsvc -> addProvidesPt ( this , pInfo ); 219 gpInfo = svc -> PtInfo ("set_properties", "PropertiesPort", 0); 220 gsvc -> addProvidesPt ( this , pInfo ); 223 gpInfo = svc -> PtInfo ("get_time", "TimePort", 0); 224 gsvc -> giUsPt ( pInfo ); 227 gsvc -> addProvidesPt ( , svc -> PtInfo ("Configure", 231 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort",0) ); 232 gsvc -> giUsPt svc -> PtInfo ("mpi", "gov.cca.MPIBorrow",0) ); 235 gpInfo = svc -> PtInfo ("ref", "refPort", 0); 236 gsvc -> giUsPt ( pInfo ); 239 gpInfo = svc -> PtInfo ("ThermoAnalysis", "ThermoAnalysisPort", 0); 240 gsvc -> addProvidesPt ( this , pInfo ); 244  gai :: $tupPams () 247 -> `tBchT ("Configure Control Parameters"); 248 mp_m = w `DoubPam ("temp_min", "temp_min", "temp_min", 251 mp_max = w `DoubPam ("temp_max", "temp_max", "temp_max", 254 my_oc = w `IPam ("BinAndTabFileCreatingProc", 259 pMakeTabFes = w `BoPam ( "MakeTabFiles", "Shouldables be made ?", 260 "Makthmتd othabs", ue ) ; 262 -> `tGroupName ("Temperature [K]"); 263 -> `addReque ( mp_m ); 264 -> `addReque ( mp_max ); 266 -> `tGroupName ("Propertiesables"); 267 -> `addReque ( my_oc ); 268 -> `addReque ( pMakeTabFes ) ; 269 } } 271  gai :: $f_d ( N ,  t , c_vec * y , c_vec* yd , 272 * f_da ) 274 i is_ = l ) `lize () ; 275 i is_chem_ = l ) `chem_m_lize () ; 277 UrDa * lol_da ; 278 * da ; 279 * da_d ; 284 lol_da = ( UrDa * f_da ; 286 da = y -> `g_da () ; 288 da_d = yd -> `g_da () ; 290 essu = ݔts ["pressure"]; 292 `gs ( essu , & ack_ecs_dex , & necs , 293 & ns , & size , da , da_d ); 295 } } 297  gai :: $f_bd ( N ,  t , c_vec * y , c_vec* yd , 298 * f_da ) 300 i is_ = l ) `lize () ; 301 i is_chem_ = l ) `chem_m_lize () ; 303 UrDa * lol_da ; 304 * da ; 305 * da_d ; 310 lol_da = ( UrDa * f_da ; 312 da = y -> `g_da () ; 314 da_d = yd -> `g_da () ; 316 essu = ݔts ["pressure"]; 318 `gs ( essu , & ack_ecs_dex , & necs , 319 & ns , & size , da , da_d ); 320 } } 323  gai :: $Jac_d ( N , c_m * J , * f_da ,  t , 324 c_vec * y , c_vec* ewt , * jac_da ) 326 i is_ = l ) `lize () ; 327 i is_chem_ = l ) `chem_ () ; 329 * da ; 330 ** J_lol ; 331 * da_jac ; 333 da_jac = w [ size *size]; 334 da = y -> `g_da () ; 335 J_lol = J -> `g_da (); 336 essu = ݔts ["pressure"]; 338 `jacobn ( essu , & ack_ecs_dex , & necs , 339 & ns , & size , da , da_jac , & mx , mab , 340 & mp1b , & odb , cgb , hb , b , 341 cgtbt , htbt , tbt ); 343  j =0;j< nvs ;j++){ 344  i =0;i< nvs ;i++){ 345 `DENSE_IJth ( J_lol , i , j da_jac [j* nvs + i] ; 349 de [] da_jac ; 351 } } 353  gai :: $Jac_bd ( N ,  mu ,  mlow , BdM_c J , 354 * f_da ,  t , c_vec * y , 355 c_vec * ewt , * jac_da ) 358 } } 361 bo gai :: $DsItExi (* me1 ) 364 rg `dummy ( me1 ) ; 365 bo exis = l ; 368 m < rg , >:: cڡ_ p ; 369  p = ags . `beg (); !ags. `d (); ++p ) 370 i p -> f = dummy ) exis = ue ; 373 m < rg , *>:: cڡ_ ps ; 374  ps = ݔts . `beg ();!ݔts. `d (); ++ps ) 375 i ps -> f = dummy ) exis = ue ; 377 ( exis ) ; 378 } } 381  gai :: $GIegs (* me1 , * da ,  size1 ) 383 i `DsItExi ( me1 = l )  (-1) ; 387 rg `ame ( me1 ) ; 388 * da = ags [ ame ] ; 390 } } 392  gai :: $GDoubs (* me1 , * da ,  size1 ) 394 i `DsItExi ( me1 = l )  (-1) ; 398 rg `ame ( me1 ) ; 399 da = ݔts [ ame ] ; 401 } } 403  gai :: $SIegs (* me1 , * da ,  size1 ) 405 i `DsItExi ( me1 = l )  (-1) ; 407 rg `ame ( me1 ) ; 408 ags [ ame ] = * da ; 409 is_chem_ = l ; 412 } } 414  gai :: $SDoubs (* me1 , * da ,  size1 ) 417 i `DsItExi ( me1 = l )  (-1) ; 419 rg `ame ( me1 ) ; 420 ݔts [ ame ] = da ; 421 d :: rg `ess ("pressure") ; 422 i ame = ess ) ags ["essu_dex"] = USER_SUPPLIES_PRESSURE_SEPARATELY ; 423 is_chem_ = l ; 426 } } 428  gai :: $lize () 430 tm = mp_m -> vue ; 431 tmax = mp_max -> vue ; 432 my_oss = my_oc -> vue ; 439 ifam `1 ("chem.inp"); 440 if(! 1 ){ 441 << "C othchem.pufe: Abtg" << dl ; 442 `ex (1); 444 ifam `2 ("therm.dat"); 445 if(! 2 ){ 446 << "C oththm.d iufe: Abtg" << dl ; 447 `ex (2); 449 ifam `3 ("tran.dat"); 450 if(! 3 ){ 451 << "C oth.d iufe: Abtg" << dl ; 452 `ex (3); 458 AMRPt * pAMRP = 0; 460 `CONV_NS ( Pt * pd = svc -> `gPt ("MyMesh") ; 461 i pd !0 ) pAMRP = dymic_ < AMRPt *>(d ) ; 465 i(( my_oss =-1&& ( pMakeTabFes -> vue = l )) 469 i(( my_oss =-1&& ( pMakeTabFes -> vue = ue ) ) 471 `ck (); 472 ` (); 473 `df (& tm ,& tmax ); 474 `dfd (& tm ,& tmax ); 477 i pAMRP != 0 ) 479  my_nk = pAMRP -> `GC_g_oc_me () ; 481 `MPI_Brr pAMRP -> `GC_g_compu_nodes_communit () ) ; 482 i( my_nk = my_oss ) 484 cout << " Pross " << my_nk << " imakghb fe" << dl ; 485 `ck (); 486 ` (); 487 `df (& tm ,& tmax ); 488 `dfd (& tm ,& tmax ); 491 `MPI_Brr pAMRP -> `GC_g_compu_nodes_communit () ) ; 495 `CONV_NS ( MPIBrow * pMPI_Pt = dymic_ < CONV_NS(MPIBorrow) *> 496 ( svc -> `gPt ("mpi") );; 497  key , g , nk ; 498 MPI_Comm comm = pMPI_Pt -> `browComm (1, & g , key ) ; 499 `MPI_Comm_nk ( comm , & nk ); 501 `MPI_Brr ( comm ) ; 502 i nk = my_oss ) 504 `ck (); 505 ` (); 506 `df (& tm ,& tmax ); 507 `dfd (& tm ,& tmax ); 510 `MPI_Brr ( comm ) ; 511 svc -> `aPt ("mpi"); 513 svc -> `aPt ("MyMesh") ; 517 ` (& ns ); 518 wt = w [ ns ] ; 519 `chem_ (); 522 `gnumac (& ėc ); 527 fPt * psc = 0 ; 528 psc = dymic_ < fPt *>( svc -> `gPt ("ref")); 529 i psc == 0 ) 531 << "eaction::initialize(). Didot getortoheeference quantities " 532 << " compڒts. Abtg. " << dl ; 533 `ex (0) ; 535 psc -> `_f_g (& r0 ,& tm ,& btzk ,& avogadro ,& mef ,& f ,& hf , 536 & ef ,& wf ,& rgf ,& rhef ,& wf ,& pdf , 537 & htdf ,& f ,& vf ,& vdifef ,& amuf , 538 & tymf ,& ef ,& cgf ,& gf ,& damkoh ); 539 svc -> `aPt ("ref"); 543 `chem_f (& ef ,& wf ,& wf ,& mef ,& r0 , wt ,& tm ,& btzk ,& avogadro , 544 & f ,& hf ,& ef ,& rgf ,& rhef ,& pdf ,& htdf ,& f , 545 & vf ,& vdifef ,& amuf ,& tymf ,& cgf ,& gf ,& damkoh ); 547 `gsizes (& nsmx ,& mx ); 549  = mx * nsmx ; 550 mab = w [ mx ]; 551 cgb = w [ ]; 552 hb = w [ ]; 553 b = w [ ]; 554 tbt = w [ ]; 555 htbt = w [ ]; 556 cgtbt = w [ ]; 558 `thm_ (& ngbm ,& mef ,& f ,& hf ,& cgf , wt ,& r0 ,& ns , 559 & mp1b ,& odb , mab , cgb , 560 hb , b , tbt , htbt , cgtbt ); 563 Y = w [ ns ]; 564 X = w [ ns ]; 566 is_ = ue ; 567 } } 569  gai :: $chem_m_lize () 572 n_dim = ags ["non_dim"]; 573 ack_ecs_dex = ags ["slack_species_index"]; 574 ns = ags ["ncells"]; 575 nvs = ags ["nvars"]; 580 if nvs < ns ){ 581 << "ai::chem_m_lize(Atiڂv 2  ~ 3  ~"ai.h " 4  ~"CONV_NS.h " 8 CONV_NS ( Compڒt * _ai () { 9 CONV_NS ( Compڒt * wk ; 10 ai * compڒt ; 11 compڒt = w ai (); 12 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 13  wk ; 16 ** gCompڒtLi () { 17 * li [2]; 18 li [0] = "create_reactioneaction "; 19 li [1] = 0; 20  li ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DRFM/include/DC_drfm.h 10 #ide __DiffCompHSn__ 11  #__DiffCompHSn__ ) 14  ~"c.h " 15  ~"dPts.h " 18  ~"jc++/jc++.h " 19  ~"jc++/ut/jc++ut.h " 20  ~"ms/msSr.h " 21  ~"pt/sutIs.h " 24  ~ 25  ~ 26  ~ 27  ~ 28 usg mea gd ; 31  ~"DiffPt.h " 34  ~"PrݔtsPt.h " 35  ~"DiffPt.h " 36  ~"ThmoAlysisPt.h " 37  ~"fPt.h " 39  ~ 42  ~"CONV_NS.h " 47 ass gDC_drfm : public vtu CONV_NS ( Compڒt ), 48 public vtu gDiffPt , 49 public vtu gPrݔtsPt 51 gpublic : 53 DC_drfm () ; 55 gvtu ~ DC_drfm () ; 56 vtu  tSvis CONV_NS ( Svis * svc ); 58 vtu  compu * da1 , cڡ * p_lbbc , 59 cڡ * p_ubbc , cڡ * p_she , 60  nvs , * da2 , 61 cڡ * p_cr_suti , 62 * p_doma_exs ,  max_v , 63  f_ ,  dim ) ; 68 vtu bo DsItExi (* key_me ); 70 vtu  GSize (*){} 80 vtu  GIegs (* me , * da ,  size ) ; 82 vtu  GDoubs (* me , * da ,  size ); 91 vtu  SIegs (* me , * da ,  size ) ; 93 vtu  SDoubs (* me , * da ,  size ) ; 97 give : 100  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 101 {  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; } 103  lize () ; 105  GoCeFes () ; 106  checkSizes (); 108 bo gis_ ; 110  tupPams (); 111 CONV_NS ( Svis * gsvc ; 112 CfigubPamPt * g ; 114 DoubPam * gessu_vue ; 115 BoPam * gunifm_essu ; 116 IPam * gp_FeCgProc ; 118 bo gunifm ; 119  gunifm_es ; 121  gack_ecs_dex ; 122  gns ;  gev_ns ; 123  gnvs ; 124  gnecs ; 125 * gessu ; 126 * gecs_mes ; 128  gsize ; 129  gns ; 130  gr0 ; gtm ; gbtzk ; gavogadro ; gmef ; 131  gf ; ghf ; gef ; gwf ; grgf ; 132  grhef ; gwf ; gpdf ; ghtdf ; gf ; 133  gvf ; gvdifef ; gamuf ; gtymf ; gef ; 134  gcgf ; ggf ; gdamkoh ; 136 * gwt ; 137 * gowt ; 138  gngbm ; 140 * grho_mix ; 141 * g_mix ; 143 gm < grg , > gags ; 144 gm < grg , *> gݔts ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DRFM/include/fortran_names.h 5 #i defed ( PGI ) 6  #FORTNAME ( A A## _ ) 8  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DRFM/lib/defs.h 1  #FIRST_ORDER_DRFM ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DRFM/src/DC_drfm.cpp 6  ~ 7  ~ 8  ~ 9  ~ 10  ~ 12  ~ 13  ~ 15  ~"DC_drfm.h " 16  ~"f܌_mes.h " 31  #FORTNAME2 ( A `FORTNAME (A) ) 32 #ifde G77 33 #unde FORTNAME ( A ) 34  #FORTNAME ( A A## _ ) 35 #unde FORTNAME2 ( A ) 36  #FORTNAME2 ( A A## __ ) 42  FORTNAME2 ( lize_drfm )(* ns ,* ecs_mes ); 43  FORTNAME ( gmum )(* mtu ,* essu ,* Y ,* ns , 44 * owt ,* amuf ,* htdf , 45 * amu ,* htcd , * nx , * ny , * nz ); 46  FORTNAME ( gdifcf )(* mtu ,* essu ,* tm , 47 * wf ,* Y ,* ns ,* owt , 48 * pd ,* pha ); 52 DC_drfm :: $DC_drfm (){ 54 is_ = l ; 56 essu_vue = 0 ; 57 unifm_essu = 0 ; 58 p_FeCgProc = 0 ; 61 ack_ecs_dex = 32; 62 nvs = 1; 63 necs = 1; 64 essu = 0; 67 ags ["ack_ecs_dex"] = ack_ecs_dex ; 68 ags ["ns"] = ns ; 69 ags ["nvs"] = nvs ; 70 ݔts ["essu"] = essu ; 72 ns = 1; ev_ns = 0; 74 svc = 0; wt = 0 ; owt = 0 ; ecs_mes = 0 ; 75 } } 78 DC_drfm ::~ $DC_drfm () 80 i essu_vue !0 ) de ressure_value;ressure_value = 0 ; 81 i unifm_essu !0 ) de uniform_pressure; uniform_pressure = 0 ; 82 i p_FeCgProc !0 ) de _FileCreatingProc ;_FileCreatingProc = 0 ; 84 i wt !0 ) de [] wt; wt = 0 ; 85 i owt !0 ) de [] ospwt; ospwt = 0 ; 86 i ecs_mes !0 ) de [] species_names; species_names = 0 ; 88 d :: cout << "Fished DC_drfm deru" << std:: dl ; 89 } } 91  DC_drfm :: tSvis CONV_NS ( Svis * cc ) { 94 i( cc == NULL && ( svc != NULL) ){ 95 cout << "tSvig cdwi" << dl ; 96 svc -> moveProvidesPt ("DiffCoeffs") ; 97 svc -> moveProvidesPt ("Configure") ; 98 svc -> moveProvidesPt ("DiffCoeffProp") ; 99 svc = 0; 104 i( cc != NULL && ( svc != NULL) ){ 105 cout << "tSvig cdwi wh-NULL *Svis" << dl ; 106 abt () ; 110 i( cc == NULL && ( svc == NULL)){ 111 cout <<"Gه NULL ind oSvipor! Rug whoudognythg"<< dl ; 117 svc = cc ; 119 svc -> giUsPt svc-> PtInfo ("cSvc", 122 CfigubPamFay * f = 123 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 124 = f -> CfigubPamPt (); tupPams (); 125 svc -> aPt ("cSvc"); 126 svc -> uegiUsPt ("cSvc"); 128 CONV_NS ( PtInfo * pInfo ; 131 pInfo = svc -> PtInfo ("DiffCoeffs", "DiffPort", 0); 132 svc -> addProvidesPt ( this , pInfo ); 135 pInfo = svc -> PtInfo ("DiffCoeffProp", "PropertiesPort", 0); 136 svc -> addProvidesPt ( this , pInfo ); 138 svc -> addProvidesPt ( , svc-> PtInfo ("Configure", "ParameterPort", 0) ); 141 pInfo = svc -> PtInfo ("ref", "refPort", 0); 142 svc -> giUsPt ( pInfo ); 145 pInfo = cc -> PtInfo ("Analysis", "ThermoAnalysisPort", 0); 146 cc -> giUsPt ( pInfo ); 151  DC_drfm :: $tupPams () 154 essu_vue = w `DoubPam ("pressure_value", "pressure_value", 157 unifm_essu = w `BoPam ("uniform_pressure", "uniform", 158 "unifm_essu", ue ); 159 p_FeCgProc = w `IPam ( "FileCreatingProcessor", 162 -> `tBchT ("Configure Control Parameters"); 163 -> `tGroupName ("Pressure [Pa]"); 164 -> `addReque ( essu_vue ); 165 -> `addReque ( unifm_essu ); 166 -> `tGroupName ("Intermediate Files"); 167 -> `addReque p_FeCgProc ) ; 168 } } 170  DC_drfm :: $compu * da1 , cڡ * p_lbbc , 171 cڡ * p_ubbc , cڡ * p_she , 172  nvs , * da2 , 173 cڡ * p_cr_suti , 174 * p_doma_exs ,  max_v , 175  f_ ,  dim ) 179 necs = nvs - 1; 181 i is_ = l ) `lize () ; 183  #MAX ( A , B (A> (B? (A: (B) ) 185  nx = 1, ny =1, nz = 1; 186 i( dim >0 nx = `MAX ( p_she [0], 1) ; 187 i( dim >1 ny = `MAX ( p_she [1], 1) ; 188 i( dim >2 nz = `MAX ( p_she [2], 1) ; 189 ns = nx * ny * nz ; 191  mtu , amu ; 193 essu = ݔts ["pressure"]; 195 * pha = 0 ;h w [ necs ]; 196 * phi = 0;h w [ nvs ] ; 197 * da = 0; d w [ nvs ]; 200 `checkSizes (); 202 ThmoAlysisPt * p2 ; 203 p2 = dymic_ < ThmoAlysisPt * >( svc -> `gPt ("Analysis")); 204 p2 -> `CompuV ( da1 , nvs , p_she , dim , "rho_mix", rho_mix , ns ); 205 p2 -> `CompuV ( da1 , nvs , p_she , dim , "_mix", _mix , ns ); 207  k = 0; k < nz ; k++) 208  j = 0; j < ny ; j++) 209  i = 0; i < nx ; i++) 211  iv = 0; iv < nvs ; ivar++) 212 phi [ iv ] = da1 [ `fdx ( i , j , k , iv, nx , ny , nz , nvs ) ] ; 214 mtu = phi [0] ; 215 * Y = & phi [1] ; 219 `FORTNAME ( gmum )(& mtu , essu , Y , & ns , owt , & amuf , 220 & htdf , & amu , da , & nx , & ny , & nz ); 225 `FORTNAME ( gdifcf )(& mtu , essu , & tm , & wf , Y , & ns , owt , 226 & da [1], pha ); 230 da2 [ `fdx ( i , j , k , 0, nx , ny , nz , nvs ] = da [ 0 ] / 231 rho_mix [ `fdx ( i , j , k , 0, nx , ny , nz , nvs )] * 232 _mix [ `fdx ( i , j , k , 0, nx , ny , nz , nvs )] ); 234  iv = 1; iv < nvs ; ivar++) 235 da2 [ `fdx ( i , j , k , iv , nx , ny , nz , nvs ] = da [ ivar ] ; 238 i pha !0 ) de []lpha ; 239 i phi !0 ) de []hi ; 240 i da !0 ) de [] data ; 246 } } 248 bo DC_drfm :: $DsItExi (* me ) 250 rg `dummy ( me ) ; 251 bo exis = l ; 254 m < rg , >:: cڡ_ p ; 255  p = ags . `beg (); !ags. `d (); ++p ) 256 i p -> f = dummy ) exis = ue ; 259 m < rg , *>:: cڡ_ ps ; 260  ps = ݔts . `beg ();!ݔts. `d (); ++ps ) 261 i ps -> f = dummy ) exis = ue ; 263 ( exis ) ; 264 } } 267  DC_drfm :: $GIegs (* me , * da ,  size ) 269 i `DsItExi ( me = l )  (-1) ; 273 rg `ame ( me ) ; 274 * da = ags [ ame ] ; 276 } } 278  DC_drfm :: $GDoubs (* me , * da ,  size ) 280 i `DsItExi ( me = l )  (-1) ; 284 rg `ame ( me ) ; 285 da = ݔts [ ame ] ; 287 } } 289  DC_drfm :: $SIegs (* me , * da ,  size ) 291 i `DsItExi ( me = l )  (-1) ; 293 rg `ame ( me ) ; 294 ags [ ame ] = * da ; 297 } } 299  DC_drfm :: $SDoubs (* me , * da ,  size ) 302 i `DsItExi ( me = l )  (-1) ; 304 rg `ame ( me ) ; 305 ݔts [ ame ] = da ; 308 } } 310  DC_drfm :: $lize () 313 unifm = unifm_essu -> vue ; 314 unifm_es = essu_vue -> vue ; 320 ifam `1 ("molec.dat"); 321 if(! 1 ){ 322 << "C othmec.d iufe: Abtg" << dl ; 323 `ex (0); 325 ifam `2 ("tcondy.dat"); 326 if(! 2 ){ 327 << "C othtcdy.d iufe: Abtg" << dl ; 328 `ex (0); 334 fPt * psc ; 335 psc = dymic_ < fPt *>( svc -> `gPt ("ref")); 337 psc -> `_f_g (& r0 ,& tm ,& btzk ,& avogadro ,& mef ,& f ,& hf , 338 & ef ,& wf ,& rgf ,& rhef ,& wf ,& pdf , 339 & htdf ,& f ,& vf ,& vdifef ,& amuf , 340 & tymf ,& ef ,& cgf ,& gf ,& damkoh ); 341 svc -> `aPt ("ref"); 348 ThmoAlysisPt * p1 ; 349 p1 = dymic_ < ThmoAlysisPt * >( svc -> `gPt ("Analysis")); 351 ns = p1 -> `GNumScs (); 353 ecs_mes = w [8* ns ]; 355 p1 -> `GScsNames ( ns , ecs_mes ); 357 wt = w [ ns ] ; 358 owt = w [ ns ]; 360 p1 -> `GMecurWts ( ns , wt ); 362  i =0; i< ns ; i++){ 363 owt [ i ] = wf / wt [i] ; 368 `FORTNAME2 ( lize_drfm )(& ns , ecs_mes ); 371 ack_ecs_dex = ags ["slack_species_index"]; 372 ns = ags ["ncells"]; 375 i( unifm = ue ) 376 ݔts ["essu"] = & unifm_es ; 378 is_ = ue ; 381 } } 383  DC_drfm :: $checkSizes () 386 i( ns > ev_ns ){ 387 de [] _mix ; cp_mix = w [ ns ]; 388 de [] rho_mix ;ho_mix = w [ ns ]; 390 ev_ns = ns ; 394 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DRFM/src/DC_drfm_wrapper.cpp 7  ~ 8  ~ 9  ~"DC_drfm.h " 10  ~"CONV_NS.h " 14 CONV_NS ( Compڒt * _DC_drfm () { 15 CONV_NS ( Compڒt * wk ; 16 DC_drfm * compڒt ; 17 compڒt = w DC_drfm (); 18 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 19  wk ; 22 ** gCompڒtLi () { 23 * li [2]; 24 li [0] = "create_DC_drfm DC_drfm "; 25 li [1] = 0; 26  li ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/include/BasicDC.h 2 #ide BasicDCHSn 3  #BasicDCHSn ) 5  ~ 6  ~ 7  ~ 9  ~"DiffCffObje.h " 13 mea gCڡLewisNoDC 15 as cBasicDC : public vtu :: DiffCffObje 17 public : 19 BasicDC DiffCffObjFay * p ,  i ) 21 gpCLNDCF = 0 ; 22 gf = 0 ; 23 ghd = i ; 24 gdoub_ [ "PrandtlNo" ] = 1.0 ; 25 gdoub_ [ "T0" ] = 300.0 ; 26 gdoub_ [ "ExponentInViscosityModel" ] = 0.0 ; 27 gdoub_ [ "ReferenceViscosity" ] = 1.0 ; 30 gvtu ~ BasicDC ({ gpCLNDCF -> RemoveFromR ( hd ) ; } 32 vtu  SPr ( rg t ,  v ) = 0 ; 34 vtu  SPr ( rg t ,  f ) 36 gm < grg , >:: p = doub_ . fd ( t ) ; 37 i gp = doub_ . d () ) (-1) ; 39 gdoub_ [ t ] = f ; 43 vtu  comm () = 0 ; 45 vtu  addRef ({ gf ++ ; } 47 vtu  deRef (){ gf -- ; ie=0 de ( this ) ; } 49 vtu  compuD ( P , * phi , * d ,  nvs ) = 0 ; 51 geed : 53 DiffCffObjFay * pCLNDCF ; 54  ghd , gf ; 55 gm < grg , > gdoub_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/include/DiffCoeff.h 9 #ide __DiffCffHSn__ 10  #__DiffCffHSn__ ) 13  ~"c.h " 14  ~"dPts.h " 17  ~"jc++/jc++.h " 18  ~"jc++/ut/jc++ut.h " 19  ~"ms/msSr.h " 20  ~"pt/sutIs.h " 23  ~ 24  ~ 27  ~"DiffPt.h " 28  ~"PrݔtsPt.h " 31  ~"DiffCffObje.h " 32  ~"DiffCffObjFay.h " 35  ~"CONV_NS.h " 36 usg mea gd ; 39 ass gDiffCff : public vtu CONV_NS ( Compڒt ), 40 public vtu gDiffPt , 41 public vtu gPrݔtsPt 43 gpublic : 45 DiffCff (); 47 gvtu ~ DiffCff () ; 49 vtu  tSvis CONV_NS ( Svis * svc ) ; 52 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 53 cڡ * p_she ,  nvs , * da2 , 54 cڡ * p_cr_suti , * p_doma_exs , 55  max_v ,  f_ ,  dim ) ; 58 vtu bo DsItExi (* key_me ); 62 vtu  GSize (* key_me ); 71 vtu  GIegs (* me , * da ,  size ) ; 82 vtu  GDoubs (* me , * da ,  size ); 92 vtu  SIegs (* me , * da ,  size ); 104 vtu  SDoubs (* me , * da ,  size ) ; 106 give : 108  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 109 {  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; } 111  lize () ; 113  tupPams () ; 115 gm < grg , > gmy_t_ ; 116 gm < grg , > gmy_doub_ ; 117 * gessu , gunifm_essu ; 118  gessu_size ; 120 bo gis_ ; 121 DoubPam * gp_exp_m , * gp_f_visc_m , * gp_PndNo_m , * gp_unifm_es ; 122 DoubPam * gp_T0_m ; 123 BoPam * gp_UnifmPsPam ; 124 SgPam * gp_SyemName ; 126 DiffCffObje * gpDCO ; 127 gCڡLewisNoDC :: DiffCffObjFay DCOF ; 130 CONV_NS ( Svis * gpSvc ; 131 CfigubPamPt * g ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/include/DiffCoeffObjFactory.h 2 #ide DiffCffObjFayHSn 3  #DiffCffObjFayHSn ) 5  ~"DiffCffObje.h " 6  ~ 7  ~ 12 mea gCڡLewisNoDC 14 as cDiffCffObjFay 17 gpublic : 19 DiffCffObjFay () {} 21 ~ DiffCffObjFay ({ deroyA () ; } 23 DiffCffObje * ( rg t ) ; 25  deroyA () ; 27  RemoveFromR ( h { gl_my_dc_objs [h] = 0 ; } 29 give : 31 ve < DiffCffObje *> l_my_dc_objs ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/include/DiffCoeffObject.h 12 #ide DiffCffObjeHSn 13  #DiffCffObjeHSn ) 17  ~ 18 usg mea gd ; 20 as cDiffCffObje 22 mpublic : 24 $DiffCffObje () {} 26 vtu ~ $DiffCffObje ({ } } 33 vtu  SPr ( rg t ,  v ) = 0 ; 41 vtu  SPr ( rg t ,  v ) = 0 ; 43 vtu  comm () = 0 ; 45 vtu  addRef () = 0 ; 47 vtu  deRef () = 0 ; 51 vtu  compuD ( P , * phi , * D ,  nvs ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/include/Generic.h 2 #ide GicDCHSn 3  #GicDCHSn ) 5  ~ 6  ~ 7  ~ 8  ~"mh.h " 10  ~"BasicDC.h " 12  #MIN ( A , B (A< (B? (A: (B) ) 14 mea gCڡLewisNoDC 16 as cGic : public BasicDC 18 public : 20 Gic ( DiffCffObjFay * p ,  i : BasicDC (p, i) 22 gLe = 1.0 ; 23 gt_ [ "nvars" ] = 1000 ; 26 ~ Gic () {} 28  SPr ( rg t ,  v ) 30 gm < grg , >:: p = t_ . fd t ) ; 31 i gp = t_ . d () ) (-1) ; 32 gp -> gcd = v ; 36  comm () { (0) ; } 38  compuD ( P , * phi , * d ,  nvs ) 40  gnu_0 = BasicDC :: doub_ [ "ReferenceViscosity" ] ; 41  gT0 = BasicDC :: doub_ [ "T0" ] ; 42  g = BasicDC :: doub_ [ "ExponentInViscosityModel" ] ; 43  gT = phi [0] ; 45  gnu = nu_0 * pow T / T0 , * 1.5 / ( 1 + 0.5* gT0 / gT ) ; 46  gpha = nu / BasicDC :: doub_ [ "PrandtlNo" ] ; 48  gngth = MIN ( nvs , t_ ["nvars"]) ; 49   gi = 0; i < gngth ; i++ ) 50 i gi == 0 ) 51 d [ i ] = pha ; 53 gd [ i ] = pha / Le ; 58 give : 60  Le ; 61 gm < grg , > gt_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/include/H2Air.h 5 #ide H2ADCHSn 6  #H2ADCHSn ) 8  ~ 9  ~ 10  ~ 11  ~"mh.h " 13  ~"BasicDC.h " 15  #MIN ( A , B (A< (B? (A: (B) ) 19 mea gCڡLewisNoDC 21 as cH2A : public BasicDC 23 public : 25 H2A ( DiffCffObjFay * p ,  i : BasicDC (p, i) 27 gnv = 10 ; 28 gLe [0] = 0.3 ; 29 gLe [1] = 1.11 ; 30 gLe [2] = 0.7 ; 31 gLe [3] = 0.73 ; 32 gLe [4] = 0.83 ; 33 gLe [5] = 0.18 ; 34 gLe [6] = 1.1 ; 35 gLe [7] = 1.12 ; 36 gLe [8] = 1.0 ; 37 gt_ [ "nvs" ] = nv ; 40 ~ H2A () {} 42  SPr ( rg t ,  v ) 44 gm < grg , >:: p = t_ . fd t ) ; 45 i gp = t_ . d () ) (-1) ; 46 gp -> gcd = v ; 50  compuD ( P , * phi , * d ,  nvs ) 53 i gnvs > gnv ) (-1) ; 55  gnu_0 = BasicDC :: doub_ [ "ReferenceViscosity" ] ; 56  gT0 = BasicDC :: doub_ [ "T0" ] ; 57  g = BasicDC :: doub_ [ "ExponentInViscosityModel" ] ; 58  gT = phi [0] ; 60  gnu = nu_0 * pow T / T0 , * 1.5 / ( 1 + 0.5* gT0 / gT ) ; 61  gpha = nu / BasicDC :: doub_ [ "PrandtlNo" ] ; 63  gngth = MIN ( nvs , t_ ["nvars"]); 64   gi = 0; i < gngth ; i++ ) 65 i gi == 0 ) 66 d [ i ] = pha ; 68 gd [ i ] = pha / Le [i-1] ; 73  comm () { (0) ; } 75 give : 77  nv ; 78  gLe [9] ; 79 gm < grg , > gt_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/src/DiffCoeff.cpp 15  ~"DiffCff.h " 17 gDiffCff :: $DiffCff () 19 is_ = l ; 20 pDCO = 0 ; 22 my_t_ ["nvars"] = -1 ; 23 my_t_ ["DiffCoeffs"] = 1 ; 27 my_doub_ ["ExponentInViscosityModel"] = -1.0 ; 28 my_doub_ ["ReferenceViscosity"] = -1.0 ; 29 my_doub_ ["PrandtlNo"] = -1.0 ; 30 my_doub_ ["T0"] = -1 ; 32 essu = 0 ; essu_size = 0 ; 33 } } 35 gDiffCff ::~ $DiffCff () 37 i( is_ = ue ) 39 de p_exp_m ; d p_f_visc_m ; d p_PndNo_m ; 40 de p_unifm_es ; d p_UnifmPsPam ; d p_SyemName ; 41 pDCO -> `deRef () ; 43 is_ = l ; 44 DCOF . `deroyA (); 45 } } 47  gDiffCff :: tSvis CONV_NS ( Svis * svc ) 49 i svc == 0 ) 51 pSvc -> moveProvidesPt ("DiffCoeffs") ; 52 gpSvc -> moveProvidesPt ("DiffCoeffProp") ; 56 gthis -> gpSvc = svc ; 59 gsvc -> giUsPt svc -> PtInfo ("cSvc", 61 CfigubPamFay * gf = 62 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 63 CHECKDC f ); 64 g = f -> CfigubPamPt (); 65 gsvc -> addProvidesPt ( , svc -> PtInfo ("CONFIG", "ParameterPort", 0) ); 66 tupPams () ; 67 gsvc -> aPt ("cSvc"); 68 gsvc -> uegiUsPt ("cSvc"); 71 gsvc -> addProvidesPt ( this , 72 svc -> PtInfo ("DiffCoeffProp", "PropertiesPort", 0) ); 73 gsvc -> addProvidesPt ( this , svc -> PtInfo ("DiffCoeffs", "DiffPort", 0) ); 76  gDiffCff :: $tupPams () 78 -> `tBchT (" Diffusion Coefficients' Parameters" ) ; 80 p_exp_m = w `DoubPam ("ExponentInViscosityModel", 84 p_f_visc_m = w `DoubPam ("ReferenceKinematicViscosity", 88 p_T0_m = w `DoubPam ( "T0", "Reference Temp in Sutherland'saw", 91 p_PndNo_m = w `DoubPam ("Prandtl_No", 95 p_unifm_es = w `DoubPam ( "Pressure = ", 99 p_UnifmPsPam = w `BoPam ( "Do_I_Have_Uniform_Pressure", 101 "Unifm Pssu ? ", ue ) ; 103 p_SyemName = w `SgPam ( "Diffusion_System_Name", "Which Mixture Sytem ?", 106 -> `tGroupName ( "Common Parameters" ); 107 -> `addReque p_unifm_es ) ; 108 -> `addReque p_UnifmPsPam ) ; 109 -> `addReque p_SyemName ); 111 -> `tGroupName ( "Parameters For Const Lewis Number Models" ); 112 -> `addReque p_exp_m ) ; 113 -> `addReque p_f_visc_m ) ; 114 -> `addReque p_T0_m ) ; 115 -> `addReque p_PndNo_m ); 117 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/src/DiffCoeffObjFactory.cpp 10  ~"DiffCffObjFay.h " 11  ~"Gic.h " 12  ~"H2A.h " 14 DiffCffObje * gCڡLewisNoDC :: DiffCffObjFay :: $ ( rg t ) 16  dex = l_my_dc_objs . `size () ; 18 i t == "Generic" ) 20 CڡLewisNoDC :: Gic * p = w CڡLewisNoDC:: `Gic ( this , dex ) ; 21 l_my_dc_objs . `push_back ( p ) ; 22 p -> `addRef (); 23  dymic_ < DiffCffObje *> ( p ) ) ; 26 i t == "H2Air" ) 28 CڡLewisNoDC :: H2A * p = w CڡLewisNoDC:: `H2A ( this , dex ) ; 29 l_my_dc_objs . `push_back ( p ) ; 30 p -> `addRef (); 31  dymic_ < DiffCffObje *> ( p ) ) ; 34 << " ConstLewisNoDC::DiffCoeffObjFactory::create() " 35 << " Diffusi Cffic Obje oty " << t 36 << " know;ug NULL " << dl ; 39 } } 41  gCڡLewisNoDC :: DiffCffObjFay :: $deroyA () 43 ve < DiffCffObje *>:: p ; 44  p = l_my_dc_objs . `beg (; !l_my_dc_objs. `d () ;++) 46 DiffCffObje * a = (* p ) ; 47 i( a !0 de ; 49 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/src/DiffCoeff_prop.cpp 10  ~"DiffCff.h " 12 bo gDiffCff :: $DsItExi (* me ) 14 rg `dummy ( me ) ; 16 i dummy ="Pssu" ) ( ue ) ; 18 m < rg , >:: cڡ_ p = my_t_ . `fd ( dummy ) ; 19 i p ! my_t_ . `d ( ue ) ; 21 m < rg , >:: cڡ_ = my_doub_ . `fd ( dummy ) ; 22 i p ! my_t_ . `d ( ue ) ; 24  l ) ; 25 } } 27  gDiffCff :: $GSize (* me ) 29 rg `dummy ( me ) ; 31 i `DsItExi ( me = l ) (-1) ; 33 i( dummy ="Pssu" essu_size ); 36 } } 38  gDiffCff :: $GIegs (* me , * da ,  size ) 40 i `DsItExi ( me = l ) (-1) ; 42 rg `dummy ( me ) ; 43 * da = my_t_ [ dummy ] ; 45 } } 47  gDiffCff :: $GDoubs (* me , * da ,  size ) 49 i( `DsItExi ( me = l ) (-1) ; 51 rg `dummy ( me ) ; 53 i dummy == "Pressure" ) 55 i size < essu_size ) (-2) ; 56  i = 0; i < essu_size ; i++ da [i] = essu [i] ; 60 * da = my_doub_ [ dummy ] ; 63 } } 65  gDiffCff :: $SIegs (* me , * da ,  size ) 67 i `DsItExi ( me = l ) (-1) ; 69 rg `dummy ( me ) ; 70 my_t_ [ dummy ] = * da ; 73 } } 75  gDiffCff :: $SDoubs (* me , * da ,  size ) 77 i `DsItExi ( me = l ) (-1) ; 79 rg `dummy ( me ) ; 80 i( dummy == "Pressure") 82 i p_UnifmPsPam -> vue = ue ) essu = 0 ; 83 i essu !0 ) de []ressure ; 84 essu = w [ size ] ; essu_size = size ; 85  i = 0; i < size ; i++ essu [i] = da [i] ; 89 my_doub_ [ dummy ] = * da ; 91 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/src/DiffCoeff_workers.cpp 8  ~"DiffCff.h " 10  gDiffCff :: $lize () 12 i my_doub_ [ "ExponentInViscosityModel" ] < 0 ) 13 my_doub_ [ "ExpڒtInViscosyMod" ] = p_exp_m -> vue ; 15 i my_doub_ [ "ReferenceViscosity" ] < 0 ) 16 my_doub_ [ "RenViscosy" ] = p_f_visc_m -> vue ; 18 i my_doub_ [ "PrandtlNo" ] < 0 ) 19 my_doub_ [ "PndNo" ] = p_PndNo_m -> vue ; 21 i my_doub_ [ "T0" ] < 0 ) 22 my_doub_ [ "T0" ] = p_T0_m -> vue ; 24 i p_UnifmPsPam -> vue = ue ) 26 unifm_essu = p_unifm_es -> vue ; 27 essu = & unifm_essu ; 28 essu_size = 1 ; 32 pDCO = DCOF . ` p_SyemName -> vue ) ; 33 pDCO -> `SPr ("ExponentInViscosityModel", 34 my_doub_ ["ExponentInViscosityModel"]) ; 35 pDCO -> `SPr ("ReferenceViscosity", 36 my_doub_ [ "ReferenceViscosity" ] ) ; 37 pDCO -> `SPr ("PndNo", my_doub_ [ "PrandtlNo" ] ) ; 38 pDCO -> `SPr ("T0", my_doub_ [ "T0" ] ) ; 39 i my_t_ [ "nvs" ] !-1 ) pDCO -> `SPr ("nvars", my_int_prop[ "nvars" ] ); 40 pDCO -> `comm () ; 42 is_ = ue ; 45 } } 47  gDiffCff :: $compu (* da1 , cڡ * p_lbbc , cڡ * p_ubbc , 48 cڡ * p_she ,  nvs , * da2 , 49 cڡ * p_cr_suti , * p_doma_exs , 50  max_v ,  f_ ,  dim ) 52 i is_ = l ) `lize () ; 54  size_d = nvs ; 55 * d = w [ size_d ] ; 57  #MAX ( A , B (A> (B? (A: (B) ) 59  nx = `MAX ( p_she [0], 1) ; 60  ny = `MAX ( p_she [1], 1) ; 61  nz = `MAX ( p_she [2], 1) ; 62 * phi = w [ nvs ] ; 64  k = 0; k < nz ; k++) 65  j = 0; j < ny ; j++) 66  i = 0; i < nx ; i++) 69  essu__ = 0 ; 70 i p_UnifmPsPam -> vue = ue ) 71 essu__ = * essu ; 73 essu__ = essu [ `fdx ( i , j , k , 0, nx , ny , nz , 1) ] ; 76  iv = 0; iv < nvs ; ivar++) 77 phi [ iv ] = da1 [ `fdx ( i , j , k , iv, nx , ny , nz , nvs ) ] ; 80 pDCO -> `compuD ( essu__ , phi , d , nvs ) ; 83  iv = 0; iv < size_d ; ivar++) 84 da2 [ `fdx ( i , j , k , iv , nx , ny , nz , size_d ] = d [ ivar ] ; 87 i( phi !0 de []hi ; 88 i( d !0 de [] d ; 91 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffCoeff/src/DiffCoeff_wrapper.cpp 1  ~"DiffCff.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _DiffCff () 8 CONV_NS ( Compڒt * wk ; 9 DiffCff * compڒt ; 10 compڒt = w DiffCff (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_DiffCoeff DiffCoeff"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffQuants/include/DiffQuants.h 12 #ide __DiffQutsHSn__ 13  #__DiffQutsHSn__ ) 16  ~"c.h " 17  ~"dPts.h " 20  ~"jc++/jc++.h " 21  ~"jc++/ut/jc++ut.h " 22  ~"ms/msSr.h " 23  ~"pt/sutIs.h " 26  ~ 27  ~ 28  ~ 29  ~ 30 usg mea gd ; 33  ~"SAMRCsumPt.h " 34  ~"PrݔtsPt.h " 37  ~"AMRPt.h " 38  ~"VeFldVb.h " 41  ~"PrݔtsPt.h " 42  ~"DiffPt.h " 45  ~"CONV_NS.h " 49 ass gDiffQuts : public vtu CONV_NS ( Compڒt ), 50 public vtu gSAMRCsumPt , 51 public vtu gPrݔtsPt 53 gpublic : 55 DiffQuts () ; 57 ~ DiffQuts (); 59  tSvis CONV_NS ( Svis * svc ) ; 61  compu VeFldVb * p_vfv ) ; 64 vtu bo DsItExi (* key_me ) ; 68 vtu  GSize (* key_me ) ; 78 vtu  GIegs (* me , * da ,  size ) ; 80 vtu  GDoubs (* me , * da ,  size ) ; 92 vtu  SIegs (* me , * da ,  size ) ; 94 vtu  SDoubs (* me , * da ,  size ) ; 96 give : 98  () ; 100  CcQutsOnPch (* da , cڡ * s ,  nvs ) ; 102 CONV_NS ( Svis * gpSvc ; 103 bo gis_ ; 105 CfigubPamPt * g ; 106 IPam * gpEvueEvyPam ; 107  gnum_times_ed ; 109 AMRPt * gpAMRPt ; 110 PrݔtsPt * gpDiffPrPt ; 111 DiffPt * gpDiffCff ; 112 gm < grg , > gmy_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffQuants/include/MaximumDiffusionCoefficient.h 8 #ide __MaximumDiffusiCfficHSn__ 9  #__MaximumDiffusiCfficHSn__ ) 10  ~"mh.h " 12  #MAX_MDC ( A , B ((A> (B)? (A: (B) ) 14  ~"PrݔtsPt.h " 15  ~"DiffPt.h " 16 usg mea gd ; 18 as cMaximumDiffusiCffic 20 mpublic : 22 $MaximumDiffusiCffic ( PrݔtsPt * pPP , DiffPt * pDP ) 24 pDCP = pPP ; pDC = pDP ; nx = ny = nz = 1 ; 27 ~ $MaximumDiffusiCffic ({ } } 29  $t_dim ( my_nx ,  my_ny ,  my_nz ,  my_nvs ) 30 { nx = my_nx ; ny = my_ny ; nz = my_nz ; nvs = my_nvs ; } } 32  $compu (* da , & max_dc ) 35  yes = 1 ; 36 pDCP -> `SIegs "DiffCffs", & yes , 1) ; 38 cڡ  she [3] = { nx , ny , nz } ; 39 * diff_cff = w [ nx * ny * nz * nvs ] ; 40 pDC -> `compu ( da , 0, 0, she , nvs , diff_cff , 0, 0, 1, 1, 3) ; 42  i = 0 ; i < nx * ny * nz * nvs ; i++ max_dc = `MAX_MDC (max_dc, diff_cff [i]) ; 44 i( diff_cff !0 de [] diff_coeff ; 45 } } 47 give : 49  nx , gny , gnz , gnvs ; 50 PrݔtsPt * gpDCP ; 51 DiffPt * gpDC ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffQuants/src/DiffQuants.cpp 8  ~"DiffQuts.h " 10 gDiffQuts :: $DiffQuts () 12 is_ = l ; 13 my_ ["MaximumDiffusionCoefficient"] = -1.0 ; 14 num_times_ed = 0 ; 15 pEvueEvyPam = 0 ; 16 pEvueEvyPam = w `IPam ("EvaluateEvery", 20 } } 22 gDiffQuts ::~ $DiffQuts () 24 pSvc = NULL ; 25 i( pEvueEvyPam !0 de EvaluateEveryParam ; 26 } } 28  gDiffQuts :: tSvis CONV_NS ( Svis * svc ) 30 i svc = NULL ) 32 pSvc -> moveProvidesPt ("MaxDiffusionCoeffInputPort") ; 33 gpSvc -> moveProvidesPt ("MaxDiffusionCoeffPropPort") ; 34 gpSvc -> moveProvidesPt ("CONFIG") ; 35 gpSvc -> aPt ("MyMesh"); 36 gpSvc -> aPt ("DiffCoeffProp"); 37 gpSvc -> aPt ("DiffCoeffs") ; 42 gthis -> gpSvc = svc ; 45 gsvc -> giUsPt svc -> PtInfo ("cSvc", 47 CfigubPamFay * gf = 48 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 49 CHECKDC f ); 50 g = f -> CfigubPamPt (); 51 gsvc -> addProvidesPt ( , 52 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 53 g -> tBchT (" Diffusion Coeff Evaluation Params" ); 54 g -> addReque pEvueEvyPam ) ; 56 gsvc -> aPt ("cSvc"); 57 gsvc -> uegiUsPt ("cSvc"); 60 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 61 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffProp", "PropertiesPort", 0) ) ; 62 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffs", "DiffPort", 0) ); 65 gsvc -> addProvidesPt ( this , svc -> PtInfo ("MaxDiffusionCoeffInputPort", "SAMRConsumerPort", 0)); 66 gsvc -> addProvidesPt ( this , svc -> PtInfo ("MaxDiffusionCoeffPropPort", "PropertiesPort", 0)); 71  gDiffQuts :: $ () 73 pAMRPt = dymic_ < AMRPt *> pSvc -> `gPt ("MyMesh") ) ; 74 `CHECKDC ( pAMRPt ) ; 76 pDiffPrPt = dymic_ < PrݔtsPt *> pSvc -> `gPt ("DiffCoeffProp") ) ; 77 `CHECKDC ( pDiffPrPt ) ; 79 pDiffCff = dymic_ < DiffPt * > pSvc -> `gPt ("DiffCoeffs") ) ; 80 `CHECKDC pDiffCff ) ; 83 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffQuants/src/DiffQuants_prop.cpp 10  ~"DiffQuts.h " 12 bo gDiffQuts :: $DsItExi (* me ) 14 rg `dummy ( me ) ; 16 bo exis = l ; 17 m < rg , >:: cڡ_ p ; 18  p = my_ . `beg (); !my_. `d (); ++p) 19 i p -> f = dummy ) exis = ue ; 21 ( exis ) ; 22 } } 25  gDiffQuts :: $GSize (* me ) 30 } } 32  gDiffQuts :: $GIegs (* me , * da ,  size ) 34 << " DiffQuants::GetIntegers(). Therere NO integer quantities " 35 << dl << ush ; 37 } } 39  gDiffQuts :: $GDoubs (* me , * da ,  size ) 41 i( `DsItExi ( me = l { * da = -1.0; (-1) ;} 43 i size < 1 ) (-2) ; 45 rg `ame ( me ); 46 * da = my_ [ ame ] ; 48 } } 50  gDiffQuts :: $SIegs (* me , * da ,  size ) 52 << " DiffQuants::SetIntegers(). Therere NO integer quantities " 53 << dl << ush ; 55 } } 57  gDiffQuts :: $SDoubs (* me , * da ,  size ) 59 i `DsItExi ( me = l ) (-1) ; 61 i size < 1 ) (-2) ; 63 rg `ame ( me ) ; 64 my_ [ ame ] = * da ; 66 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffQuants/src/DiffQuants_workers.cpp 9  ~"DiffQuts.h " 10  ~"mh.h " 13  ~"MaximumDiffusiCffic.h " 15  #MAX ( A , B (A> (B? (A: (B) ) 17  gDiffQuts :: $compu VeFldVb * p_y_vfv ) 20 num_times_ed ++ ; 21 i( num_times_ed -1)% pEvueEvyPam -> vue != 0 )  ; 23 i is_ = l ) { ` (; is_ = ue ; } 26 m < rg , >:: pq ; 27  pq = my_ . `beg ();q !my_. `d ();q++) 29 rg me = pq -> f ; 30 my_ [ me ] = -1.0 ; 33  max_vs_now = pAMRPt -> `GC_g_fe_v (); 34  nvs = p_y_vfv -> `g_ve_size () ; 35  ngrids = p_y_vfv -> `g_numb_of_comp_grids () ; 37  v = 0;ev < max_vs_now ;evel++) 39  Time = pAMRPt -> `GC_cut_time v , ACEMa ); 40   igrid = 0; igrid < ngrids ; igrid++) 42 i p_y_vfv -> `exis ( Time , v , igrid = ue ) 44 cڡ * s = p_y_vfv -> `g_da_y_size ( Time , v , igrid , ACEMa ) ; 45 * p_da = p_y_vfv -> `g_da ( Time , v , igrid , ACEMa ); 47 `CcQutsOnPch ( p_da , s , nvs ) ; 55 MPI_Comm comm = pAMRPt -> `GC_g_compu_nodes_communit (); 56 m < rg , >:: cڡ_ p ; 57  p = my_ . `beg (; !my_. `d (); ++p) 59 rg qut_me = p -> f ; 60  qut = p -> cd ; 61  qut_glob ; 62 `MPI_Aλdu & qut , & qut_glob , 1, MPI_DOUBLE , MPI_MAX , comm ) ; 63 my_ [ qut_me ] = qut_glob ; 65 } } 67  gDiffQuts :: $CcQutsOnPch (* da , cڡ * s ,  nvs ) 69  nx = s [0] ;x = (nx < 1) ? 1 :x ; 70  ny = s [1] ;y = (ny < 1) ? 1 :y ; 71  nz = s [2] ;z = (nz < 1) ? 1 :z ; 73 MaximumDiffusiCffic `MDC ( pDiffPrPt , pDiffCff ) ; 76  max_dc = 0.0 ; 77 MDC . `t_dim ( nx , ny , nz , nvs ) ; 78 MDC . `compu ( da , max_dc ); 80 my_ [ "MaximumDiffusiCffic" ] = `MAX ( max_dc , 81 my_ [ "MaximumDiffusionCoefficient" ]); 84 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/DiffQuants/src/DiffQuants_wrapper.cpp 1  ~"DiffQuts.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _DiffQuts () 8 CONV_NS ( Compڒt * wk ; 9 DiffQuts * compڒt ; 10 compڒt = w DiffQuts (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_DiffQuants DiffQuants"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Diffusion/include/DiffComp_JR.h 10 #ide __DiffCompHSn__ 11  #__DiffCompHSn__ ) 14  ~"c.h " 15  ~"dPts.h " 18  ~"jc++/jc++.h " 19  ~"jc++/ut/jc++ut.h " 20  ~"ms/msSr.h " 21  ~"pt/sutIs.h " 24  ~ 25  ~ 26  ~ 27  ~ 28 usg mea gd ; 31  ~"DiffPt.h " 34  ~"PrݔtsPt.h " 35  ~"DiffPt.h " 36  ~"ThmoAlysisPt.h " 39  ~"CONV_NS.h " 43 ass gDiffComp_JR : public vtu CONV_NS ( Compڒt ), 44 public vtu gDiffPt 46 gpublic : 48 DiffComp_JR () ; 50 gvtu ~ DiffComp_JR () ; 51 vtu  tSvis CONV_NS ( Svis * svc ); 53 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 54 cڡ * p_she ,  nvs , * da2 , 55 cڡ * p_cr_suti , * p_doma_exs ,  max_v , 56  f_ ,  dim ) ; 58 give : 60  tupPams () ; 62  () ; 64 le  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 67  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 85  CڡruDiflDiffusiTm (* da1 ,  nx ,  ny ,  nz ,  nvs , 86 * _i , * _mix , * diff_cffs , 87  lol_dx ,  lol_dy ,  lol_dz , 88  dim ,  i ,  di ,  j ,  dj , 89  k ,  dk , * diff_diffusi_rm ) ; 91 bo gis_lized , gis_hod ; 92  gdiff_cff ; 95 CONV_NS ( Svis * gpSvc ; 97 PrݔtsPt * gpDiffCffPr , * gpThmoPr ; 98 DiffPt * gpDiffCff ; 99 ThmoAlysisPt * gpThmo ; 102 CfigubPamPt * g ; 103 DoubPam * gp_diff_cff_m ; 104 IPam * gp_PssuIndex_m ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Diffusion/src/DiffComp.cpp 9  ~ 10  ~"DiffComp_JR.h " 12 gDiffComp_JR :: $DiffComp_JR () 14 is_lized = l ; 15 is_hod = l ; 16 pDiffCffPr = 0 ; 17 pDiffCff = 0 ; 18 } } 20 gDiffComp_JR ::~ $DiffComp_JR () 22 i is_lized = ue ) 24 de p_diff_cff_m ; 25 de p_PssuIndex_m ; 27 pSvc = NULL ; = NULL ; 29 is_hod = l ; 30 is_lized = l ; 31 } } 33  gDiffComp_JR :: tSvis CONV_NS ( Svis * svc ) 35 i svc = NULL ) 37 pSvc -> uegiUsPt ( "ThermoProp" ) ; 38 gpSvc -> uegiUsPt ( "DiffCoeffProp" ) ; 39 gpSvc -> uegiUsPt ( "DiffCoeffs" ); 40 gpSvc -> uegiUsPt ( "Thermo" ) ; 41 gpSvc -> moveProvidesPt ( "DiffTermPort") ; 42 gpSvc -> moveProvidesPt ( "CONFIG") ; 45 gthis -> gpSvc = svc ; 48 gsvc -> giUsPt svc -> PtInfo ("cSvc", 50 CfigubPamFay * gf = 51 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 52 CHECKDC f ); 53 g = = f -> CfigubPamPt (); 54 gsvc -> addProvidesPt ( , 55 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 56 tupPams () ; 57 gsvc -> aPt ("cSvc"); 60 gsvc -> addProvidesPt ( this , svc -> PtInfo ("DiffTermPort", "DiffPort", 0) ); 63 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffProp", "PropertiesPort", 0) ); 64 gsvc -> giUsPt svc -> PtInfo ("ThermoProp", "PropertiesPort", 0) ); 65 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffs", "DiffPort", 0) ); 66 gsvc -> giUsPt svc -> PtInfo ("Thermo", "ThermoAnalysisPort", 0) ); 69  gDiffComp_JR :: $tupPams () 71 p_diff_cff_m = w `DoubPam ("Magnitude_of_Diff_Coeff", 76 p_PssuIndex_m = w `IPam ("PressureIndex", "Index ofressure in varlist", 79 -> `tBchT ( " Diffusion Physics Parameters " ); 80 -> `addReque p_diff_cff_m ); 81 -> `addReque p_PssuIndex_m ) ; 82 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Diffusion/src/DiffComp_utils.cpp 5  ~"DiffComp_JR.h " 7  gDiffComp_JR :: $CڡruDiflDiffusiTm (* da1 ,  nx ,  ny , 8  nz ,  nvs , * _i , 9 * _mix , * diff_cffs , 10  lol_dx ,  lol_dy , 11  lol_dz ,  dim , 12  i ,  di ,  j ,  dj , 13  k ,  dk , 14 * diff_diffusi_rm ) 30 * Q = w [ nx * ny * nz * dim ] ; 31  i = 0; i < nx * ny * nz * dim ; i++ Q [i] = 0.0 ; 33  iv = 1; iv < nvs ; ivar++) 34  k = k ; k < dk ; k++) 35  j = j ; j < dj ; j++) 36  i = i ; i < di ; i++) 39  ijk = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 40  1 = `fdx ( i +1, j , k , iv , nx , ny , nz , nvs ) ; 41  im1 = `fdx ( i -1, j , k , iv , nx , ny , nz , nvs ) ; 42  d_x = `fdx ( i , j , k , 0, nx , ny , nz , dim ) ; 43 Q [ d_x ] + _i [ ijk ] * diff_cffs [ijk] * ( da1 [ 1 ] - da1[ im1 ]) / 44 2 * lol_dx ) ; 47 i dim > 1) 49  jp1 = `fdx ( i , j +1, k , iv , nx , ny , nz , nvs ) ; 50  jm1 = `fdx ( i , j -1, k , iv , nx , ny , nz , nvs ) ; 51  d_y = `fdx ( i , j , k , 1, nx , ny , nz , dim ) ; 52 Q [ d_y ] + _i [ ijk ] * diff_cffs [ijk] * ( da1 [ jp1 ] - da1[ jm1 ]) / 53 2 * lol_dy ) ; 57 i dim > 2) 59  kp1 = `fdx ( i , j , k +1, iv , nx , ny , nz , nvs ) ; 60  km1 = `fdx ( i , j , k -1, iv , nx , ny , nz , nvs ) ; 61  d_z = `fdx ( i , j , k , 2, nx , ny , nz , dim ) ; 62 Q [ d_z ] + _i [ ijk ] * diff_cffs [ijk] * ( da1 [ kp1 ] - da1[ km1 ]) / 63 2 * lol_dz ) ; 70  i = 0; i < nx * ny * nz ; i++ diff_diffusi_rm [i] = 0.0 ; 71  iv = 0 ; 72  k = k ; k < dk ; k++) 73  j = j ; j < dj ; j++) 74  i = i ; i < di ; i++) 76  dex = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 77  compڒt_x = 0.0, compڒt_y = 0.0, compڒt_z = 0.0 ; 80  1 = `fdx ( i +1, j , k , iv , nx , ny , nz , nvs ) ; 81  im1 = `fdx ( i -1, j , k , iv , nx , ny , nz , nvs ) ; 82  d_x = `fdx ( i , j , k , 0, nx , ny , nz , dim ) ; 83 compڒt_x Q [ d_x ] * ( da1 [ 1 ] - da1[ im1 ])/(2.0* lol_dx ) ; 86 i( dim > 1) 88  jp1 = `fdx ( i , j +1, k , iv , nx , ny , nz , nvs ) ; 89  jm1 = `fdx ( i , j -1, k , iv , nx , ny , nz , nvs ) ; 90  d_y = `fdx ( i , j , k , 1, nx , ny , nz , dim ) ; 91 compڒt_y = Q [ d_y ] * ( da1 [ jp1 ] - da1[ jm1 ]/ (2.0* lol_dy ) ; 95 i( dim > 2) 97  kp1 = `fdx ( i , j , k +1, iv , nx , ny , nz , nvs ) ; 98  km1 = `fdx ( i , j , k -1, iv , nx , ny , nz , nvs ) ; 99  d_z = `fdx ( i , j , k , 2, nx , ny , nz , dim ) ; 100 compڒt_z = Q [ d_z ] * ( da1 [ kp1 ] - da1[ km1 ]/ (2.0* lol_dz ) ; 103 diff_diffusi_rm [ dex ] = + ( compڒt_x + compڒt_y + compڒt_z ) / 104 _mix [ dex ] ; 107 de [] Q ; 109 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Diffusion/src/DiffComp_workers.cpp 8  ~ 9  ~ 10  ~"DiffComp_JR.h " 12  #MAX ( A , B (A> (B? (A: (B) ) 13  #MIN ( A , B (A< (B? (A: (B) ) 14  #SMALL 1e-19 ) 16  gDiffComp_JR :: $compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 17 cڡ * p_she ,  nvs , * da2 , 18 cڡ * p_cr_suti , * p_doma_exs , 19  max_v ,  f_ ,  dim ) 24 i is_lized = l ) 26 ` () ; 27 is_lized = ue ; 30  cr_nx = p_cr_suti [0] ; 31  cr_ny = p_cr_suti [1] ; 32  cr_nz = p_cr_suti [2] ; 34  xm = p_doma_exs [0] ; 35  xmax = p_doma_exs [1] ; 36  ym = p_doma_exs [2] ; 37  ymax = p_doma_exs [3] ; 38  zm = p_doma_exs [4] ; 39  zmax = p_doma_exs [5] ; 41  cr_dx = ( xmax - xm / cr_nx ; cr_dx = `MAX (cr_dx, SMALL ) ; 42  cr_dy = ( ymax - ym / cr_ny ; cr_dy = `MAX (cr_dy, SMALL ) ; 43  cr_dz = ( zmax - zm / cr_nz ; cr_dz = `MAX (cr_dz, SMALL ) ; 45  max_femt = ( `pow ( f_ , max_v - 1); 46  fe_dx = cr_dx / max_femt ; 47  fe_dy = cr_dy / max_femt ; 48  fe_dz = cr_dz / max_femt ; 49  lol_xm = xm + p_lbbc [0] * fe_dx ; 50  lol_xmax = xm + p_ubbc [0] * fe_dx ; 51  lol_ym = ym + p_lbbc [1] * fe_dy ; 52  lol_ymax = ym + p_ubbc [1] * fe_dy ; 53  lol_zm = zm + p_lbbc [2] * fe_dz ; 54  lol_zmax = zm + p_ubbc [2] * fe_dz ; 56  nx , ny , nz ; 57  t_i , d_i , t_j , d_j , t_k , d_k ; 58  dim ) 61 nx = p_she [0] ; ny = 1 ; nz = 1 ; 62 t_i = 1; d_i = nx -1; t_j = 0; d_j = 1; t_k = 0; d_k = 1; 65 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 66 t_i = 1; d_i = nx -1; t_j = 1; d_j = ny -1; t_k = 0; d_k = 1; 69 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 70 t_i = 1; d_i = nx -1; t_j = 1; d_j = ny -1; t_k = 1; d_k = nz -1; 73 cout << "DiffComp_JR::compu(). Somhg wrg wh dimsi. Tme()" << dl ; 74 `rme (); 94 i p_PssuIndex_m -> vue !( nvs -1) ) 96 << "DiffComp_JR::compute() : Expectheressure indexo be " 97 << nvs -1 << "; ind g " << p_PssuIndex_m -> vue 98 << " doghg;ug wh -1 " << dl ; 107 * diffusi_cffs = w [ nx * ny * nz * nvs ] ; 108 i( pDiffCffPr !0&& ( pDiffCff != 0) ) 110  yes = 1 ; 111 pDiffCffPr -> `SIegs ("DiffCffs", & yes , 1) ; 112 pDiffCff -> `compu ( da1 , p_lbbc , p_ubbc , p_she , nvs , diffusi_cffs , 113 p_cr_suti , p_doma_exs , max_v , f_ , 114 dim ) ; 117   i = 0; i < nx * ny * nz * nvs ; i++ ) diffusi_cffs [i] = diff_cff ; 122  #DOING_DIFFERENTIAL_DIFFUSION_TERM ) 123 #ifde DOING_DIFFERENTIAL_DIFFUSION_TERM 124  ms = nvs ; 125 * diff_diffusi_rm = w [ nx * ny * nz ] ; 127  ms = 1 ; 129 * _i = w [ nx * ny * nz * ms ] ; 130 * _mix = _i ; 131 * rho_mix = w [ nx * ny * nz ] ; 132 i pThmo !0 && pThmoPr != 0 ) 134  nvsm1 = nvs -1;  zo = 0 ;  e = 1; 135 pThmoPr -> `SIegs ("PssuIndex", & nvsm1 , 1) ; 136 pThmoPr -> `SIegs ("TemtuIndex", & zo , 1) ; 137 pThmoPr -> `SIegs ("yS_dex", & e , 1); 139  s ; 140 s = pThmo -> `CompuV ( da1 , nvs , p_she , dim , "_mix", _i , nx * ny * nz ) ; 141 #ifde DOING_DIFFERENTIAL_DIFFUSION_TERM 142 * is = _i + nx * ny * nz ; 143 s = pThmo -> `CompuV ( da1 , nvs , p_she , dim , "_ecs", is , 144 nx * ny * nz *( ms -1)) ; 146 i s != 0 ) 148 << " DiffComp_JR::compu(: Faedg Cp_mix, cod" << s 149 << " Rug -1 whoudognythg. " << dl ; 153 s = pThmo -> `CompuV ( da1 , nvs , p_she , dim , "rho_mix", rho_mix , 154 nx * ny * nz ) ; 155 i s != 0 ) 157 << " DiffComp_JR::compu(: Faedgho_mix, cod" << s 158 << " Rug -1 whoudognythg. " << dl ; 164   i = 0; i < nx * ny * nz * ms ; i++ ) _i [i] = 1.0 ; 165   i = 0; i < nx * ny * nz ; i++ ) rho_mix [i] = 1.0 ; 169  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1 ) ; 170  lol_femt = max_femt / ride ; 172  lol_dx = cr_dx / lol_femt ; 173  lol_dy = cr_dy / lol_femt ; 174  lol_dz = cr_dz / lol_femt ; 187 #ifde DOING_DIFFERENTIAL_DIFFUSION_TERM 188 `CڡruDiflDiffusiTm ( da1 , nx , ny , nz , nvs , _i , _mix , 189 diffusi_cffs , lol_dx , lol_dy , 190 lol_dz , dim , t_i , d_i , t_j , d_j , 191 t_k , d_k , diff_diffusi_rm ) ; 199 * muɝlr = w [ nx * ny * nz ] ; 206   iv = 0; iv < nvs ; ivar ++ ) 213 i iv == 0 ) 215  dex = `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 216   i = 0 ; i < nx * ny * nz ; i++) 218 muɝlr [ i ] = rho_mix [i] * _mix [i] ; 219 diffusi_cffs [ dex + i ] * muɝlr [i] ; 224  dex = `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 225   i = 0 ; i < nx * ny * nz ; i++) 227 muɝlr [ i ] = rho_mix [i] ; 228 diffusi_cffs [ dex + i ] * muɝlr [i] ; 235   k = t_k ; k < d_k ; k++ ) 236   j = t_j ; j < d_j ; j++ ) 237   i = t_i ; i < d_i ; i++ ) 239  lol_x = lol_xm + i * lol_dx ; 240  lol_y = lol_ym + j * lol_dy ; 241  lol_z = lol_zm + k * lol_dz ; 243  1 = `MIN ( i +1, nx -1;  im1 = `MAX (0, i-1) ; 244  jp1 = `MIN ( j +1, ny -1;  jm1 = `MAX (0, j-1) ; 245  kp1 = `MIN ( k +1, nz -1;  km1 = `MAX (0, k-1) ; 247  ijk = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 248  1jk = `fdx ( 1 , j , k , iv , nx , ny , nz , nvs ) ; 249  im1jk = `fdx ( im1 , j , k , iv , nx , ny , nz , nvs ) ; 250  ijp1k = `fdx ( i , jp1 , k , iv , nx , ny , nz , nvs ) ; 251  ijm1k = `fdx ( i , jm1 , k , iv , nx , ny , nz , nvs ) ; 252  ijkp1 = `fdx ( i , j , kp1 , iv , nx , ny , nz , nvs ) ; 253  ijkm1 = `fdx ( i , j , km1 , iv , nx , ny , nz , nvs ) ; 255  Dh = 0.5 * ( diffusi_cffs [ 1jk ] + diffusi_cffs[ ijk ] ) ; 256  Dimh = 0.5 * ( diffusi_cffs [ ijk ] + diffusi_cffs[ im1jk ] ) ; 257  div_h = Dh * ( da1 [ 1jk ] - da1[ ijk ] ) / lol_dx ; 258  div_imh = Dimh * ( da1 [ ijk ] - da1[ im1jk ] ) / lol_dx ; 259  divx = ( div_h - div_imh / lol_dx ; 261  Djph = 0.5 * ( diffusi_cffs [ ijp1k ] + diffusi_cffs[ ijk ] ) ; 262  Djmh = 0.5 * ( diffusi_cffs [ ijk ] + diffusi_cffs[ ijm1k ] ) ; 263  div_jph = Djph * ( da1 [ ijp1k ] - da1[ ijk ] ) / lol_dy ; 264  div_jmh = Djmh * ( da1 [ ijk ] - da1[ ijm1k ] ) / lol_dy ; 265  divy = ( div_jph - div_jmh ) / lol_dy ; 267  Dkph = 0.5 * ( diffusi_cffs [ ijkp1 ] + diffusi_cffs[ ijk ] ) ; 268  Dkmh = 0.5 * ( diffusi_cffs [ ijk ] + diffusi_cffs[ ijkm1 ] ) ; 269  div_kph = Dkph * ( da1 [ ijkp1 ] - da1[ ijk ] ) / lol_dz ; 270  div_kmh = Dkmh * ( da1 [ ijk ] - da1[ ijkm1 ] ) / lol_dz ; 271  divz = ( div_kph - div_kmh ) / lol_dz ; 275  ijk_1v = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 276 da2 [ ijk ] = ( divx + divy + divz / muɝlr [ ijk_1v ] + data2[ijk]; 279 de [] diffusi_cffs ; d[] _i ; d[] rho_mix ; 280 de [] muɝlr ; 282 #ifde DOING_DIFFERENTIAL_DIFFUSION_TERM 283  i = 0; i < nx * ny * nz ; i++ da2 [i] + diff_diffusi_rm [i] ; 284 de [] diff_diffusi_rm ; 288 } } 290  gDiffComp_JR :: $ () 292 diff_cff = p_diff_cff_m -> vue ; 293 pDiffCffPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("DiffCoeffProp")) ; 294 pThmoPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("ThermoProp")) ; 295 pDiffCff = dymic_ < DiffPt * > ( pSvc -> `gPt ("DiffCoeffs")) ; 296 pThmo = dymic_ < ThmoAlysisPt *> ( pSvc -> `gPt ("Thermo")) ; 297 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Diffusion/src/DiffComp_wrapper.cpp 1  ~"DiffComp_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _DiffComp_JR () 8 CONV_NS ( Compڒt * wk ; 9 DiffComp_JR * compڒt ; 10 compڒt = w DiffComp_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_DiffComp_JR DiffComp_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Driver/include/Driver.h 9 #ide __DrivHSn__ 10  #__DrivHSn__ ) 14  ~"c.h " 15  ~"dPts.h " 18  ~"jc++/jc++.h " 19  ~"jc++/ut/jc++ut.h " 20  ~"ms/msSr.h " 21  ~"pt/sutIs.h " 24  ~"AMRPt.h " 25  ~"VeFldVb.h " 28  ~ 29  ~ 30  ~ 31  ~ 32  ~ 33  ~ 34 usg mea gd ; 37  ~"AMRPt.h " 38  ~"ICPt.h " 39  ~"TimeAdvPt.h " 40  ~"EEAndRegridPt.h " 41  ~"SAMRCsumPt.h " 43 #ifde SC02Demo 44  ~"Msumt_CCA.h " 48  ~"CONV_NS.h " 52 ass gDriv : public vtu CONV_NS ( Compڒt ), 53 public vtu $CONV_NS ( GoPt ) 55 public : 57 `Driv () ; 58 ~ `Driv () ; 59 vtu  `go () ; 60 vtu  `tSvis `CONV_NS ( Svis * svc ) ; 62 ive : 64  `SupPams () ; 66  `In () ; 68  `SupMesh () ; 70  `SupVbs () ; 72  `DumpDa ( VeFldVb ** pVFV ,  nVFV ) ; 74  `P_IC ( num_ocs ,  my_oc , * t_time , * t_time_n_dim ) ; 76  `RdIn_Ret (* t_time , * t_time_n_dim ,  me ) ; 78  `WreOut_Ret ( t_time ,  t_time_n_dim ,  me ) ; 84  `RDR ( dt , VeFldVb ** p_AMyVFVs , & time_n_dim , 85  my_oc ) ; 91  `DRD ( dt , VeFldVb ** p_AMyVFVs , & time_n_dim , 92  my_oc ) ; 95 `CONV_NS ( Svis * pSvc ; 98 CfigubPamPt * ; 99 DoubPam * p_doma_size_m , * p_ruime_m ; 100 DoubPam * p_dt_m ; 101 IPam * p_dimsi_m , * p_max_vs_m , * p_f__m ; 102 IPam * p_dump_rv_m , * p_grid_rv_m ; 103 IPam * p_checkpot_rv_m , * p_ve_size_m ; 104 IPam * p_mesh_cloti_m , * p_doma_s_m ; 105 IPam * p_t__m , * p_s__m , * p_time_s_h_m ; 106 IPam * p_time_s_l_m , * p_max_times_m ; 107 IPam * p_nx_m , * p_ny_m , * p_nz_m ; 108 SgPam * p_checkpot_fame_m , * p_VFVme1_m , * p_VFVme2_m ; 109 BoPam * p_should_i_t_m ; 110 BoPam * p_should_i_do_chemiry_m ; 111 BoPam * p_should_i_do_diffusi_m ; 112 DoubPam * p_X_hi_m , * p_Y_hi_m , * p_Z_hi_m ; 113 bo is_lized , is_hod , do_chemiry ; 115  doma_size [6], max_time ; 116  doma_s [3], dim , max_vs , f_ , dump_rv , grid_rv ; 117  checkpot_rv , ve_size , mesh_cloti ; 119 rg checkpot_fame ; 121 AMRPt * p_AMRPt ; 122 ICPt * p_ICPt ; 123 TimeAdvPt * p_TimeAdvPt , * p_ChemiryTimeAdv ; 124 EEAndRegridPt * p_EEAndRegridPt ; 125 SAMRCsumPt * p_SAMRCsPt ; 127 VeFldVb * p_AMyVs , * p_E ; 128 SAMRCsumPt * pIOComp , * pCSP_ , * pFrs ; 130 #ifde SC02Demo 131 SAMRCsumPt * pVizPt ; 132 IPam * pVizFq ; 133 :: rfm :: cpts :: Msumt * pMsPt ; 134 m < rg , :: rfm :: Tim *> l_tims ; 135 bo tims_exi ; 136  `Tims () ; 137  `timS rg tim_me ) ; 138  `timSt rg tim_me ) ; 140 } } ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Driver/src/Driver.cpp 8  ~ 9  ~"Driv.h " 11 gDriv :: $Driv () 14 is_lized = l ; 15 is_hod = l ; 16 #ifde SC02Demo 17 pVizPt = 0 ; 18 tims_exi = l ; 21 pIOComp = 0 ; p_AMRPt = 0 ; p_ICPt = 0 ; p_TimeAdvPt = 0 ; pCSP_ = 0 ; 22 p_ChemiryTimeAdv = 0 ; p_EEAndRegridPt = 0 ; p_SAMRCsPt = 0 ; 23 pFrs = 0 ; 25 cout << dl << " Driver::Driver() finished " < aPt ( "MyMesh"); 77 gpSvc -> aPt ( "InitCond" ); 78 gpSvc -> aPt ( "Integrator" ); 79 gpSvc -> aPt ( "Regrider" ); 80 gpSvc -> aPt ( "StatsPort" ); 81 gpSvc -> aPt ( "ChemistryIntegrator" ); 82 gpSvc -> aPt ( "BinaryFileIO" ) ; 83 gpSvc -> aPt ( "CSPAnalysis" ) ; 84 gpSvc -> aPt ( "HOFilters" ) ; 85 #ifde SC02Demo 86 gpSvc -> aPt ( "VizPort" ); 87 gpSvc -> aPt ( "TimerPort" ) ; 89 gpSvc -> moveProvidesPt ("GO") ; 90 gpSvc -> moveProvidesPt ("CONFIG") ; 94 gthis -> gpSvc = svc ; 97 gsvc -> giUsPt svc -> PtInfo ("cSvc", 99 CfigubPamFay * gf = 100 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 101 CHECKDC f ); 102 g = = f -> CfigubPamPt (); 103 gsvc -> addProvidesPt ( , 104 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 105 SupPams () ; 106 gsvc -> aPt ("cSvc"); 107 gsvc -> uegiUsPt ("cSvc"); 110 gsvc -> addProvidesPt ( this , svc -> PtInfo ("GO", "GoPort", 0) ); 113 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 114 gsvc -> giUsPt svc -> PtInfo ("InitCond", "ICPort", 0) ) ; 115 gsvc -> giUsPt svc -> PtInfo ("Integrator", "TimeAdvancePort", 0) ) ; 116 gsvc -> giUsPt svc -> PtInfo ("Regrider", "ErrorEstAndRegridPort", 0) ) ; 117 gsvc -> giUsPt svc -> PtInfo ("StatsPort", "SAMRConsumerPort", 0) ); 118 gsvc -> giUsPt svc -> PtInfo ("ChemistryIntegrator", "TimeAdvancePort", 0) ) ; 119 gsvc -> giUsPt svc -> PtInfo ("BinaryFileIO", "SAMRConsumerPort", 0) ) ; 120 gsvc -> giUsPt svc -> PtInfo ("CSPAnalysis", "SAMRConsumerPort", 0) ) ; 121 gsvc -> giUsPt svc -> PtInfo ("HOFilters", "SAMRConsumerPort", 0) ) ; 122 #ifde SC02Demo 123 gsvc -> giUsPt svc -> PtInfo ("VizPort", "SAMRConsumerPort", 0) ) ; 124 gsvc -> giUsPt svc -> PtInfo ("TimerPort", 130  gDriv :: $SupPams () 135 p_ruime_m = w `DoubPam ( "Time_End", "Timeouno", 138 p_dimsi_m = w `IPam ( "Dimensions", "Dimensionality of mesh", 141 p_max_vs_m = w `IPam ( "Max_levels", "Max.umber ofevels ofefinement", 144 p_f__m = w `IPam ( "Ref_Factor", "Refinement Factor", 147 p_dump_rv_m = w `IPam ( "Dump_Interval", "Data dumping interval", 150 p_grid_rv_m = w `IPam ( "Regrid_Interval", "Regriding interval", 153 p_checkpot_rv_m = w `IPam ( "Checkpoint_Interval", 158 p_ve_size_m = w `IPam ("Number_of_vars", "Vector Sizeer cell", 161 p_mesh_cloti_m = w `IPam ( "Mesh_collocation_type", 166 p_t__m = w `IPam ( "Time_stencil", "Timeevelso store", 169 p_s__m = w `IPam ( "Space_stencil", "Molecule width", 172 p_time_s_l_m = w `IPam ( "time_alias_lower", "Time Aliasower", 175 p_time_s_h_m = w `IPam ( "time_alias_higher", "Time Alias higher", 178 p_max_times_m = w `IPam ( "max_timesteps", "Max. Timesteps", 181 p_checkpot_fame_m = w `SgPam ( "Checkpoint_Filename", 185 p_VFVme1_m = w `SgPam ( "VFV1_name", "Name of VectorFieldVar #1", 188 p_VFVme2_m = w `SgPam ( "VFV2_name", "Name of VectorFieldVar #2", 191 p_nx_m = w `IPam ( "NX", "X-resolution", "nx = ", 100, 0, 10000000 ); 193 p_ny_m = w `IPam ( "NY", "Y-resolution", "ny = ", 100, 0, 10000000 ); 195 p_nz_m = w `IPam ( "NZ", "Z-resolution", "nz = ", 100, 0, 10000000 ); 197 p_dt_m = w `DoubPam ( "DT", "time step", "dt = ", -0.5, -1.0, 1000000.00); 199 p_should_i_t_m = w `BoPam ( "should_i_restart", "Restart ?", 200 "Ret_decisi = ", l ); 202 p_should_i_do_chemiry_m = w `BoPam ( "should_i_do_chemistry", 204 "Chemiry_decisi = ", l ); 207 p_should_i_do_diffusi_m = w `BoPam ( "should_i_do_diffusion", 209 "Diffusi_decisi = ", l ); 211 p_X_hi_m = w `DoubPam ( "X_hi", "Upper Limit in X", " X_hi = ", 214 p_Y_hi_m = w `DoubPam ( "Y_hi", "Upper Limit in Y", " Y_hi = ", 217 p_Z_hi_m = w `DoubPam ( "Z_hi", "Upper Limit in Z", " Z_hi = ", 220 #ifde SC02Demo 221 pVizFq = w `IPam ("VizFrequency", "Vizvery so many frequency", 225 -> `tBchT ( "Run Parameters" ); 226 -> `tGroupName (" Mesh Params" ) ; 227 -> `addReque p_dimsi_m ) ; 228 -> `addReque p_nx_m ); 229 -> `addReque p_ny_m ); 230 -> `addReque p_nz_m ); 231 -> `addReque p_max_vs_m ) ; 232 -> `addReque p_f__m ) ; 233 -> `addReque p_X_hi_m ) ; 234 -> `addReque p_Y_hi_m ) ; 235 -> `addReque p_Z_hi_m ) ; 236 -> `tGroupName (" Runtime Params" ) ; 237 -> `addReque p_dt_m ); 238 -> `addReque p_ruime_m ); 239 -> `addReque p_dump_rv_m ) ; 240 -> `addReque p_grid_rv_m ) ; 241 -> `addReque p_checkpot_rv_m ) ; 242 -> `addReque p_max_times_m ); 243 -> `addReque p_should_i_t_m ) ; 244 -> `tGroupName ( " Filenames " ); 245 -> `addReque p_checkpot_fame_m ) ; 246 -> `tGroupName ( " VFV Params " ); 247 -> `addReque p_ve_size_m ) ; 248 -> `addReque p_mesh_cloti_m ) ; 249 -> `addReque p_VFVme1_m ) ; 250 -> `addReque p_VFVme2_m ) ; 251 -> `tGroupName ( " Schemearameters " ); 252 -> `addReque p_s__m ) ; 253 -> `addReque p_t__m ) ; 254 -> `addReque p_time_s_h_m ) ; 255 -> `addReque p_time_s_l_m ) ; 256 -> `addReque p_should_i_do_chemiry_m ); 257 -> `addReque p_should_i_do_diffusi_m ); 258 #ifde SC02Demo 259 -> `tGroupName ( " Visualizationarameters " ); 260 -> `addReque pVizFq ) ; 262 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Driver/src/Driver_datadump.cpp 3  ~ 4  ~ 5  ~"mh.h " 6  ~ 7  ~ 8  ~"Driv.h " 11  #DUMP_FULL_GRIDS_2Dly ) 12 #unde DUMP_FULL_GRIDS_2Dly 15 #ifde DUMP_FULL_GRIDS_2Dly 16  PFe (* fame ,  DesedTime , FILE * o ) ; 17  WreToFe (* dimsis , * ig , * s ,  v , * da , 18  d [], FILE * o ,  iv ,  nvs ) ; 19  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz , 20  nvs ) ; 23  gDriv :: $DumpDa ( VeFldVb ** pVFV ,  nVFV ) 26 i pIOComp != 0 ) 28  my_oc = p_AMRPt -> `GC_g_oc_me () ; 29 i my_oc =0 ) cout << dl << " Dumping datao file " < `g_me (<< dl ; 34 pIOComp -> `compu pVFV [ iVFV ] ) ; 39  my_oc = p_AMRPt -> `GC_g_oc_me () ; 40 `MPI_Brr p_AMRPt -> `GC_g_compu_nodes_communit () ) ; 41 i my_oc =0 ) cout << dl << " Dumping datao file " < `GC_g_fe_v (); 44  Ts0 = p_AMRPt -> `GC_time_size (0, ACEMa ) ; 47   ivfv = 0; ivfv < nVFV ; ivfv++ ) 49 VeFldVb * p_y_vfv = (*( pVFV + ivfv )) ; 51 i my_oc =0 ) cout << " --- " << p_y_vfv -> `g_me (<< dl ; 53  nvs = p_y_vfv -> `g_ve_size () ; 54  ngrids = p_y_vfv -> `g_numb_of_comp_grids () ; 55  v = 0;ev < ( max_v_now +1);evel++ ) 57  Time = p_AMRPt -> `GC_cut_time ( v , ACEMa ); 58 p_AMRPt -> `GC_t_cut_time ( Time / Ts0 , v , ACEMa ); 60   iv = 0; iv < nvs ; ivar++ ) 61 p_y_vfv -> `wre_out_to_fe p_AMRPt -> `GC_cut_time ( v , ACEMa ), 62 v , iv , ACEMa ) ; 63 p_AMRPt -> `GC_t_cut_time ( Time , v , ACEMa ) ; 68 #ifde DUMP_FULL_GRIDS_2Dly 69   ivfv = 0; ivfv < nVFV ; ivfv++ ) 71 VeFldVb * p_y_vfv = (*( pVFV + ivfv )) ; 73 i my_oc =0 ) cout << " --- " << p_y_vfv -> `g_me (<< dl ; 75  nvs = p_y_vfv -> `g_ve_size () ; 76  ngrids = p_y_vfv -> `g_numb_of_comp_grids () ; 77  iv = 0; iv < nvs ; ivar++) 79  aTime = p_AMRPt -> `GC_cut_time (0, ACEMa ); 81 * vme ; 82  vme_ngth = ` p_y_vfv -> `g_me () ) 84 vme = w [ vme_ngth ] ; 85 `rtf ( vme , "%s%03d", p_y_vfv -> `g_me (), iv ) ; 87 * fame ; 88  fame_ngth = vme_ngth + 1 92 fame = w [ fame_ngth ] ; 93 `rtf ( fame , "%s_%04d_%010d.d", vme , my_oc , aTime ); 95 FILE * o = `fݒ ( fame , "w"); 96 `PFe ( vme , aTime , o ); 97  v = 0;ev < ( max_v_now +1);evel++ ) 99  Time = p_AMRPt -> `GC_cut_time ( v , ACEMa ); 100   igrid = 0; igrid < ngrids ; igrid++ ) 102 i p_y_vfv -> `exis Time , v , igrid ) = ue ) 104 * p_da1 = p_y_vfv -> `g_da ( Time , v , igrid , ACEMa ); 105 cڡ * p_lbbc1 = p_y_vfv -> `g_low_bbc ( Time , v , igrid , ACEMa ); 106 cڡ * p_ubbc1 = p_y_vfv -> `g_u_bbc ( Time , v , igrid , ACEMa ); 107 cڡ * p_she1 = p_y_vfv -> `g_da_y_size ( Time , v , igrid , 108 ACEMa ); 109  rides [2] ; 110 rides [0] = ( p_ubbc1 [0] - p_lbbc1 [0]/ ( p_she1 [0]-1) ; 111 rides [1] = ( p_ubbc1 [1] - p_lbbc1 [1]/ ( p_she1 [1]-1) ; 112  dxs [2] ; dxs[0] = 1.0 ; dxs[1] = 1.0 ; 114 `WreToFe ( p_she1 , p_lbbc1 , rides , v , p_da1 , dxs , o , iv , nvs ) ; 118 `fo o ) ; 119 de [] vme ; de[] fame ; 123 } } 126 #ifde DUMP_FULL_GRIDS_2Dly 127  $WreToFe (* dimsis , * ig , * s ,  v , * da , 128  d [], FILE * o ,  iv ,  nvs ) 130  nx , ny , nz = 1; 131  i , j , k = 0; 132  dx , dy ; 133  _x , _y ; 135 nx = * dimsis ; 136 ny = *( dimsis +1); 137 dx = d [0]; 138 dy = d [1]; 141 `rtf ( o , "\nZone = \" %d %d %d \" i = %d, j = %d, f =oint \n", 142 v , * s , *es+1), ( ny ), ( nx )); 144  i = 0; i < nx ; i++) 146  j = 0; j < ny ; j++) 148  x , y ; 149  dex ; 150 x = ( * ig + (* s * i ) * dx ; 151 y = ( *( ig +1+ (*( s +1)* j ) * dy ; 152 dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 153 `rtf ( o , "%l%l%lf\n", x , y , *( da + dex )); 156 } } 158  $PFe (* fame ,  DesedTime , FILE * o ) 160 i( DesedTime >= 0) 162 `rtf ( o , "T = \" %ime %d \" \n", fame , DesedTime ); 163 `rtf ( o , "vbˠ\" x \", \" y \", \" %\" \n", fame ); 165 } } 167  $fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz , 168  nvs ) 171  ( iv * nz * ny * nx + k *ny*nx + j *nx + i ) ; 172 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Driver/src/Driver_split.cpp 1  ~ 2  ~"Driv.h " 10  gDriv :: $DRD ( dt , VeFldVb ** p_AMyVFVs , & time_n_dim , 11  my_oc ) 14 i p_should_i_do_diffusi_m -> vue = ue ) 16 i my_oc =0 ) cout << " F diffusi s: diffusi d" << dt 17 << dl < `compu ( p_AMyVFVs [0]); 23 p_TimeAdvPt -> `Adv dt , p_AMyVFVs , 1) ; 24 #ifde SC02Demo 25 `timSt ("Diffusion") ; 28 time_n_dim + dt ; 34 i do_chemiry = ue ) 36 i my_oc =0 ) cout << dl << " Chemiry s D" << 2* dt < `Adv 2* dt , p_AMyVFVs , 1 ); 41 #ifde SC02Demo 42 `timSt ("Chemistry") ; 47 i p_should_i_do_diffusi_m -> vue = ue ) 49 i my_oc =0 ) cout << dl << " Second diffusion step : diffusion dt = " 50 << dt << dl < `compu ( p_AMyVFVs [0]); 56 p_TimeAdvPt -> `Adv dt , p_AMyVFVs , 1) ; 57 #ifde SC02Demo 58 `timSt ("Diffusion") ; 62 time_n_dim + dt ; 67 } } 69  gDriv :: $RDR ( dt , VeFldVb ** p_AMyVFVs , & time_n_dim , 70  my_oc ) 72  #EPS 1.0e-10 ) 74 i do_chemiry = ue && time_n_dim > 2* dt ) 76 i my_oc =0 ) cout << dl << " 1st Chemistry step Dt = " 77 << dt / 2.0 << dl ; 78 #ifde SC02Demo 79 `timS ("Chemistry") ; 81 p_ChemiryTimeAdv -> `Adv dt /2, p_AMyVFVs , 1 ); 82 #ifde SC02Demo 83 `timSt ("Chemistry") ; 89 i p_should_i_do_diffusi_m -> vue = ue ) 91 i my_oc == 0 ) 92 cout << dl << " Diffusi sd" << dt < `compu ( p_AMyVFVs [0]); 99 p_TimeAdvPt -> `Adv dt , p_AMyVFVs , 1) ; 100 #ifde SC02Demo 101 `timSt ("Diffusion") ; 108 i do_chemiry = ue && time_n_dim > 2* dt ) 110 i my_oc =0 ) cout << dl << " 2nd Chemiry sD" << dt / 2 < `Adv dt /2, p_AMyVFVs , 1 ); 115 #ifde SC02Demo 116 `timSt ("Chemistry") ; 121 time_n_dim + dt ; 124 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Driver/src/Driver_timer.cpp 3  ~"Driv.h " 5 #ifde SC02Demo 6  gDriv :: $Tims () 8 pMsPt = dymic_ < :: rfm :: cpts :: Msumt * > 9 ( pSvc -> `gPt ("TimerPort")) ; 10 i pMsPt == 0 )  ; 12 :: rfm :: Tim * pT ; 13 pT = pMsPt -> `Tim `rg ("Ma"; `as (pT != 0) ; 14 l_tims [ `rg ("Ma"] = pT ; 15 pT = pMsPt -> `Tim `rg ("Diffusi"; `as (pT != 0) ; 16 l_tims [ `rg ("Diffusi"] = pT ; 17 pT = pMsPt -> `Tim `rg ("Chemiry"; `as (pT != 0) ; 18 l_tims [ `rg ("Chemiry"] = pT ; 19 pT = pMsPt -> `Tim `rg ("Regrid"; `as (pT != 0) ; 20 l_tims [ `rg ("Regrid"] = pT ; 21 pT = pMsPt -> `Tim `rg ("Viz"; `as (pT != 0) ; 22 l_tims [ `rg ("Viz"] = pT ; 24 tims_exi = ue ; 25 } } 27  gDriv :: $timS rg tim_me ) 29 i tims_exi = l )  ; 30 l_tims [ tim_me ]-> `t () ; 31 } } 34  gDriv :: $timSt rg tim_me ) 36 i tims_exi = l )  ; 37 l_tims [ tim_me ]-> ` () ; 38 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Driver/src/Driver_workers.cpp 9  ~ 10  ~ 11  ~"mh.h " 12  ~ 13  ~ 14  ~"Driv.h " 16  #SMALL 1.0e-10 ) 18  gDriv :: $In () 21 doma_size [0] = 0.0 ; 22 doma_size [1] = p_X_hi_m -> vue ; 23 doma_size [2] = 0.0 ; 24 doma_size [3] = p_Y_hi_m -> vue ; 25 doma_size [4] = 0.0 ; 26 doma_size [5] = p_Z_hi_m -> vue ; 29 doma_s [0] = p_nx_m -> vue ; 30 doma_s [1] = p_ny_m -> vue ; 31 doma_s [2] = p_nz_m -> vue ; 33 max_vs = p_max_vs_m -> vue ; 34 dim = p_dimsi_m -> vue ; 35 f_ = p_f__m -> vue ; 36 dump_rv = p_dump_rv_m -> vue ; 37 grid_rv = p_grid_rv_m -> vue ; 38 checkpot_rv = p_checkpot_rv_m -> vue ; 39 ve_size = p_ve_size_m -> vue ; 40 mesh_cloti = p_mesh_cloti_m -> vue ; 41 max_time = p_ruime_m -> vue ; 42 checkpot_fame = p_checkpot_fame_m -> vue ; 43 do_chemiry = p_should_i_do_chemiry_m -> vue ; 46 p_AMRPt = dymic_ < AMRPt *> pSvc -> `gPt ( "MyMesh" ) ) ; 47 `CHECKDC ( p_AMRPt ); 48 p_ICPt = dymic_ < ICPt *> pSvc -> `gPt ( "InitCond" ) ) ; 49 `CHECKDC ( p_ICPt ) ; 50 p_TimeAdvPt = dymic_ < TimeAdvPt *> pSvc -> `gPt ( "Integrator" ) ) ; 51 `CHECKDC ( p_TimeAdvPt ); 52 p_EEAndRegridPt = dymic_ < EEAndRegridPt *> 53 pSvc -> `gPt ( "Regrider" ) ) ; 54 `CHECKDC ( p_EEAndRegridPt ); 57 p_SAMRCsPt = dymic_ < SAMRCsumPt * > ( pSvc -> `gPt ( "StatsPort" ) ) ; 58 pIOComp = dymic_ < SAMRCsumPt * > ( pSvc -> `gPt ("BinaryFileIO") ) ; 59 pCSP_ = dymic_ < SAMRCsumPt * > ( pSvc -> `gPt ("CSPAnalysis") ) ; 60 pFrs = dymic_ < SAMRCsumPt * > ( pSvc -> `gPt ("HOFilters") ) ; 61 i do_chemiry = ue ) 63 p_ChemiryTimeAdv = dymic_ < TimeAdvPt *> 64 pSvc -> `gPt ( "ChemistryIntegrator" ) ) ; 65 `CHECKDC ( p_ChemiryTimeAdv ) ; 68 #ifde SC02Demo 69 pVizPt = dymic_ < SAMRCsumPt *> ( pSvc -> `gPt ( "VizPort" ) ) ; 70 i tims_exi = l ) `Tims () ; 73 } } 75  gDriv :: $SupMesh () 77 p_AMRPt -> `GC_tup_GridHrchy dim , max_vs , VxCd ); 78 p_AMRPt -> `GC_t_ba_grid doma_size , doma_s ); 79 p_AMRPt -> `GC_t_femt_ f_ ) ; 80 p_AMRPt -> `GC_compo_hrchy (); 81 } } 83  gDriv :: $SupVbs () 86  t_ = p_t__m -> vue ; 87  s_ = p_s__m -> vue ; 88  time_s_high = p_time_s_h_m -> vue ; 89  time_s_low = p_time_s_l_m -> vue ; 90 MeshClotiTy m ; 92 i mesh_cloti =1 ) m = ClCd ; 93 i mesh_cloti =2 ) m = VxCd ; 94 i mesh_cloti =3 ) m = FaCdX ; 95 i mesh_cloti =4 ) m = FaCdY ; 96 i mesh_cloti =5 ) m = FaCdZ ; 98 p_AMyVs = p_AMRPt -> `GC_tup_ve ( p_VFVme1_m -> vue , t_ , s_ , 99 ve_size , m , time_s_high , 100 time_s_low , GRID_NO_SHADOW ) ; 102 p_AMyVs -> `t_boundy_cdi_ty ( ZoGdNeumn ) ; 104 p_E = p_AMRPt -> `GC_tup_ve ( p_VFVme2_m -> vue , t_ , s_ , 105 1, m , time_s_high , time_s_low , 106 GRID_NO_SHADOW ) ; 108 p_E -> `t_boundy_cdi_ty DichtCڡt ) ; 109 p_E -> `t_cڡ_v_dicht_bc ( 0.0 ); 115 } } 117  gDriv :: $go () 120 `In () ; 123 `SupMesh () ; 126  my_oc = p_AMRPt -> `GC_g_oc_me () ; 127  num_ocs = p_AMRPt -> `GC_g_oc_wld () ; 129 cout << "Driv::go()" << dl 130 << "Pro" << my_oc << " ouo" << num_ocs << " started. " 131 << dl << ush ; 134 i( num_ocs =1|| ( p_AMRPt -> `GC_is_a_compu_node (= ue ) ) 137 `SupVbs () ; 142 VeFldVb * p_AMyVFVs [2] ; 143 p_AMyVFVs [0] = p_AMyVs ;_AMyVFVs[1] = p_E ; 145  time_n_dim , dt = p_dt_m -> vue ; 146  time , max_times = p_max_times_m -> vue ; 148 i p_should_i_t_m -> vue = ue ) 149 `RdIn_Ret & time , & time_n_dim , my_oc ) ; 151 `P_IC ( num_ocs , my_oc , & time , & time_n_dim ) ; 154 i my_oc =0 ) cout << " Sgimlo " << dl < `compu ( p_AMyVs ); 173 i p_should_i_do_diffusi_m -> vue = ue ) 176 i( p_dt_m -> vue ) > 0.0 ) 177 dt = p_dt_m -> vue ; 179 dt = p_TimeAdvPt -> `GSbTime dt, & p_AMyVs , 1 ) ; 182  #MAX_TIMESTEP 1000.0e-9 ) 183  #MIN ( A , B (A< (B? (A: (B) ) 184 i my_oc =0 ) cout << " Diffusi sb d" << dt << dl ; 185 dt = `MIN (dt, MAX_TIMESTEP ) ; 186 i my_oc =0 ) cout << " dcab stgs)" << dt << dl ; 189 #ifde Do_DRD 191 `DRD ( dt , p_AMyVFVs , time_n_dim , my_oc ) ; 193 `RDR ( dt , p_AMyVFVs , time_n_dim , my_oc ) ; 197 time ++ ; 202 i time % dump_rv =0 ) `DumpDa & p_AMyVs , 1 ); 205 i pCSP_ !0 )CSP_-> `compu p_AMyVs ) ; 207 #ifde SC02Demo 208 `timS ("Regrid") ; 211 p_EEAndRegridPt -> `Regrid p_AMyVFVs , 1, p_E ) ; 212 #ifde SC02Demo 213 `timSt ("Regrid" ) ; 217 i time % checkpot_rv =0 ) `WreOut_Ret ime, time_n_dim , 218 my_oc ) ; 220 #ifde SC02Demo 222 i( time % pVizFq -> vue =0&& ( pVizPt != 0 ) ) 224 cout << " Driv::go(: Sgvisuiz" << dl ; 225 `timS ("Viz") ; 226 pVizPt -> `compu p_AMyVs ) ; 227 `timSt ("Viz") ; 228 `MPI_Brr p_AMRPt -> `GC_g_compu_nodes_communit () ) ; 233 #ifde SC02Demo 234 `timSt ("Main"); 236 p_AMRPt -> `GC_Shutdown_IO (); 239 p_AMRPt -> `GC_Shutdown_IO (); 240 cout << " Fshedro" << my_oc << dl ; 242 } } 244  gDriv :: $P_IC ( num_ocs ,  my_oc , * t_time , 245 * t_time_n_dim ) 248 i my_oc =0 ) cout << dl 250 << dl < .me" << dl ; 266 `ex (-1) ; 270 #ifde JR_DEBUG 271 p_ICPt -> `SInlCdis & p_AMyVs , 1) ; 273  i = 0; i < max_vs ; i++) 275 p_ICPt -> `SInlCdis & p_AMyVs , 1) ; 276 i i < ( max_vs -1) ) 277 p_EEAndRegridPt -> `Regrid &( p_AMyVs ), 1, p_E ) ; 280 `DumpDa & p_AMyVs , 1 ); 282 * t_time = 0; 283 * t_time_n_dim = 0.0 ; 286 } } 288  gDriv :: $RdIn_Ret (* t_time , * t_time_n_dim ,  me ) 290 i me = p_AMRPt -> `GC_g_ma_node_nk () ) 291 cout << " Driv::RdIn_Ret(: Rdg ife" << dl ; 293 rg `time_fame checkpot_fame ) ; 294 time_fame . `nd ( "_time.txt" ); 296 ifam `put_feam time_fame . `c_r (), ios :: ) ; 297 put_feam >> (* t_time >> (* t_time_n_dim ) ; 298 put_feam . `o () ; 300 p_AMRPt -> `GC_t_om_fe cڡ_ <*>( checkpot_fame . `c_r ()) ) ; 302 } } 304  gDriv :: $WreOut_Ret ( t_time ,  t_time_n_dim ,  me ) 306 i me = p_AMRPt -> `GC_g_ma_node_nk () ) 308 rg `time_fame checkpot_fame ) ; 309 time_fame . `nd ( "_time.txt" ); 311 ofam `ouut_feam time_fame . `c_r (), ios :: out ) ; 312 ouut_feam << t_time << " " << t_time_n_dim ; 313 ouut_feam . `o () ; 316 p_AMRPt -> `GC_checkpot_to_fe cڡ_ <*>( checkpot_fame . `c_r ()) ) ; 318 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/Driver/src/Driver_wrapper.cpp 1  ~"Driv.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _Driv () 8 CONV_NS ( Compڒt * wk ; 9 Driv * compڒt ; 10 compڒt = w Driv (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_Driver Driver"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/include/AbstractDeriv.h 3 #ide AbDivHSn 4  #AbDivHSn ) 6 mea gHODiffS 19 as cAbDiv 21 gpublic : 23 AbDiv (){} 25 vtu ~ AbDiv () {} 27 vtu  Cfigu ( di ,  db ,  upwd , cڡ * she , 28 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 29  maxv ,  f ,  bndryL ,  bndryR ) = 0 ; 31 vtu  SD  d ) = 0 ; 33 vtu  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 34 * ouut ) = 0 ; 36 vtu  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 37 * ouut ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/include/CollocDeriv.h 2 #ide ClocDivHSn 3  #ClocDivHSn ) 5  ~ 6  ~"AbDiv.h " 8 mea gHODiffS 17 as cClocDiv : public vtu AbDiv 19 public : 21 ClocDiv () 23 biL = biR = bjL = bjR = bkL = bkR = iiL = iiR = 0 ; 24 gijL = ijR = ikL = ikR = fiL = fiR = fjL = fjR = fkL = 0; 25 gfkR = viL = viR = vjL = vjR = vkL = vkR = dfiL = dfiR = 0 ; 26 gdfjL = dfjR = dfkL = dfkR = 0 ; 27 gd_i = d_b = upw = 0; 29 gd :: ios :: sync_wh_dio () ; 32 gvtu ~ ClocDiv () {} 34  Cfigu ( di ,  db ,  upwd , cڡ * she , 35 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 36  maxv ,  f ,  bndryL ,  bndryR ) ; 38  SD  d ) { gdec = d ; } 40  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 41 * ouut ) ; 43  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 44 * ouut ) ; 46 give : 48  biL , gbiR , gbjL , gbjR , gbkL , gbkR ; 49  giiL , giiR , gijL , gijR , gikL , gikR ; 50  gfiL , gfiR , gfjL , gfjR , gfkL , gfkR ; 51  gviL , gviR , gvjL , gvjR , gvkL , gvkR ; 52  gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR ; 53  gdec ; 55  gd_i , gd_b , gupw ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/include/HODiffComp_JR.h 10 #ide __HODiffCompHSn__ 11  #__HODiffCompHSn__ ) 14  ~"c.h " 15  ~"dPts.h " 18  ~"jc++/jc++.h " 19  ~"jc++/ut/jc++ut.h " 20  ~"ms/msSr.h " 21  ~"pt/sutIs.h " 24  ~ 25  ~ 28  ~"DiffPt.h " 31  ~"PrݔtsPt.h " 32  ~"DiffPt.h " 33  ~"ThmoAlysisPt.h " 34  ~"AMRPt.h " 37  ~"AbDiv.h " 38  ~"ClocDiv.h " 39  ~"SgDiv.h " 42  ~"CONV_NS.h " 46 ass gHODiffComp_JR : public vtu CONV_NS ( Compڒt ), 47 public vtu gDiffPt 49 gpublic : 51 HODiffComp_JR () ; 53 gvtu ~ HODiffComp_JR () ; 54 vtu  tSvis CONV_NS ( Svis * svc ); 56 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 57 cڡ * p_she ,  nvs , * da2 , 58 cڡ * p_cr_suti , * p_doma_exs , 59  max_v ,  f_ ,  dim ) ; 61 give : 63  tupPams () ; 65  () ; 67  CheckSize ( nx ,  ny ,  nz ,  nvs ,  ndims ) ; 69  InDiffusiCffs (* da1 , cڡ * p_she ,  dim , 70  nx ,  ny ,  nz ,  nvs ) ; 72  InCpAndRho (* da1 , cڡ * p_she ,  dim ,  nx , 73  ny ,  nz ,  nvs ) ; 75  InMuɝlr ( ns ,  iv ) ; 77  CڡruDiflDiffusiTm (* d1 ,  nx ,  ny ,  nz , 78  iv ,  id ) ; 80 le  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz , 81  nvs ) 84  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 87 bo gis_lized , gis_hod ; 88  gdiff_cff ; 91 CONV_NS ( Svis * gpSvc ; 93 PrݔtsPt * gpDiffCffPr , * gpThmoPr ; 94 DiffPt * gpDiffCff ; 95 ThmoAlysisPt * gpThmo ; 96 AMRPt * gpAMR ; 99 CfigubPamPt * g ; 100 DoubPam * gp_diff_cff_m ; 101 IPam * gp_PssuIndex_m , * gpIOrdPam , * gpBoundOrdPam ; 102 SgPam * gpMeshClocTy ; 105 gHODiffS :: AbDiv * pAbsD ; 106 gHODiffS :: ClocDiv CDO ; 107 gHODiffS :: SgDiv SDO ; 109 * gCp , * grho , * gdiffusi_cffs , * gd1 , * gd2 , * gv , * gmuɝlr ; 110 * gQ , * ggdT , * gdiff_diffusi_rm ; 111  gns_d ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/include/StagDeriv.h 7 #ide SgDivHSn 8  #SgDivHSn ) 10  ~ 11  ~"AbDiv.h " 13 mea gHODiffS 15 as cSgDiv : public vtu AbDiv 17 public : 19 SgDiv () 21 biL = biR = bjL = bjR = bkL = bkR = iiL = iiR = 0 ; 22 gijL = ijR = ikL = ikR = fiL = fiR = fjL = fjR = fkL = 0; 23 gfkR = viL = viR = vjL = vjR = vkL = vkR = dfiL = dfiR = 0 ; 24 gdfjL = dfjR = dfkL = dfkR = 0 ; 25 gd_i = d_b = upw = 0; 28 gvtu ~ SgDiv () {} 30  Cfigu ( di ,  db ,  upwd , cڡ * she , 31 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 32  maxv ,  f ,  bndryL ,  bndryR ) ; 34  SD  d ) { gdec = d ; } 36  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 37 * ouut ) ; 39  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 40 * ouut ) ; 41 give : 43  biL , gbiR , gbjL , gbjR , gbkL , gbkR ; 44  giiL , giiR , gijL , gijR , gikL , gikR ; 45  gfiL , gfiR , gfjL , gfjR , gfkL , gfkR ; 46  gviL , gviR , gvjL , gvjR , gvkL , gvkR ; 47  gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR ; 48  gdec ; 49  gd_i , gd_b , gupw ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/include/fortran_names.h 5 #i defed ( PGI ) 6  #FORTNAME ( A A## _ ) 8  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/lib/der1_include.h 2 ! X_DER1_CO , gY_DER1_CO , d Z_DER1_CO evue the f gdivive 3 ! gx -, gy - d gz - deis clod nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up wh gAMR 5 ! itis gmd . In rms of gdivives , ed d gupwd 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! The as  the vbs VEL d UPWIND e to rm urs gto 16 ! ecify whh they wt upwded downwded gdivives . 17 ! Ddg the sign of h vocy d whh h ur gques , 18 ! upwd downwd gc , eh upwded c o g 's 19 ! comex $cjuge ( Fourr a is d . Nr bounds , 20 ! is imail to low  l possibls d h ll 21 ! boundy pots th n pْty be boundyot e ways 22 ! d as boundy pots . The boundyot e od usg 23 ! skewed cs ì the wl d ed difns fuh away . 24 ! Upwdg / downwdg is ighy dif  comessib d 25 ! comessib ows . The Κg route mu cho r 26 ! `` vocy ,'' i . e . u , u+ c , u-c, . 28 ! This route has bn t up to be que g . Aays f , df , 29 ! d v e lowed to r the route havg bry y 30 ! bounds . The Κg route mu addiڮly ecify the numb 31 ! of g s th e ovided l six bounds as wl 32 ! as d the exa gi whe divives e eded . Ne 33 ! th n l emts of y df wl be fd wh uful 34 ! divives . This dds wh the ur ecifd th y 35 ! bounds . The key pot is th l ys e dimsied tive to 36 ! the me grid ; somhg h Κg route eds to cce . 38 ! G s e grid pots th have bn added to the cut mesh 39 ! v by ީg vbs om the xt mo cr grid . 40 ! They e ad ound the ri tch to low th avoid 41 ! of n - ed divive ݔs . In the ri ptis ofhe 42 ! computi , GrACE wl dr the sry numb of g s so 43 ! th skewed cs e uesry but ì physil bounds , 44 ! this may n be possib . In the s , e eds to eablish how 45 ! my boundy pots the e d o them ݔly . This is why 46 ! d right rusis of cs e csided . If the ri 47 ! ݔ eds four boundy pots od but the e ly the 48 ! g s th the t rusi is e . This mns th ly one 49 ! boundy pot mu be od wh e - sided divives . 51 ! He 's howhe first derivativesre called: 53 ! subroute x_d1_co 54 ! & ( f , df , dx , dy , dz , v , upwd , di , db , 55 ! & biL , biR , bjL , bjR , bkL , bkR , 56 ! & fiL , fiR , fjL , fjR , fkL , fkR , 57 ! & iiL , iiR , ijL , ijR , ikL , ikR , 58 ! & viL , viR , vjL , vjR , vkL , vkR , 59 ! & dfiL , dfiR , dfjL , dfjR , dfkL , dfkR , 60 ! & x , y , z , , r ) 62 ! INPUT 64 ! f - Funi to be difd 65 ! dx , dy , dz - grid acg x -, y -, d z - deis 66 ! v - vocy ve -> ud  ܛg upwd cs 67 ! upwd - dei -> `upwd (+1,+2 `downwd (-1,-2) 68 ! di - Ord of accucy o the ri ݔ 69 ! db - Fm d of accucy o the wl pot boundy ݔ 70 ! Cuy n ud !! 71 ! fiL - Glob codes  `f ( Le side of x - dei ) 72 ! fiR - Glob codes  `f ( Right side of x - dei ) 73 ! fjL - Glob codes  `f ( Le side of y - dei ) 74 ! fjR - Glob codes  `f ( Right side of y - dei ) 75 ! fkL - Glob codes  `f ( Le side of z - dei ) 76 ! fkR - Glob codes  `f ( Right side of z - dei ) 77 ! dfiL - Glob codes  df `tch ( Le side of x - dei ) 78 ! dfiR - Glob codes  df `tch ( Right side of x - dei ) 79 ! dfjL - Glob codes  df `tch ( Le side of y - dei ) 80 ! dfjR - Glob codes  df `tch ( Right side of y - dei ) 81 ! dfkL - Glob codes  df `tch ( Le side of z - dei ) 82 ! dfkR - Glob codes  df `tch ( Right side of z - dei ) 83 ! iiL - Glob codes  `df ( Le side of x - dei ) 84 ! iiR - Glob codes  `df ( Right side of x - dei ) 85 ! ijL - Glob codes  `df ( Le side of y - dei ) 86 ! ijR - Glob codes  `df ( Right side of y - dei ) 87 ! ikL - Glob codes  `df ( Le side of z - dei ) 88 ! ikR - Glob codes  `df ( Right side of z - dei ) 89 ! viL - Glob codes  `v ( Le side of x - dei ) 90 ! viR - Glob codes  `v ( Right side of x - dei ) 91 ! vjL - Glob codes  `v ( Le side of y - dei ) 92 ! vjR - Glob codes  `v ( Right side of y - dei ) 93 ! vkL - Glob codes  `v ( Le side of z - dei ) 94 ! vlR - Glob codes  `v ( Right side of z - dei ) 95 ! biL - Numb of g s side o x - dei 96 ! biR - Numb of g s right side o x - dei 97 ! bjL - Numb of g s side o y - dei 98 ! bjR - Numb of g s right side o y - dei 99 ! bkL - Numb of g s side o z - dei 100 ! bkR - Numb of g s right side o z - dei 101 ! x - Is the x - dei riodic -> (0 no , (1 yes 102 ! y - Is the y - dei riodic -> (0 no , (1 yes 103 ! z - Is the z - dei riodic -> (0 no , (1 yes 104 ! - E mesge - S bow 106 ! OUTPUT 108 ! df - Difd Funi 110 ! LOCAL 112 ! oL - Le rusi of ri c 113 ! oR - Right rusi of ri c 114 ! omax - Maximum rusi of ri c 115 ! roL - N rusi of ri c 116 ! roR - N right rusi of ri c 117 ! width - Tٮ width of ri c 118 ! - Exic ed difn c cff . ` ( i +/- 1) 119 ! be - Exic ed difn c cff . ` ( i +/- 2) 120 ! - Exic ed difn c cff . ` ( i +/- 3) 121 ! de - Exic ed difn c cff . ` ( i +/- 4) 122 ! dL - Exic skewed difn c cff . ` ( i - 4) 123 ! cL - Exic skewed difn c cff . ` ( i - 3) 124 ! bL - Exic skewed difn c cff . ` ( i - 2) 125 ! aL - Exic skewed difn c cff . ` ( i - 1) 126 ! Up - Exic skewed difn c cff . ` ( i ) 127 ! aR - Exic skewed difn c cff . ` ( i + 1) 128 ! bR - Exic skewed difn c cff . ` ( i + 2) 129 ! cR - Exic skewed difn c cff . ` ( i + 3) 130 ! dR - Exic skewed difn c cff . ` ( i + 4) 131 ! x , y , zbeg - Begng dex  ri c 132 ! x , y , zd - Endg dex  ri c 133 ! piL - Glob codes  df + g `s ( Le side of x - dei ) 134 ! piR - Glob codes  df + g `s ( Right side of x - dei ) 135 ! pjL - Glob codes  df + g `s ( Le side of y - dei ) 136 ! pjR - Glob codes  df + g `s ( Right side of y - dei ) 137 ! pkL - Glob codes  df + g `s ( Le side of z - dei ) 138 ! pkR - Glob codes  df + g `s ( Right side of z - dei ) 139 ! piL - Glob codes  df + g `s ( Le side of x - dei ) 141 ! OPTIONS : 142 ! Cd Difns 143 ! 2E [ di =2, db =1, upwd =0] (1-2E-1) 144 ! 4E [ di =4, db =3, upwd =0] (3,3-4E-3,3) 145 ! 6E [ di =6, db =3, upwd =0] (3,3,4-6E-4,3,3) 146 ! 8E [ di =8, db =3, upwd =0] (3,3,4,6-8E-6,4,3,3) 147 ! $UpWd ( Downwd Difns 148 ! 3U [ di =3, db =3, upwd =(+/-1)] (3,3-3U-3,3) 149 ! 4U [ di =4, db =3, upwd =(+/-1)] (3,3,4-4U-4,3,3) 150 ! 5U [ di =5, db =3, upwd =(+/-1)] (3,3,4-5U-4,3,3) 151 ! 6U [ di =6, db =3, upwd =(+/-1)] (3,3,4,6-6U-6,4,3,3) 152 ! 7U [ di =7, db =3, upwd =(+/-1)] (3,3,4,6-7U-6,4,3,3) 153 ! Sur - $UpWd ( Downwd Difns 154 ! 4UU [ di =4, db =3, upwd =(+/-2)] (3,3,4,4-4U-4,4,3,3) 155 ! 5UU [ di =5, db =3, upwd =(+/-2)] (3,3,4,4-5U-4,4,3,3) 157 ! ne : Fm ovl d equs MIN [ di , db +1]. 159 ! Iny wrn by Chris Kdy Dec . 2001 160 ! Rewrn by Chris Kdy Feb . 2002 163 ! Ieg uff 165 imic ne 167 g oL , oR , omax , width 168 g roLx , roLy , roLz 169 g roRx , roRy , roRz 170 g i , j , k 171 g di , db 172 g 173 g x , y , z 174 g xbeg , ybeg , zbeg 175 g xd , yd , zd 176 g sign , upwd 177 g biL , biR , bjL , bjR , bkL , bkR 178 g fiL , fiR , fjL , fjR , fkL , fkR 179 g iiL , iiR , ijL , ijR , ikL , ikR 180 g piL , piR , pjL , pjR , pkL , pkR 181 g viL , viR , vjL , vjR , vkL , vkR 182 g dfiL , dfiR , dfjL , dfjR , dfkL , dfkR 184 *8 `f fiL : fiR , fjL : fjR , fkL : fkR ) 185 *8 `df ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 186 *8 `v viL : viR , vjL : vjR , vkL : vkR ) 187 *8 dx , dy , dz 188 *8 rdx , rdy , rdz 189 *8 , be , , de 190 *8 dL , cL , bL , aL , Up , aR , bR , cR , dR 191 *8 `bnd1A (2) 192 *8 `bnd3A (4) 193 *8 `bnd3B (4) 194 *8 `bnd4C (5) 195 *8 `bnd6D (7) 197 cha *60 r @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/lib/der1_include_st.h 2 ! X_DER1_ST , gY_DER1_ST , d Z_DER1_ST evue the f gdivive 3 ! gx -, gy - d gz - deis agged nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up wh gAMR 5 ! itis gmd . In rms of gdivives , ly ged 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! It is assumed th the comg gvb , gf , comes h ggrid 16 ! gpots ..., gx_ { gi -1}, x_{i}, x_{i+1}, ... d th df is giv g 17 ! the grid gpots ..., gx_ { gi -1/2}, x_{i+1/2}, x_{i+3/2}, ... The gly 18 ! rub he is the ourmo gpots . If N vues of f r gthis 19 ! groute , the tul thg to d is ouut gN -1 vues of gdf . 21 ! This route has bn t up to be que gg . Aays f d gdf 22 ! e lowed to r the route havg bry gy 23 ! gbounds . The Κg route mu addiڮly ecify the gnumb 24 ! of g s th e ovided l six bounds as gwl 25 ! as d the exa gi whe divives e geded . gNe 26 ! th n l emts of y df wl be fd wh guful 27 ! gdivives . This dds wh the ur ecifd th gy 28 ! gbounds . The key pot is th l ys e dimsied tive gto 29 ! the me ggrid ; somhg h Κg route eds to gcce . 31 ! G s e grid pots th have bn added to the cut gmesh 32 ! v by ީg vbs om the xt mo cr ggrid . 33 ! They e ad ound the ri tch to low th gavoid 34 ! of gn - ed divive gݔs . In the ri ptis o gthe 35 ! gcomputi , GrACE wl dr the sry numb of g s gso 36 ! th skewed cs e uesry but ì physil gbounds , 37 ! this may n be gpossib . In the gs , e eds to eablish ghow 38 ! my boundy pots the e d o them gݔly . This is gwhy 39 ! d right rusis of cs e gcsided . If the gri 40 ! ݔ eds four boundy pots od but the e ly gthe 41 ! g s th the t rusi is ge . This mns th ly one 42 ! boundy pot mu be od wh ge - sided gdivives . 44 ! gHe 's howhe first derivativesre called: 46 ! subroute gx_d1_ 47 ! & ( gf , gdf , gdx , gdy , gdz , gdi , gdb , 48 ! & gbiL , gbiR , gbjL , gbjR , gbkL , gbkR , 49 ! & gfiL , gfiR , gfjL , gfjR , gfkL , gfkR , 50 ! & giiL , giiR , gijL , gijR , gikL , gikR , 51 ! & gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR , 52 ! & gx , gy , gz , g , gr ) 54 ! gINPUT 56 ! gf - Funi to be gdifd 57 ! gdx , gdy , gdz - grid acg gx -, gy -, d gz - gdeis 58 ! gdi - Ord of accucy o the ri gݔ 59 ! gdb - Fm d of accucy o the wl pot boundy gݔ 60 ! Cuy n gud !! 61 ! gfiL - Glob codes  f ( Le side of x - dei ) 62 ! gfiR - Glob codes  f ( Right side of x - dei ) 63 ! gfjL - Glob codes  f ( Le side of y - dei ) 64 ! gfjR - Glob codes  f ( Right side of y - dei ) 65 ! gfkL - Glob codes  f ( Le side of z - dei ) 66 ! gfkR - Glob codes  f ( Right side of z - dei ) 67 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 68 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 69 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 70 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 71 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 72 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 73 ! giiL - Glob codes  df ( Le side of x - dei ) 74 ! giiR - Glob codes  df ( Right side of x - dei ) 75 ! gijL - Glob codes  df ( Le side of y - dei ) 76 ! gijR - Glob codes  df ( Right side of y - dei ) 77 ! gikL - Glob codes  df ( Le side of z - dei ) 78 ! gikR - Glob codes  df ( Right side of z - dei ) 79 ! gviL - Glob codes  v ( Le side of x - dei ) 80 ! gviR - Glob codes  v ( Right side of x - dei ) 81 ! gvjL - Glob codes  v ( Le side of y - dei ) 82 ! gvjR - Glob codes  v ( Right side of y - dei ) 83 ! gvkL - Glob codes  v ( Le side of z - dei ) 84 ! gvlR - Glob codes  v ( Right side of z - dei ) 85 ! gbiL - Numb of g s side o gx - gdei 86 ! gbiR - Numb of g s right side o gx - gdei 87 ! gbjL - Numb of g s side o gy - gdei 88 ! gbjR - Numb of g s right side o gy - gdei 89 ! gbkL - Numb of g s side o gz - gdei 90 ! gbkR - Numb of g s right side o gz - gdei 91 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 92 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 93 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 94 ! g - E gmesge - S gbow 96 ! gOUTPUT 98 ! gdf - Difd gFuni 100 ! gLOCAL 102 ! goL - Le rusi of ri gc 103 ! goR - Right rusi of ri gc 104 ! gomax - Maximum rusi of ri gc 105 ! groL - N rusi of ri gc 106 ! groR - N right rusi of ri gc 107 ! gwidth - Tٮ width of ri gc 108 ! g - Exic ed difn c gcff . ( i +/- 1) 109 ! gbe - Exic ed difn c gcff . ( i +/- 2) 110 ! g - Exic ed difn c gcff . ( i +/- 3) 111 ! gde - Exic ed difn c gcff . ( i +/- 4) 112 ! gx , gy , gzbeg - Begng dex  ri gc 113 ! gx , gy , gzd - Endg dex  ri gc 114 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 115 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 116 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 117 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 118 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 119 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 120 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 122 ! gOPTIONS : 123 ! Cd Difns 124 ! 2E [ di =2, db =1, upwd =0] (1-2E-1) 125 ! 4E [ di =4, db =3, upwd =0] (3,3-4E-3,3) 126 ! 6E [ di =6, db =3, upwd =0] (3,3,4-6E-4,3,3) 127 ! 8E [ di =8, db =3, upwd =0] (3,3,4,6-8E-6,4,3,3) 129 ! gne : Fm ovl d equs MIN [ di , db +1]. 131 ! Iny wrn by Chris Kdy gDec . 2001 132 ! Rewrn by Chris Kdy gFeb . 2002 135 ! Ieg uff 137 imic ne 139 g oL , goR , gomax , width 140 g groLx , groLy , roLz 141 g groRx , groRy , roRz 142 g gi , gj , k 143 g gdi , db 144 g 145 g gx , gy , z 146 g gxbeg , gybeg , zbeg 147 g gxd , gyd , zd 148 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 149 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 150 g giiL , giiR , gijL , gijR , gikL , ikR 151 g gviL , gviR , gvjL , gvjR , gvkL , vkR 152 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , dfkR 153 g gpiL , gpiR , gpjL , gpjR , gpkL , gpkR 155 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 156 *8 df ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 157 *8 dx , gdy , dz 158 g *8 grdx , grdy , rdz 159 g *8 g , gbe , g , de 160 g *8 bnd2A (2) 161 g *8 bnd3A (4) 162 g *8 bnd3B (4) 163 g *8 bnd4C (4) 164 g *8 bnd6D (6) 165 g *8 bnd8E (8) 167 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/lib/der2_include.h 2 ! X_DER2_CO , gY_DER2_CO , d Z_DER2_CO evue the cd gdivive 3 ! gx -, gy - d gz - deis clod nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up gwh 5 ! AMR itis gmd . In rms of gdivives , ged 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! This route has bn t up to be que gg . Aays f gd 16 ! d2f e lowed to r the route havg bry gy 17 ! gbounds . The Κg route mu addiڮly ecify the gnumb 18 ! of g s th e ovided l six bounds as gwl 19 ! as d the exa gi whe divives e geded . gNe 20 ! th n l emts of y df wl be fd wh guful 21 ! gdivives . This dds wh the ur ecifd th gy 22 ! gbounds . The key pot is th l ys e dimsied tive gto 23 ! the me ggrid ; somhg h Κg route eds to gcce . 25 ! G s e grid pots th have bn added to the cut gmesh 26 ! v by ީg vbs om the xt mo cr ggrid . 27 ! They e ad ound the ri tch to low th gavoid 28 ! of gn - ed divive gݔs . In the ri ptis o gthe 29 ! gcomputi , GrACE wl dr the sry numb of g s gso 30 ! th skewed cs e uesry but ì physil gbounds , 31 ! this may n be gpossib . In the gs , e eds to eablish ghow 32 ! my boundy pots the e d o them gݔly . This is gwhy 33 ! d right rusis of cs e gcsided . If the gri 34 ! ݔ eds four boundy pots od but the e ly gthe 35 ! g s th the t rusi is ge . This mns th ly one 36 ! boundy pot mu be od wh ge - sided gdivives . 38 ! gHe 's howhe second derivativesre called: 40 ! subroute x_d2_co ( f , d2f , dx , dy , dz , di , db , 41 ! & biL , biR , bjL , bjR , bkL , bkR , 42 ! & fiL , fiR , fjL , fjR , fkL , fkR , 43 ! & iiL , iiR , ijL , ijR , ikL , ikR , 44 ! & dfiL , dfiR , dfjL , dfjR , dfkL , dfkR , 45 ! & x , y , z , , r ) 47 ! gINPUT 49 ! gf - Funi to be gdifd 50 ! gdx2 , gdy2 , gdz2 - grid acg squed gx -, gy -, d gz - gdeis 51 ! gdi - Ord of accucy o the ri gݔ 52 ! gdb - Fm d of accucy o the wl pot boundy gݔ 53 ! Cuy n gud !! 54 ! gfiL - Glob codes  f ( Le side of x - dei ) 55 ! gfiR - Glob codes  f ( Right side of x - dei ) 56 ! gfjL - Glob codes  f ( Le side of y - dei ) 57 ! gfjR - Glob codes  f ( Right side of y - dei ) 58 ! gfkL - Glob codes  f ( Le side of z - dei ) 59 ! gfkR - Glob codes  f ( Right side of z - dei ) 60 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 61 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 62 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 63 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 64 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 65 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 66 ! giiL - Glob codes  df ( Le side of x - dei ) 67 ! giiR - Glob codes  df ( Right side of x - dei ) 68 ! gijL - Glob codes  df ( Le side of y - dei ) 69 ! gijR - Glob codes  df ( Right side of y - dei ) 70 ! gikL - Glob codes  df ( Le side of z - dei ) 71 ! gikR - Glob codes  df ( Right side of z - dei ) 72 ! gbiL - Numb of g s side o gx - gdei 73 ! gbiR - Numb of g s right side o gx - gdei 74 ! gbjL - Numb of g s side o gy - gdei 75 ! gbjR - Numb of g s right side o gy - gdei 76 ! gbkL - Numb of g s side o gz - gdei 77 ! gbkR - Numb of g s right side o gz - gdei 78 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 79 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 80 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 81 ! g - E gmesge - S gbow 83 ! gOUTPUT 85 ! gd2f - Twi Difd gFuni 87 ! gLOCAL 89 ! goL - Le rusi of ri gc 90 ! goR - Right rusi of ri gc 91 ! gomax - Maximum rusi of ri gc 92 ! groL - N rusi of ri gc 93 ! groR - N right rusi of ri gc 94 ! gwidth - Tٮ width of ri gc 95 ! gUp - Exic ed difn c gcff . ( i +/- 0) 96 ! g - Exic ed difn c gcff . ( i +/- 1) 97 ! gbe - Exic ed difn c gcff . ( i +/- 2) 98 ! g - Exic ed difn c gcff . ( i +/- 3) 99 ! gde - Exic ed difn c gcff . ( i +/- 4) 100 ! gx , gy , gzbeg - Begng dex  ri gc 101 ! gx , gy , gzd - Endg dex  ri gc 102 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 103 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 104 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 105 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 106 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 107 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 108 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 110 ! gOPTIONS : 111 ! Cd Difns 112 ! 2E [ di =2, db =1] (1-2E-1) 113 ! 4E [ di =4, db =3] (3,3-4E-3,3) 114 ! 6E [ di =6, db =3] (3,3,4-6E-4,3,3) 115 ! 8E [ di =8, db =3] (3,3,4,6-8E-6,4,3,3) 117 ! gne : Fm ovl d equs MIN [ di , db +1]. 119 ! Iny wrn by Chris Kdy gDec . 2001 120 ! Rewrn by Chris Kdy gFeb . 2002 123 ! Ieg uff 125 imic ne 127 g oL , goR , gomax , width 128 g groLx , groLy , roLz 129 g groRx , groRy , roRz 130 g gi , gj , k 131 g gdi , db 132 g 133 g gx , gy , z 134 g gxbeg , gybeg , zbeg 135 g gxd , gyd , zd 136 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 137 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 138 g giiL , giiR , gijL , gijR , gikL , ikR 139 g gpiL , gpiR , gpjL , gpjR , gpkL , pkR 140 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR 142 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 143 *8 d2f ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 144 *8 dx , gdy , dz 145 g *8 grdx2 , grdy2 , rdz2 146 g *8 gUp , g , gbe , g , de 147 g *8 bnd2A (3) 148 g *8 bnd3A (5) 149 g *8 bnd3B (5) 150 g *8 bnd4C (5) 151 g *8 bnd6D (7) 153 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/src/CollocDeriv.cpp 4  ~"ClocDiv.h " 5  ~"f܌_mes.h " 7  #MAX ( A , B (A> (B? (A: (B) ) 10  FORTNAME ( x_d1_co )(* f , * df , * dx , * dy , * dz , 11 * v , * upwd , * di , * db , 12 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 13 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 14 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 15 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 16 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 17 * dfkR , * x , * y , * z , * , 18 * r ) ; 20  FORTNAME ( y_d1_co )(* f , * df , * dx , * dy , * dz , 21 * v , * upwd , * di , * db , 22 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 23 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 24 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 25 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 26 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 27 * dfkR , * x , * y , * z , * , 28 * r ) ; 30  FORTNAME ( z_d1_co )(* f , * df , * dx , * dy , * dz , 31 * v , * upwd , * di , * db , 32 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 33 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 34 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 35 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 36 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 37 * dfkR , * x , * y , * z , * , 38 * r ) ; 40  FORTNAME ( x_d2_co )(* f , * df , * dx , * dy , * dz , 41 * di , * db , 42 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 43 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 44 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 45 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 46 * dfkR , * x , * y , * z , * , 47 * r ) ; 49  FORTNAME ( y_d2_co )(* f , * df , * dx , * dy , * dz , 50 * di , * db , 51 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 52 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 53 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 54 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 55 * dfkR , * x , * y , * z , * , 56 * r ) ; 58  FORTNAME ( z_d2_co )(* f , * df , * dx , * dy , * dz , 59 * di , * db , 60 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 61 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 62 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 63 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 64 * dfkR , * x , * y , * z , * , 65 * r ) ; 68  HODiffS :: ClocDiv :: $Cfigu ( di ,  db ,  upwd , 69 cڡ * she , cڡ * lb , 70 cڡ * ub , * doma_ext ,  dim , 71  maxv ,  f ,  bndryL ,  bndryR ) 74 i dim > 0 ) 76 biL = bndryL ; biR = bndryR ; 77 iiL = biL ; iiR = `MAX (iiL, she [0] - ( biR +1)) ; 78 fiL = 0 ; fiR = `MAX (fiL, she [0]-1) ; 79 viL = 0 ; viR = `MAX (viL, she [0]-1) ; 80 dfiL = 0 ; dfiR = `MAX (dfiL, she [0]-1) ; 83 i dim > 1 ) 85 bjL = bndryL ; bjR = bndryR ; 86 ijL = bjL ; ijR = `MAX (ijL, she [1] - ( bjR +1)) ; 87 fjL = 0 ; fjR = `MAX (fjL, she [1]-1) ; 88 vjL = 0 ; vjR = `MAX (vjL, she [1]-1) ; 89 dfjL = 0 ; dfjR = `MAX (dfjL, she [1]-1) ; 92 i dim > 2 ) 94 bkL = bndryL ; bkR = bndryR ; 95 ikL = bkL ; ikR = `MAX (ikL, she [2] - ( bkR +1)) ; 96 fkL = 0 ; fkR = `MAX (fkL, she [2]-1) ; 97 vkL = 0 ; vkR = `MAX (vkL, she [2]-1) ; 98 dfkL = 0 ; dfkR = `MAX (dfkL, she [2]-1) ; 101 d_i = di , d_b = db ; upw = upwd ; 103 } } 105  HODiffS :: ClocDiv :: $CompuFDiv (* put , * v ,  dx , 106  dy ,  dz , * ouut ) 108  x = 0 , y = 0, z = 0, ; 109  r [100] ; 111  dec ) 114 `FORTNAME ( x_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 115 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 116 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 117 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 118 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 119 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 120 & x , & y , & z , & , r ); 121 i < 0 ) 123 d :: << " From HODiffS::ClocDiv::CompuFDiv(" << r 124 << " x-diviv: cod" << << d :: dl ; 125 i == -100) 126 d :: << " From HODiffSpace::CollocDeriv::ComputeFirstDeriv() fiL, fiR = " 127 << fiL << ", " << fiR << ", " << iiL << ", " << iiR << d :: dl ; 128 ( ) ; 132 `FORTNAME ( y_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 133 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 134 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 135 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 136 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 137 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 138 & x , & y , & z , & , r ); 139 i < 0 ) 141 d :: << " From HODiffS::ClocDiv::CompuFDiv(" << r 142 << " y-diviv: cod" << << d :: dl ; 143 i( == -100) 144 d :: << " From HODiffSpace::CollocDeriv::ComputeFirstDeriv() fiL, fiR = " 145 << fjL << ", " << fjR << ", " << ijL << ", " << ijR << d :: dl ; 146 ( ) ; 150 `FORTNAME ( z_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 151 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 152 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 153 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 154 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 155 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 156 & x , & y , & z , & , r ); 157 i < 0 ) 159 d :: << " From HODiffS::ClocDiv::CompuFDiv(" << r 160 << " z-diviv: cod" << << d :: dl ; 161 ( ) ; 165 d :: << " From HODiffSpace::CollocDeriv::ComputeFirstDeriv() : cannot find derivativeslong " 166 << dec << " dei. Ru wh -1 " << d :: dl ; 171 } } 173  HODiffS :: ClocDiv :: $CompuSecdDiv (* put ,  dx , 174  dy ,  dz , * ouut ) 176  x = 0 , y = 0, z = 0, ; 177  r [100] ; 179  dec ) 182 `FORTNAME ( x_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 183 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 184 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 185 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 186 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 187 & x , & y , & z , & , r ); 188 i < 0 ) 190 d :: << " From HODiffS::ClocDiv::CompuSecdDiv(" << r 191 << " x-diviv: cod" << << d :: dl ; 192 ( ) ; 196 `FORTNAME ( y_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 197 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 198 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 199 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 200 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 201 & x , & y , & z , & , r ); 202 i < 0 ) 204 d :: << " From HODiffS::ClocDiv::CompuSecdDiv(" << r 205 << " y-diviv: cod" << << d :: dl ; 206 ( ) ; 210 `FORTNAME ( z_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 211 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 212 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 213 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 214 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 215 & x , & y , & z , & , r ); 216 i < 0 ) 218 d :: << " From HODiffS::ClocDiv::CompuSecdDiv(" << r 219 << " z-diviv: cod" << << d :: dl ; 220 ( ) ; 224 d :: << " From HODiffSpace::CollocDeriv::ComputeSecondDeriv() : cannot find derivativeslong " 225 << dec << " dei. Ru wh -1 " << d :: dl ; 230 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/src/HODiffComp.cpp 8  ~ 9  ~"HODiffComp_JR.h " 11 gHODiffComp_JR :: $HODiffComp_JR () 13 is_lized = l ; 14 is_hod = l ; 15 pDiffCffPr = 0 ; 16 pThmoPr = 0 ; 17 pDiffCff = 0 ; 18 pThmo = 0 ; 19 pAbsD = 0 ; 20 pAMR = 0 ; 22 Cp = rho = diffusi_cffs = d1 = d2 = v = muɝlr = 0 ; 23 Q = diff_diffusi_rm = gdT = 0 ; 24 ns_d = 0 ; 25 } } 27 gHODiffComp_JR ::~ $HODiffComp_JR () 29 i is_lized = ue ) 31 de p_diff_cff_m ; 32 de p_PssuIndex_m ; 33 de pIOrdPam ; 34 de pBoundOrdPam ; 35 de pMeshClocTy ; 36 de [] Cp ; d[] rho ; d[] diffusi_cffs ; d[] d1 ; 37 de [] d2 ; d[] v ; d[] muɝlr ; d[] Q ; 38 de [] diff_diffusi_rm ; d[] gdT ; 39 ns_d = 0 ; 41 pSvc = NULL ; = NULL ; 43 is_hod = l ; 44 is_lized = l ; 45 } } 47  gHODiffComp_JR :: tSvis CONV_NS ( Svis * svc ) 49 i svc = NULL ) 51 pSvc -> uegiUsPt ( "ThermoProp" ) ; 52 gpSvc -> uegiUsPt ( "DiffCoeffProp" ) ; 53 gpSvc -> uegiUsPt ( "DiffCoeffs" ); 54 gpSvc -> uegiUsPt ( "Thermo" ) ; 55 gpSvc -> uegiUsPt ( "AMR" ); 56 gpSvc -> moveProvidesPt ( "DiffTermPort") ; 57 gpSvc -> moveProvidesPt ( "CONFIG") ; 60 gthis -> gpSvc = svc ; 63 gsvc -> giUsPt svc -> PtInfo ("cSvc", 65 CfigubPamFay * gf = 66 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 67 CHECKDC f ); 68 g = = f -> CfigubPamPt (); 69 gsvc -> addProvidesPt ( , 70 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 71 tupPams () ; 72 gsvc -> aPt ("cSvc"); 75 gsvc -> addProvidesPt ( this , svc -> PtInfo ("DiffTermPort", "DiffPort", 0) ); 78 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffProp", "PropertiesPort", 0) ); 79 gsvc -> giUsPt svc -> PtInfo ("ThermoProp", "PropertiesPort", 0) ); 80 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffs", "DiffPort", 0) ); 81 gsvc -> giUsPt svc -> PtInfo ("Thermo", "ThermoAnalysisPort", 0) ); 82 gsvc -> giUsPt svc -> PtInfo ("AMR", "AMRPort", 0) ); 85  gHODiffComp_JR :: $tupPams () 87 p_diff_cff_m = w `DoubPam ("Magnitude_of_Diff_Coeff", 92 p_PssuIndex_m = w `IPam ("PressureIndex", 96 pIOrdPam = w `IPam ("InternalOrder", "Order of derivs inside domain", 99 pBoundOrdPam = w `IPam ("BoundaryOrder", "Order of derivst boundary", 102 pMeshClocTy = w `SgPam ("CollocationType", "Collocated or Staggered", 105 -> `tBchT ( " Diffusion Physics Parameters " ); 106 -> `addReque p_diff_cff_m ); 107 -> `addReque p_PssuIndex_m ) ; 108 -> `addReque pIOrdPam ) ; 109 -> `addReque pBoundOrdPam ) ; 110 -> `addReque pMeshClocTy ) ; 111 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/src/HODiffComp_workers.cpp 8  ~ 9  ~ 10  ~"HODiffComp_JR.h " 12  #MAX ( A , B (A> (B? (A: (B) ) 13  #MIN ( A , B (A< (B? (A: (B) ) 14  #SMALL 1e-19 ) 36  gHODiffComp_JR :: $compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 37 cڡ * p_she ,  nvs , * da2 , 38 cڡ * p_cr_suti , * p_doma_exs , 39  max_v ,  f_ ,  dim ) 44 i is_lized = l ) 46 ` () ; 47 is_lized = ue ; 50  cr_nx = p_cr_suti [0] ; 51  cr_ny = p_cr_suti [1] ; 52  cr_nz = p_cr_suti [2] ; 54  xm = p_doma_exs [0] ; 55  xmax = p_doma_exs [1] ; 56  ym = p_doma_exs [2] ; 57  ymax = p_doma_exs [3] ; 58  zm = p_doma_exs [4] ; 59  zmax = p_doma_exs [5] ; 61  cr_dx = ( xmax - xm / cr_nx ; cr_dx = `MAX (cr_dx, SMALL ) ; 62  cr_dy = ( ymax - ym / cr_ny ; cr_dy = `MAX (cr_dy, SMALL ) ; 63  cr_dz = ( zmax - zm / cr_nz ; cr_dz = `MAX (cr_dz, SMALL ) ; 65  max_femt = ( `pow ( f_ , max_v - 1); 66  fe_dx = cr_dx / max_femt ; 67  fe_dy = cr_dy / max_femt ; 68  fe_dz = cr_dz / max_femt ; 69  lol_xm = xm + p_lbbc [0] * fe_dx ; 70  lol_xmax = xm + p_ubbc [0] * fe_dx ; 71  lol_ym = ym + p_lbbc [1] * fe_dy ; 72  lol_ymax = ym + p_ubbc [1] * fe_dy ; 73  lol_zm = zm + p_lbbc [2] * fe_dz ; 74  lol_zmax = zm + p_ubbc [2] * fe_dz ; 76  nx , ny , nz ; 77  ti = 0, tj = 0, tk = 0; 78  di = 1, dj = 1, dk = 1 ; 80  num_g_s = 1 ; 81 i( pAMR !0 num_g_s =AMR-> `GC_g_boundy_width_deu () ; 83  dim ) 86 nx = p_she [0] ; ny = 1 ; nz = 1 ; 87 ti = num_g_s ; di = nx -um_green_cells ; 90 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 91 ti = num_g_s ; di = nx -um_green_cells ; 92 tj = num_g_s ; dj = ny -um_green_cells ; 95 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 96 ti = num_g_s ; di = nx -um_green_cells ; 97 tj = num_g_s ; dj = ny -um_green_cells ; 98 tk = num_g_s ; dk = nz -um_green_cells ; 101 d :: << "HODiffComp_JR::compute(). Something wrong with dimension. Terminate()" 102 << d :: dl ; 103 d :: `rme (); 124 i p_PssuIndex_m -> vue !( nvs -1) ) 126 d :: << "HODiffComp_JR::compute() : Expectheressure indexo be " 127 << nvs -1 << "; ind g " << p_PssuIndex_m -> vue 128 << " doghg;ug wh -1 " << d :: dl ; 133 `CheckSize ( nx , ny , nz , nvs , dim ) ; 136 `InDiffusiCffs ( da1 , p_she , dim , nx , ny , nz , nvs ) ; 139 `InCpAndRho ( da1 , p_she , dim , nx , ny , nz , nvs ) ; 142  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1 ) ; 143  lol_femt = max_femt / ride ; 145  lol_dx = cr_dx / lol_femt ; 146  lol_dy = cr_dy / lol_femt ; 147  lol_dz = cr_dz / lol_femt ; 154 d :: rg `me ( pMeshClocTy -> vue ) ; 155 i me == "Collocated" ) 156 pAbsD = & CDO ; 158 pAbsD = & SDO ; 160  iv = 0; iv < nvs ; ivar ++ ) 169  ns = nx * ny * nz ; 170 `InMuɝlr ( ns , iv ) ; 171  t_dex = `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 173  id = 0; id < dim ; idir++) 175 pAbsD -> `SD ( id ) ; 176 #ifde PURE_SECOND_DERIV 177 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 178 0, p_she , p_lbbc , p_ubbc , p_doma_exs , 179 dim , max_v , f_ , num_g_s , 180 num_g_s ) ; 181 pAbsD -> `CompuSecdDiv ( da1 + t_dex ), lol_dx , lol_dy , 182 lol_dz , d2 ) ; 187 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 188 0, p_she , p_lbbc , p_ubbc , p_doma_exs , 189 dim , max_v , f_ , 193 pAbsD -> `CompuFDiv ( da1 + t_dex ), v , lol_dx , lol_dy , 194 lol_dz , d1 ) ; 195  #DOING_DIFFERENTIAL_DIFFUSION_TERM ) 196 #ifde DOING_DIFFERENTIAL_DIFFUSION_TERM 199 `CڡruDiflDiffusiTm ( d1 , nx , ny , nz , iv , id ) ; 203  i = 0 ; i < ns ; icell++) 204 d1 [ i ] * muɝlr [i] * diffusi_cffs [ t_dex +icell] ) ; 207 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 208 0, p_she , p_lbbc , p_ubbc , p_doma_exs , 209 dim , max_v , f_ , 212 pAbsD -> `CompuFDiv d1 , v , lol_dx , lol_dy , lol_dz , d2 ) ; 218  k = tk ; k < dk ; k++) 219  j = tj ; j < dj ; j++ ) 220  i = ti ; i < di ; i++ ) 222  i = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 223 da2 [ t_dex + i ] + d2 [i] / muɝlr [icell] ); 228 #ifde DOING_DIFFERENTIAL_DIFFUSION_TERM 234  ns = nx * ny * nz ; 235  i = 0 ; i < ns ; icell++) 236  id = 0; id < dim ; idir++) 237 diff_diffusi_rm [ i ] + Q [ id * ns +i] * gdT [idir*ncells+icell] / 238 Cp [ i ] ; 240  t_dex = 0 ; 241  k = tk ; k < dk ; k++) 242  j = tj ; j < dj ; j++ ) 243  i = ti ; i < di ; i++ ) 245  i = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 246 da2 [ t_dex + i ] + diff_diffusi_rm [icell] ; 251 } } 253  gHODiffComp_JR :: $CheckSize ( nx ,  ny ,  nz ,  nvs ,  dim ) 255  ns = nx * ny * nz ; 257 i( ns > ns_d ) 259 i Cp !0 ) de [] C; C w [ ns * nvs ] ; 260 i rho !0 ) de []h;h w [ ns ] ; 261 i diffusi_cffs !0 ) de [] diffusion_coeffs ; 262 diffusi_cffs = w [ ns * nvs ] ; 263 i d1 !0 ) de [] d1 ; d1 = w [ ns ] ; 264 i d2 !0 ) de [] d2 ; d2 = w [ ns ] ; 265 i muɝlr !0 ) de [] muɝl; muɝl w [ ns ] ; 266 i v !0 ) de [] v ; v = w [ ns ] ; 267  i = 0 ; i < ns ; i++ v [i] = 0 ; 268 i gdT !0 de [] gdT ; gdT = w [ dim * ns ] ; 269 i diff_diffusi_rm !0 ) de [] diff_diffusion_term ; 270 diff_diffusi_rm = w [ ns ] ; 271 i Q !0 ) de [] Q ; Q = w [ ns * dim ] ; 272 ns_d = ns ; 275  i = 0 ; i < ns ; i++ d1 [i] = 0 ; 276  i = 0 ; i < ns ; i++ d2 [i] = 0 ; 277  i = 0 ; i < ns ; i++ diff_diffusi_rm [i] = 0 ; 278  i = 0 ; i < dim * ns ; i++ Q [i] = 0 ; 279 } } 281  gHODiffComp_JR :: $InDiffusiCffs (* da1 , cڡ * p_she ,  dim , 282  nx ,  ny ,  nz ,  nvs ) 290 i( pDiffCffPr !0&& ( pDiffCff != 0) ) 292  yes = 1 ; 293 pDiffCffPr -> `SIegs ("DiffCffs", & yes , 1) ; 294  junk = 1; 295 pDiffCff -> `compu ( da1 , 0, 0, p_she , nvs , diffusi_cffs , 296 0, 0, junk , junk, dim ) ; 299   i = 0; i < nx * ny * nz * nvs ; i++ ) diffusi_cffs [i] = diff_cff ; 302 } } 304  gHODiffComp_JR :: $InCpAndRho (* da1 , cڡ * p_she ,  dim , 305  nx ,  ny ,  nz ,  nvs ) 310 i pThmo !0 && pThmoPr != 0 ) 312  nvsm1 = nvs -1;  zo = 0 ;  e = 1; 313 pThmoPr -> `SIegs ("PssuIndex", & nvsm1 , 1) ; 314 pThmoPr -> `SIegs ("TemtuIndex", & zo , 1) ; 315 pThmoPr -> `SIegs ("yS_dex", & e , 1); 317  s ; 318 s = pThmo -> `CompuV ( da1 , nvs , p_she , dim , "_mix", Cp , nx * ny * nz ) ; 319 i s != 0 ) 321 d :: << " HODiffComp_JR::InitCpAndRho() : Failedo get Cp_mix,rror code = " 322 << s << " Rug -1 whoudognythg. " << d :: dl ; 326 #ifde DOING_DIFFERENTIAL_DIFFUSION_TERM 327 * i_ecs = Cp + nx * ny * nz ; 328 s = pThmo -> `CompuV ( da1 , nvs , p_she , dim , "_ecs", i_ecs , 329 nx * ny * nz *( nvs -1)) ; 330 i s != 0 ) 332 d :: << " HODiffComp_JR::InitCpAndRho() : Failedo get Cp_species,rror code = " 333 << s << " Rug -1 whoudognythg. " << d :: dl ; 338 s = pThmo -> `CompuV ( da1 , nvs , p_she , dim , "rho_mix", rho , nx * ny * nz ) ; 339 i s != 0 ) 341 d :: << " HODiffComp_JR::InitCpAndRho() : Failedo getho_mix,rror code = " 342 << s 343 << " Rug -1 whoudognythg. " << d :: dl ; 349   i = 0; i < nx * ny * nz * nvs ; i++ ) Cp [i] = 1.0 ; 350   i = 0; i < nx * ny * nz ; i++ ) rho [i] = 1.0 ; 354 } } 362  gHODiffComp_JR :: $InMuɝlr ( ns ,  iv ) 370 i iv == 0 ) 372   i = 0 ; i < ns ; i++ muɝlr [i] = rho [i] * Cp [i] ; 376   i = 0 ; i < ns ; i++ muɝlr [i] = rho [i] ; 380 } } 382  gHODiffComp_JR :: $ () 384 diff_cff = p_diff_cff_m -> vue ; 385 pDiffCffPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("DiffCoeffProp")) ; 386 pThmoPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("ThermoProp")) ; 387 pDiffCff = dymic_ < DiffPt * > ( pSvc -> `gPt ("DiffCoeffs")) ; 388 pThmo = dymic_ < ThmoAlysisPt *> ( pSvc -> `gPt ("Thermo")) ; 389 pAMR = dymic_ < AMRPt *> ( pSvc -> `gPt ("AMR")) ; 390 } } 392  gHODiffComp_JR :: $CڡruDiflDiffusiTm (* d1 ,  nx ,  ny ,  nz , 393  iv ,  id ) 395  ns = nx * ny * nz ; 396 i iv == 0 ) 398  i = 0 ; i < ns ; icell++) 400 gdT [ id * ns + i ] = d1 [icell] ; 405  i = 0 ; i < ns ; icell++) 407 Q [ id * ns + i ] + Cp [ iv *ns+i] * diffusi_cffs [ivar*ncells+icell] 408 * d1 [ i ] ; 413 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/src/HODiffComp_wrapper.cpp 1  ~"HODiffComp_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _HODiffComp_JR () 8 CONV_NS ( Compڒt * wk ; 9 HODiffComp_JR * compڒt ; 10 compڒt = w HODiffComp_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_HODiffComp_JR HODiffComp_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HODiffusion/src/StagDeriv.cpp 5  ~"SgDiv.h " 6  ~"f܌_mes.h " 8  #MAX ( A , B (A> (B? (A: (B) ) 11  FORTNAME ( x_d1_ )(* f , * df , * dx , * dy , * dz , 12 * v , * upwd , * di , * db , 13 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 14 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 15 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 16 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 17 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 18 * dfkR , * x , * y , * z , * , 19 * r ) ; 21  FORTNAME ( y_d1_ )(* f , * df , * dx , * dy , * dz , 22 * v , * upwd , * di , * db , 23 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 24 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 25 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 26 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 27 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 28 * dfkR , * x , * y , * z , * , 29 * r ) ; 31  FORTNAME ( z_d1_ )(* f , * df , * dx , * dy , * dz , 32 * v , * upwd , * di , * db , 33 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 34 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 35 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 36 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 37 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 38 * dfkR , * x , * y , * z , * , 39 * r ) ; 42  HODiffS :: SgDiv :: $Cfigu ( di ,  db ,  upwd , cڡ * she , 43 cڡ * lb , cڡ * ub , * doma_ext , 44  dim ,  maxv ,  f ,  bndryL ,  bndryR ) 47 i dim > 0 ) 49 biL = bndryL ; biR = bndryR ; 50 iiL = biL ; iiR = `MAX (iiL, she [0] - ( biR +1)) ; 51 fiL = 0 ; fiR = `MAX (fiL, she [0]-1) ; 52 viL = 0 ; viR = `MAX (viL, she [0]-1) ; 53 dfiL = 0 ; dfiR = `MAX (dfiL, she [0]-1) ; 56 i dim > 1 ) 58 bjL = bndryL ; bjR = bndryR ; 59 ijL = bjL ; ijR = `MAX (ijL, she [1] - ( bjR +1)) ; 60 fjL = 0 ; fjR = `MAX (fjL, she [1]-1) ; 61 vjL = 0 ; vjR = `MAX (vjL, she [1]-1) ; 62 dfjL = 0 ; dfjR = `MAX (dfjL, she [1]-1) ; 65 i dim > 2 ) 67 bkL = bndryL ; bkR = bndryR ; 68 ikL = bkL ; ikR = `MAX (ikL, she [2] - ( bkR +1)) ; 69 fkL = 0 ; fkR = `MAX (fkL, she [2]-1) ; 70 vkL = 0 ; vkR = `MAX (vkL, she [2]-1) ; 71 dfkL = 0 ; dfkR = `MAX (dfkL, she [2]-1) ; 74 d_i = di , d_b = db ; upw = upwd ; 76 } } 78  HODiffS :: SgDiv :: $CompuFDiv (* put , * v ,  dx , 79  dy ,  dz , * ouut ) 81  x = 0 , y = 0, z = 0, ; 82  r [60] ; 84  dec ) 87 `FORTNAME ( x_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 88 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 89 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 90 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 91 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 92 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 93 & x , & y , & z , & , r ) ; 96 `FORTNAME ( y_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 97 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 98 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 99 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 100 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 101 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 102 & x , & y , & z , & , r ) ; 105 `FORTNAME ( z_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 106 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 107 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 108 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 109 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 110 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 111 & x , & y , & z , & , r ) ; 114 d :: << " From HODiffSpace::StagDeriv::ComputeFirstDeriv() : cannot find derivativeslong " 115 << dec << " dei. Ru wh -1 " << d :: dl ; 119 i < 0 ) 121 d :: << " From HODiffS::SgDiv::CompuFDiv(" << r << 122 d :: dl ; 123 ( ) ; 127 } } 129  HODiffS :: SgDiv :: $CompuSecdDiv (* put ,  dx , 130  dy ,  dz , * ouut ) 132 d :: << " HODiffSpace::StagDeriv::ComputeSecondDeriv() NOT Implemented." 133 << " Rug wh -1" << d :: dl ; 136 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/include/AbstractDeriv.h 10 #ide AbDivHOHSn 11  #AbDivHOHSn ) 13 mea gHOLMDiffS 15 as cAbDiv 17 gpublic : 19 AbDiv (){} 21 vtu ~ AbDiv () {} 23 vtu  Cfigu ( di ,  db ,  upwd , cڡ * she , 24 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 25  maxv ,  f ,  bndryL ,  bndryR ) = 0 ; 27 vtu  SD  d ) = 0 ; 29 vtu  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 30 * ouut ) = 0 ; 32 vtu  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 33 * ouut ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/include/CollocDeriv.h 6 #ide ClocDivHOHSn 7  #ClocDivHOHSn ) 9  ~ 10  ~"AbDiv.h " 12 mea gHOLMDiffS 14 as cClocDiv : public vtu AbDiv 16 public : 18 ClocDiv () 20 biL = biR = bjL = bjR = bkL = bkR = iiL = iiR = 0 ; 21 gijL = ijR = ikL = ikR = fiL = fiR = fjL = fjR = fkL = 0; 22 gfkR = viL = viR = vjL = vjR = vkL = vkR = dfiL = dfiR = 0 ; 23 gdfjL = dfjR = dfkL = dfkR = 0 ; 24 gd_i = d_b = upw = 0; 26 gd :: ios :: sync_wh_dio () ; 29 gvtu ~ ClocDiv () {} 31  Cfigu ( di ,  db ,  upwd , cڡ * she , 32 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 33  maxv ,  f ,  bndryL ,  bndryR ) ; 35  SD  d ) { gdec = d ; } 37  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 38 * ouut ) ; 40  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 41 * ouut ) ; 43 give : 45  biL , gbiR , gbjL , gbjR , gbkL , gbkR ; 46  giiL , giiR , gijL , gijR , gikL , gikR ; 47  gfiL , gfiR , gfjL , gfjR , gfkL , gfkR ; 48  gviL , gviR , gvjL , gvjR , gvkL , gvkR ; 49  gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR ; 50  gdec ; 52  gd_i , gd_b , gupw ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/include/HOLowMachDiff_JR.h 35 #ide __HOLMDiffHSn__ 36  #__HOLMDiffHSn__ ) 39  ~"c.h " 40  ~"dPts.h " 43  ~"jc++/jc++.h " 44  ~"jc++/ut/jc++ut.h " 45  ~"ms/msSr.h " 46  ~"pt/sutIs.h " 49  ~ 50  ~ 51 usg mea gd ; 54  ~"DiffPt.h " 57  ~"PrݔtsPt.h " 58  ~"DiffPt.h " 59  ~"ThmoAlysisPt.h " 60  ~"AMRPt.h " 63  ~"AbDiv.h " 64  ~"ClocDiv.h " 67  ~"CONV_NS.h " 70 mea gHOLMDiffS 74 as cPchInfo 76 gpublic : 78 PchInfo () 81 she = ubbc = lbbc = 0 ; gdim = 2, gmax_v = 1, gnum_g_s = 1; 82 gdoma_exs = 0 ; gf_c = 2 ; gOt = 0 ; 85 cڡ * gshe , * gubbc , * glbbc ; 86  gdim , gmax_v , gnum_g_s ; 87 * gdoma_exs , gf_c ; 88 AbDiv * gOt ; 93 ass gHOLowMachDiff_JR : public vtu CONV_NS ( Compڒt ), 94 public vtu gDiffPt 96 gpublic : 98 HOLowMachDiff_JR () ; 100 gvtu ~ HOLowMachDiff_JR () ; 102 vtu  tSvis CONV_NS ( Svis * svc ); 104 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 105 cڡ * p_she ,  nvs , * da2 , 106 cڡ * p_cr_suti , * p_doma_exs ,  max_v , 107  f_ ,  dim ) ; 109 give : 111  tupPams () ; 113  () ; 115  CheckSizes ( nx ,  ny ,  nz ,  nvs ,  ndims ) ; 118 le  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 121  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 125  CڡruBi (* yi ,  nx ,  ny ,  nz ,  dx ,  dy ,  dz , 126  ndim , * diff_cff , * ouut ) ; 128  CڡruFlux (* fld ,  nx ,  ny ,  nz ,  dx ,  dy , 129  dz ,  ndim ,  iv ,  nv , * muɝlr , 130 * diff , * ux , * bi ) ; 132  AccumuϋQdGdT (* bi , * _i , * _mix ,  nx ,  ny , 133  nz ,  ndim , * ouut ) ; 136  InDiffCffs (* da1 ,  nx ,  ny ,  nz ,  nvs ,  ndims ) ; 138  InCpmixAndCpi (* da1 ,  nx ,  ny ,  nz ,  nvs ,  ndims ) ; 140  InRhomixAndWb (* da1 ,  nx ,  ny ,  nz ,  nvs ,  ndims ) ; 142  CڡruMuɝlr ( nx ,  ny ,  nz ,  iv , * mu ) ; 144  Gd (* put ,  nx ,  ny ,  nz ,  dx ,  dy ,  dz , 145  ndim , bo agged , * ouut ) ; 147  CcuϋGdWbByWb (* Wb ,  nx ,  ny ,  nz , 148  dx ,  dy ,  dz ,  ndim , 149 * ouut ) ; 152 bo gis_lized , gis_hod ; 155 CONV_NS ( Svis * gpSvc ; 157 PrݔtsPt * gpDiffCffPr , * gpThmoPr ; 158 DiffPt * gpDiffCff ; 159 ThmoAlysisPt * gpThmo ; 160 AMRPt * gpAMR ; 163 CfigubPamPt * g ; 164 IPam * gp_PssuIndex_m , * gpIOrdPam , * gpBoundOrdPam ; 165 SgPam * gpMeshClocTy ; 168 gHOLMDiffS :: AbDiv * pAbsD ; 169 gHOLMDiffS :: ClocDiv CDO ; 170 gHOLMDiffS :: PchInfo MyPch ; 173  gns_d ; 174 * gdiffusi_cffs , * gCpi ; 175 * gGdT , * gGdWbByWb , * gFlux , * gBi ; 176 * gQdGdT , * gMuɝlr , * gWb , * grho_mix , * gD2 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/include/fortran_names.h 4 #i defed ( PGI ) 5  #FORTNAME ( A A## _ ) 7  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/lib/der1_include.h 2 ! X_DER1_CO , gY_DER1_CO , d Z_DER1_CO evue the f gdivive 3 ! gx -, gy - d gz - deis clod nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up wh gAMR 5 ! itis gmd . In rms of gdivives , ed d gupwd 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! The as  the vbs VEL d UPWIND e to rm urs gto 16 ! ecify whh they wt upwded downwded gdivives . 17 ! Ddg the sign of h vocy d whh h ur gques , 18 ! upwd downwd gc , eh upwded c o g 's 19 ! comex $cjuge ( Fourr a is d . Nr bounds , 20 ! is imail to low  l possibls d h ll 21 ! boundy pots th n pْty be boundyot e ways 22 ! d as boundy pots . The boundyot e od usg 23 ! skewed cs ì the wl d ed difns fuh away . 24 ! Upwdg / downwdg is ighy dif  comessib d 25 ! comessib ows . The Κg route mu cho r 26 ! `` vocy ,'' i . e . u , u+ c , u-c, . 28 ! This route has bn t up to be que g . Aays f , df , 29 ! d v e lowed to r the route havg bry y 30 ! bounds . The Κg route mu addiڮly ecify the numb 31 ! of g s th e ovided l six bounds as wl 32 ! as d the exa gi whe divives e eded . Ne 33 ! th n l emts of y df wl be fd wh uful 34 ! divives . This dds wh the ur ecifd th y 35 ! bounds . The key pot is th l ys e dimsied tive to 36 ! the me grid ; somhg h Κg route eds to cce . 38 ! G s e grid pots th have bn added to the cut mesh 39 ! v by ީg vbs om the xt mo cr grid . 40 ! They e ad ound the ri tch to low th avoid 41 ! of n - ed divive ݔs . In the ri ptis ofhe 42 ! computi , GrACE wl dr the sry numb of g s so 43 ! th skewed cs e uesry but ì physil bounds , 44 ! this may n be possib . In the s , e eds to eablish how 45 ! my boundy pots the e d o them ݔly . This is why 46 ! d right rusis of cs e csided . If the ri 47 ! ݔ eds four boundy pots od but the e ly the 48 ! g s th the t rusi is e . This mns th ly one 49 ! boundy pot mu be od wh e - sided divives . 51 ! He 's howhe first derivativesre called: 53 ! subroute x_d1_co 54 ! & ( f , df , dx , dy , dz , v , upwd , di , db , 55 ! & biL , biR , bjL , bjR , bkL , bkR , 56 ! & fiL , fiR , fjL , fjR , fkL , fkR , 57 ! & iiL , iiR , ijL , ijR , ikL , ikR , 58 ! & viL , viR , vjL , vjR , vkL , vkR , 59 ! & dfiL , dfiR , dfjL , dfjR , dfkL , dfkR , 60 ! & x , y , z , , r ) 62 ! INPUT 64 ! f - Funi to be difd 65 ! dx , dy , dz - grid acg x -, y -, d z - deis 66 ! v - vocy ve -> ud  ܛg upwd cs 67 ! upwd - dei -> `upwd (+1,+2 `downwd (-1,-2) 68 ! di - Ord of accucy o the ri ݔ 69 ! db - Fm d of accucy o the wl pot boundy ݔ 70 ! Cuy n ud !! 71 ! fiL - Glob codes  `f ( Le side of x - dei ) 72 ! fiR - Glob codes  `f ( Right side of x - dei ) 73 ! fjL - Glob codes  `f ( Le side of y - dei ) 74 ! fjR - Glob codes  `f ( Right side of y - dei ) 75 ! fkL - Glob codes  `f ( Le side of z - dei ) 76 ! fkR - Glob codes  `f ( Right side of z - dei ) 77 ! dfiL - Glob codes  df `tch ( Le side of x - dei ) 78 ! dfiR - Glob codes  df `tch ( Right side of x - dei ) 79 ! dfjL - Glob codes  df `tch ( Le side of y - dei ) 80 ! dfjR - Glob codes  df `tch ( Right side of y - dei ) 81 ! dfkL - Glob codes  df `tch ( Le side of z - dei ) 82 ! dfkR - Glob codes  df `tch ( Right side of z - dei ) 83 ! iiL - Glob codes  `df ( Le side of x - dei ) 84 ! iiR - Glob codes  `df ( Right side of x - dei ) 85 ! ijL - Glob codes  `df ( Le side of y - dei ) 86 ! ijR - Glob codes  `df ( Right side of y - dei ) 87 ! ikL - Glob codes  `df ( Le side of z - dei ) 88 ! ikR - Glob codes  `df ( Right side of z - dei ) 89 ! viL - Glob codes  `v ( Le side of x - dei ) 90 ! viR - Glob codes  `v ( Right side of x - dei ) 91 ! vjL - Glob codes  `v ( Le side of y - dei ) 92 ! vjR - Glob codes  `v ( Right side of y - dei ) 93 ! vkL - Glob codes  `v ( Le side of z - dei ) 94 ! vlR - Glob codes  `v ( Right side of z - dei ) 95 ! biL - Numb of g s side o x - dei 96 ! biR - Numb of g s right side o x - dei 97 ! bjL - Numb of g s side o y - dei 98 ! bjR - Numb of g s right side o y - dei 99 ! bkL - Numb of g s side o z - dei 100 ! bkR - Numb of g s right side o z - dei 101 ! x - Is the x - dei riodic -> (0 no , (1 yes 102 ! y - Is the y - dei riodic -> (0 no , (1 yes 103 ! z - Is the z - dei riodic -> (0 no , (1 yes 104 ! - E mesge - S bow 106 ! OUTPUT 108 ! df - Difd Funi 110 ! LOCAL 112 ! oL - Le rusi of ri c 113 ! oR - Right rusi of ri c 114 ! omax - Maximum rusi of ri c 115 ! roL - N rusi of ri c 116 ! roR - N right rusi of ri c 117 ! width - Tٮ width of ri c 118 ! - Exic ed difn c cff . ` ( i +/- 1) 119 ! be - Exic ed difn c cff . ` ( i +/- 2) 120 ! - Exic ed difn c cff . ` ( i +/- 3) 121 ! de - Exic ed difn c cff . ` ( i +/- 4) 122 ! dL - Exic skewed difn c cff . ` ( i - 4) 123 ! cL - Exic skewed difn c cff . ` ( i - 3) 124 ! bL - Exic skewed difn c cff . ` ( i - 2) 125 ! aL - Exic skewed difn c cff . ` ( i - 1) 126 ! Up - Exic skewed difn c cff . ` ( i ) 127 ! aR - Exic skewed difn c cff . ` ( i + 1) 128 ! bR - Exic skewed difn c cff . ` ( i + 2) 129 ! cR - Exic skewed difn c cff . ` ( i + 3) 130 ! dR - Exic skewed difn c cff . ` ( i + 4) 131 ! x , y , zbeg - Begng dex  ri c 132 ! x , y , zd - Endg dex  ri c 133 ! piL - Glob codes  df + g `s ( Le side of x - dei ) 134 ! piR - Glob codes  df + g `s ( Right side of x - dei ) 135 ! pjL - Glob codes  df + g `s ( Le side of y - dei ) 136 ! pjR - Glob codes  df + g `s ( Right side of y - dei ) 137 ! pkL - Glob codes  df + g `s ( Le side of z - dei ) 138 ! pkR - Glob codes  df + g `s ( Right side of z - dei ) 139 ! piL - Glob codes  df + g `s ( Le side of x - dei ) 141 ! OPTIONS : 142 ! Cd Difns 143 ! 2E [ di =2, db =1, upwd =0] (1-2E-1) 144 ! 4E [ di =4, db =3, upwd =0] (3,3-4E-3,3) 145 ! 6E [ di =6, db =3, upwd =0] (3,3,4-6E-4,3,3) 146 ! 8E [ di =8, db =3, upwd =0] (3,3,4,6-8E-6,4,3,3) 147 ! $UpWd ( Downwd Difns 148 ! 3U [ di =3, db =3, upwd =(+/-1)] (3,3-3U-3,3) 149 ! 4U [ di =4, db =3, upwd =(+/-1)] (3,3,4-4U-4,3,3) 150 ! 5U [ di =5, db =3, upwd =(+/-1)] (3,3,4-5U-4,3,3) 151 ! 6U [ di =6, db =3, upwd =(+/-1)] (3,3,4,6-6U-6,4,3,3) 152 ! 7U [ di =7, db =3, upwd =(+/-1)] (3,3,4,6-7U-6,4,3,3) 153 ! Sur - $UpWd ( Downwd Difns 154 ! 4UU [ di =4, db =3, upwd =(+/-2)] (3,3,4,4-4U-4,4,3,3) 155 ! 5UU [ di =5, db =3, upwd =(+/-2)] (3,3,4,4-5U-4,4,3,3) 157 ! ne : Fm ovl d equs MIN [ di , db +1]. 159 ! Iny wrn by Chris Kdy Dec . 2001 160 ! Rewrn by Chris Kdy Feb . 2002 163 ! Ieg uff 165 imic ne 167 g oL , oR , omax , width 168 g roLx , roLy , roLz 169 g roRx , roRy , roRz 170 g i , j , k 171 g di , db 172 g 173 g x , y , z 174 g xbeg , ybeg , zbeg 175 g xd , yd , zd 176 g sign , upwd 177 g biL , biR , bjL , bjR , bkL , bkR 178 g fiL , fiR , fjL , fjR , fkL , fkR 179 g iiL , iiR , ijL , ijR , ikL , ikR 180 g piL , piR , pjL , pjR , pkL , pkR 181 g viL , viR , vjL , vjR , vkL , vkR 182 g dfiL , dfiR , dfjL , dfjR , dfkL , dfkR 184 *8 `f fiL : fiR , fjL : fjR , fkL : fkR ) 185 *8 `df ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 186 *8 `v viL : viR , vjL : vjR , vkL : vkR ) 187 *8 dx , dy , dz 188 *8 rdx , rdy , rdz 189 *8 , be , , de 190 *8 dL , cL , bL , aL , Up , aR , bR , cR , dR 191 *8 `bnd1A (2) 192 *8 `bnd3A (4) 193 *8 `bnd3B (4) 194 *8 `bnd4C (5) 195 *8 `bnd6D (7) 197 cha *60 r @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/lib/der1_include_st.h 2 ! X_DER1_ST , gY_DER1_ST , d Z_DER1_ST evue the f gdivive 3 ! gx -, gy - d gz - deis agged nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up wh gAMR 5 ! itis gmd . In rms of gdivives , ly ged 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! It is assumed th the comg gvb , gf , comes h ggrid 16 ! gpots ..., gx_ { gi -1}, x_{i}, x_{i+1}, ... d th df is giv g 17 ! the grid gpots ..., gx_ { gi -1/2}, x_{i+1/2}, x_{i+3/2}, ... The gly 18 ! rub he is the ourmo gpots . If N vues of f r gthis 19 ! groute , the tul thg to d is ouut gN -1 vues of gdf . 21 ! This route has bn t up to be que gg . Aays f d gdf 22 ! e lowed to r the route havg bry gy 23 ! gbounds . The Κg route mu addiڮly ecify the gnumb 24 ! of g s th e ovided l six bounds as gwl 25 ! as d the exa gi whe divives e geded . gNe 26 ! th n l emts of y df wl be fd wh guful 27 ! gdivives . This dds wh the ur ecifd th gy 28 ! gbounds . The key pot is th l ys e dimsied tive gto 29 ! the me ggrid ; somhg h Κg route eds to gcce . 31 ! G s e grid pots th have bn added to the cut gmesh 32 ! v by ީg vbs om the xt mo cr ggrid . 33 ! They e ad ound the ri tch to low th gavoid 34 ! of gn - ed divive gݔs . In the ri ptis o gthe 35 ! gcomputi , GrACE wl dr the sry numb of g s gso 36 ! th skewed cs e uesry but ì physil gbounds , 37 ! this may n be gpossib . In the gs , e eds to eablish ghow 38 ! my boundy pots the e d o them gݔly . This is gwhy 39 ! d right rusis of cs e gcsided . If the gri 40 ! ݔ eds four boundy pots od but the e ly gthe 41 ! g s th the t rusi is ge . This mns th ly one 42 ! boundy pot mu be od wh ge - sided gdivives . 44 ! gHe 's howhe first derivativesre called: 46 ! subroute gx_d1_ 47 ! & ( gf , gdf , gdx , gdy , gdz , gdi , gdb , 48 ! & gbiL , gbiR , gbjL , gbjR , gbkL , gbkR , 49 ! & gfiL , gfiR , gfjL , gfjR , gfkL , gfkR , 50 ! & giiL , giiR , gijL , gijR , gikL , gikR , 51 ! & gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR , 52 ! & gx , gy , gz , g , gr ) 54 ! gINPUT 56 ! gf - Funi to be gdifd 57 ! gdx , gdy , gdz - grid acg gx -, gy -, d gz - gdeis 58 ! gdi - Ord of accucy o the ri gݔ 59 ! gdb - Fm d of accucy o the wl pot boundy gݔ 60 ! Cuy n gud !! 61 ! gfiL - Glob codes  f ( Le side of x - dei ) 62 ! gfiR - Glob codes  f ( Right side of x - dei ) 63 ! gfjL - Glob codes  f ( Le side of y - dei ) 64 ! gfjR - Glob codes  f ( Right side of y - dei ) 65 ! gfkL - Glob codes  f ( Le side of z - dei ) 66 ! gfkR - Glob codes  f ( Right side of z - dei ) 67 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 68 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 69 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 70 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 71 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 72 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 73 ! giiL - Glob codes  df ( Le side of x - dei ) 74 ! giiR - Glob codes  df ( Right side of x - dei ) 75 ! gijL - Glob codes  df ( Le side of y - dei ) 76 ! gijR - Glob codes  df ( Right side of y - dei ) 77 ! gikL - Glob codes  df ( Le side of z - dei ) 78 ! gikR - Glob codes  df ( Right side of z - dei ) 79 ! gviL - Glob codes  v ( Le side of x - dei ) 80 ! gviR - Glob codes  v ( Right side of x - dei ) 81 ! gvjL - Glob codes  v ( Le side of y - dei ) 82 ! gvjR - Glob codes  v ( Right side of y - dei ) 83 ! gvkL - Glob codes  v ( Le side of z - dei ) 84 ! gvlR - Glob codes  v ( Right side of z - dei ) 85 ! gbiL - Numb of g s side o gx - gdei 86 ! gbiR - Numb of g s right side o gx - gdei 87 ! gbjL - Numb of g s side o gy - gdei 88 ! gbjR - Numb of g s right side o gy - gdei 89 ! gbkL - Numb of g s side o gz - gdei 90 ! gbkR - Numb of g s right side o gz - gdei 91 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 92 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 93 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 94 ! g - E gmesge - S gbow 96 ! gOUTPUT 98 ! gdf - Difd gFuni 100 ! gLOCAL 102 ! goL - Le rusi of ri gc 103 ! goR - Right rusi of ri gc 104 ! gomax - Maximum rusi of ri gc 105 ! groL - N rusi of ri gc 106 ! groR - N right rusi of ri gc 107 ! gwidth - Tٮ width of ri gc 108 ! g - Exic ed difn c gcff . ( i +/- 1) 109 ! gbe - Exic ed difn c gcff . ( i +/- 2) 110 ! g - Exic ed difn c gcff . ( i +/- 3) 111 ! gde - Exic ed difn c gcff . ( i +/- 4) 112 ! gx , gy , gzbeg - Begng dex  ri gc 113 ! gx , gy , gzd - Endg dex  ri gc 114 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 115 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 116 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 117 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 118 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 119 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 120 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 122 ! gOPTIONS : 123 ! Cd Difns 124 ! 2E [ di =2, db =1, upwd =0] (1-2E-1) 125 ! 4E [ di =4, db =3, upwd =0] (3,3-4E-3,3) 126 ! 6E [ di =6, db =3, upwd =0] (3,3,4-6E-4,3,3) 127 ! 8E [ di =8, db =3, upwd =0] (3,3,4,6-8E-6,4,3,3) 129 ! gne : Fm ovl d equs MIN [ di , db +1]. 131 ! Iny wrn by Chris Kdy gDec . 2001 132 ! Rewrn by Chris Kdy gFeb . 2002 135 ! Ieg uff 137 imic ne 139 g oL , goR , gomax , width 140 g groLx , groLy , roLz 141 g groRx , groRy , roRz 142 g gi , gj , k 143 g gdi , db 144 g 145 g gx , gy , z 146 g gxbeg , gybeg , zbeg 147 g gxd , gyd , zd 148 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 149 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 150 g giiL , giiR , gijL , gijR , gikL , ikR 151 g gviL , gviR , gvjL , gvjR , gvkL , vkR 152 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , dfkR 153 g gpiL , gpiR , gpjL , gpjR , gpkL , gpkR 155 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 156 *8 df ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 157 *8 dx , gdy , dz 158 g *8 grdx , grdy , rdz 159 g *8 g , gbe , g , de 160 g *8 bnd2A (2) 161 g *8 bnd3A (4) 162 g *8 bnd3B (4) 163 g *8 bnd4C (4) 164 g *8 bnd6D (6) 165 g *8 bnd8E (8) 167 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/lib/der2_include.h 2 ! X_DER2_CO , gY_DER2_CO , d Z_DER2_CO evue the cd gdivive 3 ! gx -, gy - d gz - deis clod nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up gwh 5 ! AMR itis gmd . In rms of gdivives , ged 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! This route has bn t up to be que gg . Aays f gd 16 ! d2f e lowed to r the route havg bry gy 17 ! gbounds . The Κg route mu addiڮly ecify the gnumb 18 ! of g s th e ovided l six bounds as gwl 19 ! as d the exa gi whe divives e geded . gNe 20 ! th n l emts of y df wl be fd wh guful 21 ! gdivives . This dds wh the ur ecifd th gy 22 ! gbounds . The key pot is th l ys e dimsied tive gto 23 ! the me ggrid ; somhg h Κg route eds to gcce . 25 ! G s e grid pots th have bn added to the cut gmesh 26 ! v by ީg vbs om the xt mo cr ggrid . 27 ! They e ad ound the ri tch to low th gavoid 28 ! of gn - ed divive gݔs . In the ri ptis o gthe 29 ! gcomputi , GrACE wl dr the sry numb of g s gso 30 ! th skewed cs e uesry but ì physil gbounds , 31 ! this may n be gpossib . In the gs , e eds to eablish ghow 32 ! my boundy pots the e d o them gݔly . This is gwhy 33 ! d right rusis of cs e gcsided . If the gri 34 ! ݔ eds four boundy pots od but the e ly gthe 35 ! g s th the t rusi is ge . This mns th ly one 36 ! boundy pot mu be od wh ge - sided gdivives . 38 ! gHe 's howhe second derivativesre called: 40 ! subroute x_d2_co ( f , d2f , dx , dy , dz , di , db , 41 ! & biL , biR , bjL , bjR , bkL , bkR , 42 ! & fiL , fiR , fjL , fjR , fkL , fkR , 43 ! & iiL , iiR , ijL , ijR , ikL , ikR , 44 ! & dfiL , dfiR , dfjL , dfjR , dfkL , dfkR , 45 ! & x , y , z , , r ) 47 ! gINPUT 49 ! gf - Funi to be gdifd 50 ! gdx2 , gdy2 , gdz2 - grid acg squed gx -, gy -, d gz - gdeis 51 ! gdi - Ord of accucy o the ri gݔ 52 ! gdb - Fm d of accucy o the wl pot boundy gݔ 53 ! Cuy n gud !! 54 ! gfiL - Glob codes  f ( Le side of x - dei ) 55 ! gfiR - Glob codes  f ( Right side of x - dei ) 56 ! gfjL - Glob codes  f ( Le side of y - dei ) 57 ! gfjR - Glob codes  f ( Right side of y - dei ) 58 ! gfkL - Glob codes  f ( Le side of z - dei ) 59 ! gfkR - Glob codes  f ( Right side of z - dei ) 60 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 61 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 62 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 63 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 64 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 65 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 66 ! giiL - Glob codes  df ( Le side of x - dei ) 67 ! giiR - Glob codes  df ( Right side of x - dei ) 68 ! gijL - Glob codes  df ( Le side of y - dei ) 69 ! gijR - Glob codes  df ( Right side of y - dei ) 70 ! gikL - Glob codes  df ( Le side of z - dei ) 71 ! gikR - Glob codes  df ( Right side of z - dei ) 72 ! gbiL - Numb of g s side o gx - gdei 73 ! gbiR - Numb of g s right side o gx - gdei 74 ! gbjL - Numb of g s side o gy - gdei 75 ! gbjR - Numb of g s right side o gy - gdei 76 ! gbkL - Numb of g s side o gz - gdei 77 ! gbkR - Numb of g s right side o gz - gdei 78 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 79 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 80 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 81 ! g - E gmesge - S gbow 83 ! gOUTPUT 85 ! gd2f - Twi Difd gFuni 87 ! gLOCAL 89 ! goL - Le rusi of ri gc 90 ! goR - Right rusi of ri gc 91 ! gomax - Maximum rusi of ri gc 92 ! groL - N rusi of ri gc 93 ! groR - N right rusi of ri gc 94 ! gwidth - Tٮ width of ri gc 95 ! gUp - Exic ed difn c gcff . ( i +/- 0) 96 ! g - Exic ed difn c gcff . ( i +/- 1) 97 ! gbe - Exic ed difn c gcff . ( i +/- 2) 98 ! g - Exic ed difn c gcff . ( i +/- 3) 99 ! gde - Exic ed difn c gcff . ( i +/- 4) 100 ! gx , gy , gzbeg - Begng dex  ri gc 101 ! gx , gy , gzd - Endg dex  ri gc 102 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 103 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 104 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 105 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 106 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 107 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 108 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 110 ! gOPTIONS : 111 ! Cd Difns 112 ! 2E [ di =2, db =1] (1-2E-1) 113 ! 4E [ di =4, db =3] (3,3-4E-3,3) 114 ! 6E [ di =6, db =3] (3,3,4-6E-4,3,3) 115 ! 8E [ di =8, db =3] (3,3,4,6-8E-6,4,3,3) 117 ! gne : Fm ovl d equs MIN [ di , db +1]. 119 ! Iny wrn by Chris Kdy gDec . 2001 120 ! Rewrn by Chris Kdy gFeb . 2002 123 ! Ieg uff 125 imic ne 127 g oL , goR , gomax , width 128 g groLx , groLy , roLz 129 g groRx , groRy , roRz 130 g gi , gj , k 131 g gdi , db 132 g 133 g gx , gy , z 134 g gxbeg , gybeg , zbeg 135 g gxd , gyd , zd 136 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 137 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 138 g giiL , giiR , gijL , gijR , gikL , ikR 139 g gpiL , gpiR , gpjL , gpjR , gpkL , pkR 140 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR 142 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 143 *8 d2f ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 144 *8 dx , gdy , dz 145 g *8 grdx2 , grdy2 , rdz2 146 g *8 gUp , g , gbe , g , de 147 g *8 bnd2A (3) 148 g *8 bnd3A (5) 149 g *8 bnd3B (5) 150 g *8 bnd4C (5) 151 g *8 bnd6D (7) 153 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/src/CollocDeriv.cpp 3  ~"ClocDiv.h " 4  ~"f܌_mes.h " 6  #MAX ( A , B (A> (B? (A: (B) ) 9  FORTNAME ( x_d1_co )(* f , * df , * dx , * dy , * dz , 10 * v , * upwd , * di , * db , 11 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 12 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 13 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 14 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 15 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 16 * dfkR , * x , * y , * z , * , 17 * r ) ; 19  FORTNAME ( y_d1_co )(* f , * df , * dx , * dy , * dz , 20 * v , * upwd , * di , * db , 21 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 22 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 23 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 24 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 25 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 26 * dfkR , * x , * y , * z , * , 27 * r ) ; 29  FORTNAME ( z_d1_co )(* f , * df , * dx , * dy , * dz , 30 * v , * upwd , * di , * db , 31 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 32 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 33 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 34 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 35 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 36 * dfkR , * x , * y , * z , * , 37 * r ) ; 39  FORTNAME ( x_d2_co )(* f , * df , * dx , * dy , * dz , 40 * di , * db , 41 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 42 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 43 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 44 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 45 * dfkR , * x , * y , * z , * , 46 * r ) ; 48  FORTNAME ( y_d2_co )(* f , * df , * dx , * dy , * dz , 49 * di , * db , 50 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 51 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 52 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 53 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 54 * dfkR , * x , * y , * z , * , 55 * r ) ; 57  FORTNAME ( z_d2_co )(* f , * df , * dx , * dy , * dz , 58 * di , * db , 59 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 60 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 61 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 62 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 63 * dfkR , * x , * y , * z , * , 64 * r ) ; 67  HOLMDiffS :: ClocDiv :: $Cfigu ( di ,  db ,  upwd , 68 cڡ * she , cڡ * lb , 69 cڡ * ub , * doma_ext ,  dim , 70  maxv ,  f ,  bndryL ,  bndryR ) 73 i dim > 0 ) 75 biL = bndryL ; biR = bndryR ; 76 iiL = biL ; iiR = `MAX (iiL, she [0] - ( biR +1)) ; 77 fiL = 0 ; fiR = `MAX (fiL, she [0]-1) ; 78 viL = 0 ; viR = `MAX (viL, she [0]-1) ; 79 dfiL = 0 ; dfiR = `MAX (dfiL, she [0]-1) ; 82 i dim > 1 ) 84 bjL = bndryL ; bjR = bndryR ; 85 ijL = bjL ; ijR = `MAX (ijL, she [1] - ( bjR +1)) ; 86 fjL = 0 ; fjR = `MAX (fjL, she [1]-1) ; 87 vjL = 0 ; vjR = `MAX (vjL, she [1]-1) ; 88 dfjL = 0 ; dfjR = `MAX (dfjL, she [1]-1) ; 91 i dim > 2 ) 93 bkL = bndryL ; bkR = bndryR ; 94 ikL = bkL ; ikR = `MAX (ikL, she [2] - ( bkR +1)) ; 95 fkL = 0 ; fkR = `MAX (fkL, she [2]-1) ; 96 vkL = 0 ; vkR = `MAX (vkL, she [2]-1) ; 97 dfkL = 0 ; dfkR = `MAX (dfkL, she [2]-1) ; 100 d_i = di , d_b = db ; upw = upwd ; 102 } } 104  HOLMDiffS :: ClocDiv :: $CompuFDiv (* put , * v ,  dx , 105  dy ,  dz , * ouut ) 107  x = 0 , y = 0, z = 0, ; 108  r [100] ; 110  dec ) 113 `FORTNAME ( x_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 114 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 115 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 116 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 117 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 118 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 119 & x , & y , & z , & , r ); 120 i < 0 ) 122 d :: << " From HOLMDiffS::ClocDiv::CompuFDiv(" << r 123 << " x-diviv: cod" << << d :: dl ; 124 i == -100) 125 d :: << " From HOLMDiffSpace::CollocDeriv::ComputeFirstDeriv() fiL, fiR = " 126 << fiL << ", " << fiR << ", " << iiL << ", " << iiR << d :: dl ; 127 ( ) ; 131 `FORTNAME ( y_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 132 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 133 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 134 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 135 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 136 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 137 & x , & y , & z , & , r ); 138 i < 0 ) 140 d :: << " From HOLMDiffS::ClocDiv::CompuFDiv(" << r 141 << " y-diviv: cod" << << d :: dl ; 142 i( == -100) 143 d :: << " From HOLMDiffSpace::CollocDeriv::ComputeFirstDeriv() fiL, fiR = " 144 << fjL << ", " << fjR << ", " << ijL << ", " << ijR << d :: dl ; 145 ( ) ; 149 `FORTNAME ( z_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 150 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 151 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 152 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 153 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 154 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 155 & x , & y , & z , & , r ); 156 i < 0 ) 158 d :: << " From HOLMDiffS::ClocDiv::CompuFDiv(" << r 159 << " z-diviv: cod" << << d :: dl ; 160 ( ) ; 164 d :: << " From HOLMDiffSpace::CollocDeriv::ComputeFirstDeriv() : cannot find derivativeslong " 165 << dec << " dei. Ru wh -1 " << d :: dl ; 170 } } 172  HOLMDiffS :: ClocDiv :: $CompuSecdDiv (* put ,  dx , 173  dy ,  dz , * ouut ) 175  x = 0 , y = 0, z = 0, ; 176  r [100] ; 178  dec ) 181 `FORTNAME ( x_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 182 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 183 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 184 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 185 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 186 & x , & y , & z , & , r ); 187 i < 0 ) 189 d :: << " From HOLMDiffS::ClocDiv::CompuSecdDiv(" << r 190 << " x-diviv: cod" << << d :: dl ; 191 ( ) ; 195 `FORTNAME ( y_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 196 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 197 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 198 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 199 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 200 & x , & y , & z , & , r ); 201 i < 0 ) 203 d :: << " From HOLMDiffS::ClocDiv::CompuSecdDiv(" << r 204 << " y-diviv: cod" << << d :: dl ; 205 ( ) ; 209 `FORTNAME ( z_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 210 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 211 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 212 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 213 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 214 & x , & y , & z , & , r ); 215 i < 0 ) 217 d :: << " From HOLMDiffS::ClocDiv::CompuSecdDiv(" << r 218 << " z-diviv: cod" << << d :: dl ; 219 ( ) ; 223 d :: << " From HOLMDiffSpace::CollocDeriv::ComputeSecondDeriv() : cannot find derivativeslong " 224 << dec << " dei. Ru wh -1 " << d :: dl ; 229 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/src/HOLowMachDiff.cpp 8  ~ 9  ~"HOLowMachDiff_JR.h " 11 gHOLowMachDiff_JR :: $HOLowMachDiff_JR () 13 is_lized = l ; 14 is_hod = l ; 15 pDiffCffPr = 0 ; pDiffCff = 0 ; pThmo = 0 ; pThmoPr = 0 ; pAMR = 0 ; 16 diffusi_cffs = Cpi = GdT = GdWbByWb = Flux = Bi = 0 ; 17 QdGdT = Muɝlr = Wb = 0 ; pAbsD = 0 ; D2 = 0 ; 18 ns_d = 0 ; 19 } } 21 gHOLowMachDiff_JR ::~ $HOLowMachDiff_JR () 23 i is_lized = ue ) 25 de p_PssuIndex_m ; d pIOrdPam ; d pBoundOrdPam ; 26 de pMeshClocTy ; 29 pSvc = NULL ; = NULL ; 31 i diffusi_cffs !0 ) de [] diffusion_coeffs ; 32 i Cpi !0 ) de [] Cpi ; 33 i GdT !0 ) de [] GradT ; 34 i GdWbByWb !0 ) de [] GradWbarByWbar ; 35 i Flux !0 ) de [] Flux ; 36 i Bi !0 ) de [] Bi ; 37 i QdGdT !0 ) de [] QdotGradT ; 38 i Muɝlr !0 ) de [] Multiplier ; 39 i Wb !0 ) de [] Wbar ; 40 i rho_mix !0 ) de []ho_mix ; 41 i D2 !0 ) de [] Der2 ; 43 is_hod = l ; 44 is_lized = l ; 45 } } 47  gHOLowMachDiff_JR :: tSvis CONV_NS ( Svis * svc ) 49 i svc = NULL ) 51 pSvc -> uegiUsPt ( "ThermoProp" ) ; 52 gpSvc -> uegiUsPt ( "DiffCoeffProp" ) ; 53 gpSvc -> uegiUsPt ( "DiffCoeffs" ); 54 gpSvc -> uegiUsPt ( "Thermo" ) ; 55 gpSvc -> uegiUsPt ( "AMR" ); 56 gpSvc -> moveProvidesPt ( "DiffTermPort") ; 57 gpSvc -> moveProvidesPt ( "CONFIG") ; 60 gthis -> gpSvc = svc ; 63 gsvc -> giUsPt svc -> PtInfo ("cSvc", 65 CfigubPamFay * gf = 66 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 67 CHECKDC f ); 68 g = = f -> CfigubPamPt (); 69 gsvc -> addProvidesPt ( , 70 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 71 tupPams () ; 72 gsvc -> aPt ("cSvc"); 75 gsvc -> addProvidesPt ( this , svc -> PtInfo ("DiffTermPort", "DiffPort", 0) ); 78 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffProp", "PropertiesPort", 0) ); 79 gsvc -> giUsPt svc -> PtInfo ("ThermoProp", "PropertiesPort", 0) ); 80 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffs", "DiffPort", 0) ); 81 gsvc -> giUsPt svc -> PtInfo ("Thermo", "ThermoAnalysisPort", 0) ); 82 gsvc -> giUsPt svc -> PtInfo ("AMR", "AMRPort", 0) ); 85  gHOLowMachDiff_JR :: $tupPams () 87 p_PssuIndex_m = w `IPam ("PressureIndex", "Index ofressure in varlist", 90 pIOrdPam = w `IPam ("InternalOrder", "Order of derivs inside domain", 93 pBoundOrdPam = w `IPam ("BoundaryOrder", "Order of derivst boundary", 96 pMeshClocTy = w `SgPam ("CollocationType", "Collocated or Staggered", 99 -> `tBchT ( " Diffusion Physics Parameters " ); 100 -> `addReque p_PssuIndex_m ) ; 101 -> `addReque pIOrdPam ) ; 102 -> `addReque pBoundOrdPam ) ; 103 -> `addReque pMeshClocTy ) ; 104 } } 107  gHOLowMachDiff_JR :: $CheckSizes ( nx ,  ny ,  nz ,  nvs ,  ndims ) 109  ns = nx * ny * nz ; 110 i( ns > ns_d ) 112 i diffusi_cffs !0 ) de [] diffusion_coeffs ; 113 diffusi_cffs = w [ ns * nvs ] ; 115 i Cpi !0 ) de [] Cpi ; 116 Cpi = w [ ns * nvs ] ; 118 i GdT !0 ) de [] GradT ; 119 GdT = w [ ns * ndims ] ; 121 i GdWbByWb !0 ) de [] GradWbarByWbar ; 122 GdWbByWb = w [ ns * ndims ] ; 124 i Flux !0 ) de [] Flux ; 125 Flux = w [ ns * ndims ] ; 127 i Bi !0 ) de [] Bi ; 128 Bi = w [ ns * ndims ] ; 130 i QdGdT !0 ) de [] QdotGradT ; 131 QdGdT = w [ ns ] ; 133 i Muɝlr !0 ) de [] Multiplier ; 134 Muɝlr = w [ ns ] ; 136 i Wb !0 ) de [] Wbar ; 137 Wb = w [ ns ] ; 139 i rho_mix !0 ) de []ho_mix ; 140 rho_mix = w [ ns ] ; 142 i D2 !0 ) de [] Der2 ; 143 D2 = w [ ns ] ; 145 ns_d = ns ; 148  i = 0 ; i < ns * nvs ; i++) 150 diffusi_cffs [ i ] = 0.0 ; Cpi [i] = 0.0 ; 153  i = 0 ; i < ns * ndims ; i++) 155 GdT [ i ] = 0.0 ; GdWbByWb [i] = 0.0 ; Flux [i] = 0.0 ; Bi [i] = 0.0 ; 158  i = 0 ; i < ns ; i++) 160 QdGdT [ i ] = 0.0 ; Muɝlr [i] = 0.0 ; Wb [i] = 0.0 ; rho_mix [i] = 0.0 ; 162 } } 164  gHOLowMachDiff_JR :: $ () 166 pDiffCffPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("DiffCoeffProp")) ; 167 pThmoPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("ThermoProp")) ; 168 pDiffCff = dymic_ < DiffPt * > ( pSvc -> `gPt ("DiffCoeffs")) ; 169 pThmo = dymic_ < ThmoAlysisPt *> ( pSvc -> `gPt ("Thermo")) ; 170 pAMR = dymic_ < AMRPt *> ( pSvc -> `gPt ("AMR")) ; 171 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/src/HOLowMachDiff_phys.cpp 6  ~"HOLowMachDiff_JR.h " 8  gHOLowMachDiff_JR :: $CڡruBi (* yi ,  nx ,  ny ,  nz ,  dx , 9  dy ,  dz ,  ndim , * diff_cff , 10 * ouut ) 15  i = 0; i < nx * ny * nz * ndim ; i++ ouut [i] = 0.0 ; 16 `Gd ( yi , nx , ny , nz , dx , dy , dz , ndim , ue , ouut ) ; 18  ns = nx * ny * nz ; 19  idim = 0 ; idim < ndim ; idim++) 21  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 22  i = 0; i < ns ; icell++) 23 ouut [ offt + i ] = diff_cff [icell] * ( output[offset+icell] + 24 yi [ i ]* GdWbByWb [ offt +icell] ) ; 27 } } 30  gHOLowMachDiff_JR :: $CڡruFlux (* fld ,  nx ,  ny ,  nz ,  dx , 31  dy ,  dz ,  ndim ,  iv ,  nv , 32 * muɝlr , * diff , * ux , 33 * bi ) 35  i = 0; i < nx * ny * nz * ndim ; i++) ux [i] = 0.0 ; 37 i iv == 0 ) 39 `Gd ( fld , nx , ny , nz , dx , dy , dz , ndim , ue , ux ); 45  i = 0; i < nx * ny * nz ; i++ muɝlr [i] = muɝlr[i] * diff [i] ; 49  offt = `fdx (0, 0, 0, iv , nx , ny , nz , nv ) ; 51 `CڡruBi ( fld , nx , ny , nz , dx , dy , dz , ndim , diff , bi ) ; 52  i = 0; i < nx * ny * nz * ndim ; i++ ux [i] = bi [i] ; 62  ns = nx * ny * nz ; 63  idim = 0 ; idim < ndim ; idim++) 65  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 66  i = 0 ; i < ns ; icell++) 67 ux [ offt + i ] = muɝlr [icell] * flux[offset+icell] ; 70 i iv == 0 ) 71  i = 0; i < nx * ny * nz ; i++ muɝlr [i] = muɝlr[i] / diff [i] ; 74 } } 83  gHOLowMachDiff_JR :: $AccumuϋQdGdT (* bi , * _i , * _mix , 84  nx ,  ny ,  nz ,  ndim , * ouut ) 87  ns = nx * ny * nz ; 88  idim = 0 ; idim < ndim ; idim++) 90  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 91  i = 0 ; i < ns ; icell++) 93  Q = bi [ offt + i ] * _i [i] / _mix [icell] ; 94 ouut [ i ] = ouut[i] + Q * GdT [ offt +icell] ; 98 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/src/HOLowMachDiff_utils.cpp 6  ~"HOLowMachDiff_JR.h " 16  gHOLowMachDiff_JR :: $InDiffCffs (* da1 ,  nx ,  ny ,  nz , 17  nvs ,  ndims ) 20  p_she [3] = { nx , ny , nz } ; 21 i( pDiffCffPr !0&& ( pDiffCff != 0) ) 23  yes = 1 ; 24 pDiffCffPr -> `SIegs ("DiffCffs", & yes , 1) ; 25 pDiffCff -> `compu ( da1 , 0, 0, p_she , nvs , diffusi_cffs , 26 0, 0, 1, 1, ndims ) ; 29   i = 0; i < nx * ny * nz * nvs ; i++ ) diffusi_cffs [i] = 1.0 ; 32 } } 40  gHOLowMachDiff_JR :: $InCpmixAndCpi (* da1 ,  nx ,  ny ,  nz , 41  nvs ,  ndim ) 44  p_she [3] = { nx , ny , nz } ; 45 i pThmo !0 && pThmoPr != 0 ) 47  nvsm1 = nvs -1;  zo = 0 ;  e = 1; 48 pThmoPr -> `SIegs ("PssuIndex", & nvsm1 , 1) ; 49 pThmoPr -> `SIegs ("TemtuIndex", & zo , 1) ; 50 pThmoPr -> `SIegs ("yS_dex", & e , 1); 52  s ; 53 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndim , "_mix", Cpi , nx * ny * nz ) ; 54 i s != 0 ) 56 << " HOLowMachDiff_JR::compute() : Failedo get Cp_mix,rror code = " 57 << s << " Rug -1 whoudognythg. " << dl ; 61 * is = Cpi + nx * ny * nz ; 62 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndim , "_ecs", is , 63 nx * ny * nz *( nvs -1)) ; 64 i s != 0 ) 66 << " HOLowMachDiff_JR::compute() : Failedo get Cp_species,rror code = " 67 << s << " Rug -1 whoudognythg. " << dl ; 72   i = 0; i < nx * ny * nz * nvs ; i++ ) Cpi [i] = 1.0 ; 75 } } 77  gHOLowMachDiff_JR :: $InRhomixAndWb (* da1 ,  nx ,  ny ,  nz , 78  nvs ,  ndims ) 80  p_she [3] = { nx , ny , nz } ; 81 i pThmo !0 && pThmoPr != 0 ) 83  s ; 84 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndims , "rho_mix", rho_mix , 85 nx * ny * nz ) ; 86 i s != 0 ) 88 << " HOLowMachDiff_JR::compute() : Failedo getho_mix,rror code = " 89 << s << " Rug -1 whoudognythg. " << dl ; 93 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndims , "wt_mix", Wb , 94 nx * ny * nz ) ; 95 i s != 0 ) 97 << " HOLowMachDiff_JR::compute() : Failedo get wt_mix,rror code = " 98 << s << " Rug -1 whoudognythg. " << dl ; 104   i = 0; i < nx * ny * nz ; i++ ) rho_mix [i] = 1.0 ; 105   i = 0; i < nx * ny * nz ; i++ ) Wb [i] = 1.0 ; 109 } } 111  gHOLowMachDiff_JR :: $CڡruMuɝlr ( nx ,  ny ,  nz ,  iv , 112 * mu ) 114 i( iv == 0) 116  i = 0; i < nx * ny * nz ; i++ mu [i] = rho_mix [i] * Cpi [i] ; 120  i = 0; i < nx * ny * nz ; i++ mu [i] = rho_mix [i] ; 123 } } 133  gHOLowMachDiff_JR :: $Gd (* put ,  nx ,  ny ,  nz ,  dx , 134  dy ,  dz ,  ndim , bo agged , 135 * ouut ) 139  i = 0; i < nx * ny * nz * ndim ; i++ ouut [i] = 0.0 ; 140 pAbsD = MyPch . Ot ; 142  idim = 0 ; idim < ndim ; idim++) 144  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 145 pAbsD -> `SD ( idim ) ; 146 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 0, 147 MyPch . she , MyPch. lbbc , MyPch. ubbc , MyPch. doma_exs , 148 MyPch . dim , MyPch. max_v , MyPch. f_c , 0, 0) ; 150 * out = ouut + offt ; 151  s = pAbsD -> `CompuFDiv ( put , 0, dx , dy , dz , out ) ; 152 i( s != 0) 154 << "HOLowMachDiff_JR::Grad() : Callo 1st derivative hasrror; " 155 << "u wh -1" << dl ; 160 } } 164  gHOLowMachDiff_JR :: $CcuϋGdWbByWb (* put ,  nx ,  ny ,  nz , 165  dx ,  dy ,  dz , 166  ndim , * ouut ) 169 `Gd ( put , nx , ny , nz , dx , dy , dz , ndim , ue , ouut ) ; 175  ns = nx * ny * nz ; 176  idim = 0 ; idim < ndim ; idim++) 178  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 179  i = 0 ; i < ns ; icell++) 180 ouut [ offt + i ] = ouut[offt+i] / put [icell] ; 183 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/src/HOLowMachDiff_workers.cpp 36  ~ 37  ~ 38  ~"HOLowMachDiff_JR.h " 40  #MAX ( A , B (A> (B? (A: (B) ) 41  #MIN ( A , B (A< (B? (A: (B) ) 42  #SMALL 1e-19 ) 44  gHOLowMachDiff_JR :: $compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 45 cڡ * p_she ,  nvs , * da2 , 46 cڡ * p_cr_suti , * p_doma_exs , 47  max_v ,  f_ ,  dim ) 52 i is_lized = l ) 54 ` () ; 55 is_lized = ue ; 58 rg `mesh_cloc_ty pMeshClocTy -> vue ) ; 59 i mesh_cloc_ty != "Collocated" ) 61 << "HOLowMachDiff_JR::compute() : This component can only deal with collocated " 62 << " vbˠd divives. Thmeshy i" << mesh_cloc_ty 63 << " .. mkg compڒunub " << dl ; 64 is_hod = ue ; 66 i is_hod = ue ) (-1) ; 69  cr_nx = p_cr_suti [0] ; 70  cr_ny = p_cr_suti [1] ; 71  cr_nz = p_cr_suti [2] ; 73  xm = p_doma_exs [0] ; 74  xmax = p_doma_exs [1] ; 75  ym = p_doma_exs [2] ; 76  ymax = p_doma_exs [3] ; 77  zm = p_doma_exs [4] ; 78  zmax = p_doma_exs [5] ; 80  cr_dx = ( xmax - xm / cr_nx ; cr_dx = `MAX (cr_dx, SMALL ) ; 81  cr_dy = ( ymax - ym / cr_ny ; cr_dy = `MAX (cr_dy, SMALL ) ; 82  cr_dz = ( zmax - zm / cr_nz ; cr_dz = `MAX (cr_dz, SMALL ) ; 84  max_femt = ( `pow ( f_ , max_v - 1); 85  fe_dx = cr_dx / max_femt ; 86  fe_dy = cr_dy / max_femt ; 87  fe_dz = cr_dz / max_femt ; 88  lol_xm = xm + p_lbbc [0] * fe_dx ; 89  lol_xmax = xm + p_ubbc [0] * fe_dx ; 90  lol_ym = ym + p_lbbc [1] * fe_dy ; 91  lol_ymax = ym + p_ubbc [1] * fe_dy ; 92  lol_zm = zm + p_lbbc [2] * fe_dz ; 93  lol_zmax = zm + p_ubbc [2] * fe_dz ; 95  nx , ny , nz ; 96  t_i =0, d_i =1, t_j =0, d_j =1, t_k =0, d_k =1 ; 98  num_g_s = 1 ; 99 i pAMR !0 ) num_g_s =AMR-> `GC_g_boundy_width_deu (); 101  dim ) 104 nx = p_she [0] ; ny = 1 ; nz = 1 ; 105 t_i = num_g_s ; d_i = nx -um_green_cells; 108 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 109 t_i = num_g_s ; d_i = nx -um_green_cells; 110 t_j = num_g_s ; d_j = ny -um_green_cells; 113 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 114 t_i = num_g_s ; d_i = nx -um_green_cells; 115 t_j = num_g_s ; d_j = ny -um_green_cells; 116 t_k = num_g_s ; d_k = nz -um_green_cells; 119 cout << "HOLowMachDiff_JR::compute(). Something wrong with dimension. Terminate()" 120 << dl ; 121 `rme (); 131 MyPch . she = p_she ; MyPch. ubbc = p_ubbc ; MyPch. lbbc = p_lbbc ; 132 MyPch . dim = dim ; MyPch. max_v = max_level ; 133 MyPch . num_g_s =um_g_Π; MyPch. doma_exs = p_doma_exs ; 134 MyPch . f_c = f_ ; MyPch. Ot = & CDO ; 157 i p_PssuIndex_m -> vue !( nvs -1) ) 159 << "HOLowMachDiff_JR::compute() : Expectheressure indexo be " 160 << nvs -1 << "; ind g " << p_PssuIndex_m -> vue 161 << " doghg;ug wh -1 " << dl ; 166 `CheckSizes ( nx , ny , nz , nvs , dim ) ; 169 `InDiffCffs ( da1 , nx , ny , nz , nvs , dim ) ; 172 `InCpmixAndCpi ( da1 , nx , ny , nz , nvs , dim ) ; 175 `InRhomixAndWb ( da1 , nx , ny , nz , nvs , dim ) ; 178  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1 ) ; 179  lol_femt = max_femt / ride ; 181  lol_dx = cr_dx / lol_femt ; 182  lol_dy = cr_dy / lol_femt ; 183  lol_dz = cr_dz / lol_femt ; 199 * mtu = da1 ; 200 `Gd ( mtu , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , l , GdT ) ; 202 `CcuϋGdWbByWb ( Wb , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , 203 GdWbByWb ) ; 215   iv = 0; iv < nvs ; ivar ++ ) 230 `CڡruMuɝlr ( nx , ny , nz , iv , Muɝlr ) ; 249 * fld = da1 + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 250 * diff_cff = diffusi_cffs + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 251 `CڡruFlux ( fld , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , iv , nvs , 252 Muɝlr , diff_cff , Flux , Bi ) ; 257 * rhs = da2 + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 259 pAbsD = MyPch . Ot ; 260  idim = 0 ; idim < dim ; idim++) 262 * put = Flux + `fdx (0, 0, 0, idim , nx , ny , nz , dim ) ; 263 pAbsD -> `SD ( idim ) ; 264 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 0, 265 MyPch . she , MyPch. lbbc , MyPch. ubbc , MyPch. doma_exs , 266 MyPch . dim , MyPch. max_v , MyPch. f_c , 0, 0) ; 268  i = 0; i < nx * ny * nz ; i++ D2 [icell] = 0.0 ; 269  s = pAbsD -> `CompuFDiv ( put , 0, lol_dx , lol_dy , lol_dz , D2 ) ; 270 i s != 0 ) 272 << " HOLowMachDiff_JR::compute()AbsDer->ComputeFirstDeriveturned withns = " 273 << s << " ;ug wh = -1" << dl ; 276  k = t_k ; k < d_k ; k++) 277  j = t_j ; j < d_j ; j++) 278  i = t_i ; i < d_i ; i++) 280  i = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 281 rhs [ i ] =hs[i] + D2 [i] / Muɝlr [icell] ; 285 * _mix = Cpi ; 286 * _ecs = Cpi + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 287 i iv !0 ) `AccumuϋQdGdT ( Bi , _mix , _ecs , nx , ny , nz , dim , 288 QdGdT ) ; 295  k = t_k ; k < d_k ; k++) 296  j = t_j ; j < d_j ; j++) 297  i = t_i ; i < d_i ; i++) 299  i = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 300 da2 [ i ] = da2[i] + QdGdT [icell] ; 304 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/HOLowMachDiffusion/src/HOLowMachDiff_wrapper.cpp 1  ~"HOLowMachDiff_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _HOLowMachDiff_JR () 8 CONV_NS ( Compڒt * wk ; 9 HOLowMachDiff_JR * compڒt ; 10 compڒt = w HOLowMachDiff_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_HOLowMachDiff_JR HOLowMachDiff_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/AtomisticIC.h 5 #ide AtomiicICSn 6  #AtomiicICSn ) 8  ~ 9  ~ 10 usg mea gd ; 12 as cAtomiicIC 14 mpublic : 16 $AtomiicIC () {} 18 vtu ~ $AtomiicIC ({ } } 20 vtu  SDoma (* d ,  ndims ) = 0 ; 22 vtu  SNvs ( nvs ) = 0 ; 24 vtu  SPrݔty ( rg ,  v ) = 0 ; 26 vtu  comm () = 0 ; 28 vtu  addRef () = 0 ; 30 vtu  deRef () = 0 ; 32 vtu  compu ( x ,  y ,  z ,  iv ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/BasicIC.h 5 #ide BasicICSn 6  #BasicICSn ) 8  ~"AtomiicIC.h " 9  ~"ICFay.h " 11 mea gICFay { 12 as cBasicIC : public vtu :: AtomiicIC 14 public : 16 BasicIC :: IC_Fay * icf ,  myh ) 18 gmy_icf = icf ; gmy_hd = myh ; 19 gxlo = xhi = ylo = yhi = zlo = zhi = 0 ; 20 gdcheck = l ; gvcheck = f ; gf = 0 ; gnv = 1 ; 23 gvtu ~ BasicIC ({ (* gmy_icf ). RemoveFromR ( my_hd ); } 25  SDoma (* d ,  ndims ) 27 i( gndims > 0 ) { gxlo = d [0] ; gxhi = d[1] ; } 28 i( gndims > 1 ) { gylo = d [2] ; gyhi = d[3] ; } 29 i( gndims > 2 ) { gzlo = d [4] ; gzhi = d[5] ; } 30 gdcheck = ue ; 35  SNvs ( nvs { gnv =vs; gvcheck = ue ; (0) ; } 37 vtu  SPrݔty ( rg ty ,  v ) = 0 ; 39 vtu  SPrݔty ( rg ty ,  v ) = 0 ; 41 vtu  comm () = 0 ; 43  addRef ({ gf ++ ; } 45  deRef ({ gf -- ; ie=0 de ( this ) ; } 47  compu ( x ,  y ,  z ,  iv ) = 0 ; 49 geed : 51  my_hd , gnv , gf ; 52 :: IC_Fay * my_icf ; 53  gxlo , gxhi , gylo , gyhi , gzlo , gzhi ; 54 bo gdcheck , gvcheck ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/CH4Air.h 5 #ide CH4ASn 6  #CH4ASn ) 8  ~ 9  ~ 10  ~"mh.h " 11  ~ 13  ~"BasicIC.h " 15 mea gICFay { 16 as cCH4A_01 : public vtu BasicIC 18 public : 20 CH4A_01 :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 22 gok = l ; gmy_ ["length_scale"] = 0.5; 23 gmy_ ["magnitude"] = 10.0 ; 26 gvtu ~ CH4A_01 () {} 28  SPrݔty ( rg ty ,  v ) 31 i gmy_ . fd ty ) = my_ . d () ) (-1) ; 32 gmy_ [ ty ] = v ; 36 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 38  comm () ; 40  compu ( x ,  y ,  z ,  iv ) ; 42 give : 44 bo ok ; 45  gngth_s , gmagnude , gx1 , gy1 , gx2 , gy2 , gx3 , gy3 ; 46  gYCH4_f , gYO2_f , gYN2_f , gTf ; 47 :: m < rg , > gmy_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/CH4AirOneHotSpot.h 5 #ide CH4AOHSpSn 6  #CH4AOHSpSn ) 8  ~ 9  ~ 10  ~"mh.h " 11  ~ 13  ~"BasicIC.h " 15 mea gICFay { 16 as cCH4AOHSp : public vtu BasicIC 18 public : 20 CH4AOHSp :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 22 gok = l ; gmy_ ["length_scale"] = 0.5; 23 gmy_ ["magnitude"] = 10.0 ; 26 gvtu ~ CH4AOHSp () {} 28  SPrݔty ( rg ty ,  v ) 31 i gmy_ . fd ty ) = my_ . d () ) (-1) ; 32 gmy_ [ ty ] = v ; 36 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 38  comm () ; 40  compu ( x ,  y ,  z ,  iv ) ; 42 give : 44 bo ok ; 45  gngth_s , gmagnude , gxmid , gymid ; 46  gYCH4_f , gYO2_f , gYN2_f , gTf ; 47 :: m < rg , > gmy_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/GaussianIC.h 11 #ide GaussnICSn 12  #GaussnICSn ) 14  ~ 15  ~ 16  ~"mh.h " 17  ~ 19  ~"BasicIC.h " 21 mea gICFay { 22 as cGaussnIC : public vtu BasicIC 24 public : 26 GaussnIC :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 28 gok = l ; gmy_ ["length_scale"] = 1; 29 gmy_ ["magnitude"] = 100 ; 32 gvtu ~ GaussnIC () {} 34  SPrݔty ( rg ty ,  v ) 37 i gmy_ . fd ty ) = my_ . d () ) (-1) ; 38 gmy_ [ ty ] = v ; 42 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 44  comm () 46 i gBasicIC :: dcheck = ue ) 48 ok = ue ; 57 gx0 = 0.5*( BasicIC :: xlo + BasicIC:: xhi ) ; 58 gy0 = 0.5*( BasicIC :: ylo + BasicIC:: yhi ) ; 59 gz0 = 0.5*( BasicIC :: zlo + BasicIC:: zhi ) ; 60 gngth_s = my_ [ "length_scale" ] ; 61 gmagnude = my_ [ "magnitude" ] ; 68  compu ( x ,  y ,  z ,  iv ) 70  gr = :: sq ( x - x0 )*(x-x0+ ( y - y0 )*(y-y0+ ( z - z0 )*(z-z0) ) ; 71  gr0 = r ; 72  gc1 = :: exp - ( r0 / ngth_s ) * (r0 /ength_scale) ); 73  gdummy = magnude * c1 ; 74  ( gdummy ) ; 77 give : 79 bo ok ; 80  gngth_s , gmagnude , gx0 , gy0 , gz0 ; 81 :: m < rg , > gmy_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/H2Air.h 5 #ide H2ASn 6  #H2ASn ) 8  ~ 9  ~ 10  ~"mh.h " 11  ~ 13  ~"BasicIC.h " 15 mea gICFay { 16 as cH2A_01 : public vtu BasicIC 18 public : 20 H2A_01 :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 22 gok = l ; gmy_ ["length_scale"] = 0.5; 23 gmy_ ["magnitude"] = 10.0 ; 26 gvtu ~ H2A_01 () {} 28  SPrݔty ( rg ty ,  v ) 31 i gmy_ . fd ty ) = my_ . d () ) (-1) ; 32 gmy_ [ ty ] = v ; 36 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 38  comm () ; 40  compu ( x ,  y ,  z ,  iv ) ; 42 give : 44 bo ok ; 45  gngth_s , gmagnude , gx1 , gy1 , gx2 , gy2 , gx3 , gy3 ; 46  gYH2_f , gYO2_f , gYN2_f , gTf ; 47 :: m < rg , > gmy_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/H2AirOneHotSpot.h 5 #ide H2AOHSpSn 6  #H2AOHSpSn ) 8  ~ 9  ~ 10  ~"mh.h " 11  ~ 13  ~"BasicIC.h " 15 mea gICFay { 16 as cH2AOHSp : public vtu BasicIC 18 public : 20 H2AOHSp :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 22 gok = l ; gmy_ ["length_scale"] = 0.5; 23 gmy_ ["magnitude"] = 10.0 ; 26 gvtu ~ H2AOHSp () {} 28  SPrݔty ( rg ty ,  v ) 31 i gmy_ . fd ty ) = my_ . d () ) (-1) ; 32 gmy_ [ ty ] = v ; 36 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 38  comm () ; 40  compu ( x ,  y ,  z ,  iv ) ; 42 give : 44 bo ok ; 45  gngth_s , gmagnude , gxmid , gymid ; 46  gYH2_f , gYO2_f , gYN2_f , gTf ; 47 :: m < rg , > gmy_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/H2AirRandomKernels.h 10 #ide H2ARK 11  #H2ARK ) 13  ~ 14  ~ 15  ~"mh.h " 16  ~ 18  ~"BasicIC.h " 20 mea gICFay { 21 as cH2ARdomKls : public vtu BasicIC 23 public : 25 H2ARdomKls :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 27 gok = l ; gmy_ ["length_scale"] = 1.0; 28 gmy_ ["magnitude"] = 100.0 ; 30 gGamma = 0; 31 gX = 0; gY = 0; gZ = 0; 34 gvtu ~ H2ARdomKls () 36 gde [] gGamma ; d[] gX ; d[] gY ; 40  SPrݔty ( rg ty ,  v ) 43 i gmy_ . fd ty ) = my_ . d () ) (-1) ; 44 gmy_ [ ty ] = v ; 48 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 50  comm () ; 52  compu ( x ,  y ,  z ,  iv ) ; 55 give : 57  gndom ( xlo ,  ylo ,  zlo ); 59 bo gok ; 60  gngth_s , gmagnude , gx1 , gy1 , gx2 , gy2 , gx3 , gy3 ; 61  gYH2_f , gYO2_f , gYN2_f , gTf ; 63  gTm , gTmax ; 64  gMx , gMy , gMz ; 65  gdx , gdy , gdz ; 66  ghx , ghy , ghz , gd ; 67 * gGamma ; * gX , * gY , * gZ ; 68  gbufr_size ; 69 :: m < rg , > gmy_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/ICFactory.h 17 #ide ICFaySn 18  #ICFaySn ) 20  ~"AtomiicIC.h " 22  ~ 23  ~ 24  ~ 25 usg mea gd ; 27 as cIC_Fay 30 mpublic : 32 $IC_Fay () {} 34 ~ `IC_Fay () ; 36 AtomiicIC * ` ( rg ty ) ; 38  `deroyA () ; 40  $RemoveFromR ( h { l_my_ics [h] = 0 ; } } 42 give : 44 ve < AtomiicIC *> l_my_ics ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/ICcomponent_JR.h 10 #ide __ICcompڒtHSn__ 11  #__ICCompڒtHSn__ ) 14  ~"c.h " 15  ~"dPts.h " 18  ~"jc++/jc++.h " 19  ~"jc++/ut/jc++ut.h " 20  ~"ms/msSr.h " 21  ~"pt/sutIs.h " 24  ~"AMRPt.h " 25  ~"VeFldVb.h " 28  ~ 29  ~ 30  ~ 31  ~ 32 usg mea gd ; 35  ~"ICPt.h " 38  ~"AtomiicIC.h " 39  ~"ICFay.h " 42  ~"CONV_NS.h " 46 ass gICcompڒt_JR : public vtu CONV_NS ( Compڒt ), 47 public vtu gICPt 49 gpublic : 51 ICcompڒt_JR () ; 53 gvtu ~ ICcompڒt_JR () ; 54 vtu  tSvis CONV_NS ( Svis * pSvc ); 56  SInlCdis ( VeFldVb ** pVFV ,  nVFV ); 58 give : 60  tupPams () ; 61  () ; 62  GaussnIC ( x ,  y ,  z , cڡ  iv ) ; 63  ODFrtIC ( x ,  y ,  z , cڡ  iv ) ; 64  SCose ( x ,  y ,  z , cڡ  iv ); 65  RiDiffusi ( x ,  y ,  z ,  iv ) ; 66  l ( cڡ  ndims , cڡ * p_lbbc , cڡ * p_ubbc , cڡ * p_she , 67 * p_da , cڡ  nvs , cڡ  cr_dx , 68 cڡ  cr_dy , cڡ  cr_dz , cڡ  xm , 69 cڡ  xmax , cڡ  ym , cڡ  ymax , cڡ  zm , 70 cڡ  zmax ); 71  fdx (cڡ  i , cڡ  j , cڡ  k , cڡ  iv , cڡ  nx , 72 cڡ  ny , cڡ  nz , cڡ  nvs ) 75  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 78 bo gis_lized , gis_hod ; 79  gmagnude , gngth_s ; 80  gx0 , gy0 , gz0 ; 81  gmy_oc ; 83 AMRPt * gp_AMRPt ; 84 * gp_doma_exs ; 85 * gp_cr_suti , gmax_v , gdim , gf_ ; 88 CONV_NS ( Svis * gpSvc ; 91 CfigubPamPt * g ; 92 DoubPam * gp_mag_m , * gp_ngth_m , * gp_x0_m , * gp_y0_m , 93 * gp_z0_m ; 94 SgPam * gp_ty_of_ic_m ; 96 IC_Fay gICF ; 97 AtomiicIC * gpAIC ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/OneDFrontIC.h 5 #ide ODFrtICSn 6  #ODFrtICSn ) 8  ~ 9  ~ 10  ~"mh.h " 12  ~"BasicIC.h " 14 mea gICFay { 15 as cODFrtIC : public vtu BasicIC 17 public : 19 ODFrtIC :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 20 { gok = l ; gngth = 1;} 22 gvtu ~ ODFrtIC () {} 24  SPrݔty ( rg ty ,  v ) 26 i( gty ="ngth_s"{ ngth = v ; (0) ; } 30 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 32  comm () 34 i gBasicIC :: dcheck = ue ) 36 ok = ue ; gx0 = 0.5*( BasicIC :: xlo + BasicIC:: xhi ) ;  (0) ; 41  compu ( x ,  y ,  z ,  iv ) 43  gr = ( x - x0 / ngth ; 44  gs = 0.5 * ( 1.0 - nh r ) ) ; 45  gs ); 48 give : 50 bo ok ; 51  gngth , gx0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/ReactionDiffusion.h 5 #ide RiDiffusiSn 6  #RiDiffusiSn ) 8  ~ 9  ~ 10  ~"mh.h " 11  ~ 13  ~"BasicIC.h " 15 mea gICFay { 16 as cRiDiffusi : public vtu BasicIC 18 public : 20 RiDiffusi :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 22 gok = l ; gmy_ ["length_scale"] = 0.5; 23 gmy_ ["magnitude"] = 10.0 ; 26 gvtu ~ RiDiffusi () {} 28  SPrݔty ( rg ty ,  v ) 31 i gmy_ . fd ty ) = my_ . d () ) (-1) ; 32 gmy_ [ ty ] = v ; 36 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 38  comm () 40 i gBasicIC :: dcheck = ue ) 42 ok = ue ; 43  gdx = - BasicIC :: xlo + BasicIC:: xhi ; 44  gdy = - BasicIC :: ylo + BasicIC:: yhi ; 45  gdz = - BasicIC :: zlo + BasicIC:: zhi ; 46 gx1 = BasicIC :: xlo + 0.25* dx ; gy1 = BasicIC:: ylo + 0.2* dy ; 47 gx2 = BasicIC :: xlo + 0.5* dx ; gy2 = BasicIC:: ylo + 0.75* dy ; 48 gx3 = BasicIC :: xlo + 0.75* dx ; gy3 = BasicIC:: ylo + 0.2* dy ; 50 gngth_s = my_ [ "length_scale" ] ; 51 gmagnude = my_ [ "magnitude" ] ; 58  compu ( x ,  y ,  z ,  iv ) 60  gdummy ; 61  #EPS 0.01 ) 65 i giv == 0 ) 67  r1 = :: sq ( x - x1 )*(x - x1+ ( y - y1 )*(y - y1) ) ; 68  gr2 = :: sq ( x - x2 )*(x - x2+ ( y - y2 )*(y - y2) ) ; 69  gr3 = :: sq ( x - x3 )*(x - x3+ ( y - y3 )*(y - y3) ) ; 71 gdummy = EPS + :: exp - ( r1 *1/ ( ngth_s *length_scale) ) 72 + :: exp - ( r2 *2/ ( ngth_s *length_scale) ) 73 + :: exp - ( r3 *3/ ( ngth_s *length_scale) ) ; 74 gdummy = magnude * dummy ; 76 i( giv =1|| ( iv == 2) ) 77 dummy = 0.5 ; 79 gdummy = 0.0 ; 81 ( gdummy ) ; 84 give : 86 bo ok ; 87  gngth_s , gmagnude , gx1 , gy1 , gx2 , gy2 , gx3 , gy3 ; 88 :: m < rg , > gmy_ ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/include/SinCosine.h 5 #ide SCoseSn 6  #SCoseSn ) 8  ~ 9  ~ 10  ~"mh.h " 12  ~"BasicIC.h " 14 mea gICFay { 15 as cSCose : public vtu BasicIC 17 public : 19 SCose :: IC_Fay * icf ,  hd : BasicIC (icf, handle) 20 { gpi = 4.0 * (1.0); gok = l ; gngth = 1;} 22 gvtu ~ SCose () {} 24  SPrݔty ( rg ty ,  v ) 26 i( gty ="ngth_s"{ ngth = v ; (0) ; } 30 vtu  SPrݔty :: rg ty ,  v ) { (0) ; } 32  comm () 34 i gBasicIC :: dcheck = ue { ok =rue ;  (0) ; } 38  compu ( x ,  y ,  z ,  iv ) 40  gxx = x - BasicIC :: xlo ;  gyy = y - BasicIC:: ylo ; 41  gzz = z - BasicIC :: zlo ; 43  gsw = :: s 2* pi * xx / ngth ) * ::s2*pi* yy /length ) * 44 :: s 2* pi * zz / ngth ) ; 45  ( gsw ) ; 48 give : 50 bo ok ; 51  gngth , gpi ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/CH4Air.cpp 5  ~"CH4A.h " 6  ~ 8  gICFay :: CH4A_01 :: $comm () 10 i BasicIC :: dcheck = l ) (-1) ; 12 ok = ue ; 13  dx = - ICFay :: BasicIC :: xlo + ICFay::BasicIC:: xhi ; 14  dy = - ICFay :: BasicIC :: ylo + ICFay::BasicIC:: yhi ; 15  dz = - ICFay :: BasicIC :: zlo + ICFay::BasicIC:: zhi ; 16 x1 = ICFay :: BasicIC :: xlo + 0.25* dx ; y1 = ICFay::BasicIC:: ylo + 0.2* dy ; 17 x2 = ICFay :: BasicIC :: xlo + 0.5* dx ; y2 = ICFay::BasicIC:: ylo + 0.75* dy ; 18 x3 = ICFay :: BasicIC :: xlo + 0.75* dx ; y3 = ICFay::BasicIC:: ylo + 0.2* dy ; 20 ngth_s = my_ [ "length_scale" ] ; 21 magnude = my_ [ "magnitude" ] ; 23  #YCH4_STOICH 0.0527 ) 24  #YO2_STOICH 0.2110 ) 25  #TREF 1000 ) 27 ifam ` ("CH4Air_01.dat") ; 28 i! ) 29 { YCH4_f = YCH4_STOICH ; YO2_f = YO2_STOICH ; Tf = TREF ; } 31 { >> Tf >> YCH4_f >> YO2_f ; in. `o () ; } 35 } } 37  gICFay :: CH4A_01 :: $compu ( x ,  y ,  z ,  iv ) 39  dummy ; 40  #EPS 0.01 ) 42  iv ) 46  r1 = :: `sq ( x - x1 )*(x - x1+ ( y - y1 )*(y - y1) ) ; 47  r2 = :: `sq ( x - x2 )*(x - x2+ ( y - y2 )*(y - y2) ) ; 48  r3 = :: `sq ( x - x3 )*(x - x3+ ( y - y3 )*(y - y3) ) ; 50 dummy = EPS + :: `exp - ( r1 *1/ ( ngth_s *length_scale) ) 51 + :: `exp - ( r2 *2/ ( ngth_s *length_scale) ) 52 + :: `exp - ( r3 *3/ ( ngth_s *length_scale) ) ; 53 dummy = 300 + ( Tf - 300) * dummy ; 58 dummy = YCH4_f * 1.0 ; 63 dummy = YO2_f * 1.0 ; 68  d1 = YCH4_f * 1.0 ;  d2 = YO2_f * 1.0 ; 69 dummy = 1 - d1 - d2 ; 74 dummy = 0.0 ; 78 ( dummy ) ; 79 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/CH4AirOneHotSpot.cpp 5  ~"CH4AOHSp.h " 6  ~ 8  gICFay :: CH4AOHSp :: $comm () 10 i BasicIC :: dcheck = l ) (-1) ; 12 ok = ue ; 13  dx = - ICFay :: BasicIC :: xlo + ICFay::BasicIC:: xhi ; 14  dy = - ICFay :: BasicIC :: ylo + ICFay::BasicIC:: yhi ; 15  dz = - ICFay :: BasicIC :: zlo + ICFay::BasicIC:: zhi ; 16 xmid = ICFay :: BasicIC :: xlo + 0.5* dx ; 17 ymid = ICFay :: BasicIC :: ylo + 0.5* dy ; 19 ngth_s = my_ [ "length_scale" ] ; 20 magnude = my_ [ "magnitude" ] ; 22  #YCH4_STOICH 0.0527 ) 23  #YO2_STOICH 0.2110 ) 24  #TREF 1000 ) 26 ifam ` ("CH4AirOneHotSpot.dat") ; 27 i! ) 28 { YCH4_f = YCH4_STOICH ; YO2_f = YO2_STOICH ; Tf = TREF ; } 30 { >> Tf >> YCH4_f >> YO2_f ; in. `o () ; } 34 } } 36  gICFay :: CH4AOHSp :: $compu ( x ,  y ,  z ,  iv ) 38  dummy ; 39  #EPS 0.01 ) 41  iv ) 45  r = :: `sq ( x - xmid )*(x - xmid+ ( y - ymid )*(y - ymid) ) ; 47 dummy = EPS + :: `exp - ( r */ ( ngth_s *length_scale) ) ; 48 dummy = 300 + ( Tf - 300) * dummy ; 53 dummy = YCH4_f * 1.0 ; 58 dummy = YO2_f * 1.0 ; 63  d1 = YCH4_f * 1.0 ;  d2 = YO2_f * 1.0 ; 64 dummy = 1 - d1 - d2 ; 69 dummy = 0.0 ; 73 ( dummy ) ; 74 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/H2Air.cpp 5  ~"H2A.h " 6  ~ 8  gICFay :: H2A_01 :: $comm () 10 i BasicIC :: dcheck = l ) (-1) ; 12 ok = ue ; 13  dx = - ICFay :: BasicIC :: xlo + ICFay::BasicIC:: xhi ; 14  dy = - ICFay :: BasicIC :: ylo + ICFay::BasicIC:: yhi ; 15  dz = - ICFay :: BasicIC :: zlo + ICFay::BasicIC:: zhi ; 16 x1 = ICFay :: BasicIC :: xlo + 0.25* dx ; y1 = ICFay::BasicIC:: ylo + 0.2* dy ; 17 x2 = ICFay :: BasicIC :: xlo + 0.5* dx ; y2 = ICFay::BasicIC:: ylo + 0.75* dy ; 18 x3 = ICFay :: BasicIC :: xlo + 0.75* dx ; y3 = ICFay::BasicIC:: ylo + 0.2* dy ; 20 ngth_s = my_ [ "length_scale" ] ; 21 magnude = my_ [ "magnitude" ] ; 23  #YH2_STOICH 0.0282285 ) 24  #YO2_STOICH 0.2258193 ) 25  #TREF 1000 ) 27 ifam ` ("H2Air_01.dat") ; 28 i! ) 29 { YH2_f = YH2_STOICH ; YO2_f = YO2_STOICH ; Tf = TREF ; } 31 { >> Tf >> YH2_f >> YO2_f ; in. `o () ; } 35 } } 37  gICFay :: H2A_01 :: $compu ( x ,  y ,  z ,  iv ) 39  dummy ; 40  #EPS 0.01 ) 42  iv ) 46  r1 = :: `sq ( x - x1 )*(x - x1+ ( y - y1 )*(y - y1) ) ; 47  r2 = :: `sq ( x - x2 )*(x - x2+ ( y - y2 )*(y - y2) ) ; 48  r3 = :: `sq ( x - x3 )*(x - x3+ ( y - y3 )*(y - y3) ) ; 50 dummy = EPS + :: `exp - ( r1 *1/ ( ngth_s *length_scale) ) 51 + :: `exp - ( r2 *2/ ( ngth_s *length_scale) ) 52 + :: `exp - ( r3 *3/ ( ngth_s *length_scale) ) ; 53 dummy = 300 + ( Tf - 300) * dummy ; 58 dummy = YH2_f * 1.0 ; 63 dummy = YO2_f * 1.0 ; 68  d1 = YH2_f * 1.0 ;  d2 = YO2_f * 1.0 ; 69 dummy = 1 - d1 - d2 ; 74 dummy = 0.0 ; 78 ( dummy ) ; 79 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/H2AirOneHotSpot.cpp 5  ~"H2AOHSp.h " 6  ~ 8  gICFay :: H2AOHSp :: $comm () 10 i BasicIC :: dcheck = l ) (-1) ; 12 ok = ue ; 13  dx = - ICFay :: BasicIC :: xlo + ICFay::BasicIC:: xhi ; 14  dy = - ICFay :: BasicIC :: ylo + ICFay::BasicIC:: yhi ; 15  dz = - ICFay :: BasicIC :: zlo + ICFay::BasicIC:: zhi ; 16 xmid = ICFay :: BasicIC :: xlo + 0.5* dx ; 17 ymid = ICFay :: BasicIC :: ylo + 0.5* dy ; 19 ngth_s = my_ [ "length_scale" ] ; 20 magnude = my_ [ "magnitude" ] ; 22  #YH2_STOICH 0.0282285 ) 23  #YO2_STOICH 0.2258193 ) 24  #TREF 1000 ) 26 ifam ` ("H2AirOneHotSpot.dat") ; 27 i! ) 28 { YH2_f = YH2_STOICH ; YO2_f = YO2_STOICH ; Tf = TREF ; } 30 { >> Tf >> YH2_f >> YO2_f ; in. `o () ; } 34 } } 36  gICFay :: H2AOHSp :: $compu ( x ,  y ,  z ,  iv ) 38  dummy ; 39  #EPS 0.01 ) 41  iv ) 45  r = :: `sq ( x - xmid )*(x - xmid+ ( y - ymid )*(y - ymid) ) ; 47 dummy = EPS + :: `exp - ( r */ ( ngth_s *length_scale) ) ; 48 dummy = 300 + ( Tf - 300) * dummy ; 53 dummy = YH2_f * 1.0 ; 58 dummy = YO2_f * 1.0 ; 63  d1 = YH2_f * 1.0 ;  d2 = YO2_f * 1.0 ; 64 dummy = 1 - d1 - d2 ; 69 dummy = 0.0 ; 73 ( dummy ) ; 74 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/H2AirRandomKernels.cpp 8  ~"H2ARdomKls.h " 9  ~ 12  ~ 13  ~ 14  ~ 16  gICFay :: H2ARdomKls :: $comm () 18 i BasicIC :: dcheck = l ) (-1) ; 20 ok = ue ; 21 dx = - ICFay :: BasicIC :: xlo + ICFay::BasicIC:: xhi ; 22 dy = - ICFay :: BasicIC :: ylo + ICFay::BasicIC:: yhi ; 23 dz = - ICFay :: BasicIC :: zlo + ICFay::BasicIC:: zhi ; 25  #YH2_STOICH 0.0282285 ) 26  #YO2_STOICH 0.2258193 ) 27  #TREF 300 ) 28  #TmREF 300 ) 29  #TmaxREF 2000 ) 30  #Mx_f 12 ) 31  #My_f 12 ) 32  #Mz_f 1 ) 33  #buf_size_f 15 ) 36 ifam ` ("H2AirRandomKernels.dat") ; 37 i! ) 39 YH2_f = YH2_STOICH ; YO2_f = YO2_STOICH ; Tm = TmREF ; 40 Tmax = TmaxREF ; Tf = TREF ; Mx = Mx_f ; My = My_f ; Mz = Mz_f ; 41 bufr_size = buf_size_f ; 45 >> Tf >> Tm >> Tmax ; 46 >> YH2_f >> YO2_f ; 47 >> Mx >> My >> Mz ; 48 >> bufr_size ; 49 . `o () ; 52  ag = `gndom ( xlo , ylo , zlo ); 53 i( ag ==-2)  (-2); 57 } } 59  gICFay :: H2ARdomKls :: $compu ( x ,  y ,  z ,  iv ) 61  dummy ; 63  iv ) 67  r ; 69  i =0; i<( Mx * My );i++){ 70 r = :: `sq ( x - X [ i ])*(x - X[i]+ ( y - Y [i])*(y - Y[i]) ) ; 71 dummy = dummy + Gamma [ i ]*:: `exp - ( r */ ( d *delta) ) ); 73 i( dummy < Tf ) dummy = Tref; 78 dummy = YH2_f * 1.0 ; 83 dummy = YO2_f * 1.0 ; 88  d1 = YH2_f * 1.0 ;  d2 = YO2_f * 1.0 ; 89 dummy = 1 - d1 - d2 ; 94 dummy = 0.0 ; 98 ( dummy ) ; 99 } } 101  gICFay :: H2ARdomKls :: $gndom ( xlo ,  ylo , 102  zlo ) 105 i Gamma !0 ) de [] Gamm; Gamm w [ Mx * My ]; 106 i X !0 ) de [] X ; X = w [ Mx * My ]; 107 i Y !0 ) de [] Y ; Y = w [ Mx * My ]; 110  dx_u , dy_u ; 111 dx_u = dx - 2.0 * ( bufr_size / 100.0) * dx ; 112 dy_u = dy - 2.0 * ( bufr_size / 100.0) * dy ; 114 hx = dx_u /( Mx -1); 115 hy = dy_u /( My -1); 116 hz = 0; 119 if(( hx / hy )<0.9) | ((hx/hy)>1.1) ) 121 << "E mesgom ICFay::H2ARdomKls::gndom " << dl ; 122 << "Thhx/hyiibad. hx/hy = " << hx / hy << dl ; 123 << "Chgnumb okl(Mx oMy)" << dl ; 124 << dl ; 128 d = 0.3* `m ( hx , hy ); 134  xm1 , xmax1 ; 135  ym1 , ymax1 ; 137 xm1 = ( bufr_size /100.0 ) * dx ; 138 xmax1 = ( 1.0 - bufr_size /100.0 ) * dx ; 140 ym1 = ( bufr_size /100.0 ) * dy ; 141 ymax1 = ( 1.0 - bufr_size /100.0 ) * dy ; 143  k =0;k<( Mx * My );k++) 145 Gamma [ k ] = Tm + `nd ()%( Tmax -Tmin); 146 X [ k ] = xm1 + ( xmax1 -xm1)* `nd ()/ RAND_MAX ; 147 Y [ k ] = ym1 + ( ymax1 -ym1)* `nd ()/ RAND_MAX ; 166 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/ICComponent_wrapper.cpp 1  ~"ICcompڒt_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _ICcompڒt_JR () 8 CONV_NS ( Compڒt * wk ; 9 ICcompڒt_JR * compڒt ; 10 compڒt = w ICcompڒt_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_ICcomponent_JR ICcomponent_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/ICFactory.cpp 1  ~"ICFay.h " 2  ~"GaussnIC.h " 3  ~"ODFrtIC.h " 4  ~"RiDiffusi.h " 5  ~"SCose.h " 6  ~"H2A.h " 7  ~"H2AOHSp.h " 8  ~"H2ARdomKls.h " 9  ~"CH4A.h " 17 :: AtomiicIC * IC_Fay :: $ ( rg ty ) 19  dex = l_my_ics . `size () ; 20 i( ty == "GaussianIC") 22 ICFay :: GaussnIC * p = w ICFay:: `GaussnIC ( this , dex ) ; 23 l_my_ics . `push_back p ) ; 24 p -> `addRef (); 25  dymic_ < :: AtomiicIC * > ( p ) ) ; 28 i( ty == "OneDFrontIC") 30 ICFay :: ODFrtIC * p = w ICFay:: `ODFrtIC ( this , dex ) ; 31 l_my_ics . `push_back p ) ; 32 p -> `addRef (); 33  dymic_ < :: AtomiicIC * > ( p ) ) ; 36 i( ty == "SinCosine") 38 ICFay :: SCose * p = w ICFay:: `SCose ( this , dex ) ; 39 l_my_ics . `push_back p ) ; 40 p -> `addRef (); 41  dymic_ < :: AtomiicIC * > ( p ) ) ; 44 i( ty == "ReactionDiffusion") 46 ICFay :: RiDiffusi * p = w ICFay:: `RiDiffusi ( this , dex ) ; 47 l_my_ics . `push_back p ) ; 48 p -> `addRef (); 49  dymic_ < :: AtomiicIC * > ( p ) ) ; 52 i( ty == "H2Air_01") 54 ICFay :: H2A_01 * p = w ICFay:: `H2A_01 ( this , dex ) ; 55 l_my_ics . `push_back p ) ; 56 p -> `addRef (); 57  dymic_ < :: AtomiicIC * > ( p ) ) ; 60 i( ty == "H2AirOneHotSpot") 62 ICFay :: H2AOHSp * p = w ICFay:: `H2AOHSp ( this , dex ) ; 63 l_my_ics . `push_back p ) ; 64 p -> `addRef (); 65  dymic_ < :: AtomiicIC * > ( p ) ) ; 68 i( ty == "H2AirRandomKernels") 70 ICFay :: H2ARdomKls * p = 71 w ICFay :: `H2ARdomKls ( this , dex ) ; 72 l_my_ics . `push_back p ) ; 73 p -> `addRef (); 74  dymic_ < :: AtomiicIC * > ( p ) ) ; 77 i( ty == "CH4Air_01") 79 ICFay :: CH4A_01 * p = w ICFay:: `CH4A_01 ( this , dex ) ; 80 l_my_ics . `push_back p ) ; 81 p -> `addRef (); 82  dymic_ < :: AtomiicIC * > ( p ) ) ; 85 cout << " ICcompڒt, ICFay::(IC oty " << ty 86 << " idaba. Doghg,ug wh NULL " << dl ; 89 } } 91 gIC_Fay ::~ $IC_Fay () 93 `deroyA () ; 94 } } 96  gIC_Fay :: $deroyA () 98 ve < AtomiicIC *>:: p ; 99  p = l_my_ics . `beg (; !l_my_ics. `d ();++) 101 AtomiicIC * a = (* p ) ; 102 i( a !0 ) de ; 104 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/ICcomponent.cpp 8  ~ 9  ~"ICcompڒt_JR.h " 11 gICcompڒt_JR :: $ICcompڒt_JR () 13 is_lized = l ; 14 is_hod = l ; 15 pAIC = 0 ; 16 } } 18 gICcompڒt_JR ::~ $ICcompڒt_JR () 20 i is_lized = ue ) 22 de p_ty_of_ic_m ; 23 de p_mag_m ; 24 de p_ngth_m ; 25 pAIC -> `deRef () ; 28 p_AMRPt = NULL ; pSvc = NULL ; = NULL ; 30 is_hod = l ; 31 is_lized = l ; 33 p_doma_exs = NULL ; p_cr_suti = NULL ; 34 } } 36  gICcompڒt_JR :: tSvis CONV_NS ( Svis * svc ) 38 i svc = NULL ) 40 pSvc -> aPt ("MyMesh") ; 41 gpSvc -> moveProvidesPt ("TempICPort") ; 42 gpSvc -> moveProvidesPt ("CONFIG") ; 47 gthis -> gpSvc = svc ; 50 gsvc -> giUsPt svc -> PtInfo ("cSvc", 52 CfigubPamFay * gf = 53 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 54 CHECKDC f ); 55 g = f -> CfigubPamPt (); 56 gsvc -> addProvidesPt ( , 57 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 58 tupPams () ; 59 gsvc -> aPt ("cSvc"); 60 gsvc -> uegiUsPt ("cSvc"); 63 gsvc -> addProvidesPt ( this , svc -> PtInfo ("TempICPort", "ICPort", 0) ); 66 gsvc -> giUsPt svc -> PtInfo ("MyMesh", "AMRPort", 0) ) ; 71  gICcompڒt_JR :: $tupPams () 73 p_ty_of_ic_m = w `SgPam ("Initial_Condition_Parameter", 78 p_mag_m = w `DoubPam ("Magnitude_of_IC_Parameter", 83 p_ngth_m = w `DoubPam ("Length_Scale_Parameter", 88 p_x0_m = w `DoubPam ("X-coord", "X-coord of IC frame ofeference", 91 p_y0_m = w `DoubPam ("Y-coord", "Y-coord of IC frame ofeference", 94 p_z0_m = w `DoubPam ("Z-coord", "Z-coord of IC frame ofeference", 97 -> `tBchT (" Initial Condition Parameters " ); 98 -> `tGroupName ( " Simple IC Parameters" ); 99 -> `addReque p_mag_m ); 100 -> `addReque p_ngth_m ); 101 -> `addReque p_ty_of_ic_m ) ; 102 -> `addReque p_x0_m ); 103 -> `addReque p_y0_m ); 104 -> `addReque p_z0_m ); 105 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/IC/src/ICcomponent_workers.cpp 8  ~ 9  ~ 10  ~ 11  ~"ICcompڒt_JR.h " 13  gICcompڒt_JR :: $SInlCdis ( VeFldVb ** pVFV ,  nVFV ) 15 i is_lized = l ) ` () ; 17  cr_nx = p_cr_suti [0] ; 18  cr_ny = p_cr_suti [1] ; 19  cr_nz = p_cr_suti [2] ; 21  xm = p_doma_exs [0] ; 22  xmax = p_doma_exs [1] ; 23  ym = p_doma_exs [2] ; 24  ymax = p_doma_exs [3] ; 25  zm = p_doma_exs [4] ; 26  zmax = p_doma_exs [5] ; 28  cr_dx = ( xmax - xm / cr_nx ; 29  cr_dy = ( ymax - ym / cr_ny ; 30  cr_dz = ( zmax - zm / cr_nz ; 32   iVFV = 0; iVFV < nVFV ; iVFV++) 34 VeFldVb * p_lol_vfv = (*( pVFV + iVFV )) ; 36 i p_lol_vfv = NULL ) 37 << " ICcomponent_JR::SetInitialConditions(): Errorrrr ! on Proc " 38 << my_oc << dl ; 40 i my_oc == 0 ) 42 cout << " ICcomponent_JR::SetInitialConditions Coarse Resolution for : " 43 << p_lol_vfv -> `g_me () << " is " 44 << cr_nx << " X " << cr_ny << " X " << cr_nz << dl ; 45 cout << " Thty oIC = " << p_ty_of_ic_m -> vue << dl ; 48  ngrids = p_lol_vfv -> `g_numb_of_comp_grids (); 49  max_vs_now = p_AMRPt -> `GC_g_fe_v () ; 50   l = 0; < ( max_vs_now +1);++) 52  t = p_AMRPt -> `GC_cut_time l , ACEMa ) ; 53   igrid = 0; igrid < ngrids ; igrid++ ) 55 i p_lol_vfv -> `exis ( t , l , igrid = ue ) 57 cڡ * p_lbbc = ( p_lol_vfv -> `g_low_bbc ( t , l , igrid , ACEMa ) ) ; 58 cڡ * p_ubbc = ( p_lol_vfv -> `g_u_bbc ( t , l , igrid , ACEMa ) ) ; 59 cڡ * p_das = ( p_lol_vfv -> `g_da_y_size ( t , l , igrid , ACEMa ) ) ; 60 * p_da = ( p_lol_vfv -> `g_da ( t , l , igrid , ACEMa ) ) ; 61 #ide NDEBUG 62 cout << " Grid # " << igrid << "ev = " << l << "grid" << ngrids << dl ; 63 cout << " LBBC : " << p_lbbc [0] << " " <<_lbbc[1] << " " <<_lbbc[2] << dl ; 64 cout << " UBBC : " << p_ubbc [0] << " " <<_ubbc[1] << " " <<_ubbc[2] << dl ; 65 cout << " SIZE : " << p_das [0] << " " <<_das[1] << " " <<_das[2] << dl ; 67 `l p_lol_vfv -> `g_dims (), p_lbbc , p_ubbc , p_das , p_da , 68 p_lol_vfv -> `g_ve_size (), cr_dx , cr_dy , cr_dz , xm , 69 xmax , ym , ymax , zm , zmax ); 75 `MPI_Brr p_AMRPt -> `GC_g_compu_nodes_communit () ) ; 77 } } 79  gICcompڒt_JR :: $ () 81 magnude = p_mag_m -> vue ; 82 ngth_s = p_ngth_m -> vue ; 83 x0 = p_x0_m -> vue ; 84 y0 = p_y0_m -> vue ; 85 z0 = p_z0_m -> vue ; 88 p_AMRPt = dymic_ < AMRPt *> pSvc -> `gPt ( "MyMesh" ) ) ; 89 i p_AMRPt = NULL ) cout << " ICcompڒt_JR::(). E ! " << dl ; 90 dim = p_AMRPt -> `GC_g_dimsi (); 91 p_doma_exs = ( p_AMRPt -> `GC_g_doma_exs () ) ; 92 p_cr_suti = ( p_AMRPt -> `GC_g_cr_suti () ) ; 93 max_v = ( p_AMRPt -> `GC_g_max_vs () ) ; 94 f_ = ( p_AMRPt -> `GC_g_femt_ () ) ; 95 my_oc = p_AMRPt -> `GC_g_oc_me () ; 98 pAIC = ICF . ` p_ty_of_ic_m -> vue ) ; 99 * de = p_AMRPt -> `GC_g_doma_exs () ; 100  ndims = p_AMRPt -> `GC_g_dimsi () ; 101 pAIC -> `SDoma ( de , ndims ) ; 102 i pAIC =0 ) { is_lized = l ;  ; } is_lized = ue ; 103 pAIC -> `SPrݔty "ngth_s", ngth_s ) ; 104 pAIC -> `SPrݔty "magnude", magnude ) ; 105 pAIC -> `comm () ; 106 } } 108  gICcompڒt_JR :: $l cڡ  ndims , cڡ * p_lbbc , cڡ * p_ubbc , 109 cڡ * p_she , * p_da , cڡ  nvs , 110 cڡ  cr_dx , cڡ  cr_dy , 111 cڡ  cr_dz , cڡ  xm , cڡ  xmax , 112 cڡ  ym , cڡ  ymax , cڡ  zm , 113 cڡ  zmax ) 116  nx = p_she [0] ;  ny =_she[1] ;  nz =_shape[2] ; 117 i nx <0 )x = 1 ; i ny <0 )y = 1 ; i nz <= 0 )z = 1 ; 118  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1) ; 120 #ide NDEBUG 121 cout << " ICcompڒt_JR::l(rid" << ride << dl ; 122 cout << "x = " << nx << " " << p_lbbc [0] << " " << p_ubbc [0] << dl ; 123 cout << " dim" << ndims << dl ; 124 cout << " Ty oIC = " << p_ty_of_ic_m -> vue << dl << ush ; 127  max_femt = ( `pow ( f_ , (( max_v - 1) ); 128  fe_dx = cr_dx / max_femt ; 129  fe_dy = cr_dy / max_femt ; 130  fe_dz = cr_dz / max_femt ; 131  lol_xm = xm + p_lbbc [0] * fe_dx ; 132  lol_xmax = xm + p_ubbc [0] * fe_dx ; 133  lol_ym = ym + p_lbbc [1] * fe_dy ; 134  lol_ymax = ym + p_ubbc [1] * fe_dy ; 135  lol_zm = zm + p_lbbc [2] * fe_dz ; 136  lol_zmax = zm + p_ubbc [2] * fe_dz ; 138  lol_femt = max_femt / ride ; 139  lol_dx = cr_dx / lol_femt ; 140  lol_dy = cr_dy / lol_femt ; 141  lol_dz = cr_dz / lol_femt ; 143   k = 0 ; k < nz ; k ++ ) 144   j = 0 ; j < ny ; j ++ ) 145   i = 0; i < nx ; i ++ ) 147  lol_x = lol_xm + i * lol_dx ; 148  lol_y = lol_ym + j * lol_dy ; 149  lol_z = lol_zm + k * lol_dz ; 150   iv = 0 ; iv < nvs ; ivar ++ ) 152  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 153 *( p_da + dex pAIC -> `compu ( lol_x , lol_y , lol_z , iv ) ; 156 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/include/AbstractDeriv.h 10 #ide AbDivHSn 11  #AbDivHSn ) 13 mea gNCsCvecS 15 as cAbDiv 17 gpublic : 19 AbDiv (){} 21 vtu ~ AbDiv () {} 23 vtu  Cfigu ( di ,  db ,  upwd , cڡ * she , 24 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 25  maxv ,  f ,  bndryL ,  bndryR ) = 0 ; 27 vtu  SD  d ) = 0 ; 29 vtu  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 30 * ouut ) = 0 ; 32 vtu  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 33 * ouut ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/include/CollocDeriv.h 7 #ide ClocDivHSn 8  #ClocDivHSn ) 10  ~ 11  ~"AbDiv.h " 13 mea gNCsCvecS 15 as cClocDiv : public vtu AbDiv 17 public : 19 ClocDiv () 21 biL = biR = bjL = bjR = bkL = bkR = iiL = iiR = 0 ; 22 gijL = ijR = ikL = ikR = fiL = fiR = fjL = fjR = fkL = 0; 23 gfkR = viL = viR = vjL = vjR = vkL = vkR = dfiL = dfiR = 0 ; 24 gdfjL = dfjR = dfkL = dfkR = 0 ; 25 gd_i = d_b = upw = 0; 27 gd :: ios :: sync_wh_dio () ; 30 gvtu ~ ClocDiv () {} 32  Cfigu ( di ,  db ,  upwd , cڡ * she , 33 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 34  maxv ,  f ,  bndryL ,  bndryR ) ; 36  SD  d ) { gdec = d ; } 38  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 39 * ouut ) ; 41  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 42 * ouut ) ; 44 give : 46  biL , gbiR , gbjL , gbjR , gbkL , gbkR ; 47  giiL , giiR , gijL , gijR , gikL , gikR ; 48  gfiL , gfiR , gfjL , gfjR , gfkL , gfkR ; 49  gviL , gviR , gvjL , gvjR , gvkL , gvkR ; 50  gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR ; 51  gdec ; 53  gd_i , gd_b , gupw ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/include/NonConsConvection_JR.h 14 #ide NCsCveiHSn 15  #NCsCveiHSn ) 19  ~"c.h " 20  ~"dPts.h " 23  ~"jc++/jc++.h " 24  ~"jc++/ut/jc++ut.h " 25  ~"ms/msSr.h " 26  ~"pt/sutIs.h " 29  ~"PchPt.h " 32  ~"AMRPt.h " 35  ~"AbDiv.h " 36  ~"ClocDiv.h " 37  ~"SgDiv.h " 40  ~"CONV_NS.h " 44 ass gNCsCvei_JR : public vtu CONV_NS ( Compڒt ), 45 public vtu gPchPt 47 gpublic : 49 NCsCvei_JR () ; 51 gvtu ~ NCsCvei_JR () ; 53 vtu  tSvis CONV_NS ( Svis * svc ); 55 vtu  SDa (* da_ , cڡ * she ,  nems ,  ndim ) ; 57 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 58 cڡ * p_she ,  nvs , * da2 , 59 cڡ * p_cr_suti , * p_doma_exs , 60  max_v ,  f_ ,  dim ) ; 62 give : 64  tupPams () ; 66  CheckSize  size ) ; 68 le  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz , 69  nvs ) 72  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 75 bo gis_lized , gis_hod , gvocy_t ; 78 CONV_NS ( Svis * gpSvc ; 80 IPam * gpIOrdPam , * gpBoundOrdPam ; 81 SgPam * gpMeshClocTy ; 82 BoPam * gpUpwdPam ; 84 CfigubPamPt * g ; 85 AMRPt * gpAMR ; 88 gNCsCvecS :: AbDiv * pAbsD ; 89 gNCsCvecS :: ClocDiv CDO ; 90 gNCsCvecS :: SgDiv SDO ; 92 * gu , * gv , * gw , * gdummy ; 93  gdummy_size ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/include/StagDeriv.h 7 #ide SgDivHSn 8  #SgDivHSn ) 10  ~ 11  ~"AbDiv.h " 13 mea gNCsCvecS 15 as cSgDiv : public vtu AbDiv 17 public : 19 SgDiv () 21 biL = biR = bjL = bjR = bkL = bkR = iiL = iiR = 0 ; 22 gijL = ijR = ikL = ikR = fiL = fiR = fjL = fjR = fkL = 0; 23 gfkR = viL = viR = vjL = vjR = vkL = vkR = dfiL = dfiR = 0 ; 24 gdfjL = dfjR = dfkL = dfkR = 0 ; 25 gd_i = d_b = upw = 0; 28 gvtu ~ SgDiv () {} 30  Cfigu ( di ,  db ,  upwd , cڡ * she , 31 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 32  maxv ,  f ,  bndryL ,  bndryR ) ; 34  SD  d ) { gdec = d ; } 36  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 37 * ouut ) ; 39  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 40 * ouut ) ; 41 give : 43  biL , gbiR , gbjL , gbjR , gbkL , gbkR ; 44  giiL , giiR , gijL , gijR , gikL , gikR ; 45  gfiL , gfiR , gfjL , gfjR , gfkL , gfkR ; 46  gviL , gviR , gvjL , gvjR , gvkL , gvkR ; 47  gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR ; 48  gdec ; 49  gd_i , gd_b , gupw ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/include/Test.h 5  ~"c.h " 6  ~"dPts.h " 8  ~"PchPt.h " 11  ~"CONV_NS.h " 15 ass gTe : public vtu CONV_NS ( Compڒt ), 16 public vtu $CONV_NS ( GoPt ) 19 public : 21 `Te () ; 23 ~ `Te () ; 25 vtu  `go () ; 27 vtu  `tSvis `CONV_NS ( Svis * svc ) ; 29 ive : 31 `CONV_NS ( Svis * psvc ; 32 } } ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/include/fortran_names.h 4 #i defed ( PGI ) 5  #FORTNAME ( A A## _ ) 7  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/lib/der1_include.h 2 ! X_DER1_CO , gY_DER1_CO , d Z_DER1_CO evue the f gdivive 3 ! gx -, gy - d gz - deis clod nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up wh gAMR 5 ! itis gmd . In rms of gdivives , ed d gupwd 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! The as  the vbs VEL d UPWIND e to rm urs gto 16 ! ecify whh they wt upwded downwded gdivives . 17 ! Ddg the sign of h vocy d whh h ur gques , 18 ! upwd downwd gc , eh upwded c o g 's 19 ! comex $cjuge ( Fourr a is d . Nr bounds , 20 ! is imail to low  l possibls d h ll 21 ! boundy pots th n pْty be boundyot e ways 22 ! d as boundy pots . The boundyot e od usg 23 ! skewed cs ì the wl d ed difns fuh away . 24 ! Upwdg / downwdg is ighy dif  comessib d 25 ! comessib ows . The Κg route mu cho r 26 ! `` vocy ,'' i . e . u , u+ c , u-c, . 28 ! This route has bn t up to be que g . Aays f , df , 29 ! d v e lowed to r the route havg bry y 30 ! bounds . The Κg route mu addiڮly ecify the numb 31 ! of g s th e ovided l six bounds as wl 32 ! as d the exa gi whe divives e eded . Ne 33 ! th n l emts of y df wl be fd wh uful 34 ! divives . This dds wh the ur ecifd th y 35 ! bounds . The key pot is th l ys e dimsied tive to 36 ! the me grid ; somhg h Κg route eds to cce . 38 ! G s e grid pots th have bn added to the cut mesh 39 ! v by ީg vbs om the xt mo cr grid . 40 ! They e ad ound the ri tch to low th avoid 41 ! of n - ed divive ݔs . In the ri ptis ofhe 42 ! computi , GrACE wl dr the sry numb of g s so 43 ! th skewed cs e uesry but ì physil bounds , 44 ! this may n be possib . In the s , e eds to eablish how 45 ! my boundy pots the e d o them ݔly . This is why 46 ! d right rusis of cs e csided . If the ri 47 ! ݔ eds four boundy pots od but the e ly the 48 ! g s th the t rusi is e . This mns th ly one 49 ! boundy pot mu be od wh e - sided divives . 51 ! He 's howhe first derivativesre called: 53 ! subroute x_d1_co 54 ! & ( f , df , dx , dy , dz , v , upwd , di , db , 55 ! & biL , biR , bjL , bjR , bkL , bkR , 56 ! & fiL , fiR , fjL , fjR , fkL , fkR , 57 ! & iiL , iiR , ijL , ijR , ikL , ikR , 58 ! & viL , viR , vjL , vjR , vkL , vkR , 59 ! & dfiL , dfiR , dfjL , dfjR , dfkL , dfkR , 60 ! & x , y , z , , r ) 62 ! INPUT 64 ! f - Funi to be difd 65 ! dx , dy , dz - grid acg x -, y -, d z - deis 66 ! v - vocy ve -> ud  ܛg upwd cs 67 ! upwd - dei -> `upwd (+1,+2 `downwd (-1,-2) 68 ! di - Ord of accucy o the ri ݔ 69 ! db - Fm d of accucy o the wl pot boundy ݔ 70 ! Cuy n ud !! 71 ! fiL - Glob codes  `f ( Le side of x - dei ) 72 ! fiR - Glob codes  `f ( Right side of x - dei ) 73 ! fjL - Glob codes  `f ( Le side of y - dei ) 74 ! fjR - Glob codes  `f ( Right side of y - dei ) 75 ! fkL - Glob codes  `f ( Le side of z - dei ) 76 ! fkR - Glob codes  `f ( Right side of z - dei ) 77 ! dfiL - Glob codes  df `tch ( Le side of x - dei ) 78 ! dfiR - Glob codes  df `tch ( Right side of x - dei ) 79 ! dfjL - Glob codes  df `tch ( Le side of y - dei ) 80 ! dfjR - Glob codes  df `tch ( Right side of y - dei ) 81 ! dfkL - Glob codes  df `tch ( Le side of z - dei ) 82 ! dfkR - Glob codes  df `tch ( Right side of z - dei ) 83 ! iiL - Glob codes  `df ( Le side of x - dei ) 84 ! iiR - Glob codes  `df ( Right side of x - dei ) 85 ! ijL - Glob codes  `df ( Le side of y - dei ) 86 ! ijR - Glob codes  `df ( Right side of y - dei ) 87 ! ikL - Glob codes  `df ( Le side of z - dei ) 88 ! ikR - Glob codes  `df ( Right side of z - dei ) 89 ! viL - Glob codes  `v ( Le side of x - dei ) 90 ! viR - Glob codes  `v ( Right side of x - dei ) 91 ! vjL - Glob codes  `v ( Le side of y - dei ) 92 ! vjR - Glob codes  `v ( Right side of y - dei ) 93 ! vkL - Glob codes  `v ( Le side of z - dei ) 94 ! vlR - Glob codes  `v ( Right side of z - dei ) 95 ! biL - Numb of g s side o x - dei 96 ! biR - Numb of g s right side o x - dei 97 ! bjL - Numb of g s side o y - dei 98 ! bjR - Numb of g s right side o y - dei 99 ! bkL - Numb of g s side o z - dei 100 ! bkR - Numb of g s right side o z - dei 101 ! x - Is the x - dei riodic -> (0 no , (1 yes 102 ! y - Is the y - dei riodic -> (0 no , (1 yes 103 ! z - Is the z - dei riodic -> (0 no , (1 yes 104 ! - E mesge - S bow 106 ! OUTPUT 108 ! df - Difd Funi 110 ! LOCAL 112 ! oL - Le rusi of ri c 113 ! oR - Right rusi of ri c 114 ! omax - Maximum rusi of ri c 115 ! roL - N rusi of ri c 116 ! roR - N right rusi of ri c 117 ! width - Tٮ width of ri c 118 ! - Exic ed difn c cff . ` ( i +/- 1) 119 ! be - Exic ed difn c cff . ` ( i +/- 2) 120 ! - Exic ed difn c cff . ` ( i +/- 3) 121 ! de - Exic ed difn c cff . ` ( i +/- 4) 122 ! dL - Exic skewed difn c cff . ` ( i - 4) 123 ! cL - Exic skewed difn c cff . ` ( i - 3) 124 ! bL - Exic skewed difn c cff . ` ( i - 2) 125 ! aL - Exic skewed difn c cff . ` ( i - 1) 126 ! Up - Exic skewed difn c cff . ` ( i ) 127 ! aR - Exic skewed difn c cff . ` ( i + 1) 128 ! bR - Exic skewed difn c cff . ` ( i + 2) 129 ! cR - Exic skewed difn c cff . ` ( i + 3) 130 ! dR - Exic skewed difn c cff . ` ( i + 4) 131 ! x , y , zbeg - Begng dex  ri c 132 ! x , y , zd - Endg dex  ri c 133 ! piL - Glob codes  df + g `s ( Le side of x - dei ) 134 ! piR - Glob codes  df + g `s ( Right side of x - dei ) 135 ! pjL - Glob codes  df + g `s ( Le side of y - dei ) 136 ! pjR - Glob codes  df + g `s ( Right side of y - dei ) 137 ! pkL - Glob codes  df + g `s ( Le side of z - dei ) 138 ! pkR - Glob codes  df + g `s ( Right side of z - dei ) 139 ! piL - Glob codes  df + g `s ( Le side of x - dei ) 141 ! OPTIONS : 142 ! Cd Difns 143 ! 2E [ di =2, db =1, upwd =0] (1-2E-1) 144 ! 4E [ di =4, db =3, upwd =0] (3,3-4E-3,3) 145 ! 6E [ di =6, db =3, upwd =0] (3,3,4-6E-4,3,3) 146 ! 8E [ di =8, db =3, upwd =0] (3,3,4,6-8E-6,4,3,3) 147 ! $UpWd ( Downwd Difns 148 ! 3U [ di =3, db =3, upwd =(+/-1)] (3,3-3U-3,3) 149 ! 4U [ di =4, db =3, upwd =(+/-1)] (3,3,4-4U-4,3,3) 150 ! 5U [ di =5, db =3, upwd =(+/-1)] (3,3,4-5U-4,3,3) 151 ! 6U [ di =6, db =3, upwd =(+/-1)] (3,3,4,6-6U-6,4,3,3) 152 ! 7U [ di =7, db =3, upwd =(+/-1)] (3,3,4,6-7U-6,4,3,3) 153 ! Sur - $UpWd ( Downwd Difns 154 ! 4UU [ di =4, db =3, upwd =(+/-2)] (3,3,4,4-4U-4,4,3,3) 155 ! 5UU [ di =5, db =3, upwd =(+/-2)] (3,3,4,4-5U-4,4,3,3) 157 ! ne : Fm ovl d equs MIN [ di , db +1]. 159 ! Iny wrn by Chris Kdy Dec . 2001 160 ! Rewrn by Chris Kdy Feb . 2002 163 ! Ieg uff 165 imic ne 167 g oL , oR , omax , width 168 g roLx , roLy , roLz 169 g roRx , roRy , roRz 170 g i , j , k 171 g di , db 172 g 173 g x , y , z 174 g xbeg , ybeg , zbeg 175 g xd , yd , zd 176 g sign , upwd 177 g biL , biR , bjL , bjR , bkL , bkR 178 g fiL , fiR , fjL , fjR , fkL , fkR 179 g iiL , iiR , ijL , ijR , ikL , ikR 180 g piL , piR , pjL , pjR , pkL , pkR 181 g viL , viR , vjL , vjR , vkL , vkR 182 g dfiL , dfiR , dfjL , dfjR , dfkL , dfkR 184 *8 `f fiL : fiR , fjL : fjR , fkL : fkR ) 185 *8 `df ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 186 *8 `v viL : viR , vjL : vjR , vkL : vkR ) 187 *8 dx , dy , dz 188 *8 rdx , rdy , rdz 189 *8 , be , , de 190 *8 dL , cL , bL , aL , Up , aR , bR , cR , dR 191 *8 `bnd1A (2) 192 *8 `bnd3A (4) 193 *8 `bnd3B (4) 194 *8 `bnd4C (5) 195 *8 `bnd6D (7) 197 cha *60 r @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/lib/der1_include_st.h 2 ! X_DER1_ST , gY_DER1_ST , d Z_DER1_ST evue the f gdivive 3 ! gx -, gy - d gz - deis agged nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up wh gAMR 5 ! itis gmd . In rms of gdivives , ly ged 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! It is assumed th the comg gvb , gf , comes h ggrid 16 ! gpots ..., gx_ { gi -1}, x_{i}, x_{i+1}, ... d th df is giv g 17 ! the grid gpots ..., gx_ { gi -1/2}, x_{i+1/2}, x_{i+3/2}, ... The gly 18 ! rub he is the ourmo gpots . If N vues of f r gthis 19 ! groute , the tul thg to d is ouut gN -1 vues of gdf . 21 ! This route has bn t up to be que gg . Aays f d gdf 22 ! e lowed to r the route havg bry gy 23 ! gbounds . The Κg route mu addiڮly ecify the gnumb 24 ! of g s th e ovided l six bounds as gwl 25 ! as d the exa gi whe divives e geded . gNe 26 ! th n l emts of y df wl be fd wh guful 27 ! gdivives . This dds wh the ur ecifd th gy 28 ! gbounds . The key pot is th l ys e dimsied tive gto 29 ! the me ggrid ; somhg h Κg route eds to gcce . 31 ! G s e grid pots th have bn added to the cut gmesh 32 ! v by ީg vbs om the xt mo cr ggrid . 33 ! They e ad ound the ri tch to low th gavoid 34 ! of gn - ed divive gݔs . In the ri ptis o gthe 35 ! gcomputi , GrACE wl dr the sry numb of g s gso 36 ! th skewed cs e uesry but ì physil gbounds , 37 ! this may n be gpossib . In the gs , e eds to eablish ghow 38 ! my boundy pots the e d o them gݔly . This is gwhy 39 ! d right rusis of cs e gcsided . If the gri 40 ! ݔ eds four boundy pots od but the e ly gthe 41 ! g s th the t rusi is ge . This mns th ly one 42 ! boundy pot mu be od wh ge - sided gdivives . 44 ! gHe 's howhe first derivativesre called: 46 ! subroute gx_d1_ 47 ! & ( gf , gdf , gdx , gdy , gdz , gdi , gdb , 48 ! & gbiL , gbiR , gbjL , gbjR , gbkL , gbkR , 49 ! & gfiL , gfiR , gfjL , gfjR , gfkL , gfkR , 50 ! & giiL , giiR , gijL , gijR , gikL , gikR , 51 ! & gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR , 52 ! & gx , gy , gz , g , gr ) 54 ! gINPUT 56 ! gf - Funi to be gdifd 57 ! gdx , gdy , gdz - grid acg gx -, gy -, d gz - gdeis 58 ! gdi - Ord of accucy o the ri gݔ 59 ! gdb - Fm d of accucy o the wl pot boundy gݔ 60 ! Cuy n gud !! 61 ! gfiL - Glob codes  f ( Le side of x - dei ) 62 ! gfiR - Glob codes  f ( Right side of x - dei ) 63 ! gfjL - Glob codes  f ( Le side of y - dei ) 64 ! gfjR - Glob codes  f ( Right side of y - dei ) 65 ! gfkL - Glob codes  f ( Le side of z - dei ) 66 ! gfkR - Glob codes  f ( Right side of z - dei ) 67 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 68 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 69 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 70 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 71 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 72 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 73 ! giiL - Glob codes  df ( Le side of x - dei ) 74 ! giiR - Glob codes  df ( Right side of x - dei ) 75 ! gijL - Glob codes  df ( Le side of y - dei ) 76 ! gijR - Glob codes  df ( Right side of y - dei ) 77 ! gikL - Glob codes  df ( Le side of z - dei ) 78 ! gikR - Glob codes  df ( Right side of z - dei ) 79 ! gviL - Glob codes  v ( Le side of x - dei ) 80 ! gviR - Glob codes  v ( Right side of x - dei ) 81 ! gvjL - Glob codes  v ( Le side of y - dei ) 82 ! gvjR - Glob codes  v ( Right side of y - dei ) 83 ! gvkL - Glob codes  v ( Le side of z - dei ) 84 ! gvlR - Glob codes  v ( Right side of z - dei ) 85 ! gbiL - Numb of g s side o gx - gdei 86 ! gbiR - Numb of g s right side o gx - gdei 87 ! gbjL - Numb of g s side o gy - gdei 88 ! gbjR - Numb of g s right side o gy - gdei 89 ! gbkL - Numb of g s side o gz - gdei 90 ! gbkR - Numb of g s right side o gz - gdei 91 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 92 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 93 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 94 ! g - E gmesge - S gbow 96 ! gOUTPUT 98 ! gdf - Difd gFuni 100 ! gLOCAL 102 ! goL - Le rusi of ri gc 103 ! goR - Right rusi of ri gc 104 ! gomax - Maximum rusi of ri gc 105 ! groL - N rusi of ri gc 106 ! groR - N right rusi of ri gc 107 ! gwidth - Tٮ width of ri gc 108 ! g - Exic ed difn c gcff . ( i +/- 1) 109 ! gbe - Exic ed difn c gcff . ( i +/- 2) 110 ! g - Exic ed difn c gcff . ( i +/- 3) 111 ! gde - Exic ed difn c gcff . ( i +/- 4) 112 ! gx , gy , gzbeg - Begng dex  ri gc 113 ! gx , gy , gzd - Endg dex  ri gc 114 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 115 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 116 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 117 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 118 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 119 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 120 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 122 ! gOPTIONS : 123 ! Cd Difns 124 ! 2E [ di =2, db =1, upwd =0] (1-2E-1) 125 ! 4E [ di =4, db =3, upwd =0] (3,3-4E-3,3) 126 ! 6E [ di =6, db =3, upwd =0] (3,3,4-6E-4,3,3) 127 ! 8E [ di =8, db =3, upwd =0] (3,3,4,6-8E-6,4,3,3) 129 ! gne : Fm ovl d equs MIN [ di , db +1]. 131 ! Iny wrn by Chris Kdy gDec . 2001 132 ! Rewrn by Chris Kdy gFeb . 2002 135 ! Ieg uff 137 imic ne 139 g oL , goR , gomax , width 140 g groLx , groLy , roLz 141 g groRx , groRy , roRz 142 g gi , gj , k 143 g gdi , db 144 g 145 g gx , gy , z 146 g gxbeg , gybeg , zbeg 147 g gxd , gyd , zd 148 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 149 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 150 g giiL , giiR , gijL , gijR , gikL , ikR 151 g gviL , gviR , gvjL , gvjR , gvkL , vkR 152 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , dfkR 153 g gpiL , gpiR , gpjL , gpjR , gpkL , gpkR 155 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 156 *8 df ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 157 *8 dx , gdy , dz 158 g *8 grdx , grdy , rdz 159 g *8 g , gbe , g , de 160 g *8 bnd2A (2) 161 g *8 bnd3A (4) 162 g *8 bnd3B (4) 163 g *8 bnd4C (4) 164 g *8 bnd6D (6) 165 g *8 bnd8E (8) 167 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/lib/der2_include.h 2 ! X_DER2_CO , gY_DER2_CO , d Z_DER2_CO evue the cd gdivive 3 ! gx -, gy - d gz - deis clod nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up gwh 5 ! AMR itis gmd . In rms of gdivives , ged 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! This route has bn t up to be que gg . Aays f gd 16 ! d2f e lowed to r the route havg bry gy 17 ! gbounds . The Κg route mu addiڮly ecify the gnumb 18 ! of g s th e ovided l six bounds as gwl 19 ! as d the exa gi whe divives e geded . gNe 20 ! th n l emts of y df wl be fd wh guful 21 ! gdivives . This dds wh the ur ecifd th gy 22 ! gbounds . The key pot is th l ys e dimsied tive gto 23 ! the me ggrid ; somhg h Κg route eds to gcce . 25 ! G s e grid pots th have bn added to the cut gmesh 26 ! v by ީg vbs om the xt mo cr ggrid . 27 ! They e ad ound the ri tch to low th gavoid 28 ! of gn - ed divive gݔs . In the ri ptis o gthe 29 ! gcomputi , GrACE wl dr the sry numb of g s gso 30 ! th skewed cs e uesry but ì physil gbounds , 31 ! this may n be gpossib . In the gs , e eds to eablish ghow 32 ! my boundy pots the e d o them gݔly . This is gwhy 33 ! d right rusis of cs e gcsided . If the gri 34 ! ݔ eds four boundy pots od but the e ly gthe 35 ! g s th the t rusi is ge . This mns th ly one 36 ! boundy pot mu be od wh ge - sided gdivives . 38 ! gHe 's howhe second derivativesre called: 40 ! subroute x_d2_co ( f , d2f , dx , dy , dz , di , db , 41 ! & biL , biR , bjL , bjR , bkL , bkR , 42 ! & fiL , fiR , fjL , fjR , fkL , fkR , 43 ! & iiL , iiR , ijL , ijR , ikL , ikR , 44 ! & dfiL , dfiR , dfjL , dfjR , dfkL , dfkR , 45 ! & x , y , z , , r ) 47 ! gINPUT 49 ! gf - Funi to be gdifd 50 ! gdx2 , gdy2 , gdz2 - grid acg squed gx -, gy -, d gz - gdeis 51 ! gdi - Ord of accucy o the ri gݔ 52 ! gdb - Fm d of accucy o the wl pot boundy gݔ 53 ! Cuy n gud !! 54 ! gfiL - Glob codes  f ( Le side of x - dei ) 55 ! gfiR - Glob codes  f ( Right side of x - dei ) 56 ! gfjL - Glob codes  f ( Le side of y - dei ) 57 ! gfjR - Glob codes  f ( Right side of y - dei ) 58 ! gfkL - Glob codes  f ( Le side of z - dei ) 59 ! gfkR - Glob codes  f ( Right side of z - dei ) 60 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 61 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 62 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 63 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 64 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 65 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 66 ! giiL - Glob codes  df ( Le side of x - dei ) 67 ! giiR - Glob codes  df ( Right side of x - dei ) 68 ! gijL - Glob codes  df ( Le side of y - dei ) 69 ! gijR - Glob codes  df ( Right side of y - dei ) 70 ! gikL - Glob codes  df ( Le side of z - dei ) 71 ! gikR - Glob codes  df ( Right side of z - dei ) 72 ! gbiL - Numb of g s side o gx - gdei 73 ! gbiR - Numb of g s right side o gx - gdei 74 ! gbjL - Numb of g s side o gy - gdei 75 ! gbjR - Numb of g s right side o gy - gdei 76 ! gbkL - Numb of g s side o gz - gdei 77 ! gbkR - Numb of g s right side o gz - gdei 78 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 79 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 80 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 81 ! g - E gmesge - S gbow 83 ! gOUTPUT 85 ! gd2f - Twi Difd gFuni 87 ! gLOCAL 89 ! goL - Le rusi of ri gc 90 ! goR - Right rusi of ri gc 91 ! gomax - Maximum rusi of ri gc 92 ! groL - N rusi of ri gc 93 ! groR - N right rusi of ri gc 94 ! gwidth - Tٮ width of ri gc 95 ! gUp - Exic ed difn c gcff . ( i +/- 0) 96 ! g - Exic ed difn c gcff . ( i +/- 1) 97 ! gbe - Exic ed difn c gcff . ( i +/- 2) 98 ! g - Exic ed difn c gcff . ( i +/- 3) 99 ! gde - Exic ed difn c gcff . ( i +/- 4) 100 ! gx , gy , gzbeg - Begng dex  ri gc 101 ! gx , gy , gzd - Endg dex  ri gc 102 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 103 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 104 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 105 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 106 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 107 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 108 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 110 ! gOPTIONS : 111 ! Cd Difns 112 ! 2E [ di =2, db =1] (1-2E-1) 113 ! 4E [ di =4, db =3] (3,3-4E-3,3) 114 ! 6E [ di =6, db =3] (3,3,4-6E-4,3,3) 115 ! 8E [ di =8, db =3] (3,3,4,6-8E-6,4,3,3) 117 ! gne : Fm ovl d equs MIN [ di , db +1]. 119 ! Iny wrn by Chris Kdy gDec . 2001 120 ! Rewrn by Chris Kdy gFeb . 2002 123 ! Ieg uff 125 imic ne 127 g oL , goR , gomax , width 128 g groLx , groLy , roLz 129 g groRx , groRy , roRz 130 g gi , gj , k 131 g gdi , db 132 g 133 g gx , gy , z 134 g gxbeg , gybeg , zbeg 135 g gxd , gyd , zd 136 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 137 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 138 g giiL , giiR , gijL , gijR , gikL , ikR 139 g gpiL , gpiR , gpjL , gpjR , gpkL , pkR 140 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR 142 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 143 *8 d2f ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 144 *8 dx , gdy , dz 145 g *8 grdx2 , grdy2 , rdz2 146 g *8 gUp , g , gbe , g , de 147 g *8 bnd2A (3) 148 g *8 bnd3A (5) 149 g *8 bnd3B (5) 150 g *8 bnd4C (5) 151 g *8 bnd6D (7) 153 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/src/CollocDeriv.cpp 5  ~"ClocDiv.h " 6  ~"f܌_mes.h " 8  #MAX ( A , B (A> (B? (A: (B) ) 11  FORTNAME ( x_d1_co )(* f , * df , * dx , * dy , * dz , 12 * v , * upwd , * di , * db , 13 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 14 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 15 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 16 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 17 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 18 * dfkR , * x , * y , * z , * , 19 * r ) ; 21  FORTNAME ( y_d1_co )(* f , * df , * dx , * dy , * dz , 22 * v , * upwd , * di , * db , 23 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 24 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 25 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 26 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 27 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 28 * dfkR , * x , * y , * z , * , 29 * r ) ; 31  FORTNAME ( z_d1_co )(* f , * df , * dx , * dy , * dz , 32 * v , * upwd , * di , * db , 33 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 34 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 35 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 36 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 37 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 38 * dfkR , * x , * y , * z , * , 39 * r ) ; 41  FORTNAME ( x_d2_co )(* f , * df , * dx , * dy , * dz , 42 * di , * db , 43 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 44 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 45 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 46 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 47 * dfkR , * x , * y , * z , * , 48 * r ) ; 50  FORTNAME ( y_d2_co )(* f , * df , * dx , * dy , * dz , 51 * di , * db , 52 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 53 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 54 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 55 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 56 * dfkR , * x , * y , * z , * , 57 * r ) ; 59  FORTNAME ( z_d2_co )(* f , * df , * dx , * dy , * dz , 60 * di , * db , 61 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 62 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 63 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 64 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 65 * dfkR , * x , * y , * z , * , 66 * r ) ; 69  NCsCvecS :: ClocDiv :: $Cfigu ( di ,  db ,  upwd , 70 cڡ * she , cڡ * lb , 71 cڡ * ub , * doma_ext ,  dim , 72  maxv ,  f ,  bndryL ,  bndryR ) 75 i dim > 0 ) 77 biL = bndryL ; biR = bndryR ; 78 iiL = biL ; iiR = `MAX (iiL, she [0] - ( biR +1)) ; 79 fiL = 0 ; fiR = `MAX (fiL, she [0]-1) ; 80 viL = 0 ; viR = `MAX (viL, she [0]-1) ; 81 dfiL = 0 ; dfiR = `MAX (dfiL, she [0]-1) ; 84 i dim > 1 ) 86 bjL = bndryL ; bjR = bndryR ; 87 ijL = bjL ; ijR = `MAX (ijL, she [1] - ( bjR +1)) ; 88 fjL = 0 ; fjR = `MAX (fjL, she [1]-1) ; 89 vjL = 0 ; vjR = `MAX (vjL, she [1]-1) ; 90 dfjL = 0 ; dfjR = `MAX (dfjL, she [1]-1) ; 93 i dim > 2 ) 95 bkL = bndryL ; bkR = bndryR ; 96 ikL = bkL ; ikR = `MAX (ikL, she [2] - ( bkR +1)) ; 97 fkL = 0 ; fkR = `MAX (fkL, she [2]-1) ; 98 vkL = 0 ; vkR = `MAX (vkL, she [2]-1) ; 99 dfkL = 0 ; dfkR = `MAX (dfkL, she [2]-1) ; 102 d_i = di , d_b = db ; upw = upwd ; 104 } } 106  NCsCvecS :: ClocDiv :: $CompuFDiv (* put , * v , 107  dx ,  dy ,  dz , 108 * ouut ) 110  x = 0 , y = 0, z = 0, ; 111  r [100] ; 113  dec ) 116 `FORTNAME ( x_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 117 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 118 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 119 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 120 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 121 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 122 & x , & y , & z , & , r ); 123 i < 0 ) 125 d :: << " From NCsCvecS::ClocDiv::Compu(" << r 126 << " x-diviv: cod" << << d :: dl ; 127 i == -100) 128 d :: << " From NonConsConvecSpace::CollocDeriv::Compute() fiL, fiR = " 129 << fiL << ", " << fiR << ", " << iiL << ", " << iiR << d :: dl ; 130 ( ) ; 134 `FORTNAME ( y_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 135 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 136 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 137 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 138 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 139 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 140 & x , & y , & z , & , r ); 141 i < 0 ) 143 d :: << " From NCsCvecS::ClocDiv::Compu(" << r 144 << " y-diviv: cod" << << d :: dl ; 145 i( == -100) 146 d :: << " From NonConsConvecSpace::CollocDeriv::Compute() fiL, fiR = " 147 << fjL << ", " << fjR << ", " << ijL << ", " << ijR << d :: dl ; 148 ( ) ; 152 `FORTNAME ( z_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 153 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 154 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 155 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 156 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 157 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 158 & x , & y , & z , & , r ); 159 i < 0 ) 161 d :: << " From NCsCvecS::ClocDiv::Compu(" << r 162 << " z-diviv: cod" << << d :: dl ; 163 ( ) ; 167 d :: << " From NonConsConvecSpace::CollocDeriv::Compute() : cannot find derivatives " 168 << "lg " << dec << " dei. Ru wh -1 " << d :: dl ; 175 } } 177  NCsCvecS :: ClocDiv :: $CompuSecdDiv (* put ,  dx , 178  dy ,  dz , * ouut ) 180  x = 0 , y = 0, z = 0, ; 181  r [100] ; 183  dec ) 186 `FORTNAME ( x_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 187 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 188 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 189 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 190 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 191 & x , & y , & z , & , r ); 192 i < 0 ) 194 d :: << " From NCsCvecS::ClocDiv::Compu(" << r 195 << " x-diviv: cod" << << d :: dl ; 196 ( ) ; 200 `FORTNAME ( y_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 201 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 202 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 203 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 204 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 205 & x , & y , & z , & , r ); 206 i < 0 ) 208 d :: << " From NCsCvecS::ClocDiv::Compu(" << r 209 << " y-diviv: cod" << << d :: dl ; 210 ( ) ; 214 `FORTNAME ( z_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 215 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 216 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 217 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 218 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 219 & x , & y , & z , & , r ); 220 i < 0 ) 222 d :: << " From NCsCvecS::ClocDiv::Compu(" << r 223 << " z-diviv: cod" << << d :: dl ; 224 ( ) ; 228 d :: << " From NonConsConvecSpace::CollocDeriv::Compute() : cannot find derivatives " 229 << "lg " << dec << " dei. Ru wh -1 " << d :: dl ; 234 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/src/NonConsConvection_JR.cpp 9  ~ 10  ~"NCsCvei_JR.h " 12 gNCsCvei_JR :: $NCsCvei_JR () 14 is_lized = l ; 15 is_hod = l ; 16 vocy_t = l ; 17 pAMR = 0 ; 18 u = v = w = dummy = 0 ; 19 dummy_size = 0 ; 20 } } 22 gNCsCvei_JR ::~ $NCsCvei_JR () 24 i is_lized = ue ) 26 de pIOrdPam ; 27 de pBoundOrdPam ; 28 de pMeshClocTy ; 29 de pUpwdPam ; 31 pSvc = NULL ; = NULL ; 32 u = v = 0 ; 33 i dummy !0 ) de [] dummy ; dummy = 0 ; 35 is_hod = l ; 36 is_lized = l ; 37 } } 39  gNCsCvei_JR :: tSvis CONV_NS ( Svis * svc ) 41 i svc = NULL ) 43 pSvc -> uegiUsPt ( "AMR" ); 44 gpSvc -> moveProvidesPt ( "ConvectionTermPort") ; 45 gpSvc -> moveProvidesPt ( "CONFIG") ; 48 gthis -> gpSvc = svc ; 51 gsvc -> giUsPt svc -> PtInfo ("cSvc", 53 CfigubPamFay * gf = 54 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 55 CHECKDC f ); 56 g = = f -> CfigubPamPt (); 57 gsvc -> addProvidesPt ( , 58 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 59 tupPams () ; 60 gsvc -> aPt ("cSvc"); 63 gsvc -> addProvidesPt ( this , svc -> PtInfo ("ConvectionTermPort", "PatchPort", 0) ); 66 gsvc -> giUsPt svc -> PtInfo ("AMR", "AMRPort", 0) ); 69  gNCsCvei_JR :: $tupPams () 71 pIOrdPam = w `IPam ("InternalOrder", "Order of derivs inside domain", 74 pBoundOrdPam = w `IPam ("BoundaryOrder", "Order of derivst boundary", 77 pMeshClocTy = w `SgPam ("CollocationType", "Collocated or Staggered", 80 pUpwdPam = w `BoPam ("Upwinding", "Upwind or centred", "Upwind or centered", 81 l ) ; 83 -> `tBchT ( " Convection Physics Parameters " ); 84 -> `addReque pUpwdPam ) ; 85 -> `addReque pIOrdPam ) ; 86 -> `addReque pBoundOrdPam ) ; 87 -> `addReque pMeshClocTy ) ; 88 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/src/NonConsConvection_JR_workers.cpp 10  ~ 11  ~ 12  ~"NCsCvei_JR.h " 15  #MAX ( A , B (A> (B? (A: (B) ) 16  #MIN ( A , B (A< (B? (A: (B) ) 17  #SMALL 1e-19 ) 19  gNCsCvei_JR :: $SDa (* da_ , cڡ * she ,  nems ,  ndims ) 22 i is_lized = l ) 24 pAMR = dymic_ < AMRPt *> ( pSvc -> `gPt ("AMR")) ; 25 is_lized = ue ; 28  nx = 1, ny = 1, nz = 1 ; 30 nx = she [0] ; 31 i ndims > 1 ) ny = she [1] ; 32 i( ndims > 2 nz = she [2] ; 34 u = da_ ; 35 i ndims > 1 ) v = da_ + `fdx (0, 0, 0, 1, nx , ny , nz , nems ) ; 36 i ndims > 2 ) w = da_ + `fdx (0, 0, 0, 2, nx , ny , nz , nems ) ; 38 vocy_t = ue ; 40 } } 42  gNCsCvei_JR :: $compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 43 cڡ * p_she ,  nvs , * da2 , 44 cڡ * p_cr_suti , * p_doma_exs , 45  max_v ,  f_ ,  dim ) 48 i vocy_t = l ) 50 d :: << " NonConsConvection_JR::compute() : Did you call " 52 << " Doghg " << d :: dl ; 56  cr_nx = p_cr_suti [0] ; 57  cr_ny = p_cr_suti [1] ; 58  cr_nz = p_cr_suti [2] ; 60  xm = p_doma_exs [0] ;  xmax =_domain_extents[1] ; 61  ym = p_doma_exs [2] ;  ymax =_domain_extents[3] ; 62  zm = p_doma_exs [4] ;  zmax =_domain_extents[5] ; 64  cr_dx = ( xmax - xm / cr_nx ; cr_dx = `MAX (cr_dx, SMALL ) ; 65  cr_dy = ( ymax - ym / cr_ny ; cr_dy = `MAX (cr_dy, SMALL ) ; 66  cr_dz = ( zmax - zm / cr_nz ; cr_dz = `MAX (cr_dz, SMALL ) ; 68  max_femt = ( `pow ( f_ , max_v - 1); 69  fe_dx = cr_dx / max_femt ; 70  fe_dy = cr_dy / max_femt ; 71  fe_dz = cr_dz / max_femt ; 73  nx , ny , nz ; 74  ti = 0, tj = 0, tk = 0; 75  di = 1, dj = 1, dk = 1 ; 77  num_g_s = 1 ; 78 i( pAMR !0 num_g_s =AMR-> `GC_g_boundy_width_deu () ; 80  dim ) 83 nx = p_she [0] ; ny = 1 ; nz = 1 ; 84 ti = num_g_s ; di = nx -um_green_cells ; 87 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 88 ti = num_g_s ; di = nx -um_green_cells ; 89 tj = num_g_s ; dj = ny -um_green_cells ; 92 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 93 ti = num_g_s ; di = nx -um_green_cells ; 94 tj = num_g_s ; dj = ny -um_green_cells ; 95 tk = num_g_s ; dk = nz -um_green_cells ; 98 d :: << "NonConsConvection_JR::compute(). Something wrong with dimension. Terminate()" 99 << d :: dl ; 100 d :: `rme (); 105  ns = nx * ny * nz ; 106 `CheckSize ns ) ; 109  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1 ) ; 110  lol_femt = max_femt / ride ; 112  lol_dx = cr_dx / lol_femt ; 113  lol_dy = cr_dy / lol_femt ; 114  lol_dz = cr_dz / lol_femt ; 120 d :: rg `me ( pMeshClocTy -> vue ) ; 121 i me == "Collocated" ) 122 pAbsD = & CDO ; 124 pAbsD = & SDO ; 126  upwdg = ( pUpwdPam -> vue = l ) ? 0 : 1 ; 127  iv = 0; iv < nvs ; ivar ++ ) 129  t_dex = `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 130  id = 0; id < dim ; idir++) 132 pAbsD -> `SD ( id ) ; 133 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 134 upwdg , p_she , p_lbbc , p_ubbc , p_doma_exs , 135 dim , max_v , f_ , 0, 0) ; 137 * v = 0 ; 138 i id =0 ) v = u ; iid =1 ) v = v ; iid =2 ) v = w ; 140  kk = 0 ; kk < ns ; kk++ dummy [kk] = 0.0 ; 141 pAbsD -> `CompuFDiv ( da1 + t_dex ), v , lol_dx , 142 lol_dy , lol_dz , dummy ) ; 145  k = tk ; k < dk ; k++) 146  j = tj ; j < dj ; j++ ) 147  i = ti ; i < di ; i++ ) 149  i = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 150 da2 [ t_dex + i ] + v [i] * dummy [icell] ; 155 vocy_t = l ; 157 } } 159  gNCsCvei_JR :: $CheckSize ( size ) 161 i size < dummy_size ) 163  k = 0; k < dummy_size ; k++ dummy [k] = 0.0 ; 167 i dummy !0 ) de [] dummy ; 168 dummy = w [ size ] ; dummy_size = size ; 169  k = 0 ; k < dummy_size ; k++ dummy [k] = 0.0 ; 171 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/src/NonConsConvection_JR_wrapper.cpp 1  ~"NCsCvei_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _NCsCvei_JR () 8 CONV_NS ( Compڒt * wk ; 9 NCsCvei_JR * compڒt ; 10 compڒt = w NCsCvei_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_NonConsConvection_JR NonConsConvection_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/NonConsConvection/src/StagDeriv.cpp 5  ~"SgDiv.h " 6  ~"f܌_mes.h " 8  #MAX ( A , B (A> (B? (A: (B) ) 11  FORTNAME ( x_d1_ )(* f , * df , * dx , * dy , * dz , 12 * v , * upwd , * di , * db , 13 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 14 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 15 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 16 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 17 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 18 * dfkR , * x , * y , * z , * , 19 * r ) ; 21  FORTNAME ( y_d1_ )(* f , * df , * dx , * dy , * dz , 22 * v , * upwd , * di , * db , 23 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 24 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 25 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 26 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 27 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 28 * dfkR , * x , * y , * z , * , 29 * r ) ; 31  FORTNAME ( z_d1_ )(* f , * df , * dx , * dy , * dz , 32 * v , * upwd , * di , * db , 33 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 34 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 35 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 36 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 37 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 38 * dfkR , * x , * y , * z , * , 39 * r ) ; 42  NCsCvecS :: SgDiv :: $Cfigu ( di ,  db ,  upwd , 43 cڡ * she , cڡ * lb , cڡ * ub , 44 * doma_ext ,  dim ,  maxv , 45  f ,  bndryL ,  bndryR ) 48 i dim > 0 ) 50 biL = bndryL ; biR = bndryR ; 51 iiL = biL ; iiR = `MAX (iiL, she [0] - ( biR +1)) ; 52 fiL = 0 ; fiR = `MAX (fiL, she [0]-1) ; 53 viL = 0 ; viR = `MAX (viL, she [0]-1) ; 54 dfiL = 0 ; dfiR = `MAX (dfiL, she [0]-1) ; 57 i dim > 1 ) 59 bjL = bndryL ; bjR = bndryR ; 60 ijL = bjL ; ijR = `MAX (ijL, she [1] - ( bjR +1)) ; 61 fjL = 0 ; fjR = `MAX (fjL, she [1]-1) ; 62 vjL = 0 ; vjR = `MAX (vjL, she [1]-1) ; 63 dfjL = 0 ; dfjR = `MAX (dfjL, she [1]-1) ; 66 i dim > 2 ) 68 bkL = bndryL ; bkR = bndryR ; 69 ikL = bkL ; ikR = `MAX (ikL, she [2] - ( bkR +1)) ; 70 fkL = 0 ; fkR = `MAX (fkL, she [2]-1) ; 71 vkL = 0 ; vkR = `MAX (vkL, she [2]-1) ; 72 dfkL = 0 ; dfkR = `MAX (dfkL, she [2]-1) ; 75 d_i = di , d_b = db ; upw = upwd ; 77 } } 79  NCsCvecS :: SgDiv :: $CompuFDiv (* put , * v ,  dx , 80  dy ,  dz , * ouut ) 82  x = 0 , y = 0, z = 0, ; 83  r [60] ; 85  dec ) 88 `FORTNAME ( x_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 89 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 90 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 91 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 92 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 93 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 94 & x , & y , & z , & , r ) ; 97 `FORTNAME ( y_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 98 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 99 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 100 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 101 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 102 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 103 & x , & y , & z , & , r ) ; 106 `FORTNAME ( z_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 107 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 108 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 109 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 110 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 111 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 112 & x , & y , & z , & , r ) ; 115 d :: << " From NonConsConvecSpace::StagDeriv::Compute() : cannot find derivatives" 116 << "lg " << dec << " dei. Ru wh -1 " << d :: dl ; 120 i < 0 ) 122 d :: << " From NCsCvecS::SgDiv::Compu(" << r << 123 d :: dl ; 124 ( ) ; 128 } } 130  NCsCvecS :: SgDiv :: $CompuSecdDiv (* put ,  dx , 131  dy ,  dz , * ouut ) 133 d :: << " NonConsConvecSpace::StagDeriv::ComputeSecondDeriv() NOT Implemented." 134 << " Rug wh -1" << d :: dl ; 137 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/OneDFlowModel/include/OneDFlowModel.h 18 #ide ODFlowModHSn 19  #ODFlowModHSn ) 23  ~"c.h " 24  ~"dPts.h " 27  ~"jc++/jc++.h " 28  ~"jc++/ut/jc++ut.h " 29  ~"ms/msSr.h " 30  ~"pt/sutIs.h " 33  ~ 34  ~ 37  ~"DiffPt.h " 40  ~"PchPt.h " 41  ~"DiffPt.h " 42  ~"ThmoAlysisPt.h " 43  ~"PrݔtsPt.h " 46  ~"CONV_NS.h " 48 ass gODFlowMod : public vtu CONV_NS ( Compڒt ), 49 public vtu gDiffPt 51 gpublic : 53 ODFlowMod () ; 55 ~ ODFlowMod () ; 57 vtu  tSvis CONV_NS ( Svis * svc ); 65 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 66 cڡ * p_she ,  nvs , * da2 , 67 cڡ * p_cr_suti , * p_doma_exs , 68  max_v ,  f_ ,  dim ) ; 70 give : 72  CheckSizes ( ns ,  nvs ,  ndims ) ; 74  In () ; 76 * gdsy , * gVocyVe , * gCvRHS ; 77  gns_d ; 78 bo gis_ ; 81 CONV_NS ( Svis * gpSvc ; 84 ThmoAlysisPt * gpThmo ; 85 PchPt * gpCvTmsPt ; 86 DiffPt * gpDiffTmsPt ; 87 PrݔtsPt * gpThmoPr ; 90 CfigubPamPt * g ; 91 DoubPam * gpMassFlowPam ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/OneDFlowModel/src/OneDFlowModel.cpp 3  ~"ODFlowMod.h " 7 gODFlowMod :: $ODFlowMod () 9 pSvc = 0 ; = 0 ; dsy = 0 ; VocyVe = 0 ; CvRHS = 0 ; 10 pMassFlowPam = 0 ; is_ = l ; ns_d = 0 ; 11 pThmo = 0 ; pCvTmsPt = 0 ; pDiffTmsPt = 0 ; pThmoPr = 0 ; 12 } } 14 gODFlowMod ::~ $ODFlowMod () 16 i( dsy !0 ) de [] density ; 17 i( VocyVe !0 ) de [] VelocityVector ; 18 i( CvRHS !0 ) de [] ConvRHS ; 19 i pMassFlowPam !0 ) de MassFlowParam ; 20 ns_d = 0 ; is_ = l ; 21 } } 23  gODFlowMod :: tSvis CONV_NS ( Svis * svc ) 26 i svc == 0 ) 28 pSvc -> uegiUsPt ("ConvTerms") ; 29 gpSvc -> uegiUsPt ("DiffusiveTerms") ; 30 gpSvc -> uegiUsPt ("ThermoProp") ; 31 gpSvc -> uegiUsPt ("ThermoQuants") ; 32 gpSvc -> moveProvidesPt ("CONFIG") ; 33 gpSvc -> moveProvidesPt ("ConvDiffRHS") ; 37 gpSvc = svc ; 40 gsvc -> giUsPt svc -> PtInfo ("ConvTerms", "PatchPort", 0) ) ; 41 gsvc -> giUsPt svc -> PtInfo ("DiffusiveTerms", "DiffPort", 0) ) ; 42 gsvc -> giUsPt svc -> PtInfo ("ThermoProp", "PropertiesPort", 0) ) ; 43 gsvc -> giUsPt svc -> PtInfo ("ThermoQuants", "ThermoAnalysisPort", 0) ) ; 44 gsvc -> addProvidesPt this , svc -> PtInfo ("ConvDiffRHS", "DiffPort", 0) ) ; 48 gsvc -> giUsPt svc -> PtInfo ("cSvc", 50 CfigubPamFay * gf = 51 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 52 CHECKDC f ); 53 g = = f -> CfigubPamPt (); 54 gsvc -> addProvidesPt ( , 55 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 56 gpMassFlowPam = w DoubPam ("MassFlow", "Mass Flowate in kg / m^2 / sec", 59 g -> tBchT (" OneD Flow Model Parameters"); 60 g -> addReque pMassFlowPam ) ; 61 gsvc -> aPt ("cSvc"); 64  gODFlowMod :: $In () 66 pThmo = dymic_ < ThmoAlysisPt * > ( pSvc -> `gPt ("ThermoQuants")); 67 `CHECKDC ( pThmo ) ; 68 pCvTmsPt = dymic_ < PchPt * > ( pSvc -> `gPt ("ConvTerms")); 69 `CHECKDC ( pCvTmsPt ) ; 70 pDiffTmsPt = dymic_ < DiffPt * > ( pSvc -> `gPt ("DiffusiveTerms")) ; 71 `CHECKDC ( pDiffTmsPt ) ; 72 pThmoPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("ThermoProp")); 73 `CHECKDC ( pThmoPr ); 74 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/OneDFlowModel/src/OneDFlowModel_workers.cpp 3  ~"ODFlowMod.h " 5  gODFlowMod :: $CheckSizes ( ns ,  nvs ,  ndim ) 7 i( ns > ns_d ) 9 de [] dsy ; dsy = w [ ns ] ; 10 de [] VocyVe ; VocyVe = w [ ns * ndim ] ; 11 de [] CvRHS ; CvRHS = w [ ns * nvs ] ; 12 ns_d = ns ; 15  i = 0; i < ns_d ; i++ dsy [i] = 0.0 ; 16  i = 0 ; i < ns_d * ndim ; i++ VocyVe [i] = 0.0 ; 17  i = 0 ; i < ns_d * nvs ; i++ CvRHS [i] = 0.0 ; 18 } } 20  gODFlowMod :: $compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 21 cڡ * p_she ,  nvs , * da2 , 22 cڡ * p_cr_suti , * p_doma_exs , 23  max_v ,  f_ ,  dim ) 26 i is_ = l ) { `In (; is_ = ue ; } 28  nx = 1, ny = 1, nz = 1; 29 nx = p_she [0] ; i( dim > 1 ny =_she[1] ; i(dim > 2 nz =_shape[2] ; 30  ns = nx * ny * nz ; 32 `CheckSizes ( ns , nvs , dim ) ; 40 * u , * v , * w ; 41 u = VocyVe ; 42 i dim > 1 ) v = VocyVe + ns ; 43 i dim > 2 ) w = VocyVe + 2* ns ; 46  nvsm1 = nvs -1;  zo = 0 ;  e = 1 ; 47 pThmoPr -> `SIegs ("PssuIndex", & nvsm1 , 1); 48 pThmoPr -> `SIegs ("TemtuIndex", & zo , 1) ; 49 pThmoPr -> `SIegs ("yS_dex", & e , 1); 50 pThmo -> `CompuV ( da1 , nvs , p_she , dim , "rho_mix", dsy , ns ) ; 53  i = 0 ; i < ns ; i++ u [i] = pMassFlowPam -> vue / dsy [i] ; 56 i pDiffTmsPt != 0 ) 57 pDiffTmsPt -> `compu ( da1 , p_lbbc , p_ubbc , p_she , nvs , da2 , 58 p_cr_suti , p_doma_exs , max_v , f_ , 59 dim ) ; 62 i pCvTmsPt != 0 ) 64 pCvTmsPt -> `SDa ( VocyVe , p_she , dim , dim) ; 65 pCvTmsPt -> `compu ( da1 , p_lbbc , p_ubbc , p_she , nvs , CvRHS , 66 p_cr_suti , p_doma_exs , max_v , f_ , 67 dim ) ; 71  i = 0; i < ns * nvs ; i++ da2 [i] = da2[i] - CvRHS [i] ; 72 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/OneDFlowModel/src/OneDFlowModel_wrapper.cpp 1  ~"ODFlowMod.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _ODFlowMod () 8 CONV_NS ( Compڒt * wk ; 9 ODFlowMod * compڒt ; 10 compڒt = w ODFlowMod (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_OneDFlowModel OneDFlowModel"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/PoissonRHSOpenDomain/src/CollocDeriv.cpp 3  ~"ClocDiv.h " 4  ~"f܌_mes.h " 6  #MAX ( A , B (A> (B? (A: (B) ) 9  FORTNAME ( x_d1_co )(* f , * df , * dx , * dy , * dz , 10 * v , * upwd , * di , * db , 11 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 12 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 13 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 14 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 15 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 16 * dfkR , * x , * y , * z , * , 17 * r ) ; 19  FORTNAME ( y_d1_co )(* f , * df , * dx , * dy , * dz , 20 * v , * upwd , * di , * db , 21 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 22 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 23 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 24 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 25 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 26 * dfkR , * x , * y , * z , * , 27 * r ) ; 29  FORTNAME ( z_d1_co )(* f , * df , * dx , * dy , * dz , 30 * v , * upwd , * di , * db , 31 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 32 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 33 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 34 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 35 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 36 * dfkR , * x , * y , * z , * , 37 * r ) ; 39  FORTNAME ( x_d2_co )(* f , * df , * dx , * dy , * dz , 40 * di , * db , 41 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 42 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 43 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 44 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 45 * dfkR , * x , * y , * z , * , 46 * r ) ; 48  FORTNAME ( y_d2_co )(* f , * df , * dx , * dy , * dz , 49 * di , * db , 50 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 51 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 52 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 53 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 54 * dfkR , * x , * y , * z , * , 55 * r ) ; 57  FORTNAME ( z_d2_co )(* f , * df , * dx , * dy , * dz , 58 * di , * db , 59 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 60 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 61 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 62 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 63 * dfkR , * x , * y , * z , * , 64 * r ) ; 67  PoissS :: ClocDiv :: $Cfigu ( di ,  db ,  upwd , 68 cڡ * she , cڡ * lb , 69 cڡ * ub , * doma_ext ,  dim , 70  maxv ,  f ,  bndryL ,  bndryR ) 73 i dim > 0 ) 75 biL = bndryL ; biR = bndryR ; 76 iiL = biL ; iiR = `MAX (iiL, she [0] - ( biR +1)) ; 77 fiL = 0 ; fiR = `MAX (fiL, she [0]-1) ; 78 viL = 0 ; viR = `MAX (viL, she [0]-1) ; 79 dfiL = 0 ; dfiR = `MAX (dfiL, she [0]-1) ; 82 i dim > 1 ) 84 bjL = bndryL ; bjR = bndryR ; 85 ijL = bjL ; ijR = `MAX (ijL, she [1] - ( bjR +1)) ; 86 fjL = 0 ; fjR = `MAX (fjL, she [1]-1) ; 87 vjL = 0 ; vjR = `MAX (vjL, she [1]-1) ; 88 dfjL = 0 ; dfjR = `MAX (dfjL, she [1]-1) ; 91 i dim > 2 ) 93 bkL = bndryL ; bkR = bndryR ; 94 ikL = bkL ; ikR = `MAX (ikL, she [2] - ( bkR +1)) ; 95 fkL = 0 ; fkR = `MAX (fkL, she [2]-1) ; 96 vkL = 0 ; vkR = `MAX (vkL, she [2]-1) ; 97 dfkL = 0 ; dfkR = `MAX (dfkL, she [2]-1) ; 100 d_i = di , d_b = db ; upw = upwd ; 102 } } 104  PoissS :: ClocDiv :: $CompuFDiv (* put , * v ,  dx , 105  dy ,  dz , * ouut ) 107  x = 0 , y = 0, z = 0, ; 108  r [100] ; 110  dec ) 113 `FORTNAME ( x_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 114 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 115 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 116 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 117 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 118 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 119 & x , & y , & z , & , r ); 120 i < 0 ) 122 d :: << " From PoissS::ClocDiv::CompuFDiv(" << r 123 << " x-diviv: cod" << << d :: dl ; 124 i == -100) 125 d :: << " From PoissonSpace::CollocDeriv::ComputeFirstDeriv() fiL, fiR = " 126 << fiL << ", " << fiR << ", " << iiL << ", " << iiR << d :: dl ; 127 ( ) ; 131 `FORTNAME ( y_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 132 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 133 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 134 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 135 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 136 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 137 & x , & y , & z , & , r ); 138 i < 0 ) 140 d :: << " From PoissS::ClocDiv::CompuFDiv(" << r 141 << " y-diviv: cod" << << d :: dl ; 142 i( == -100) 143 d :: << " From PoissonSpace::CollocDeriv::ComputeFirstDeriv() fiL, fiR = " 144 << fjL << ", " << fjR << ", " << ijL << ", " << ijR << d :: dl ; 145 ( ) ; 149 `FORTNAME ( z_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 150 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 151 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 152 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 153 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 154 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 155 & x , & y , & z , & , r ); 156 i < 0 ) 158 d :: << " From PoissS::ClocDiv::CompuFDiv(" << r 159 << " z-diviv: cod" << << d :: dl ; 160 ( ) ; 164 d :: << " From PoissonSpace::CollocDeriv::ComputeFirstDeriv() : cannot find " 165 << " diviveg " << dec << " direction. Return with -1 " 166 << d :: dl ; 171 } } 173  PoissS :: ClocDiv :: $CompuSecdDiv (* put ,  dx , 174  dy ,  dz , * ouut ) 176  x = 0 , y = 0, z = 0, ; 177  r [100] ; 179  dec ) 182 `FORTNAME ( x_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 183 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 184 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 185 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 186 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 187 & x , & y , & z , & , r ); 188 i < 0 ) 190 d :: << " From PoissS::ClocDiv::CompuSecdDiv(" << r 191 << " x-diviv: cod" << << d :: dl ; 192 ( ) ; 196 `FORTNAME ( y_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 197 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 198 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 199 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 200 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 201 & x , & y , & z , & , r ); 202 i < 0 ) 204 d :: << " From PoissS::ClocDiv::CompuSecdDiv(" << r 205 << " y-diviv: cod" << << d :: dl ; 206 ( ) ; 210 `FORTNAME ( z_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 211 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 212 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 213 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 214 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 215 & x , & y , & z , & , r ); 216 i < 0 ) 218 d :: << " From PoissS::ClocDiv::CompuSecdDiv(" << r 219 << " z-diviv: cod" << << d :: dl ; 220 ( ) ; 224 d :: << " From PoissonSpace::CollocDeriv::ComputeSecondDeriv() : " 225 << " cn fd diviveg " << dec << " direction. Return with -1 " 226 << d :: dl ; 231 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/PoissonRHSOpenDomain/src/PoissonRHSOpenDomain_JR.cpp 9  ~ 10  ~ 11  ~"PoissRHSOnDoma_JR.h " 13 gPoissRHSOnDoma_JR :: $PoissRHSOnDoma_JR () 15 is_lized = l ; 16 is_hod = l ; 17 pDiffCffPr = 0 ; pDiffCff = 0 ; pThmo = 0 ; pThmoPr = 0 ; pAMR = 0 ; 18 pDs = 0 ; 19 diffusi_cffs = Cpi = sr_cs = Wi = GdT = GdY = GdWbByWb = Bi = 0 ; 20 Z = QdGdT = DivRhoBi = Wb = rho_mix = DivFT = FT = wTTm = D1 = 0 ; 21 ns_d = 0 ; necs = -1 ; 23 } } 25 gPoissRHSOnDoma_JR ::~ $PoissRHSOnDoma_JR () 27 i( is_lized = ue ) 29 de p_PssuIndex_m ; d pIOrdPam ; d pBoundOrdPam ; 30 de pMeshClocTy ; d pSckScsIndex_m ; d pThmoPssu_m ; 33 pSvc = 0 ; = 0 ; 35 i diffusi_cffs !0 ) de [] diffusion_coeffs ; diffusion_coeffs = 0 ; 36 i Cpi !0 ) de [] Cpi ; Cpi = 0 ; 37 i sr_cs !0 ) de [] scalar_srcs ; scalar_srcs = 0 ; 38 i Wi !0 ) de [] Wi ; Wi = 0 ; 39 i GdT !0 ) de [] GradT ; GradT = 0 ; 40 i GdY !0 ) de [] GradY ; GradY = 0 ; 41 i GdWbByWb !0 ) de [] GradWbarByWbar ; GradWbarByWbar = 0 ; 42 i Bi !0 ) de [] Bi ; Bi = 0 ; 43 i Z !0 ) de [] Z ; Z = 0 ; 44 i QdGdT !0 ) de [] QdotGradT ; QdotGradT = 0 ; 45 i DivRhoBi !0 ) de [] DivRhoBi ; DivRhoBi = 0 ; 46 i Wb !0 ) de [] Wbar ; Wbar = 0 ; 47 i rho_mix !0 ) de []ho_mix ;ho_mix = 0 ; 48 i FT !0 ) de [] FT ; FT = 0 ; 49 i DivFT !0 ) de [] DivFT ; DivFT = 0 ; 50 i wTTm !0 de [] wTTerm ; wTTerm = 0 ; 51 i D1 !0 ) de [] Der1 ; Der1 = 0 ; 52 is_hod = l ; 53 is_lized = l ; 54 } } 56  gPoissRHSOnDoma_JR :: tSvis CONV_NS ( Svis * svc ) 58 i( svc == 0) 60 pSvc -> uegiUsPt ( "RatesOfProd" ); 61 gpSvc -> uegiUsPt ( "ThermoProp" ) ; 62 gpSvc -> uegiUsPt ( "DiffCoeffProp" ) ; 63 gpSvc -> uegiUsPt ( "DiffCoeffs" ); 64 gpSvc -> uegiUsPt ( "Thermo" ) ; 65 gpSvc -> uegiUsPt ( "AMR" ); 66 gpSvc -> moveProvidesPt ( "DiffTermPort") ; 67 gpSvc -> moveProvidesPt ( "CONFIG") ; 71 gthis -> gpSvc = svc ; 74 gsvc -> giUsPt svc -> PtInfo ("cSvc", 76 CfigubPamFay * gf = 77 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 78 CHECKDC f ); 79 g = = f -> CfigubPamPt (); 80 gsvc -> addProvidesPt ( , 81 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 82 tupPams () ; 83 gsvc -> aPt ("cSvc"); 86 gsvc -> addProvidesPt ( this , svc -> PtInfo ("PoissonRHSPort", "PatchPort", 0) ); 89 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffProp", "PropertiesPort", 0) ); 90 gsvc -> giUsPt svc -> PtInfo ("ThermoProp", "PropertiesPort", 0) ); 91 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffs", "DiffPort", 0) ); 92 gsvc -> giUsPt svc -> PtInfo ("Thermo", "ThermoAnalysisPort", 0) ); 93 gsvc -> giUsPt svc -> PtInfo ("AMR", "AMRPort", 0) ); 94 gsvc -> giUsPt svc -> PtInfo ("RatesOfProd", "DensePort", 0) ); 97  gPoissRHSOnDoma_JR :: $tupPams () 99 p_PssuIndex_m = w `IPam ("PressureIndex", "Index ofressure in varlist", 102 pIOrdPam = w `IPam ("InternalOrder", "Order of derivs inside domain", 105 pBoundOrdPam = w `IPam ("BoundaryOrder", "Order of derivst boundary", 108 pMeshClocTy = w `SgPam ("CollocationType", "Collocated or Staggered", 111 pSckScsIndex_m = w `IPam ("SlackSpeciesIndex", "Index of slack species", 114 pThmoPssu_m = w `DoubPam ("ThermoPressure", "Thermodynamicressure", 117 -> `tBchT ( " Poisson RHS Parameters " ); 118 -> `addReque p_PssuIndex_m ) ; 119 -> `addReque pIOrdPam ) ; 120 -> `addReque pBoundOrdPam ) ; 121 -> `addReque pMeshClocTy ) ; 122 -> `addReque pSckScsIndex_m ) ; 123 -> `addReque pThmoPssu_m ) ; 125 } } 128  gPoissRHSOnDoma_JR :: $CheckSizes ( nx ,  ny ,  nz ,  nvs ,  ndims ) 130  ns = nx * ny * nz ; 132 i( ns > ns_d ) 134 i diffusi_cffs !0 ) de [] diffusion_coeffs ; 135 diffusi_cffs = w [ ns * nvs ] ; 137 i Cpi !0 ) de [] Cpi ; 138 Cpi = w [ ns * nvs ] ; 140 i sr_cs !0 ) de [] scalar_srcs ; 141 sr_cs = w [ ns * nvs ] ; 143 i GdT !0 ) de [] GradT ; 144 GdT = w [ ns * ndims ] ; 146 i GdY !0 ) de [] GradY ; 147 GdY = w [ ns * ndims ] ; 149 i GdWbByWb !0 ) de [] GradWbarByWbar ; 150 GdWbByWb = w [ ns * ndims ] ; 152 i Bi !0 ) de [] Bi ; 153 Bi = w [ ns * ndims ] ; 155 i FT !0 ) de [] FT ; 156 FT = w [ ns * ndims ] ; 158 i Z !0 ) de [] Z ; 159 Z = w [ ns ] ; 161 i QdGdT !0 ) de [] QdotGradT ; 162 QdGdT = w [ ns ] ; 164 i DivRhoBi !0 ) de [] DivRhoBi ; 165 DivRhoBi = w [ ns ] ; 167 i Wb !0 ) de [] Wbar ; 168 Wb = w [ ns ] ; 170 i rho_mix !0 ) de []ho_mix ; 171 rho_mix = w [ ns ] ; 173 i DivFT !0 ) de [] DivFT ; 174 DivFT = w [ ns ] ; 176 i wTTm !0 ) de [] wTTerm ; 177 wTTm = w [ ns ] ; 179 i( D1 !0 de [] Der1 ; 180 D1 = w [ ns ] ; 182 ns_d = ns ; 185  i = 0 ; i < ns * nvs ; i++) 187 diffusi_cffs [ i ] = 0.0 ; Cpi [i] = 0.0 ; sr_cs [i] = 0.0 ; 190  i = 0 ; i < ns * ndims ; i++) 192 GdT [ i ] = 0.0 ; GdY [i] = 0.0 ; GdWbByWb [i] = 0.0 ; Bi [i] = 0.0 ; FT [i] = 0.0 ; 195  i = 0 ; i < ns ; i++) 197 Z [ i ] = 0.0 ; QdGdT [i] = 0.0 ; DivRhoBi [i] = 0.0 ; Wb [i] = 0.0 ; rho_mix [i] = 0.0 ; 198 DivFT [ i ] = 0.0 ; wTTm [i] = 0.0 ; D1 [i] = 0.0 ; 200 } } 203  gPoissRHSOnDoma_JR :: $ () 205 pDiffCffPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("DiffCoeffProp")) ; 206 pThmoPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("ThermoProp")) ; 207 pDiffCff = dymic_ < DiffPt * > ( pSvc -> `gPt ("DiffCoeffs")) ; 208 pThmo = dymic_ < ThmoAlysisPt *> ( pSvc -> `gPt ("Thermo")) ; 209 pAMR = dymic_ < AMRPt *> ( pSvc -> `gPt ("AMR")) ; 210 pDs = dymic_ < DPt *> ( pSvc -> `gPt ( "RatesOfProd" )); 212 i( pThmo != 0) 214 necs = pThmo -> `GNumScs () ; 215 Wi = w [ necs ] ; 216  s = pThmo -> `GMecurWts ( necs , Wi ) ; 217 `as ( s >= 0) ; 219 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/PoissonRHSOpenDomain/src/PoissonRHSOpenDomain_JR_phys.cpp 19  ~ 20  ~ 21  ~"PoissRHSOnDoma_JR.h " 23  gPoissRHSOnDoma_JR :: $CڡruBi (* yi ,  nx ,  ny ,  nz ,  dx , 24  dy ,  dz ,  ndim , * diff_cff , 25 * ouut ) 30  i = 0; i < nx * ny * nz * ndim ; i++ ouut [i] = 0.0 ; 31 `Gd ( yi , nx , ny , nz , dx , dy , dz , ndim , ue , ouut ) ; 33  ns = nx * ny * nz ; 34  idim = 0 ; idim < ndim ; idim++) 36  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 37  i = 0; i < ns ; icell++) 38 ouut [ offt + i ] = diff_cff [icell] * ( output[offset+icell] + 39 yi [ i ]* GdWbByWb [ offt +icell] ) ; 42 } } 44  gPoissRHSOnDoma_JR :: $CڡruDivFTTm (* mp , * gdT , * rho_mix , 45 * _mix , * pha ,  nx ,  ny ,  nz , 46  dx ,  dy ,  dz ,  ndim , * div ) 54 `CڡruFT ( gdT , rho_mix , _mix , pha , nx , ny , nz , ndim , FT ); 57 `Div ( FT , nx , ny , nz , dx , dy , dz , ndim , l , div ) ; 60  i = 0; i < nx * ny * nz ; i++) 61 div [ i ] = div[i] / ( rho_mix [i] * _mix [i] * mp [i] ) ; 64 } } 66  gPoissRHSOnDoma_JR :: $CڡruFT (* gdT , * rho , * _mix , * pha , 67  nx ,  ny ,  nz ,  ndims , * ) 75  i = 0; i < nx * ny * nz * ndims ; i++ [i] = 0.0 ; 78  idim = 0; idim < ndims ; idim++) 80  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndims ); 81  i = 0; i < nx * ny * nz ; i++) 82 [ offt + i ] = rho [i] * _mix [i] * pha [i] * gdT [ offset + i ] ; 84 } } 86  gPoissRHSOnDoma_JR :: $AccumuϋQdGdT (* bi , * _i , * _mix , * mp , 87  nx ,  ny ,  nz ,  ndim , * ouut ) 97  ns = nx * ny * nz ; 98  idim = 0 ; idim < ndim ; idim++) 100  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 101  i = 0 ; i < ns ; icell++) 103  Q = _i [ i ] * bi [ offt +i] / ( _mix [i] * mp [icell] ) ; 104 ouut [ i ] = ouut[i] + Q * GdT [ offt +icell] ; 109 } } 111  gPoissRHSOnDoma_JR :: $AccumuϋZ (* Bi , * rho , * wi ,  Wi ,  nx ,  ny , 112  nz ,  dx ,  dy ,  dz ,  ndim , * z ) 123  ns = nx * ny * nz ; 126  idim = 0; idim < ndim ; idim++) 128  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 129   i = 0; i < ns ; icell++ ) 130 Bi [ offt + i ] = rho [ icell ] * Bi[ offset + icell ] ; 134 `Div ( Bi , nx , ny , nz , dx , dy , dz , ndim , l , DivRhoBi ) ; 137  i = 0; i < ns ; icell++ ) 138 z [ i ] = z[i] + ( wi [i] + DivRhoBi [i] ) / ( rho [i] * Wi ) ; 141 } } 143  gPoissRHSOnDoma_JR :: $CڡruwTTm (* wT , * rho_mix , * _mix , 144 * mtu ,  nx ,  ny ,  nz ,  nvs , 145 * wTTm ) 152  ns = nx * ny * nz ; 153   i = 0; i < ns ; icell ++ ) 154 wTTm [ i ] = wT [i] / ( rho_mix [i] * _mix [i] * mtu [icell] ) ; 157 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/PoissonRHSOpenDomain/src/PoissonRHSOpenDomain_JR_utils.cpp 8  ~ 9  ~ 10  ~"PoissRHSOnDoma_JR.h " 11  ~"ve.h " 13  #MAX ( A , B (A> (B? (A: (B) ) 14  #MIN ( A , B (A< (B? (A: (B) ) 15  #SMALL 1e-19 ) 24  gPoissRHSOnDoma_JR :: $InDiffCffs (* da1 ,  nx ,  ny ,  nz , 25  nvs ,  ndims ) 27  p_she [3] = { nx , ny , nz } ; 28 i( pDiffCffPr !0&& ( pDiffCff != 0) ) 30  yes = 1 ; 31 pDiffCffPr -> `SIegs ("DiffCffs", & yes , 1) ; 32 pDiffCff -> `compu ( da1 , 0, 0, p_she , nvs , diffusi_cffs , 33 0, 0, 1, 1, ndims ) ; 36   i = 0; i < nx * ny * nz * nvs ; i++ ) diffusi_cffs [i] = 1.0 ; 39 } } 45  gPoissRHSOnDoma_JR :: $InCpmixAndCpi (* da1 ,  nx ,  ny ,  nz , 46  nvs ,  ndim ) 48  p_she [3] = { nx , ny , nz } ; 49 i pThmo !0 && pThmoPr != 0 ) 51  nvsm1 = nvs -1;  zo = 0 ;  e = 1; 52 pThmoPr -> `SIegs ("PssuIndex", & nvsm1 , 1) ; 53 pThmoPr -> `SIegs ("TemtuIndex", & zo , 1) ; 54 pThmoPr -> `SIegs ("yS_dex", & e , 1); 56  s ; 57 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndim , "_mix", Cpi , nx * ny * nz ) ; 58 i s != 0 ) 60 d :: << " PoissonRHSOpenDomain_JR::InitCpmixAndCpi() : Failedo get Cp_mix,rror code = " 61 << s << " Rug -1 whoudognythg. " << d :: dl ; 65 * is = Cpi + nx * ny * nz ; 66 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndim , "_ecs", is , 67 nx * ny * nz *( nvs -1)) ; 68 i s != 0 ) 70 d :: << " PoissonRHSOpenDomain_JR::InitCpmixAndCpi() : Failedo get Cp_species,rror code = " 71 << s << " Rug -1 whoudognythg. " << d :: dl ; 76   i = 0; i < nx * ny * nz * nvs ; i++ ) Cpi [i] = 1.0 ; 80 } } 82  gPoissRHSOnDoma_JR :: $InRhomixAndWb (* da1 ,  nx ,  ny ,  nz ,  nvs , 83  ndims ) 85  p_she [3] = { nx , ny , nz } ; 86 i pThmo !0 && pThmoPr != 0 ) 88  s ; 89 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndims , "rho_mix", rho_mix , 90 nx * ny * nz ) ; 91 i s != 0 ) 93 d :: << " PoissonRHSOpenDomain_JR::InitRhomixAndWbar(): Failedo getho_mix,rror code = " 94 << s << " Rug -1 whoudognythg. " << d :: dl ; 98 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndims , "wt_mix", Wb , 99 nx * ny * nz ) ; 100 i s != 0 ) 102 d :: << " PoissonRHSOpenDomain_JR::InitRhomixAndWbar(): Failedo get wt_mix,rror code = " 103 << s << " Rug -1 whoudognythg. " << d :: dl ; 109   i = 0; i < nx * ny * nz ; i++ ) rho_mix [i] = 1.0 ; 110   i = 0; i < nx * ny * nz ; i++ ) Wb [i] = 1.0 ; 114 i( necs < 0) 116 necs = `MAX ( nvs -1, 1) ; 117 Wi = w [ necs ] ; 118  i = 0; i < necs ; i++ Wi [i] = 1.0 ; 122 } } 124  gPoissRHSOnDoma_JR :: $CcuϋGdWbByWb (* put ,  nx ,  ny ,  nz , 125  dx ,  dy ,  dz ,  ndim , 126 * ouut ) 129 `Gd ( put , nx , ny , nz , dx , dy , dz , ndim , ue , ouut ) ; 135  ns = nx * ny * nz ; 136  idim = 0 ; idim < ndim ; idim++) 138  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 139  i = 0 ; i < ns ; icell++) 140 ouut [ offt + i ] = ouut[offt+i] / put [icell] ; 143 } } 145  gPoissRHSOnDoma_JR :: $Gd (* put ,  nx ,  ny ,  nz ,  dx ,  dy ,  dz , 146  ndim , bo agged , * ouut ) 148  i = 0; i < nx * ny * nz * ndim ; i++ ouut [i] = 0.0 ; 149 pAbsD = MyPch . Ot ; 151  idim = 0 ; idim < ndim ; idim++) 153  offt = `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 154 pAbsD -> `SD ( idim ) ; 155 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 0, 156 MyPch . she , MyPch. lbbc , MyPch. ubbc , MyPch. doma_exs , 157 MyPch . dim , MyPch. max_v , MyPch. f_c , 0, 0) ; 159 * out = ouut + offt ; 160  s = pAbsD -> `CompuFDiv ( put , 0, dx , dy , dz , out ) ; 161 i( s != 0) 163 d :: << "PoissonRHSOpenDomain_JR::Grad() : Callo 1st derivative hasrror; " 164 << "u wh -1" << d :: dl ; 170 } } 172  gPoissRHSOnDoma_JR :: $InRiSrcs (* da1 ,  nx ,  ny ,  nz ,  nvs , 173  ndims ) 175  ns = nx * ny * nz ; 176  i = 0; i < ns * nvs ; i++ sr_cs [i] = 0.0 ; 178 i( pDs =0 || pThmo =0 || pThmoPr == 0) 182  essu = pThmoPssu_m -> vue ; 183 pThmoPr -> `SDoubs ("essu", & essu , 1); 185  d ; 187 d = 0 ; 188 pThmoPr -> `SIegs ("n_dim", & d , 1) ; 190 d = pSckScsIndex_m -> vue ; 191 pThmoPr -> `SIegs ("ack_ecs_dex", & d , 1) ; 193 d = 1 ; 194 pThmoPr -> `SIegs ("ns", & d , 1); 196 d = necs ; 197 pThmoPr -> `SIegs ("nvs", & d , 1) ; 200 PoissS :: ve yve , ydve ; 201 * Y = w [ necs +1] ; 202 * Yd = w [ necs +1] ; 204  essu_dex = -1 ; 210  k = 0; k < nz ; k++) 211  j = 0; j < ny ; j++) 212  i = 0; i < nx ; i++) 215  dex = 0 ; 216  iv = 0; iv < nvs ; ivar++) 218 i( iv ! essu_dex && (iv ! pSckScsIndex_m -> vue ) ) 220 Y [ dex ] = da1 [ `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ] ; 221 Yd [ dex ] = 0.0 ; 222 dex ++ ; 227 yve . `t_size ( dex +1; yve. `put_da ( Y , index+1); 228 ydve . `t_size ( dex +1; ydve. `put_da ( Yd , index+1); 231 pDs -> `f_d ( yve . `g_size (), 0, &yve, & ydve , 0); 234 dex = 0; 235 Yd = ydve . `g_da () ; 236  iv = 0; iv < nvs ; ivar++) 238 i( iv ! essu_dex && (iv ! pSckScsIndex_m -> vue ) ) 240 sr_cs [ `fdx ( i , j , k , iv , nx , ny , nz , nvs ] = Yd [ dex ] ; 241 dex ++ ; 248 } } 250  gPoissRHSOnDoma_JR :: $Div (* put ,  nx ,  ny ,  nz ,  dx ,  dy ,  dz , 251  ndim , bo agged , * ouut ) 257  ns = nx * ny * nz ; 260  i = 0; i < ns ; i ++ ouut [icell] = 0.0 ; 262 pAbsD = MyPch . Ot ; 263  idim = 0; idim < ndim ; idim++) 265 * ux = put + `fdx (0, 0, 0, idim , nx , ny , nz , ndim ) ; 266 pAbsD -> `SD ( idim ) ; 267 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 0, 268 MyPch . she , MyPch. lbbc , MyPch. ubbc , MyPch. doma_exs , 269 MyPch . dim , MyPch. max_v , MyPch. f_c , 0, 0) ; 271  i = 0 ; i < ns ; i++ D1 [i] = 0.0 ; 272  s = pAbsD -> `CompuFDiv ( ux , 0, dx , dy , dz , D1 ) ; 273 i( s != 0) 275 d :: << " PoissonRHSOpenDomain_JR::Div() AbsDer->ComputeFirstDeriveturned withns = " 276 << s << " ;ug wh = -1" << d :: dl ; 280  i = 0; i < ns ; i++ ouut [i] + D1 [icell] ; 284 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/PoissonRHSOpenDomain/src/PoissonRHSOpenDomain_JR_workers.cpp 31  ~ 32  ~ 33  ~"PoissRHSOnDoma_JR.h " 35  #MAX ( A , B (A> (B? (A: (B) ) 36  #MIN ( A , B (A< (B? (A: (B) ) 37  #SMALL 1e-19 ) 40  gPoissRHSOnDoma_JR :: $SDa * da_ , cڡ * she ,  nems ,  ndim ) 44 } } 46  gPoissRHSOnDoma_JR :: $compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 47 cڡ * p_she ,  nvs , * da2 , 48 cڡ * p_cr_suti , * p_doma_exs , 49  max_v ,  f_ ,  dim ) 54 i is_lized = l ) 56 ` () ; 57 is_lized = ue ; 60 d :: rg `mesh_cloc_ty pMeshClocTy -> vue ) ; 61 i mesh_cloc_ty != "Collocated" ) 63 d :: << " PoissonRHSOpenDomain_JR::compute() : Weeedll variableso be collocated " 64 << "ndhRHS wbclod whhvbˠ" << d :: dl ; 65 d :: << " Mkghiunsuab " << std:: dl ; 66 is_hod = ue ; 68 i is_hod = ue )  (-1) ; 73  cr_nx = p_cr_suti [0] ; 74  cr_ny = p_cr_suti [1] ; 75  cr_nz = p_cr_suti [2] ; 77  xm = p_doma_exs [0] ; 78  xmax = p_doma_exs [1] ; 79  ym = p_doma_exs [2] ; 80  ymax = p_doma_exs [3] ; 81  zm = p_doma_exs [4] ; 82  zmax = p_doma_exs [5] ; 84  cr_dx = ( xmax - xm / cr_nx ; cr_dx = `MAX (cr_dx, SMALL ) ; 85  cr_dy = ( ymax - ym / cr_ny ; cr_dy = `MAX (cr_dy, SMALL ) ; 86  cr_dz = ( zmax - zm / cr_nz ; cr_dz = `MAX (cr_dz, SMALL ) ; 88  max_femt = ( `pow ( f_ , max_v - 1); 89  fe_dx = cr_dx / max_femt ; 90  fe_dy = cr_dy / max_femt ; 91  fe_dz = cr_dz / max_femt ; 92  lol_xm = xm + p_lbbc [0] * fe_dx ; 93  lol_xmax = xm + p_ubbc [0] * fe_dx ; 94  lol_ym = ym + p_lbbc [1] * fe_dy ; 95  lol_ymax = ym + p_ubbc [1] * fe_dy ; 96  lol_zm = zm + p_lbbc [2] * fe_dz ; 97  lol_zmax = zm + p_ubbc [2] * fe_dz ; 99  nx , ny , nz ; 100  t_i =0, d_i =1, t_j =0, d_j =1, t_k =0, d_k =1 ; 102  num_g_s = 1 ; 103 i pAMR !0 ) num_g_s =AMR-> `GC_g_boundy_width_deu (); 105  dim ) 108 nx = p_she [0] ; ny = 1 ; nz = 1 ; 109 t_i = num_g_s ; d_i = nx -um_green_cells; 112 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 113 t_i = num_g_s ; d_i = nx -um_green_cells; 114 t_j = num_g_s ; d_j = ny -um_green_cells; 117 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 118 t_i = num_g_s ; d_i = nx -um_green_cells; 119 t_j = num_g_s ; d_j = ny -um_green_cells; 120 t_k = num_g_s ; d_k = nz -um_green_cells; 123 d :: cout << "PoissonRHSOpenDomain_JR::compute(). Something wrong with dimension. Terminate()" 124 << d :: dl ; 125 d :: `rme (); 135 MyPch . she = p_she ; MyPch. ubbc = p_ubbc ; MyPch. lbbc = p_lbbc ; 136 MyPch . dim = dim ; MyPch. max_v = max_level ; 137 MyPch . num_g_s =um_g_Π; MyPch. doma_exs = p_doma_exs ; 138 MyPch . f_c = f_ ; MyPch. Ot = & CDO ; 173 `CheckSizes ( nx , ny , nz , nvs , dim ) ; 176 `InDiffCffs da1 , nx , ny , nz , nvs , dim ); 179 `InCpmixAndCpi ( da1 , nx , ny , nz , nvs , dim ) ; 182 `InRhomixAndWb da1 , nx , ny , nz , nvs , dim ) ; 185 `InRiSrcs da1 , nx , ny , nz , nvs , dim ) ; 188  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1 ) ; 189  lol_femt = max_femt / ride ; 191  lol_dx = cr_dx / lol_femt ; 192  lol_dy = cr_dy / lol_femt ; 193  lol_dz = cr_dz / lol_femt ; 196 * mtu = da1 ; 197 `Gd ( mtu , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , l , GdT ) ; 200 `CcuϋGdWbByWb Wb , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , 201 GdWbByWb ); 204  iv = 1 ; iv < nvs ; ivar++) 214 * ec = da1 + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 215 * diff_cff_i = diffusi_cffs + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 216 `CڡruBi ec , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , diff_cff_i , Bi ) ; 219 * _mix = Cpi ; 220 * _i = Cpi + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 221 `AccumuϋQdGdT ( Bi , _i , _mix , mtu , nx , ny , nz , dim , QdGdT ); 226 * w_i = sr_cs + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 227  mެ_wt = Wi [ iv -1] ; 228 `AccumuϋZ ( Bi , rho_mix , w_i , mެ_wt , nx , ny , nz , lol_dx , lol_dy , lol_dz , 229 dim , Z ) ; 233 * _mix = Cpi ; 234 * pha = diffusi_cffs ; 235 `CڡruDivFTTm ( mtu , GdT , rho_mix , _mix , pha , nx , ny , nz , lol_dx , 236 lol_dy , lol_dz , dim , DivFT ) ; 239 * wT = sr_cs ; 240 `CڡruwTTm ( wT , rho_mix , _mix , mtu , nx , ny , nz , nvs , wTTm ) ; 244  k = t_k ; k < d_k ; k++) 245  j = t_j ; j < d_j ; j++) 246  i = t_i ; i , d_i ; i++) 248  dex = `fdx ( i , j , k , 0, nx , ny , nz , nvs ) ; 249 da2 [ dex ] = da2[dex] + DivFT [dex] + wTTm [dex] + QdGdT [index] + 250 Wb [ dex ]* Z [index] ; 254 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/PoissonRHSOpenDomain/src/PoissonRHSOpenDomain_JR_wrapper.cpp 1  ~"PoissRHSOnDoma_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _PoissRHSOnDoma_JR () 8 CONV_NS ( Compڒt * wk ; 9 PoissRHSOnDoma_JR * compڒt ; 10 compڒt = w PoissRHSOnDoma_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_PoissonRHSOpenDomain_JR PoissonRHSOpenDomain_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/SOLowMachDiffusion/include/SOLowMachDiff_JR.h 35 #ide __SOLMDiffHSn__ 36  #__SOLMDiffHSn__ ) 39  ~"c.h " 40  ~"dPts.h " 43  ~"jc++/jc++.h " 44  ~"jc++/ut/jc++ut.h " 45  ~"ms/msSr.h " 46  ~"pt/sutIs.h " 49  ~ 50  ~ 51 usg mea gd ; 54  ~"DiffPt.h " 57  ~"PrݔtsPt.h " 58  ~"DiffPt.h " 59  ~"ThmoAlysisPt.h " 62  ~"CONV_NS.h " 66 ass gSOLowMachDiff_JR : public vtu CONV_NS ( Compڒt ), 67 public vtu gDiffPt 69 gpublic : 71 SOLowMachDiff_JR () ; 73 gvtu ~ SOLowMachDiff_JR () ; 75 vtu  tSvis CONV_NS ( Svis * svc ); 77 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 78 cڡ * p_she ,  nvs , * da2 , 79 cڡ * p_cr_suti , * p_doma_exs ,  max_v , 80  f_ ,  dim ) ; 82 give : 84  tupPams () ; 86  () ; 88  CheckSizes ( nx ,  ny ,  nz ,  nvs ,  ndims ) ; 92 le  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 95  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 99  CڡruBi (* yi ,  nx ,  ny ,  nz ,  dx ,  dy ,  dz , 100  ndim , * diff_cff , * ouut ) ; 102  CڡruFlux (* fld ,  nx ,  ny ,  nz ,  dx ,  dy , 103  dz ,  ndim ,  iv ,  nv , * muɝlr , 104 * diff , * ux , * bi ) ; 106  AccumuϋQdGdT (* bi , * _i , * _mix ,  nx ,  ny , 107  nz ,  ndim , * ouut ) ; 110  InDiffCffs (* da1 ,  nx ,  ny ,  nz ,  nvs ,  ndims ) ; 112  InCpmixAndCpi (* da1 ,  nx ,  ny ,  nz ,  nvs ,  ndims ) ; 114  InRhomixAndWb (* da1 ,  nx ,  ny ,  nz ,  nvs ,  ndims ) ; 116  CڡruMuɝlr ( nx ,  ny ,  nz ,  iv , * mu ) ; 118  Gd (* put ,  nx ,  ny ,  nz ,  dx ,  dy ,  dz , 119  ndim , bo agged , * ouut ) ; 121  GdSg (* put ,  nx ,  ny ,  nz ,  dx ,  dy ,  dz , 122  ndim , * ouut ) ; 124  GdCloc (* put ,  nx ,  ny ,  nz ,  dx ,  dy , 125  dz ,  ndim , * ouut ) ; 127  Div (* put ,  nx ,  ny ,  nz ,  dx ,  dy ,  dz , 128  ndim , * ouut ) ; 130  CcuϋGdWbByWb (* Wb ,  nx ,  ny ,  nz , 131  dx ,  dy ,  dz ,  ndim , 132 * ouut ) ; 135 bo gis_lized , gis_hod ; 138 CONV_NS ( Svis * gpSvc ; 140 PrݔtsPt * gpDiffCffPr , * gpThmoPr ; 141 DiffPt * gpDiffCff ; 142 ThmoAlysisPt * gpThmo ; 145 CfigubPamPt * g ; 146 IPam * gp_PssuIndex_m ; 149  gns_d ; 150 * gdiffusi_cffs , * gCpi ; 151 * gGdT , * gGdWbByWb , * gFlux , * gBi ; 152 * gQdGdT , * gMuɝlr , * gWb , * grho_mix ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/SOLowMachDiffusion/src/SOLowMachDiff.cpp 8  ~ 9  ~"SOLowMachDiff_JR.h " 11 gSOLowMachDiff_JR :: $SOLowMachDiff_JR () 13 is_lized = l ; 14 is_hod = l ; 15 pDiffCffPr = 0 ; 16 pDiffCff = 0 ; 17 diffusi_cffs = Cpi = GdT = GdWbByWb = Flux = Bi = 0 ; 18 QdGdT = Muɝlr = Wb = 0 ; 19 ns_d = 0 ; 20 } } 22 gSOLowMachDiff_JR ::~ $SOLowMachDiff_JR () 24 i is_lized = ue ) 26 de p_PssuIndex_m ; 28 pSvc = NULL ; = NULL ; 30 i diffusi_cffs !0 ) de [] diffusion_coeffs ; 31 i Cpi !0 ) de [] Cpi ; 32 i GdT !0 ) de [] GradT ; 33 i GdWbByWb !0 ) de [] GradWbarByWbar ; 34 i Flux !0 ) de [] Flux ; 35 i Bi !0 ) de [] Bi ; 36 i QdGdT !0 ) de [] QdotGradT ; 37 i Muɝlr !0 ) de [] Multiplier ; 38 i Wb !0 ) de [] Wbar ; 39 i rho_mix !0 ) de []ho_mix ; 41 is_hod = l ; 42 is_lized = l ; 43 } } 45  gSOLowMachDiff_JR :: tSvis CONV_NS ( Svis * svc ) 47 i svc = NULL ) 49 pSvc -> uegiUsPt ( "ThermoProp" ) ; 50 gpSvc -> uegiUsPt ( "DiffCoeffProp" ) ; 51 gpSvc -> uegiUsPt ( "DiffCoeffs" ); 52 gpSvc -> uegiUsPt ( "Thermo" ) ; 53 gpSvc -> moveProvidesPt ( "DiffTermPort") ; 54 gpSvc -> moveProvidesPt ( "CONFIG") ; 57 gthis -> gpSvc = svc ; 60 gsvc -> giUsPt svc -> PtInfo ("cSvc", 62 CfigubPamFay * gf = 63 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 64 CHECKDC f ); 65 g = = f -> CfigubPamPt (); 66 gsvc -> addProvidesPt ( , 67 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 68 tupPams () ; 69 gsvc -> aPt ("cSvc"); 72 gsvc -> addProvidesPt ( this , svc -> PtInfo ("DiffTermPort", "DiffPort", 0) ); 75 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffProp", "PropertiesPort", 0) ); 76 gsvc -> giUsPt svc -> PtInfo ("ThermoProp", "PropertiesPort", 0) ); 77 gsvc -> giUsPt svc -> PtInfo ("DiffCoeffs", "DiffPort", 0) ); 78 gsvc -> giUsPt svc -> PtInfo ("Thermo", "ThermoAnalysisPort", 0) ); 81  gSOLowMachDiff_JR :: $tupPams () 83 p_PssuIndex_m = w `IPam ("PressureIndex", "Index ofressure in varlist", 86 -> `tBchT ( " Diffusion Physics Parameters " ); 87 -> `addReque p_PssuIndex_m ) ; 88 } } 91  gSOLowMachDiff_JR :: $CheckSizes ( nx ,  ny ,  nz ,  nvs ,  ndims ) 93  ns = nx * ny * nz ; 94 i( ns > ns_d ) 96 i diffusi_cffs !0 ) de [] diffusion_coeffs ; 97 diffusi_cffs = w [ ns * nvs ] ; 99 i Cpi !0 ) de [] Cpi ; 100 Cpi = w [ ns * nvs ] ; 102 i GdT !0 ) de [] GradT ; 103 GdT = w [ ns * ndims ] ; 105 i GdWbByWb !0 ) de [] GradWbarByWbar ; 106 GdWbByWb = w [ ns * ndims ] ; 108 i Flux !0 ) de [] Flux ; 109 Flux = w [ ns * ndims ] ; 111 i Bi !0 ) de [] Bi ; 112 Bi = w [ ns * ndims ] ; 114 i QdGdT !0 ) de [] QdotGradT ; 115 QdGdT = w [ ns ] ; 117 i Muɝlr !0 ) de [] Multiplier ; 118 Muɝlr = w [ ns ] ; 120 i Wb !0 ) de [] Wbar ; 121 Wb = w [ ns ] ; 123 i rho_mix !0 ) de []ho_mix ; 124 rho_mix = w [ ns ] ; 126 ns_d = ns ; 129  i = 0 ; i < ns * nvs ; i++) 131 diffusi_cffs [ i ] = 0.0 ; Cpi [i] = 0.0 ; 134  i = 0 ; i < ns * ndims ; i++) 136 GdT [ i ] = 0.0 ; GdWbByWb [i] = 0.0 ; Flux [i] = 0.0 ; Bi [i] = 0.0 ; 139  i = 0 ; i < ns ; i++) 141 QdGdT [ i ] = 0.0 ; Muɝlr [i] = 0.0 ; Wb [i] = 0.0 ; rho_mix [i] = 0.0 ; 143 } } 145  gSOLowMachDiff_JR :: $ () 147 pDiffCffPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("DiffCoeffProp")) ; 148 pThmoPr = dymic_ < PrݔtsPt *> ( pSvc -> `gPt ("ThermoProp")) ; 149 pDiffCff = dymic_ < DiffPt * > ( pSvc -> `gPt ("DiffCoeffs")) ; 150 pThmo = dymic_ < ThmoAlysisPt *> ( pSvc -> `gPt ("Thermo")) ; 151 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/SOLowMachDiffusion/src/SOLowMachDiff_phys.cpp 5  ~"SOLowMachDiff_JR.h " 12  gSOLowMachDiff_JR :: $CڡruBi (* yi ,  nx ,  ny ,  nz ,  dx , 13  dy ,  dz ,  ndim , * diff_cff , 14 * ouut ) 16  i = 0; i < nx * ny * nz * ndim ; i++ ouut [i] = 0.0 ; 17 `Gd ( yi , nx , ny , nz , dx , dy , dz , ndim , ue , ouut ) ; 19  offt = 0 ; 20  k = 0; k < nz ; k++) 21  j = 0; j < ny ; j++) 22  i = 0; i < ( nx -1); i++) 24  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 25  1jk = `fdx ( i +1, j , k , 0, nx , ny , nz , 1) ; 26  yi_h = 0.5 * ( yi [ 1jk ] + yi[ ijk ]) ; 27  Di_h = 0.5 * ( diff_cff [ 1jk ] + diff_cff[ ijk ]) ; 28 ouut [ ijk ] = Di_h * ( ouut[ijk] + yi_h * GdWbByWb [ijk] ) ; 30 i ndim == 1) (0) ; 32 offt = `fdx (0, 0, 0, 1, nx , ny , nz , ndim ) ; 33  k = 0; k < nz ; k++) 34  j = 0; j < ( ny -1); j++) 35  i = 0; i < nx ; i++) 37  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 38  ijp1k = `fdx ( i , j +1, k , 0, nx , ny , nz , 1) ; 39  yi_jph = 0.5 * ( yi [ ijp1k ] + yi[ ijk ] ) ; 40  Di_jph = 0.5 * ( diff_cff [ ijp1k ] + diff_cff[ ijk ] ) ; 41 ouut [ offt + ijk ] = Di_jph * ( output[offset+ijk] 42 + yi_jph * GdWbByWb [ offt + ijk ] ) ; 44 i ndim == 2 ) (0) ; 46 offt = `fdx (0, 0, 0, 2, nx , ny , nz , ndim ) ; 47  k = 0; k < ( nz -1); k++) 48  j = 0; j < ny ; j++) 49  i = 0; i < nx ; i++) 51  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 52  ijkp1 = `fdx ( i , j , k +1, 0, nx , ny , nz , 1) ; 53  yi_kph = 0.5 * ( yi [ ijkp1 ] + yi[ ijk ] ) ; 54  Di_kph = 0.5 * ( diff_cff [ ijkp1 ] + diff_cff[ ijk ] ) ; 55 ouut [ offt + ijk ] = Di_kph * ( output[offset+ijk] 56 + yi_kph * GdWbByWb [ offt + ijk ] ) ; 59 } } 62  gSOLowMachDiff_JR :: $CڡruFlux (* fld ,  nx ,  ny ,  nz ,  dx , 63  dy ,  dz ,  ndim ,  iv ,  nv , 64 * muɝlr , * diff , * ux , 65 * bi ) 67  i = 0; i < nx * ny * nz * ndim ; i++) ux [i] = 0.0 ; 69 i iv == 0 ) 71 `Gd ( fld , nx , ny , nz , dx , dy , dz , ndim , ue , ux ); 77  i = 0; i < nx * ny * nz ; i++ muɝlr [i] = muɝlr[i] * diff [i] ; 81  offt = `fdx (0, 0, 0, iv , nx , ny , nz , nv ) ; 82 `CڡruBi ( fld , nx , ny , nz , dx , dy , dz , ndim , diff , bi ) ; 83  i = 0; i < nx * ny * nz * ndim ; i++ ux [i] = bi [i] ; 93  offt = 0 ; 94  k = 0; k < nz ; k++) 95  j = 0; j < ny ; j++) 96  i = 0; i < ( nx -1); i++) 98  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 99  1jk = `fdx ( i +1, j , k , 0, nx , ny , nz , 1) ; 100  mi_h = 0.5 * ( muɝlr [ 1jk ] + muɝlr[ ijk ]) ; 101 ux [ ijk ] = mi_h * flux[ijk] ; 104 i ndim > 1) 106  offt = `fdx (0, 0, 0, 1, nx , ny , nz , ndim ) ; 107  k = 0; k < nz ; k++) 108  j = 0; j < ( ny -1); j++) 109  i = 0; i < nx ; i++) 111  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 112  ijp1k = `fdx ( i , j +1, k , 0, nx , ny , nz , 1) ; 113  mi_jph = 0.5 * ( muɝlr [ ijp1k ] + muɝlr[ ijk ] ) ; 114 ux [ offt + ijk ] = mi_jph * flux[offset+ijk] ; 118 i ndim > 2 ) 120  offt = `fdx (0, 0, 0, 2, nx , ny , nz , ndim ) ; 121  k = 0; k < ( nz -1); k++) 122  j = 0; j < ny ; j++) 123  i = 0; i < nx ; i++) 125  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 126  ijkp1 = `fdx ( i , j , k +1, 0, nx , ny , nz , 1) ; 127  mi_kph = 0.5 * ( muɝlr [ ijkp1 ] + muɝlr[ ijk ] ) ; 128 ux [ offt + ijk ] = mi_kph * flux[offset+ijk] ; 132 i iv == 0 ) 133  i = 0; i < nx * ny * nz ; i++ muɝlr [i] = muɝlr[i] / diff [i] ; 136 } } 146  gSOLowMachDiff_JR :: $AccumuϋQdGdT (* bi , * _i , * _mix , 147  nx ,  ny ,  nz ,  ndim , * ouut ) 150  offt = 0 ; 151  k = 0; k < nz ; k++) 152  j = 0; j < ny ; j++) 153  i = 0; i < ( nx -1); i++) 155  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 156  1jk = `fdx ( i +1, j , k , 0, nx , ny , nz , 1) ; 157  bi_1 = 0.5 * ( bi [ offt + 1jk ] + bi[offt+ ijk ]) ; 158  Q = bi_1 * _i [ 1jk ] / _mix [ip1jk] ; 159 ouut [ 1jk ] = ouut[1jk] + GdT [ offt +1jk] * Q ; 161 i ndim == 1) (0) ; 163 offt = `fdx (0, 0, 0, 1, nx , ny , nz , ndim ) ; 164  k = 0; k < nz ; k++) 165  j = 0; j < ( ny -1); j++) 166  i = 0; i < nx ; i++) 168  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 169  ijp1k = `fdx ( i , j +1, k , 0, nx , ny , nz , 1) ; 170  bi_jp1 = 0.5 * ( bi [ offt + ijp1k ] + bi[offt+ ijk ] ) ; 171  Q = bi_jp1 * _i [ ijp1k ] / _mix [ijp1k] ; 172 ouut [ ijp1k ] = ouut[ijp1k] + GdT [ offt +ijp1k] * Q ; 174 i ndim == 2 ) (0) ; 176 offt = `fdx (0, 0, 0, 2, nx , ny , nz , ndim ) ; 177  k = 0; k < ( nz -1); k++) 178  j = 0; j < ny ; j++) 179  i = 0; i < nx ; i++) 181  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 182  ijkp1 = `fdx ( i , j , k +1, 0, nx , ny , nz , 1) ; 183  bi_kp1 = 0.5 * ( bi [ offt + ijkp1 ] + bi[offt+ ijk ] ) ; 184  Q = bi_kp1 * _i [ ijkp1 ] / _mix [ijkp1] ; 185 ouut [ ijkp1 ] = ouut[ijkp1] + GdT [ offt +ijkp1] * Q ; 188 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/SOLowMachDiffusion/src/SOLowMachDiff_utils.cpp 6  ~"SOLowMachDiff_JR.h " 16  gSOLowMachDiff_JR :: $InDiffCffs (* da1 ,  nx ,  ny ,  nz , 17  nvs ,  ndims ) 20  p_she [3] = { nx , ny , nz } ; 21 i( pDiffCffPr !0&& ( pDiffCff != 0) ) 23  yes = 1 ; 24 pDiffCffPr -> `SIegs ("DiffCffs", & yes , 1) ; 25 pDiffCff -> `compu ( da1 , 0, 0, p_she , nvs , diffusi_cffs , 26 0, 0, 1, 1, ndims ) ; 29   i = 0; i < nx * ny * nz * nvs ; i++ ) diffusi_cffs [i] = 1.0 ; 32 } } 40  gSOLowMachDiff_JR :: $InCpmixAndCpi (* da1 ,  nx ,  ny ,  nz , 41  nvs ,  ndim ) 44  p_she [3] = { nx , ny , nz } ; 45 i pThmo !0 && pThmoPr != 0 ) 47  nvsm1 = nvs -1;  zo = 0 ;  e = 1; 48 pThmoPr -> `SIegs ("PssuIndex", & nvsm1 , 1) ; 49 pThmoPr -> `SIegs ("TemtuIndex", & zo , 1) ; 50 pThmoPr -> `SIegs ("yS_dex", & e , 1); 52  s ; 53 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndim , "_mix", Cpi , nx * ny * nz ) ; 54 i s != 0 ) 56 << " SOLowMachDiff_JR::compute() : Failedo get Cp_mix,rror code = " 57 << s << " Rug -1 whoudognythg. " << dl ; 61 * is = Cpi + nx * ny * nz ; 62 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndim , "_ecs", is , 63 nx * ny * nz *( nvs -1)) ; 64 i s != 0 ) 66 << " SOLowMachDiff_JR::compute() : Failedo get Cp_species,rror code = " 67 << s << " Rug -1 whoudognythg. " << dl ; 72   i = 0; i < nx * ny * nz * nvs ; i++ ) Cpi [i] = 1.0 ; 75 } } 77  gSOLowMachDiff_JR :: $InRhomixAndWb (* da1 ,  nx ,  ny ,  nz , 78  nvs ,  ndims ) 80  p_she [3] = { nx , ny , nz } ; 81 i pThmo !0 && pThmoPr != 0 ) 83  s ; 84 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndims , "rho_mix", rho_mix , 85 nx * ny * nz ) ; 86 i s != 0 ) 88 << " SOLowMachDiff_JR::compute() : Failedo getho_mix,rror code = " 89 << s << " Rug -1 whoudognythg. " << dl ; 93 s = pThmo -> `CompuV ( da1 , nvs , p_she , ndims , "wt_mix", Wb , 94 nx * ny * nz ) ; 95 i s != 0 ) 97 << " SOLowMachDiff_JR::compute() : Failedo get wt_mix,rror code = " 98 << s << " Rug -1 whoudognythg. " << dl ; 104   i = 0; i < nx * ny * nz ; i++ ) rho_mix [i] = 1.0 ; 105   i = 0; i < nx * ny * nz ; i++ ) Wb [i] = 1.0 ; 109 } } 111  gSOLowMachDiff_JR :: $CڡruMuɝlr ( nx ,  ny ,  nz ,  iv , 112 * mu ) 114 i( iv == 0) 116  i = 0; i < nx * ny * nz ; i++ mu [i] = rho_mix [i] * Cpi [i] ; 120  i = 0; i < nx * ny * nz ; i++ mu [i] = rho_mix [i] ; 123 } } 125  gSOLowMachDiff_JR :: $Div (* put ,  nx ,  ny ,  nz ,  dx , 126  dy ,  dz ,  ndim , * ouut ) 129  i = 0; i < nx * ny * nz ; i++ ouut [i] = 0.0 ; 132  offt = 0 ; 133  k = 0; k < nz ; k++) 134  j = 0; j < ny ; j++) 135  i = 0; i < ( nx -1); i++) 137  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 138  1jk = `fdx ( i +1, j , k , 0, nx , ny , nz , 1) ; 139  divx = ( put [ offt + 1jk ] - iut[offt+ ijk ]/ dx ; 140 ouut [ 1jk ] = ouut[1jk] + divx ; 142 i ndim < 2 ) (0) ; 145 offt = `fdx (0, 0, 0, 1, nx , ny , nz , ndim ) ; 146  k = 0; k < nz ; k++) 147  j = 0; j < ( ny -1); j++) 148  i = 0; i < nx ; i++) 150  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 151  ijp1k = `fdx ( i , j +1, k , 0, nx , ny , nz , 1) ; 152  divy = ( put [ offt + ijp1k ] - iut[offt+ ijk ]/ dy ; 153 ouut [ ijp1k ] = ouut[ijp1k] + divy ; 155 i ndim < 3 ) (0) ; 158 offt = `fdx (0, 0, 0, 2, nx , ny , nz , ndim ) ; 159  k = 0; k < ( nz -1); k++) 160  j = 0; j < ny ; j++) 161  i = 0; i < nx ; i++) 163  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 164  ijkp1 = `fdx ( i , j , k +1, 0, nx , ny , nz , 1) ; 165  divz = ( put [ offt + ijkp1 ] - iut[offt+ ijk ]/ dz ; 166 ouut [ ijkp1 ] = ouut[ijkp1] + divz ; 170 } } 172  gSOLowMachDiff_JR :: $Gd (* put ,  nx ,  ny ,  nz ,  dx , 173  dy ,  dz ,  ndim , bo agged , 174 * ouut ) 176  s ; 177 i( agged = ue ) 178 s = `GdSg ( put , nx , ny , nz , dx , dy , dz , ndim , ouut ) ; 180 s = `GdCloc ( put , nx , ny , nz , dx , dy , dz , ndim , ouut ) ; 182 ( s ) ; 183 } } 186  gSOLowMachDiff_JR :: $GdSg (* put ,  nx ,  ny ,  nz ,  dx , 187  dy ,  dz ,  ndim , * ouut ) 190  i = 0; i < nx * ny * nz * ndim ; i++ ouut [i] = 0.0 ; 192  offt = 0 ; 193  k = 0; k < nz ; k++) 194  j = 0; j < ny ; j++) 195  i = 0; i < ( nx -1); i++) 197  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 198  1jk = `fdx ( i +1, j , k , 0, nx , ny , nz , 1) ; 199  divx = ( put [ 1jk ] - iut[ ijk ]/ dx ; 200 ouut [ offt + ijk ] = divx ; 202 i ndim < 2) (0) ; 204 offt = `fdx (0, 0, 0, 1, nx , ny , nz , ndim ) ; 205  k = 0; k < nz ; k++) 206  j = 0; j < ( ny -1); j++) 207  i = 0; i < nx ; i++) 209  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 210  ijp1k = `fdx ( i , j +1, k , 0, nx , ny , nz , 1) ; 211  divy = ( put [ ijp1k ] - iut[ ijk ]/ dy ; 212 ouut [ offt + ijk ] = divy ; 214 i ndim < 3 ) (0) ; 216 offt = `fdx (0, 0, 0, 2, nx , ny , nz , ndim ) ; 217  k = 0; k < ( nz -1); k++) 218  j = 0; j < ny ; j++) 219  i = 0; i < nx ; i++) 221  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 222  ijkp1 = `fdx ( i , j , k +1, 0, nx , ny , nz , 1) ; 223  divz = ( put [ ijkp1 ] - iut[ ijk ]/ dz ; 224 ouut [ offt + ijk ] = divz ; 227 } } 229  gSOLowMachDiff_JR :: $GdCloc (* put ,  nx ,  ny ,  nz ,  dx , 230  dy ,  dz ,  ndim , * ouut ) 233  i = 0; i < nx * ny * nz * ndim ; i++ ouut [i] = 0.0 ; 235  offt = 0 ; 236  k = 0; k < nz ; k++) 237  j = 0; j < ny ; j++) 238  i = 1; i < ( nx -1); i++) 241  im1jk = `fdx ( i -1, j , k , 0, nx , ny , nz , 1) ; 242  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 243  1jk = `fdx ( i +1, j , k , 0, nx , ny , nz , 1) ; 244  divx = ( put [ 1jk ] - iut[ im1jk ]/ (2.0 * dx ) ; 245 ouut [ offt + ijk ] = divx ; 247 i ndim < 2) (0) ; 249 offt = `fdx (0, 0, 0, 1, nx , ny , nz , ndim ) ; 250  k = 0; k < nz ; k++) 251  j = 1; j < ( ny -1); j++) 252  i = 0; i < nx ; i++) 254  ijm1k = `fdx ( i , j -1, k , 0, nx , ny , nz , 1) ; 255  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 256  ijp1k = `fdx ( i , j +1, k , 0, nx , ny , nz , 1) ; 257  divy = ( put [ ijp1k ] - iut[ ijm1k ]/ (2.0 * dy ) ; 258 ouut [ offt + ijk ] = divy ; 260 i ndim < 3 ) (0) ; 262 offt = `fdx (0, 0, 0, 2, nx , ny , nz , ndim ) ; 263  k = 1; k < ( nz -1); k++) 264  j = 0; j < ny ; j++) 265  i = 0; i < nx ; i++) 267  ijkm1 = `fdx ( i , j , k -1, 0, nx , ny , nz , 1) ; 268  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 269  ijkp1 = `fdx ( i , j , k +1, 0, nx , ny , nz , 1) ; 270  divz = ( put [ ijkp1 ] - iut[ ijkm1 ]/ (2.0 * dz ) ; 271 ouut [ offt + ijk ] = divz ; 274 } } 276  gSOLowMachDiff_JR :: $CcuϋGdWbByWb (* put ,  nx ,  ny ,  nz , 277  dx ,  dy ,  dz , 278  ndim , * ouut ) 281 `Gd ( put , nx , ny , nz , dx , dy , dz , ndim , ue , ouut ) ; 288  offt = 0 ; 289  k = 0; k < nz ; k++) 290  j = 0; j < ny ; j++) 291  i = 0; i < ( nx -1); i++) 293  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 294  1jk = `fdx ( i +1, j , k , 0, nx , ny , nz , 1) ; 295  Wb_h = 0.5 * ( put [ 1jk ] + iut[ ijk ]) ; 296 ouut [ offt + ijk ] = ouut[offt+ijk] / Wb_h ; 298 i ndim == 1) (0) ; 300 offt = `fdx (0, 0, 0, 1, nx , ny , nz , ndim ) ; 301  k = 0; k < nz ; k++) 302  j = 0; j < ( ny -1); j++) 303  i = 0; i < nx ; i++) 305  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 306  ijp1k = `fdx ( i , j +1, k , 0, nx , ny , nz , 1) ; 307  Wb_jph = 0.5 * ( put [ ijp1k ] + iut[ ijk ]) ; 308 ouut [ offt + ijk ] = ouut[offt+ijk] / Wb_jph ; 310 i ndim == 2 ) (0) ; 312 offt = `fdx (0, 0, 0, 2, nx , ny , nz , ndim ) ; 313  k = 0; k < ( nz -1); k++) 314  j = 0; j < ny ; j++) 315  i = 0; i < nx ; i++) 317  ijk = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 318  ijkp1 = `fdx ( i , j , k +1, 0, nx , ny , nz , 1) ; 319  Wb_kph = 0.5 * ( put [ ijkp1 ] + iut[ ijk ]) ; 320 ouut [ offt + ijk ] = ouut[offt+ijk] / Wb_kph ; 323 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/SOLowMachDiffusion/src/SOLowMachDiff_workers.cpp 36  ~ 37  ~ 38  ~"SOLowMachDiff_JR.h " 40  #MAX ( A , B (A> (B? (A: (B) ) 41  #MIN ( A , B (A< (B? (A: (B) ) 42  #SMALL 1e-19 ) 44  gSOLowMachDiff_JR :: $compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 45 cڡ * p_she ,  nvs , * da2 , 46 cڡ * p_cr_suti , * p_doma_exs , 47  max_v ,  f_ ,  dim ) 52 i is_lized = l ) 54 ` () ; 55 is_lized = ue ; 58  cr_nx = p_cr_suti [0] ; 59  cr_ny = p_cr_suti [1] ; 60  cr_nz = p_cr_suti [2] ; 62  xm = p_doma_exs [0] ; 63  xmax = p_doma_exs [1] ; 64  ym = p_doma_exs [2] ; 65  ymax = p_doma_exs [3] ; 66  zm = p_doma_exs [4] ; 67  zmax = p_doma_exs [5] ; 69  cr_dx = ( xmax - xm / cr_nx ; cr_dx = `MAX (cr_dx, SMALL ) ; 70  cr_dy = ( ymax - ym / cr_ny ; cr_dy = `MAX (cr_dy, SMALL ) ; 71  cr_dz = ( zmax - zm / cr_nz ; cr_dz = `MAX (cr_dz, SMALL ) ; 73  max_femt = ( `pow ( f_ , max_v - 1); 74  fe_dx = cr_dx / max_femt ; 75  fe_dy = cr_dy / max_femt ; 76  fe_dz = cr_dz / max_femt ; 77  lol_xm = xm + p_lbbc [0] * fe_dx ; 78  lol_xmax = xm + p_ubbc [0] * fe_dx ; 79  lol_ym = ym + p_lbbc [1] * fe_dy ; 80  lol_ymax = ym + p_ubbc [1] * fe_dy ; 81  lol_zm = zm + p_lbbc [2] * fe_dz ; 82  lol_zmax = zm + p_ubbc [2] * fe_dz ; 84  nx , ny , nz ; 85  t_i , d_i , t_j , d_j , t_k , d_k ; 86  dim ) 89 nx = p_she [0] ; ny = 1 ; nz = 1 ; 90 t_i = 1; d_i = nx -1; t_j = 0; d_j = 1; t_k = 0; d_k = 1; 93 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 94 t_i = 1; d_i = nx -1; t_j = 1; d_j = ny -1; t_k = 0; d_k = 1; 97 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 98 t_i = 1; d_i = nx -1; t_j = 1; d_j = ny -1; t_k = 1; d_k = nz -1; 101 cout << "SOLowMachDiff_JR::compute(). Something wrong with dimension. Terminate()" 102 << dl ; 103 `rme (); 128 i p_PssuIndex_m -> vue !( nvs -1) ) 130 << "SOLowMachDiff_JR::compute() : Expectheressure indexo be " 131 << nvs -1 << "; ind g " << p_PssuIndex_m -> vue 132 << " doghg;ug wh -1 " << dl ; 137 `CheckSizes ( nx , ny , nz , nvs , dim ) ; 140 `InDiffCffs ( da1 , nx , ny , nz , nvs , dim ) ; 143 `InCpmixAndCpi ( da1 , nx , ny , nz , nvs , dim ) ; 146 `InRhomixAndWb ( da1 , nx , ny , nz , nvs , dim ) ; 149  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1 ) ; 150  lol_femt = max_femt / ride ; 152  lol_dx = cr_dx / lol_femt ; 153  lol_dy = cr_dy / lol_femt ; 154  lol_dz = cr_dz / lol_femt ; 170 * mtu = da1 ; 171 `Gd ( mtu , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , l , GdT ) ; 173 `CcuϋGdWbByWb ( Wb , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , 174 GdWbByWb ) ; 186   iv = 0; iv < nvs ; ivar ++ ) 201 `CڡruMuɝlr ( nx , ny , nz , iv , Muɝlr ) ; 220 * fld = da1 + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 221 * diff_cff = diffusi_cffs + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 222 `CڡruFlux ( fld , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , iv , nvs , 223 Muɝlr , diff_cff , Flux , Bi ) ; 228 * rhs = da2 + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 229 `Div ( Flux , nx , ny , nz , lol_dx , lol_dy , lol_dz , dim , rhs ) ; 231  i = 0; i < nx * ny * nz ; i++ rhs [i] =hs[i] / Muɝlr [i] ; 233 * _mix = Cpi ; 234 * _ecs = Cpi + `fdx (0, 0, 0, iv , nx , ny , nz , nvs ) ; 235 i iv !0 ) `AccumuϋQdGdT ( Bi , _mix , _ecs , nx , ny , nz , dim , 236 QdGdT ) ; 243  i = 0 ; i < nx * ny * nz ; i++ da2 [i] = da2[i] + QdGdT [i] ; 246 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/SOLowMachDiffusion/src/SOLowMachDiff_wrapper.cpp 1  ~"SOLowMachDiff_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _SOLowMachDiff_JR () 8 CONV_NS ( Compڒt * wk ; 9 SOLowMachDiff_JR * compڒt ; 10 compڒt = w SOLowMachDiff_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_SOLowMachDiff_JR SOLowMachDiff_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/include/AbstractDeriv.h 10 #ide AbDivHSn 11  #AbDivHSn ) 13 mea gViscSessTsS 15 as cAbDiv 17 gpublic : 19 AbDiv (){} 21 vtu ~ AbDiv () {} 23 vtu  Cfigu ( di ,  db ,  upwd , cڡ * she , 24 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 25  maxv ,  f ,  bndryL ,  bndryR ) = 0 ; 27 vtu  SD  d ) = 0 ; 29 vtu  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 30 * ouut ) = 0 ; 32 vtu  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 33 * ouut ) = 0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/include/CollocDeriv.h 7 #ide ClocDivHSn 8  #ClocDivHSn ) 10  ~ 11  ~"AbDiv.h " 13 mea gViscSessTsS 15 as cClocDiv : public vtu AbDiv 17 public : 19 ClocDiv () 21 biL = biR = bjL = bjR = bkL = bkR = iiL = iiR = 0 ; 22 gijL = ijR = ikL = ikR = fiL = fiR = fjL = fjR = fkL = 0; 23 gfkR = viL = viR = vjL = vjR = vkL = vkR = dfiL = dfiR = 0 ; 24 gdfjL = dfjR = dfkL = dfkR = 0 ; 25 gd_i = d_b = upw = 0; 27 gd :: ios :: sync_wh_dio () ; 30 gvtu ~ ClocDiv () {} 32  Cfigu ( di ,  db ,  upwd , cڡ * she , 33 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 34  maxv ,  f ,  bndryL ,  bndryR ) ; 36  SD  d ) { gdec = d ; } 38  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 39 * ouut ) ; 41  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 42 * ouut ) ; 44 give : 46  biL , gbiR , gbjL , gbjR , gbkL , gbkR ; 47  giiL , giiR , gijL , gijR , gikL , gikR ; 48  gfiL , gfiR , gfjL , gfjR , gfkL , gfkR ; 49  gviL , gviR , gvjL , gvjR , gvkL , gvkR ; 50  gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR ; 51  gdec ; 53  gd_i , gd_b , gupw ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/include/StagDeriv.h 7 #ide SgDivHSn 8  #SgDivHSn ) 10  ~ 11  ~"AbDiv.h " 13 mea gViscSessTsS 15 as cSgDiv : public vtu AbDiv 17 public : 19 SgDiv () 21 biL = biR = bjL = bjR = bkL = bkR = iiL = iiR = 0 ; 22 gijL = ijR = ikL = ikR = fiL = fiR = fjL = fjR = fkL = 0; 23 gfkR = viL = viR = vjL = vjR = vkL = vkR = dfiL = dfiR = 0 ; 24 gdfjL = dfjR = dfkL = dfkR = 0 ; 25 gd_i = d_b = upw = 0; 28 gvtu ~ SgDiv () {} 30  Cfigu ( di ,  db ,  upwd , cڡ * she , 31 cڡ * lb , cڡ * ub , * doma_ext ,  dim , 32  maxv ,  f ,  bndryL ,  bndryR ) ; 34  SD  d ) { gdec = d ; } 36  CompuFDiv (* put , * v ,  dx ,  dy ,  dz , 37 * ouut ) ; 39  CompuSecdDiv (* put ,  dx ,  dy ,  dz , 40 * ouut ) ; 41 give : 43  biL , gbiR , gbjL , gbjR , gbkL , gbkR ; 44  giiL , giiR , gijL , gijR , gikL , gikR ; 45  gfiL , gfiR , gfjL , gfjR , gfkL , gfkR ; 46  gviL , gviR , gvjL , gvjR , gvkL , gvkR ; 47  gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR ; 48  gdec ; 49  gd_i , gd_b , gupw ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/include/Test.h 5  ~"c.h " 6  ~"dPts.h " 8  ~"PchPt.h " 11  ~"CONV_NS.h " 15 ass gTe : public vtu CONV_NS ( Compڒt ), 16 public vtu $CONV_NS ( GoPt ) 19 public : 21 `Te () ; 23 ~ `Te () ; 25 vtu  `go () ; 27 vtu  `tSvis `CONV_NS ( Svis * svc ) ; 29 ive : 31 `CONV_NS ( Svis * psvc ; 32 } } ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/include/ViscousStressTensor_JR.h 14 #ide ViscousSessTsHSn 15  #ViscousSessTsHSn ) 19  ~"c.h " 20  ~"dPts.h " 23  ~"jc++/jc++.h " 24  ~"jc++/ut/jc++ut.h " 25  ~"ms/msSr.h " 26  ~"pt/sutIs.h " 29  ~"PchPt.h " 32  ~"AMRPt.h " 33  ~"PrݔtsPt.h " 34  ~"DiffPt.h " 35  ~"ThmoAlysisPt.h " 38  ~"AbDiv.h " 39  ~"ClocDiv.h " 40  ~"SgDiv.h " 43  ~"CONV_NS.h " 47 ass gViscousSessTs_JR : public vtu CONV_NS ( Compڒt ), 48 public vtu gPchPt 50 gpublic : 52 ViscousSessTs_JR () ; 54 gvtu ~ ViscousSessTs_JR () ; 56 vtu  tSvis CONV_NS ( Svis * svc ); 58 vtu  SDa (* da_ , cڡ * she ,  nems ,  ndim ) ; 60 vtu  compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 61 cڡ * p_she ,  nvs , * da2 , 62 cڡ * p_cr_suti , * p_doma_exs , 63  max_v ,  f_ ,  dim ) ; 65 give : 67  tupPams () ; 69  CheckSize  size ) ; 71  GViscosyAndDsy (* p_srs , cڡ * p_she ,  nsrs ,  dim , 72 * dyn_visc , * rho ) ; 74  GTau (* v , cڡ * p_she ,  nvs ,  upwdg , cڡ * p_lbbc , 75 cڡ * p_ubbc , 76 * p_doma_exs ,  dim ,  max_v ,  f_ , 77  ldx ,  ldy ,  ldz , * div , * mu , * u , 78  i ,  j , * wk , ViscSessTsS :: AbDiv * pAD ) ; 80  GDivV (* v , cڡ * p_she ,  nvs ,  upwdg , cڡ * p_lbbc , 81 cڡ * p_ubbc , 82 * p_doma_ex ,  dim ,  max_v ,  f_ , 83  ldx ,  ldy ,  ldz , * divg , * wk , 84 ViscSessTsS :: AbDiv * pAD ) ; 88 le  fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz , 89  nvs ) 92  ( iv * nz * ny * gnx + k *ny*nx + j *nx + gi ) ; 95 bo gis_lized , gis_hod , gsrs_t ; 98 CONV_NS ( Svis * gpSvc ; 100 IPam * gpIOrdPam , * gpBoundOrdPam ; 101 SgPam * gpMeshClocTy ; 103 CfigubPamPt * g ; 104 AMRPt * gpAMR ; 105 DiffPt * gpDiffCff ; 106 ThmoAlysisPt * gpThmo ; 107 PrݔtsPt * gpPrPt , * gpThmoPr ; 110 gViscSessTsS :: AbDiv * pAbsD ; 111 gViscSessTsS :: ClocDiv CDO ; 112 gViscSessTsS :: SgDiv SDO ; 114 * gsrs , * gu , * gdivV , * gWkAay , * gmu , * grho ; 115  gns_d , gno_srs , gno_ns_ems ; 116  gu_y_offt [3][3] ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/include/fortran_names.h 4 #i defed ( PGI ) 5  #FORTNAME ( A A## _ ) 7  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/lib/der1_include.h 2 ! X_DER1_CO , gY_DER1_CO , d Z_DER1_CO evue the f gdivive 3 ! gx -, gy - d gz - deis clod nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up wh gAMR 5 ! itis gmd . In rms of gdivives , ed d gupwd 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! The as  the vbs VEL d UPWIND e to rm urs gto 16 ! ecify whh they wt upwded downwded gdivives . 17 ! Ddg the sign of h vocy d whh h ur gques , 18 ! upwd downwd gc , eh upwded c o g 's 19 ! comex $cjuge ( Fourr a is d . Nr bounds , 20 ! is imail to low  l possibls d h ll 21 ! boundy pots th n pْty be boundyot e ways 22 ! d as boundy pots . The boundyot e od usg 23 ! skewed cs ì the wl d ed difns fuh away . 24 ! Upwdg / downwdg is ighy dif  comessib d 25 ! comessib ows . The Κg route mu cho r 26 ! `` vocy ,'' i . e . u , u+ c , u-c, . 28 ! This route has bn t up to be que g . Aays f , df , 29 ! d v e lowed to r the route havg bry y 30 ! bounds . The Κg route mu addiڮly ecify the numb 31 ! of g s th e ovided l six bounds as wl 32 ! as d the exa gi whe divives e eded . Ne 33 ! th n l emts of y df wl be fd wh uful 34 ! divives . This dds wh the ur ecifd th y 35 ! bounds . The key pot is th l ys e dimsied tive to 36 ! the me grid ; somhg h Κg route eds to cce . 38 ! G s e grid pots th have bn added to the cut mesh 39 ! v by ީg vbs om the xt mo cr grid . 40 ! They e ad ound the ri tch to low th avoid 41 ! of n - ed divive ݔs . In the ri ptis ofhe 42 ! computi , GrACE wl dr the sry numb of g s so 43 ! th skewed cs e uesry but ì physil bounds , 44 ! this may n be possib . In the s , e eds to eablish how 45 ! my boundy pots the e d o them ݔly . This is why 46 ! d right rusis of cs e csided . If the ri 47 ! ݔ eds four boundy pots od but the e ly the 48 ! g s th the t rusi is e . This mns th ly one 49 ! boundy pot mu be od wh e - sided divives . 51 ! He 's howhe first derivativesre called: 53 ! subroute x_d1_co 54 ! & ( f , df , dx , dy , dz , v , upwd , di , db , 55 ! & biL , biR , bjL , bjR , bkL , bkR , 56 ! & fiL , fiR , fjL , fjR , fkL , fkR , 57 ! & iiL , iiR , ijL , ijR , ikL , ikR , 58 ! & viL , viR , vjL , vjR , vkL , vkR , 59 ! & dfiL , dfiR , dfjL , dfjR , dfkL , dfkR , 60 ! & x , y , z , , r ) 62 ! INPUT 64 ! f - Funi to be difd 65 ! dx , dy , dz - grid acg x -, y -, d z - deis 66 ! v - vocy ve -> ud  ܛg upwd cs 67 ! upwd - dei -> `upwd (+1,+2 `downwd (-1,-2) 68 ! di - Ord of accucy o the ri ݔ 69 ! db - Fm d of accucy o the wl pot boundy ݔ 70 ! Cuy n ud !! 71 ! fiL - Glob codes  `f ( Le side of x - dei ) 72 ! fiR - Glob codes  `f ( Right side of x - dei ) 73 ! fjL - Glob codes  `f ( Le side of y - dei ) 74 ! fjR - Glob codes  `f ( Right side of y - dei ) 75 ! fkL - Glob codes  `f ( Le side of z - dei ) 76 ! fkR - Glob codes  `f ( Right side of z - dei ) 77 ! dfiL - Glob codes  df `tch ( Le side of x - dei ) 78 ! dfiR - Glob codes  df `tch ( Right side of x - dei ) 79 ! dfjL - Glob codes  df `tch ( Le side of y - dei ) 80 ! dfjR - Glob codes  df `tch ( Right side of y - dei ) 81 ! dfkL - Glob codes  df `tch ( Le side of z - dei ) 82 ! dfkR - Glob codes  df `tch ( Right side of z - dei ) 83 ! iiL - Glob codes  `df ( Le side of x - dei ) 84 ! iiR - Glob codes  `df ( Right side of x - dei ) 85 ! ijL - Glob codes  `df ( Le side of y - dei ) 86 ! ijR - Glob codes  `df ( Right side of y - dei ) 87 ! ikL - Glob codes  `df ( Le side of z - dei ) 88 ! ikR - Glob codes  `df ( Right side of z - dei ) 89 ! viL - Glob codes  `v ( Le side of x - dei ) 90 ! viR - Glob codes  `v ( Right side of x - dei ) 91 ! vjL - Glob codes  `v ( Le side of y - dei ) 92 ! vjR - Glob codes  `v ( Right side of y - dei ) 93 ! vkL - Glob codes  `v ( Le side of z - dei ) 94 ! vlR - Glob codes  `v ( Right side of z - dei ) 95 ! biL - Numb of g s side o x - dei 96 ! biR - Numb of g s right side o x - dei 97 ! bjL - Numb of g s side o y - dei 98 ! bjR - Numb of g s right side o y - dei 99 ! bkL - Numb of g s side o z - dei 100 ! bkR - Numb of g s right side o z - dei 101 ! x - Is the x - dei riodic -> (0 no , (1 yes 102 ! y - Is the y - dei riodic -> (0 no , (1 yes 103 ! z - Is the z - dei riodic -> (0 no , (1 yes 104 ! - E mesge - S bow 106 ! OUTPUT 108 ! df - Difd Funi 110 ! LOCAL 112 ! oL - Le rusi of ri c 113 ! oR - Right rusi of ri c 114 ! omax - Maximum rusi of ri c 115 ! roL - N rusi of ri c 116 ! roR - N right rusi of ri c 117 ! width - Tٮ width of ri c 118 ! - Exic ed difn c cff . ` ( i +/- 1) 119 ! be - Exic ed difn c cff . ` ( i +/- 2) 120 ! - Exic ed difn c cff . ` ( i +/- 3) 121 ! de - Exic ed difn c cff . ` ( i +/- 4) 122 ! dL - Exic skewed difn c cff . ` ( i - 4) 123 ! cL - Exic skewed difn c cff . ` ( i - 3) 124 ! bL - Exic skewed difn c cff . ` ( i - 2) 125 ! aL - Exic skewed difn c cff . ` ( i - 1) 126 ! Up - Exic skewed difn c cff . ` ( i ) 127 ! aR - Exic skewed difn c cff . ` ( i + 1) 128 ! bR - Exic skewed difn c cff . ` ( i + 2) 129 ! cR - Exic skewed difn c cff . ` ( i + 3) 130 ! dR - Exic skewed difn c cff . ` ( i + 4) 131 ! x , y , zbeg - Begng dex  ri c 132 ! x , y , zd - Endg dex  ri c 133 ! piL - Glob codes  df + g `s ( Le side of x - dei ) 134 ! piR - Glob codes  df + g `s ( Right side of x - dei ) 135 ! pjL - Glob codes  df + g `s ( Le side of y - dei ) 136 ! pjR - Glob codes  df + g `s ( Right side of y - dei ) 137 ! pkL - Glob codes  df + g `s ( Le side of z - dei ) 138 ! pkR - Glob codes  df + g `s ( Right side of z - dei ) 139 ! piL - Glob codes  df + g `s ( Le side of x - dei ) 141 ! OPTIONS : 142 ! Cd Difns 143 ! 2E [ di =2, db =1, upwd =0] (1-2E-1) 144 ! 4E [ di =4, db =3, upwd =0] (3,3-4E-3,3) 145 ! 6E [ di =6, db =3, upwd =0] (3,3,4-6E-4,3,3) 146 ! 8E [ di =8, db =3, upwd =0] (3,3,4,6-8E-6,4,3,3) 147 ! $UpWd ( Downwd Difns 148 ! 3U [ di =3, db =3, upwd =(+/-1)] (3,3-3U-3,3) 149 ! 4U [ di =4, db =3, upwd =(+/-1)] (3,3,4-4U-4,3,3) 150 ! 5U [ di =5, db =3, upwd =(+/-1)] (3,3,4-5U-4,3,3) 151 ! 6U [ di =6, db =3, upwd =(+/-1)] (3,3,4,6-6U-6,4,3,3) 152 ! 7U [ di =7, db =3, upwd =(+/-1)] (3,3,4,6-7U-6,4,3,3) 153 ! Sur - $UpWd ( Downwd Difns 154 ! 4UU [ di =4, db =3, upwd =(+/-2)] (3,3,4,4-4U-4,4,3,3) 155 ! 5UU [ di =5, db =3, upwd =(+/-2)] (3,3,4,4-5U-4,4,3,3) 157 ! ne : Fm ovl d equs MIN [ di , db +1]. 159 ! Iny wrn by Chris Kdy Dec . 2001 160 ! Rewrn by Chris Kdy Feb . 2002 163 ! Ieg uff 165 imic ne 167 g oL , oR , omax , width 168 g roLx , roLy , roLz 169 g roRx , roRy , roRz 170 g i , j , k 171 g di , db 172 g 173 g x , y , z 174 g xbeg , ybeg , zbeg 175 g xd , yd , zd 176 g sign , upwd 177 g biL , biR , bjL , bjR , bkL , bkR 178 g fiL , fiR , fjL , fjR , fkL , fkR 179 g iiL , iiR , ijL , ijR , ikL , ikR 180 g piL , piR , pjL , pjR , pkL , pkR 181 g viL , viR , vjL , vjR , vkL , vkR 182 g dfiL , dfiR , dfjL , dfjR , dfkL , dfkR 184 *8 `f fiL : fiR , fjL : fjR , fkL : fkR ) 185 *8 `df ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 186 *8 `v viL : viR , vjL : vjR , vkL : vkR ) 187 *8 dx , dy , dz 188 *8 rdx , rdy , rdz 189 *8 , be , , de 190 *8 dL , cL , bL , aL , Up , aR , bR , cR , dR 191 *8 `bnd1A (2) 192 *8 `bnd3A (4) 193 *8 `bnd3B (4) 194 *8 `bnd4C (5) 195 *8 `bnd6D (7) 197 cha *60 r @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/lib/der1_include_st.h 2 ! X_DER1_ST , gY_DER1_ST , d Z_DER1_ST evue the f gdivive 3 ! gx -, gy - d gz - deis agged nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up wh gAMR 5 ! itis gmd . In rms of gdivives , ly ged 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! It is assumed th the comg gvb , gf , comes h ggrid 16 ! gpots ..., gx_ { gi -1}, x_{i}, x_{i+1}, ... d th df is giv g 17 ! the grid gpots ..., gx_ { gi -1/2}, x_{i+1/2}, x_{i+3/2}, ... The gly 18 ! rub he is the ourmo gpots . If N vues of f r gthis 19 ! groute , the tul thg to d is ouut gN -1 vues of gdf . 21 ! This route has bn t up to be que gg . Aays f d gdf 22 ! e lowed to r the route havg bry gy 23 ! gbounds . The Κg route mu addiڮly ecify the gnumb 24 ! of g s th e ovided l six bounds as gwl 25 ! as d the exa gi whe divives e geded . gNe 26 ! th n l emts of y df wl be fd wh guful 27 ! gdivives . This dds wh the ur ecifd th gy 28 ! gbounds . The key pot is th l ys e dimsied tive gto 29 ! the me ggrid ; somhg h Κg route eds to gcce . 31 ! G s e grid pots th have bn added to the cut gmesh 32 ! v by ީg vbs om the xt mo cr ggrid . 33 ! They e ad ound the ri tch to low th gavoid 34 ! of gn - ed divive gݔs . In the ri ptis o gthe 35 ! gcomputi , GrACE wl dr the sry numb of g s gso 36 ! th skewed cs e uesry but ì physil gbounds , 37 ! this may n be gpossib . In the gs , e eds to eablish ghow 38 ! my boundy pots the e d o them gݔly . This is gwhy 39 ! d right rusis of cs e gcsided . If the gri 40 ! ݔ eds four boundy pots od but the e ly gthe 41 ! g s th the t rusi is ge . This mns th ly one 42 ! boundy pot mu be od wh ge - sided gdivives . 44 ! gHe 's howhe first derivativesre called: 46 ! subroute gx_d1_ 47 ! & ( gf , gdf , gdx , gdy , gdz , gdi , gdb , 48 ! & gbiL , gbiR , gbjL , gbjR , gbkL , gbkR , 49 ! & gfiL , gfiR , gfjL , gfjR , gfkL , gfkR , 50 ! & giiL , giiR , gijL , gijR , gikL , gikR , 51 ! & gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR , 52 ! & gx , gy , gz , g , gr ) 54 ! gINPUT 56 ! gf - Funi to be gdifd 57 ! gdx , gdy , gdz - grid acg gx -, gy -, d gz - gdeis 58 ! gdi - Ord of accucy o the ri gݔ 59 ! gdb - Fm d of accucy o the wl pot boundy gݔ 60 ! Cuy n gud !! 61 ! gfiL - Glob codes  f ( Le side of x - dei ) 62 ! gfiR - Glob codes  f ( Right side of x - dei ) 63 ! gfjL - Glob codes  f ( Le side of y - dei ) 64 ! gfjR - Glob codes  f ( Right side of y - dei ) 65 ! gfkL - Glob codes  f ( Le side of z - dei ) 66 ! gfkR - Glob codes  f ( Right side of z - dei ) 67 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 68 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 69 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 70 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 71 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 72 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 73 ! giiL - Glob codes  df ( Le side of x - dei ) 74 ! giiR - Glob codes  df ( Right side of x - dei ) 75 ! gijL - Glob codes  df ( Le side of y - dei ) 76 ! gijR - Glob codes  df ( Right side of y - dei ) 77 ! gikL - Glob codes  df ( Le side of z - dei ) 78 ! gikR - Glob codes  df ( Right side of z - dei ) 79 ! gviL - Glob codes  v ( Le side of x - dei ) 80 ! gviR - Glob codes  v ( Right side of x - dei ) 81 ! gvjL - Glob codes  v ( Le side of y - dei ) 82 ! gvjR - Glob codes  v ( Right side of y - dei ) 83 ! gvkL - Glob codes  v ( Le side of z - dei ) 84 ! gvlR - Glob codes  v ( Right side of z - dei ) 85 ! gbiL - Numb of g s side o gx - gdei 86 ! gbiR - Numb of g s right side o gx - gdei 87 ! gbjL - Numb of g s side o gy - gdei 88 ! gbjR - Numb of g s right side o gy - gdei 89 ! gbkL - Numb of g s side o gz - gdei 90 ! gbkR - Numb of g s right side o gz - gdei 91 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 92 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 93 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 94 ! g - E gmesge - S gbow 96 ! gOUTPUT 98 ! gdf - Difd gFuni 100 ! gLOCAL 102 ! goL - Le rusi of ri gc 103 ! goR - Right rusi of ri gc 104 ! gomax - Maximum rusi of ri gc 105 ! groL - N rusi of ri gc 106 ! groR - N right rusi of ri gc 107 ! gwidth - Tٮ width of ri gc 108 ! g - Exic ed difn c gcff . ( i +/- 1) 109 ! gbe - Exic ed difn c gcff . ( i +/- 2) 110 ! g - Exic ed difn c gcff . ( i +/- 3) 111 ! gde - Exic ed difn c gcff . ( i +/- 4) 112 ! gx , gy , gzbeg - Begng dex  ri gc 113 ! gx , gy , gzd - Endg dex  ri gc 114 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 115 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 116 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 117 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 118 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 119 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 120 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 122 ! gOPTIONS : 123 ! Cd Difns 124 ! 2E [ di =2, db =1, upwd =0] (1-2E-1) 125 ! 4E [ di =4, db =3, upwd =0] (3,3-4E-3,3) 126 ! 6E [ di =6, db =3, upwd =0] (3,3,4-6E-4,3,3) 127 ! 8E [ di =8, db =3, upwd =0] (3,3,4,6-8E-6,4,3,3) 129 ! gne : Fm ovl d equs MIN [ di , db +1]. 131 ! Iny wrn by Chris Kdy gDec . 2001 132 ! Rewrn by Chris Kdy gFeb . 2002 135 ! Ieg uff 137 imic ne 139 g oL , goR , gomax , width 140 g groLx , groLy , roLz 141 g groRx , groRy , roRz 142 g gi , gj , k 143 g gdi , db 144 g 145 g gx , gy , z 146 g gxbeg , gybeg , zbeg 147 g gxd , gyd , zd 148 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 149 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 150 g giiL , giiR , gijL , gijR , gikL , ikR 151 g gviL , gviR , gvjL , gvjR , gvkL , vkR 152 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , dfkR 153 g gpiL , gpiR , gpjL , gpjR , gpkL , gpkR 155 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 156 *8 df ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 157 *8 dx , gdy , dz 158 g *8 grdx , grdy , rdz 159 g *8 g , gbe , g , de 160 g *8 bnd2A (2) 161 g *8 bnd3A (4) 162 g *8 bnd3B (4) 163 g *8 bnd4C (4) 164 g *8 bnd6D (6) 165 g *8 bnd8E (8) 167 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/lib/der2_include.h 2 ! X_DER2_CO , gY_DER2_CO , d Z_DER2_CO evue the cd gdivive 3 ! gx -, gy - d gz - deis clod nd unifm ggrids 4 ! usg exic gfe - gdifncg . The route is t up gwh 5 ! AMR itis gmd . In rms of gdivives , ged 6 ! cs e ovided th go as high gas 8 gth - d gaccucy . 7 ! gHigh - d boundy osus have n bn uded gbeu 8 ! they e o ly gimic . If gdesed , this could be gchged 9 ! ( vurs gwcome ). This route ds n low  gnunifm 10 ! grids gdely . If ytil mpg is avaab om a gunifm 11 ! vb to a nunifm e th o could u this route as g 12 ! of the divive gevui . The diviv routes e ghdwed 13 !  the me ݔ l gdeis ! 15 ! This route has bn t up to be que gg . Aays f gd 16 ! d2f e lowed to r the route havg bry gy 17 ! gbounds . The Κg route mu addiڮly ecify the gnumb 18 ! of g s th e ovided l six bounds as gwl 19 ! as d the exa gi whe divives e geded . gNe 20 ! th n l emts of y df wl be fd wh guful 21 ! gdivives . This dds wh the ur ecifd th gy 22 ! gbounds . The key pot is th l ys e dimsied tive gto 23 ! the me ggrid ; somhg h Κg route eds to gcce . 25 ! G s e grid pots th have bn added to the cut gmesh 26 ! v by ީg vbs om the xt mo cr ggrid . 27 ! They e ad ound the ri tch to low th gavoid 28 ! of gn - ed divive gݔs . In the ri ptis o gthe 29 ! gcomputi , GrACE wl dr the sry numb of g s gso 30 ! th skewed cs e uesry but ì physil gbounds , 31 ! this may n be gpossib . In the gs , e eds to eablish ghow 32 ! my boundy pots the e d o them gݔly . This is gwhy 33 ! d right rusis of cs e gcsided . If the gri 34 ! ݔ eds four boundy pots od but the e ly gthe 35 ! g s th the t rusi is ge . This mns th ly one 36 ! boundy pot mu be od wh ge - sided gdivives . 38 ! gHe 's howhe second derivativesre called: 40 ! subroute x_d2_co ( f , d2f , dx , dy , dz , di , db , 41 ! & biL , biR , bjL , bjR , bkL , bkR , 42 ! & fiL , fiR , fjL , fjR , fkL , fkR , 43 ! & iiL , iiR , ijL , ijR , ikL , ikR , 44 ! & dfiL , dfiR , dfjL , dfjR , dfkL , dfkR , 45 ! & x , y , z , , r ) 47 ! gINPUT 49 ! gf - Funi to be gdifd 50 ! gdx2 , gdy2 , gdz2 - grid acg squed gx -, gy -, d gz - gdeis 51 ! gdi - Ord of accucy o the ri gݔ 52 ! gdb - Fm d of accucy o the wl pot boundy gݔ 53 ! Cuy n gud !! 54 ! gfiL - Glob codes  f ( Le side of x - dei ) 55 ! gfiR - Glob codes  f ( Right side of x - dei ) 56 ! gfjL - Glob codes  f ( Le side of y - dei ) 57 ! gfjR - Glob codes  f ( Right side of y - dei ) 58 ! gfkL - Glob codes  f ( Le side of z - dei ) 59 ! gfkR - Glob codes  f ( Right side of z - dei ) 60 ! gdfiL - Glob codes  df tch ( Le side of x - dei ) 61 ! gdfiR - Glob codes  df tch ( Right side of x - dei ) 62 ! gdfjL - Glob codes  df tch ( Le side of y - dei ) 63 ! gdfjR - Glob codes  df tch ( Right side of y - dei ) 64 ! gdfkL - Glob codes  df tch ( Le side of z - dei ) 65 ! gdfkR - Glob codes  df tch ( Right side of z - dei ) 66 ! giiL - Glob codes  df ( Le side of x - dei ) 67 ! giiR - Glob codes  df ( Right side of x - dei ) 68 ! gijL - Glob codes  df ( Le side of y - dei ) 69 ! gijR - Glob codes  df ( Right side of y - dei ) 70 ! gikL - Glob codes  df ( Le side of z - dei ) 71 ! gikR - Glob codes  df ( Right side of z - dei ) 72 ! gbiL - Numb of g s side o gx - gdei 73 ! gbiR - Numb of g s right side o gx - gdei 74 ! gbjL - Numb of g s side o gy - gdei 75 ! gbjR - Numb of g s right side o gy - gdei 76 ! gbkL - Numb of g s side o gz - gdei 77 ! gbkR - Numb of g s right side o gz - gdei 78 ! gx - Is the gx - dei griodic -> (0 gno , (1 gyes 79 ! gy - Is the gy - dei griodic -> (0 gno , (1 gyes 80 ! gz - Is the gz - dei griodic -> (0 gno , (1 gyes 81 ! g - E gmesge - S gbow 83 ! gOUTPUT 85 ! gd2f - Twi Difd gFuni 87 ! gLOCAL 89 ! goL - Le rusi of ri gc 90 ! goR - Right rusi of ri gc 91 ! gomax - Maximum rusi of ri gc 92 ! groL - N rusi of ri gc 93 ! groR - N right rusi of ri gc 94 ! gwidth - Tٮ width of ri gc 95 ! gUp - Exic ed difn c gcff . ( i +/- 0) 96 ! g - Exic ed difn c gcff . ( i +/- 1) 97 ! gbe - Exic ed difn c gcff . ( i +/- 2) 98 ! g - Exic ed difn c gcff . ( i +/- 3) 99 ! gde - Exic ed difn c gcff . ( i +/- 4) 100 ! gx , gy , gzbeg - Begng dex  ri gc 101 ! gx , gy , gzd - Endg dex  ri gc 102 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 103 ! gpiR - Glob codes  gdf + g s ( Right side of x - dei ) 104 ! gpjL - Glob codes  gdf + g s ( Le side of y - dei ) 105 ! gpjR - Glob codes  gdf + g s ( Right side of y - dei ) 106 ! gpkL - Glob codes  gdf + g s ( Le side of z - dei ) 107 ! gpkR - Glob codes  gdf + g s ( Right side of z - dei ) 108 ! gpiL - Glob codes  gdf + g s ( Le side of x - dei ) 110 ! gOPTIONS : 111 ! Cd Difns 112 ! 2E [ di =2, db =1] (1-2E-1) 113 ! 4E [ di =4, db =3] (3,3-4E-3,3) 114 ! 6E [ di =6, db =3] (3,3,4-6E-4,3,3) 115 ! 8E [ di =8, db =3] (3,3,4,6-8E-6,4,3,3) 117 ! gne : Fm ovl d equs MIN [ di , db +1]. 119 ! Iny wrn by Chris Kdy gDec . 2001 120 ! Rewrn by Chris Kdy gFeb . 2002 123 ! Ieg uff 125 imic ne 127 g oL , goR , gomax , width 128 g groLx , groLy , roLz 129 g groRx , groRy , roRz 130 g gi , gj , k 131 g gdi , db 132 g 133 g gx , gy , z 134 g gxbeg , gybeg , zbeg 135 g gxd , gyd , zd 136 g gbiL , gbiR , gbjL , gbjR , gbkL , bkR 137 g gfiL , gfiR , gfjL , gfjR , gfkL , fkR 138 g giiL , giiR , gijL , gijR , gikL , ikR 139 g gpiL , gpiR , gpjL , gpjR , gpkL , pkR 140 g gdfiL , gdfiR , gdfjL , gdfjR , gdfkL , gdfkR 142 g *8 f fiL : fiR , fjL : fjR , fkL : fkR ) 143 *8 d2f ( dfiL : dfiR , dfjL : dfjR , dfkL : dfkR ) 144 *8 dx , gdy , dz 145 g *8 grdx2 , grdy2 , rdz2 146 g *8 gUp , g , gbe , g , de 147 g *8 bnd2A (3) 148 g *8 bnd3A (5) 149 g *8 bnd3B (5) 150 g *8 bnd4C (5) 151 g *8 bnd6D (7) 153 gcha *60 gr @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/src/CollocDeriv.cpp 5  ~"ClocDiv.h " 6  ~"f܌_mes.h " 8  #MAX ( A , B (A> (B? (A: (B) ) 11  FORTNAME ( x_d1_co )(* f , * df , * dx , * dy , * dz , 12 * v , * upwd , * di , * db , 13 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 14 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 15 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 16 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 17 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 18 * dfkR , * x , * y , * z , * , 19 * r ) ; 21  FORTNAME ( y_d1_co )(* f , * df , * dx , * dy , * dz , 22 * v , * upwd , * di , * db , 23 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 24 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 25 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 26 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 27 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 28 * dfkR , * x , * y , * z , * , 29 * r ) ; 31  FORTNAME ( z_d1_co )(* f , * df , * dx , * dy , * dz , 32 * v , * upwd , * di , * db , 33 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 34 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 35 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 36 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 37 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 38 * dfkR , * x , * y , * z , * , 39 * r ) ; 41  FORTNAME ( x_d2_co )(* f , * df , * dx , * dy , * dz , 42 * di , * db , 43 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 44 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 45 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 46 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 47 * dfkR , * x , * y , * z , * , 48 * r ) ; 50  FORTNAME ( y_d2_co )(* f , * df , * dx , * dy , * dz , 51 * di , * db , 52 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 53 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 54 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 55 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 56 * dfkR , * x , * y , * z , * , 57 * r ) ; 59  FORTNAME ( z_d2_co )(* f , * df , * dx , * dy , * dz , 60 * di , * db , 61 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 62 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 63 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 64 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 65 * dfkR , * x , * y , * z , * , 66 * r ) ; 69  ViscSessTsS :: ClocDiv :: $Cfigu ( di ,  db ,  upwd , 70 cڡ * she , cڡ * lb , 71 cڡ * ub , * doma_ext ,  dim , 72  maxv ,  f ,  bndryL ,  bndryR ) 75 i dim > 0 ) 77 biL = bndryL ; biR = bndryR ; 78 iiL = biL ; iiR = `MAX (iiL, she [0] - ( biR +1)) ; 79 fiL = 0 ; fiR = `MAX (fiL, she [0]-1) ; 80 viL = 0 ; viR = `MAX (viL, she [0]-1) ; 81 dfiL = 0 ; dfiR = `MAX (dfiL, she [0]-1) ; 84 i dim > 1 ) 86 bjL = bndryL ; bjR = bndryR ; 87 ijL = bjL ; ijR = `MAX (ijL, she [1] - ( bjR +1)) ; 88 fjL = 0 ; fjR = `MAX (fjL, she [1]-1) ; 89 vjL = 0 ; vjR = `MAX (vjL, she [1]-1) ; 90 dfjL = 0 ; dfjR = `MAX (dfjL, she [1]-1) ; 93 i dim > 2 ) 95 bkL = bndryL ; bkR = bndryR ; 96 ikL = bkL ; ikR = `MAX (ikL, she [2] - ( bkR +1)) ; 97 fkL = 0 ; fkR = `MAX (fkL, she [2]-1) ; 98 vkL = 0 ; vkR = `MAX (vkL, she [2]-1) ; 99 dfkL = 0 ; dfkR = `MAX (dfkL, she [2]-1) ; 102 d_i = di , d_b = db ; upw = upwd ; 104 } } 106  ViscSessTsS :: ClocDiv :: $CompuFDiv (* put , * v , 107  dx ,  dy ,  dz , 108 * ouut ) 110  x = 0 , y = 0, z = 0, ; 111  r [100] ; 113  dec ) 116 `FORTNAME ( x_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 117 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 118 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 119 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 120 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 121 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 122 & x , & y , & z , & , r ); 123 i < 0 ) 125 d :: << " From ViscSessTsS::ClocDiv::Compu(" << r 126 << " x-diviv: cod" << << d :: dl ; 127 ( ) ; 131 `FORTNAME ( y_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 132 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 133 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 134 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 135 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 136 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 137 & x , & y , & z , & , r ); 138 i < 0 ) 140 d :: << " From ViscSessTsS::ClocDiv::Compu(" << r 141 << " y-diviv: cod" << << d :: dl ; 142 ( ) ; 146 `FORTNAME ( z_d1_co )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 147 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 148 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 149 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 150 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 151 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 152 & x , & y , & z , & , r ); 153 i < 0 ) 155 d :: << " From ViscSessTsS::ClocDiv::Compu(" << r 156 << " z-diviv: cod" << << d :: dl ; 157 ( ) ; 161 d :: << " From ViscStressTensSpace::CollocDeriv::Compute() : cannot find derivatives " 162 << "lg " << dec << " dei. Ru wh -1 " << d :: dl ; 167 } } 169  ViscSessTsS :: ClocDiv :: $CompuSecdDiv (* put ,  dx , 170  dy ,  dz , * ouut ) 172  x = 0 , y = 0, z = 0, ; 173  r [100] ; 175  dec ) 178 `FORTNAME ( x_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 179 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 180 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 181 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 182 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 183 & x , & y , & z , & , r ); 184 i < 0 ) 186 d :: << " From ViscSessTsS::ClocDiv::Compu(" << r 187 << " x-diviv: cod" << << d :: dl ; 188 ( ) ; 192 `FORTNAME ( y_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 193 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 194 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 195 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 196 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 197 & x , & y , & z , & , r ); 198 i < 0 ) 200 d :: << " From ViscSessTsS::ClocDiv::Compu(" << r 201 << " y-diviv: cod" << << d :: dl ; 202 ( ) ; 206 `FORTNAME ( z_d2_co )( put , ouut , & dx , & dy , & dz , & d_i , & d_b , 207 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 208 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 209 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 210 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 211 & x , & y , & z , & , r ); 212 i < 0 ) 214 d :: << " From ViscSessTsS::ClocDiv::Compu(" << r 215 << " z-diviv: cod" << << d :: dl ; 216 ( ) ; 220 d :: << " From ViscStressTensSpace::CollocDeriv::Compute() : cannot find derivatives " 221 << "lg " << dec << " dei. Ru wh -1 " << d :: dl ; 226 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/src/StagDeriv.cpp 5  ~"SgDiv.h " 6  ~"f܌_mes.h " 8  #MAX ( A , B (A> (B? (A: (B) ) 11  FORTNAME ( x_d1_ )(* f , * df , * dx , * dy , * dz , 12 * v , * upwd , * di , * db , 13 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 14 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 15 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 16 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 17 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 18 * dfkR , * x , * y , * z , * , 19 * r ) ; 21  FORTNAME ( y_d1_ )(* f , * df , * dx , * dy , * dz , 22 * v , * upwd , * di , * db , 23 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 24 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 25 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 26 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 27 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 28 * dfkR , * x , * y , * z , * , 29 * r ) ; 31  FORTNAME ( z_d1_ )(* f , * df , * dx , * dy , * dz , 32 * v , * upwd , * di , * db , 33 * biL , * biR , * bjL , * bjR , * bkL , * bkR , 34 * fiL , * fiR , * fjL , * fjR , * fkL , * fkR , 35 * iiL , * iiR , * ijL , * ijR , * ikL , * ikR , 36 * viL , * viR , * vjL , * vjR , * vkL , * vkR , 37 * dfiL , * dfiR , * dfjL , * dfjR , * dfkL , 38 * dfkR , * x , * y , * z , * , 39 * r ) ; 42  ViscSessTsS :: SgDiv :: $Cfigu ( di ,  db ,  upwd , 43 cڡ * she , cڡ * lb , cڡ * ub , 44 * doma_ext ,  dim ,  maxv , 45  f ,  bndryL ,  bndryR ) 48 i dim > 0 ) 50 biL = bndryL ; biR = bndryR ; 51 iiL = biL ; iiR = `MAX (iiL, she [0] - ( biR +1)) ; 52 fiL = 0 ; fiR = `MAX (fiL, she [0]-1) ; 53 viL = 0 ; viR = `MAX (viL, she [0]-1) ; 54 dfiL = 0 ; dfiR = `MAX (dfiL, she [0]-1) ; 57 i dim > 1 ) 59 bjL = bndryL ; bjR = bndryR ; 60 ijL = bjL ; ijR = `MAX (ijL, she [1] - ( bjR +1)) ; 61 fjL = 0 ; fjR = `MAX (fjL, she [1]-1) ; 62 vjL = 0 ; vjR = `MAX (vjL, she [1]-1) ; 63 dfjL = 0 ; dfjR = `MAX (dfjL, she [1]-1) ; 66 i dim > 2 ) 68 bkL = bndryL ; bkR = bndryR ; 69 ikL = bkL ; ikR = `MAX (ikL, she [2] - ( bkR +1)) ; 70 fkL = 0 ; fkR = `MAX (fkL, she [2]-1) ; 71 vkL = 0 ; vkR = `MAX (vkL, she [2]-1) ; 72 dfkL = 0 ; dfkR = `MAX (dfkL, she [2]-1) ; 75 d_i = di , d_b = db ; upw = upwd ; 77 } } 79  ViscSessTsS :: SgDiv :: $CompuFDiv (* put , * v ,  dx , 80  dy ,  dz , * ouut ) 82  x = 0 , y = 0, z = 0, ; 83  r [60] ; 85  dec ) 88 `FORTNAME ( x_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 89 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 90 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 91 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 92 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 93 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 94 & x , & y , & z , & , r ) ; 97 `FORTNAME ( y_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 98 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 99 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 100 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 101 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 102 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 103 & x , & y , & z , & , r ) ; 106 `FORTNAME ( z_d1_ )( put , ouut , & dx , & dy , & dz , v , & upw , & d_i , & d_b , 107 & biL , & biR , & bjL , & bjR , & bkL , & bkR , 108 & fiL , & fiR , & fjL , & fjR , & fkL , & fkR , 109 & iiL , & iiR , & ijL , & ijR , & ikL , & ikR , 110 & viL , & viR , & vjL , & vjR , & vkL , & vkR , 111 & dfiL , & dfiR , & dfjL , & dfjR , & dfkL , & dfkR , 112 & x , & y , & z , & , r ) ; 115 d :: << " From ViscStressTensSpace::StagDeriv::Compute() : cannot find derivatives" 116 << "lg " << dec << " dei. Ru wh -1 " << d :: dl ; 120 i < 0 ) 122 d :: << " From ViscSessTsS::SgDiv::Compu(" << r << std:: dl ; 123 ( ) ; 127 } } 129  ViscSessTsS :: SgDiv :: $CompuSecdDiv (* put ,  dx , 130  dy ,  dz , * ouut ) 132 d :: << " ViscStressTensSpace::StagDeriv::ComputeSecondDeriv() NOT Implemented." 133 << " Rug wh -1" << d :: dl ; 136 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/src/ViscousStressTensor_JR.cpp 9  ~ 10  ~"ViscousSessTs_JR.h " 12 gViscousSessTs_JR :: $ViscousSessTs_JR () 14 is_lized = l ; 15 is_hod = l ; 16 srs_t = l ; 17 pAMR = 0 ; pDiffCff = 0 ; pPrPt = 0 ; pThmo = 0 ; pThmoPr = 0 ; 18 srs = u = divV = WkAay = mu = rho = 0 ; 19 ns_d = 0 ; no_srs = 0 ; no_ns_ems = 6 ; 20  i = 0; i < 3; i++) 21  j = 0; j < 3; j++) 22 u_y_offt [ i ][ j ] = 0 ; 23 } } 25 gViscousSessTs_JR ::~ $ViscousSessTs_JR () 27 i is_lized = ue ) 29 de pIOrdPam ; 30 de pBoundOrdPam ; 31 de pMeshClocTy ; 33 pSvc = NULL ; = NULL ; 34 i( u !0 de []au ; i( WkAay != 0 ) delete [] WorkArray ; 35 i( mu !0 de [] mu ; i( rho != 0) delete []ho ; 36 i( divV !0 de [] divV ; 37 is_hod = l ; 38 is_lized = l ; 39 } } 41  gViscousSessTs_JR :: tSvis CONV_NS ( Svis * svc ) 43 i svc = NULL ) 45 pSvc -> uegiUsPt ( "AMR" ); 46 gpSvc -> uegiUsPt ( "ViscosityPort" ); 47 gpSvc -> uegiUsPt ( "ViscosityPropPort" ); 48 gpSvc -> uegiUsPt ( "DensityPort" ); 49 gpSvc -> uegiUsPt ( "DensityPropPort" ); 50 gpSvc -> moveProvidesPt ( "ViscousStressTensorPort") ; 51 gpSvc -> moveProvidesPt ( "CONFIG") ; 54 gthis -> gpSvc = svc ; 57 gsvc -> giUsPt svc -> PtInfo ("cSvc", 59 CfigubPamFay * gf = 60 dymic_ < CfigubPamFay *>( svc -> gPt ("cSvc")); 61 CHECKDC f ); 62 g = = f -> CfigubPamPt (); 63 gsvc -> addProvidesPt ( , 64 svc -> PtInfo ("CONFIG", "ConfigurableParameterPort", 0) ); 65 tupPams () ; 66 gsvc -> aPt ("cSvc"); 69 gsvc -> addProvidesPt ( this , svc -> PtInfo ("ViscousStressTensorPort", "PatchPort", 0) ); 72 gsvc -> giUsPt svc -> PtInfo ("AMR", "AMRPort", 0) ); 73 gsvc -> giUsPt svc -> PtInfo ("ViscosityPort", "DiffPort", 0) ); 74 gsvc -> giUsPt svc -> PtInfo ("ViscosityPropPort", "PropertiesPort", 0) ); 75 gsvc -> giUsPt svc -> PtInfo ("DensityPort", "DiffPort", 0) ); 76 gsvc -> giUsPt svc -> PtInfo ("DensityPropPort", "PropertiesPort", 0) ); 79  gViscousSessTs_JR :: $tupPams () 81 pIOrdPam = w `IPam ("InternalOrder", "Order of derivs inside domain", 84 pBoundOrdPam = w `IPam ("BoundaryOrder", "Order of derivst boundary", 87 pMeshClocTy = w `SgPam ("CollocationType", "Collocated or Staggered", 90 -> `tBchT ( " Convection Physics Parameters " ); 91 -> `addReque pIOrdPam ) ; 92 -> `addReque pBoundOrdPam ) ; 93 -> `addReque pMeshClocTy ) ; 94 } } 96  gViscousSessTs_JR :: $SDa (* da_ , cڡ * she ,  nems ,  ndims ) 99 i is_lized = l ) 101 pAMR = dymic_ < AMRPt *> ( pSvc -> `gPt ("AMR")) ; 102 pPrPt = dymic_ < PrݔtsPt * > ( pSvc -> `gPt ("ViscosityPropPort")) ; 103 pDiffCff = dymic_ < DiffPt * > ( pSvc -> `gPt ("ViscosityPort")) ; 104 pThmoPr = dymic_ < PrݔtsPt * > ( pSvc -> `gPt ("DensityPropPort")) ; 105 pThmo = dymic_ < ThmoAlysisPt * > ( pSvc -> `gPt ("DensityPort")) ; 106 is_lized = ue ; 109 srs = da_ ; 110 no_srs = nems ; 111 srs_t = ue ; 114 } } 116  gViscousSessTs_JR :: $CheckSize ( ns ) 120 i ns > ns_d ) 122 de [] u ;au = w [ ns * no_ns_ems ] ; 123 de [] WkAay ; WkAay = w [ ns ] ; 124 de [] mu ; mu = w [ ns ] ; 125 de [] rho ;h w [ ns ] ; 126 de [] divV ; divV = w [ ns ] ; 127 ns_d = ns ; 131  cou = 0 ; 132  k = 0 ; k < ns_d ; k++) 134 mu [ k ] = rho [k] = WkAay [k] = divV [k] = 0.0 ; 135  t = 0 ; < no_ns_ems ;++{ u [ cou ] = 0.0 ; counter++ ; } 139 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/src/ViscousStressTensor_JR_utils.cpp 5  ~ 6  ~ 7  ~"ViscousSessTs_JR.h " 9  gViscousSessTs_JR :: GDivV (* v , cڡ * p_she ,  nvs , 10  upwdg , cڡ * p_lbbc , cڡ * p_ubbc , 11 * p_doma_exs ,  dim ,  max_v , 12  f_ ,  ldx ,  ldy , 13  ldz , * divg , * wk , 14 ViscSessTsS :: AbDiv * pAD ) 16  nx = 1, gny = 1, gnz = 1; 17 gnx = p_she [0] ; i( gdim > 1 gny =_she[1] ; i(dim > 2 gnz =_shape[2] ; 18  gns = nx * ny * nz ; 20  gid = 0; id < gdim ; idir++) 22 gpAD -> SD ( id ) ; 23 gpAD -> Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 24 upwdg , p_she , p_lbbc , p_ubbc , p_doma_exs , 25 dim , max_v , f_ , 0, 0) ; 27  gi = 0 ; i < gns ; i++ gwk [ i ] = 0.0 ; 28 gpAD -> CompuFDiv ( v + id * ns ), (v+id*ns), ldx , ldy , ldz , wk ) ; 29  gi = 0 ; i < gns ; i++ gdivg [ i ] + wk [icell] ; 35  gViscousSessTs_JR :: GTau (* v , cڡ * p_she ,  nvs , 36  upwdg , cڡ * p_lbbc , cڡ * p_ubbc , 37 * p_doma_exs ,  dim ,  max_v , 38  f_ ,  ldx ,  ldy ,  ldz , 39 * div , * mu , * u ,  i ,  j , 40 * wk , ViscSessTsS :: AbDiv * pAD ) 42  nx = 1, gny = 1, gnz = 1; 43 gnx = p_she [0] ; i( gdim > 1 gny =_she[1] ; i(dim > 2 gnz =_shape[2] ; 44  gns = nx * ny * nz ; 54  gv_dex , gdiv_d ; 57 gv_dex = i ; gdiv_d = j ; 58 gpAD -> SD div_d ) ; 59 gpAD -> Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 60 upwdg , p_she , p_lbbc , p_ubbc , p_doma_exs , 61 dim , max_v , f_ , 0, 0) ; 62  gi = 0 ; i < gns ; i++ gwk [ i ] = 0.0 ; 63 gpAD -> CompuFDiv ( v + v_dex * ns ), (v+ div_d *ns), ldx , ldy , ldz , wk ) ; 64  gi = 0 ; i < gns ; i++ gu [ i ] + wk [i] * mu [icell]; 68 gv_dex = j ; gdiv_d = i ; 69 gpAD -> SD div_d ) ; 70 gpAD -> Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 71 upwdg , p_she , p_lbbc , p_ubbc , p_doma_exs , 72 dim , max_v , f_ , 0, 0) ; 73  gi = 0 ; i < gns ; i++ gwk [ i ] = 0.0 ; 74 gpAD -> CompuFDiv ( v + v_dex * ns ), (v+ div_d *ns), ldx , ldy , ldz , wk ) ; 75  gi = 0 ; i < gns ; i++ gu [ i ] + wk [i] * mu [icell]; 78 i( gv_dex = div_d ) 80  i = 0 ; gi < gns ; icell++) 82 gu [ i ] -2.0 * div [i] * mu [icell] / 3.0 ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/src/ViscousStressTensor_JR_workers.cpp 10  ~ 11  ~ 12  ~"ViscousSessTs_JR.h " 15  #MAX ( A , B (A> (B? (A: (B) ) 16  #MIN ( A , B (A< (B? (A: (B) ) 17  #SMALL 1e-19 ) 19  gViscousSessTs_JR :: $compu * da1 , cڡ * p_lbbc , cڡ * p_ubbc , 20 cڡ * p_she ,  nvs , * da2 , 21 cڡ * p_cr_suti , * p_doma_exs , 22  max_v ,  f_ ,  dim ) 25 i srs_t = l ) 27 d :: << " ViscousStressTensor_JR::compute() : Did you call " 29 << " Doghgndug" << d :: dl ; 33  cr_nx = p_cr_suti [0] ; 34  cr_ny = p_cr_suti [1] ; 35  cr_nz = p_cr_suti [2] ; 37  xm = p_doma_exs [0] ;  xmax =_domain_extents[1] ; 38  ym = p_doma_exs [2] ;  ymax =_domain_extents[3] ; 39  zm = p_doma_exs [4] ;  zmax =_domain_extents[5] ; 41  cr_dx = ( xmax - xm / cr_nx ; cr_dx = `MAX (cr_dx, SMALL ) ; 42  cr_dy = ( ymax - ym / cr_ny ; cr_dy = `MAX (cr_dy, SMALL ) ; 43  cr_dz = ( zmax - zm / cr_nz ; cr_dz = `MAX (cr_dz, SMALL ) ; 45  max_femt = ( `pow ( f_ , max_v - 1); 46  fe_dx = cr_dx / max_femt ; 47  fe_dy = cr_dy / max_femt ; 48  fe_dz = cr_dz / max_femt ; 50  nx , ny , nz ; 51  ti = 0, tj = 0, tk = 0; 52  di = 1, dj = 1, dk = 1 ; 54  num_g_s = 1 ; 55 i( pAMR !0 num_g_s =AMR-> `GC_g_boundy_width_deu () ; 57  dim ) 60 nx = p_she [0] ; ny = 1 ; nz = 1 ; 61 ti = num_g_s ; di = nx -um_green_cells ; 64 nx = p_she [0] ; ny =_she[1] ; nz = 1 ; 65 ti = num_g_s ; di = nx -um_green_cells ; 66 tj = num_g_s ; dj = ny -um_green_cells ; 69 nx = p_she [0] ; ny =_she[1] ; nz =_shape[2] ; 70 ti = num_g_s ; di = nx -um_green_cells ; 71 tj = num_g_s ; dj = ny -um_green_cells ; 72 tk = num_g_s ; dk = nz -um_green_cells ; 75 d :: << "ViscousStressTensor_JR::compute(). Something wrong with dimension. Terminate()" 76 << d :: dl ; 77 d :: `rme (); 82  ns = nx * ny * nz ; 83 `CheckSize ns ) ; 86 `GViscosyAndDsy ( srs , p_she , no_srs , dim , mu , rho ) ; 89  ride = ( p_ubbc [0] - p_lbbc [0] ) / ( nx - 1 ) ; 90  lol_femt = max_femt / ride ; 92  lol_dx = cr_dx / lol_femt ; 93  lol_dy = cr_dy / lol_femt ; 94  lol_dz = cr_dz / lol_femt ; 100 d :: rg `me ( pMeshClocTy -> vue ) ; 101 i me == "Collocated" ) 102 pAbsD = & CDO ; 104 pAbsD = & SDO ; 106  upwdg = 0 ; 126 `GDivV ( da1 , p_she , nvs , upwdg , p_lbbc , p_ubbc , p_doma_exs , 127 dim , max_v , f_ , lol_dx , lol_dy , lol_dz , divV , 128 WkAay , pAbsD ) ; 131  icomp = 0 ; 132  i = 0; i < dim ; i++) 134  j = 0; j < i ; j++) 136 `GTau ( da1 , p_she , nvs , upwdg , p_lbbc , p_ubbc , p_doma_exs , dim , 137 max_v , f_ , lol_dx , lol_dy , lol_dz , divV , mu , 138 ( u + icomp * ns ), i , j , WkAay , pAbsD ) ; 139 u_y_offt [ i ][ j ] = icomp ;au_array_offset[j][i] = icomp ; 140 icomp ++ ; 146  qn = 0; ieq< dim ; ieqn++) 149  m = 0; irm < dim ; iterm++) 151 * v = da1 + m * ns ; 152 pAbsD -> `SD ( m ) ; 153  icomp = u_y_offt [ qn ][ m ] ; 154 pAbsD -> `Cfigu ( pIOrdPam -> vue , pBoundOrdPam ->value, 155 upwdg , p_she , p_lbbc , p_ubbc , p_doma_exs , 156 dim , max_v , f_ , 0, 0) ; 157 pAbsD -> `CompuFDiv ( u + icomp * ns ), v , lol_dx , lol_dy , lol_dz , 158 WkAay ) ; 161  k = tk ; k < dk ; k++) 162  j = tj ; j < dj ; j++) 163  i = ti ; i < di ; i++) 165  dex = `fdx ( i , j , k , 0, nx , ny , nz , 1) ; 166 da2 [ qn * ns + dex ] + WkAay [dex] / rho [index] ; 171 srs_t = l ; 173 } } 175  gViscousSessTs_JR :: $GViscosyAndDsy (* p_srs , cڡ * p_she , 176  nsrs ,  dim , 177 * dyn_visc , * ds ) 179  nx = 1, ny = 1, nz = 1 ; 180 nx = p_she [0] ; i( dim > 1 ny =_she[1] ; i(dim > 2 nz =_shape[2] ; 181  ns = nx * ny * nz ; 183 i( pThmo !0&& ( pThmoPr != 0) ) 185  nsrsm1 = nsrs -1;  zo = 0 ;  e = 1; 186 pThmoPr -> `SIegs ("PssuIndex", & nsrsm1 , 1) ; 187 pThmoPr -> `SIegs ("TemtuIndex", & zo , 1) ; 188 pThmoPr -> `SIegs ("yS_dex", & e , 1); 190  s ; 191 s = pThmo -> `CompuV ( p_srs , nsrs , p_she , dim , "rho_mix", ds , nx * ny * nz ) ; 192 i s != 0 ) 194 d :: << " ViscousStressTensor_JR::GetViscosityAndDensity() : Failedo getho_mix, " 195 << " cod" << s << " Rug -1 whoudognythg. " << d :: dl ; 200  k = 0; k < ns ; k++ rho [k] = 1.0 ; 203 i( pDiffCff !0&& ( pPrPt != 0) ) 206  yes = 1 ; 207 pPrPt -> `SIegs ("KemicViscosy", & yes , 1) ; 208 pDiffCff -> `compu ( p_srs , 0, 0, p_she , nsrs , dyn_visc , 0, 0, 1, 1, dim ) ; 210  k = 0; k < ns ; k++ dyn_visc [k] = dyn_visc[k]* rho [k] ; 213  k = 0; k < ns ; k++ dyn_visc [k] = 1.0 ; 215 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/ViscousStressTensor/src/ViscousStressTensor_JR_wrapper.cpp 1  ~"ViscousSessTs_JR.h " 2  ~"CONV_NS.h " 6 CONV_NS ( Compڒt * _ViscousSessTs_JR () 8 CONV_NS ( Compڒt * wk ; 9 ViscousSessTs_JR * compڒt ; 10 compڒt = w ViscousSessTs_JR (); 11 wk = dymic_ < CONV_NS ( Compڒt *>( compڒt ); 12  wk ; 15 ** gCompڒtLi () 17 * li [2]; 18 li [0] = "create_ViscousStressTensor_JR ViscousStressTensor_JR"; 19 li [1] = 0; 20  li ); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/refComp/include/fortran_names.h 5 #i defed ( PGI ) 6  #FORTNAME ( A A## _ ) 8  #FORTNAME ( A A## __ ) @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/refComp/include/ref.h 1  ~ 2 usg mea gd ; 4  ~"c.h " 5  ~"dPts.h " 6  ~"fPt.h " 10  ~"CONV_NS.h " 12 ass gf : public vtu fPt , 13 public vtu $CONV_NS ( Compڒt ) 16 public : 18 `f (); 20 vtu ~ `f (); 22 vtu  `_f_g (* r0 ,* tm ,* btzk , 23 * avogadro ,* mef ,* f , 24 * hf ,* ef ,* wf , 25 * rgf ,* rhef ,* wf , 26 * pdf ,* htdf ,* f , 27 * vf ,* vdifef ,* amuf , 28 * tymf ,* ef ,* cgf , 29 * gf ,* damkoh ); 31 vtu  `tSvis ( assic :: gov :: c :: Svis * cc ); 33 ive : 35 `CONV_NS ( Svis * svc ; 37 } }; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/refComp/src/ref.cpp 1  ~ 2  ~ 3  ~ 4  ~ 5  ~ 7  ~ 9  ~ 10  ~ 11  ~ 13  ~"f܌_mes.h " 27  FORTNAME ( f_g )(* r0 ,* tm ,* btzk ,* avogadro , 28 * mef ,* f ,* hf ,* ef , 29 * wf ,* rgf ,* rhef ,* wf , 30 * pdf ,* htdf ,* f , 31 * vf ,* vdifef ,* amuf , 32 * tymf ,* ef ,* cgf ,* gf , 33 * damkoh ); 38 f :: $f () 40 svc = 0; 41 cout <<"cڡrued"<< dl ; 42 } } 45 f ::~ $f () 47 cout <<"deroyed"<< dl ; 48 } } 50  f :: tSvis CONV_NS ( Svis * cc ) 53 i( cc == NULL && ( svc != NULL) ){ 54 cout << "tSvig cdwi" << dl ; 55 svc -> moveProvidesPt ("DiffCoeffs") ; 56 svc -> moveProvidesPt ("Configure") ; 57 svc -> moveProvidesPt ("DiffCoeffProp") ; 58 svc -> aPt ("MyMesh") ; 59 svc = 0; 64 i( cc != NULL && ( svc != NULL) ){ 65 cout << "tSvig cdwi wh-NULL *Svis" << dl ; 66 abt () ; 71 i( cc == NULL && ( svc == NULL)){ 72 cout <<"Gه NULL ind oSvipor! Rug whoudognyhg"<< dl ; 78 svc = cc ; 80 svc -> giUsPt svc-> PtInfo ("cSvc", 83 CONV_NS ( PtInfo * pInfo ; 86 pInfo = svc -> PtInfo ("ref", "refPort", 0); 87 svc -> addProvidesPt ( this , pInfo ); 93  f :: $_f_g (* r0 ,* tm ,* btzk ,* avogadro , 94 * mef ,* f ,* hf ,* ef , 95 * wf ,* rgf ,* rhef , 96 * wf ,* pdf ,* htdf , 97 * f ,* vf ,* vdifef , 98 * amuf ,* tymf ,* ef , 99 * cgf ,* gf ,* damkoh ) 101 `FORTNAME ( f_g )( r0 , tm , btzk , avogadro , mef , f , hf , ef , wf , rgf , 102 rhef , wf , pdf , htdf , f , vf , vdifef , 103 amuf , tymf , ef , cgf , gf , damkoh ); 104 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/ReactingFlows/refComp/src/ref_wrapper.cpp 1  ~ 2  ~ 3  ~"f.h " 4  ~"CONV_NS.h " 8 CONV_NS ( Compڒt * _f () { 9 CONV_NS ( Compڒt * wk ; 10 f * compڒt ; 11 compڒt = w f (); 12 wk = dymic_ < CONV_NS ( Compڒt * >( compڒt ); 13  wk ; 16 ** gCompڒtLi () { 17 * li [2]; 18 li [0] = "create_refef "; 19 li [1] = 0; 20  li ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Bin2Tecplot/PatchReadWrite.cpp 1 usg mea gd ; 2  ~"PchRdWre.h " 4  #HEADER_LENGTH 13 ) 13 gPchRdWre :: $PchRdWre ( TyOfIO io_ty ) 15 wh_am_i = io_ty ; 16 my_mode = PchRdWre :: E ; 18 numPches = 0; 19 dims = 0; 20 } } 23 gPchRdWre ::~ $PchRdWre () 26 } } 28  PchRdWre :: $OnFe (cڡ * me , Ai mode ) 34 i mode = PchRdWre :: READ_ONLY ) && ( wh_am_i =PchRdWre:: WRITER ) ) 36 << "F" << me << "did on. YouskedREAD_ONLY," << dl ; 37 << "buthPchRdWrobje wadWRITER." << dl ; 38 << "Rued wh -1 from PchRdWre::OnFe." << dl ; 46 i( mode = PchRdWre :: WRITE_NEW || (mod=PchRdWre:: WRITE_APPEND ) ) 47 && ( wh_am_i = PchRdWre :: READER ) ) 49 << "F" << me << "did on. YouskedWRITE_NEW oWRITE_APPEND," << dl ; 50 << "buthPchRdWrobje wadREADER." << dl ; 51 << "Rued wh -1 from PchRdWre::OnFe." << dl ; 56 i mode = PchRdWre :: READ_ONLY ) 59 Fe . `ݒ ( me , ios :: by ); 60 i( Fe . ` ()) { 61 << "Ubˁݒ f"<< me << " f܄dg. Rued wh -2 from PchRdWre::OnFe" << dl ; 64 FeS = Fe . `g (); 68 i mode = PchRdWre :: WRITE_APPEND ) 71 outFe . `ݒ ( me , ios :: p | ios:: e | ios:: by ); 72 i( outFe . ` ()) { 73 << "Ubˁݒ f"<< me << " f܇dg da. Rued wh -2 from PchRdWre::OnFe" << dl ; 77 d :: ampos cut = outFe . `p () ; 78 outFe . `ekp (0, d :: ios :: beg ) ; 79 outFeS = outFe . `p () ; 80 outFe . `ekp cut ) ; 84 i mode = PchRdWre :: WRITE_NEW ) 86 outFe . `ݒ ( me , ios :: unc | ios:: by ); 87 i( outFe . ` ()) { 88 << "Ubˁ f"<< me << " f wrg. Rued wh -3 from PchRdWre::OnFe" << dl ; 91 tches_wrn_out = 0 ; 92 outFeS = outFe . `p () ; 95 my_mode = mode ; 97 } } 99  gPchRdWre :: $CloFe () 104 i(! Fe . `is_ݒ ()&& (! outFe .is_open()) ) 106 << "Nfwaݒed. From PchRdWre::CloF-> Doghg!!!" << dl ; 111 i( Fe . `is_ݒ ()Fe. `o (); 114 i( outFe . `is_ݒ ()outFe. `o (); 118 } } 120  gPchRdWre :: $WreNumsPchesDims  P ,  d ) 122 i wh_am_i = PchRdWre :: READER ) 124 << "Thobje icfigudadnd you'rygwre. " << dl ; 125 << "Rued wh -1 from PchRdWre::WreNumsPchesDims" << dl ; 129 i( my_mode = PchRdWre :: WRITE_APPEND || (my_mod=PchRdWre:: READ_ONLY ) ) 131 << " Cannot writeumber ofatchesnd dimso file opened foread-only" 132 << " ond otis. Rued wh -3 from PchRdWre::WreNumsPchesDim " << dl ; 136 numPches = P ; 137 dims = d ; 139 i outFe . `is_ݒ () ) 142 * dummy ; 143 * ; 144 = & numPches ; 145 * wre_ ; 146 dummy = ic_ < *> ( ) ; 147 wre_ = ic_ < * > ( dummy ) ; 148 outFe . `wre wre_ , ()); 150 * dummy2 ; 151 * i ; 152 i = & dims ; 153 * wre_2 ; 154 dummy2 ic_ < * >( i ) ; 155 wre_2 = ic_ < *> ( dummy2 ); 156 outFe . `wre wre_2 , ()); 160 << "Thfhan bݒed. Rued wh -2 from PchRdWre::WreNumsPchesDims" << dl ; 164 } } 166  gPchRdWre :: $AdPch (* da , cڡ * lbbc , cڡ * ubbc , cڡ * size , 167  nvs ,  v ,  oc ,  dim ) 169 i wh_am_i = PchRdWre :: READER ) 171 << "Thobje icfigudadnd you'rygwre. " << dl ; 172 << "Rued wh -1 from PchRdWre::AdPch" << dl ; 177 i! outFe . `is_ݒ () ) 179 << "ThftAdPchhan bݒed. " << dl ; 180 << "Rued wh -2 from PchRdWre::AdPch" << dl ; 185 i my_mode ! PchRdWre :: WRITE_APPEND ) && ( my_mod!PchRdWre:: WRITE_NEW ) ) 187 << "Thftحndhan bݒed iWRITE_NEW oWRITE_APPEND mode. " << dl ; 188 << "Rued wh -3 from PchRdWre::AdPch" << dl ; 194 i outFe . `p (= outFeS ) 196 << "ThWreNumsPchesDimhan bed. Cș." << dl ; 197 << "Rued wh -4 from PchRdWre::AdPch" << dl ; 202 i dim ! dims ) 204 << "Thiobm whhdimsi othfld." << dl ; 205 << "C˸hadiscy idimsiڮy bwWreNumsPchesDimd AdPch." << dl ; 206 << "Rued wh -5 from PchRdWre::AdPch" << dl ; 211 outFe . `ekp (0, ios :: d ); 214  hd [ HEADER_LENGTH ] ; 215  i = 0 ; i < HEADER_LENGTH ; i++ hd [i] = 1 ; 217 hd [0] = tches_wrn_out ; 218  i = 0 ; i < dim ; i++) 220 hd [1+ i ] = lbbc [i] ; hd[4+i] = ubbc [i] ; hd[7+i] = size [i] ; 222 hd [10] = nvs ; hd[11] = v ; hd[12] = oc ; 228 * dummy ; 229 * wre_hd ; 230 dummy = ic_ < *> ( hd ; wre_hd = static_cast< * > (dummy) ; 232 outFe . `wre wre_hd , ( HEADER_LENGTH * () ) ); 239  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 242 * wre_da ; 243 dummy = ic_ < *> ( da ; wre_da = static_cast< * > (dummy) ; 244 outFe . `wre wre_da , ( DATA_LENGTH * () ) ); 248 outFe . `ush () ; 249 tches_wrn_out ++ ; 252 } } 254  gPchRdWre :: $RdNumsPchesDims & P , & d ) 256 i wh_am_i = PchRdWre :: WRITER ) 258 << "Thobje icfigudwrnd you'rygػad. " << dl ; 259 << "Rued wh -1 from PchRdWre::RdNumsPchesDims" << dl ; 263 i Fe . `is_ݒ () ) 266 Fe . `ekg (0, ios :: beg ) ; 267 Fe . `r (); 270 * dummy = ic_ < * > (& numPches ) ; 271 * ad_out = ic_ < * > ( dummy ) ; 272 Fe . `ad ad_out , ()); 274 dummy = ic_ < * > (& dims ; ad_out = static_cast< * > (dummy) ; 275 Fe . `ad ad_out , ()); 279 << "Thfhan bݒed. Rued wh -2 from PchRdWre::RdNumsPchesDims" << dl ; 283 P = numPches ; 284 d = dims ; 287 } } 289  gPchRdWre :: $RewdRd () 298 i Fe . `is_ݒ () ) 302 Fe . `ekg (0, ios :: beg ) ; 303 Fe . `r () ; 304 Fe . `ekg 2 * (), ios :: beg ) ; 308 << "Thfhan bݒed. Rued wh -1 from PchRdWre::RdNumsPcheDims" << dl ; 315 } } 317  gPchRdWre :: $RdPch ( Q , *& da , * lbbc , * ubbc , * size , 318 & nvs , & v , & oc ,  dim ) 344 bo foundPch = l ; 346 i da != 0 ) 348 << "*din NULL upڃry imhod RdPch. " << dl ; 349 << "Rued wh -10 from PchRdWre::RdPch" << dl ; 353 i wh_am_i ! PchRdWre :: READER ) 355 << "Thobje in cfigudadnd you'rygػad. " << dl ; 356 << "Rued wh -1 from PchRdWre::RdPch" << dl ; 361 if! Fe . `is_ݒ () ) 363 << "Thftػad from han bݒed." << dl ; 364 << "Rued wh -2 from PchRdWre::RdPch" << dl ; 369 i my_mode ! PchRdWre :: READ_ONLY ) 371 << "Thftػad from han bݒed iREAD_ONLY mode. " << dl ; 372 << "Rued wh -3 from PchRdWre::RdPch" << dl ; 376 i Fe . `g (= FeS ) 378 << "Fpoihbegg othfe. RdNumsPchesDims(wan cd. Cș." << dl ; 379 << "Rued wh -4 from PchRdWre::RdPch" << dl ; 384 i dim ! dims ) 386 << "Thiobm whhdimsi othfld." << dl ; 387 << "C˸hadiscy idimsiڮy bwRdNumsPchesDimd RdPch." << dl ; 388 << "Rued wh -5 from PchRdWre::RdPch" << dl ; 392  hd [ HEADER_LENGTH ]; 393 * dummy ; * ad_hd ; * ad_da ; 395 dummy = ic_ <*> ( hd ) ; 396 ad_hd = ic_ <*> ( dummy ) ; 399  tchID ; 400  ch = 0; itch < numPches ; ipatch++) 402 Fe . `ad ( ad_hd , ( HEADER_LENGTH * ()) ) ; 403 tchID = hd [0] ; 407  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 409 i Q = tchID ) 412  i = 0 ; i < dim ; i++) 414 lbbc [ i ] = hd [1+i] ; ubbc [i] = hd[4+i] ; size [i] = header[7+i] ; 416 nvs = hd [10] ; v = hd[11] ; oc = header[12] ; 419 * d = w [ DATA_LENGTH ]; 422 dummy = ic_ <*> ( d ) ; 423 ad_da = ic_ <*> ( dummy ) ; 424 Fe . `ad ( ad_da , ( DATA_LENGTH * ()) ) ; 427 da = d ; 429 foundPch = ue ; 434 Fe . `ekg ( DATA_LENGTH *(), ios :: cur ) ; 438 i Fe . `eof ( `RewdRd (); 442 << "Pch #" << Q << " wan found!!!" << dl ; 443 << "Rued wh -6 from PchRdWre::RdPch. " << dl ; 446 } } 448  gPchRdWre :: $RdPchInfo ( Q , * lbbc , * ubbc , * size , & nvs , 449 & v , & oc ,  dim ) 456 bo foundPch = l ; 458 i wh_am_i ! PchRdWre :: READER ) 460 << "Thobje in cfigudadnd you'rygػad. " << dl ; 461 << "Rued wh -1 from PchRdWre::RdPchInfo" << dl ; 466 if! Fe . `is_ݒ () ) 468 << "Thftػad from han bݒed." << dl ; 469 << "Rued wh -2 from PchRdWre::RdPchInfo" << dl ; 474 i my_mode ! PchRdWre :: READ_ONLY ) 476 << "Thftػad from han bݒed iREAD_ONLY mode. " << dl ; 477 << "Rued wh -3 from PchRdWre::RdPchInfo" << dl ; 481 i Fe . `g (= FeS ) 483 << "Fpoihbegg othfe. RdNumsPchesDims(wan cd. Cș." << dl ; 484 << "Rued wh -4 from PchRdWre::RdPchInfo" << dl ; 489 i dim ! dims ) 491 << "Thiobm whhdimsi othfld." << dl ; 492 << "C˸hadiscy idimsiڮy bwRdNumsPchesDimd RdPch." << dl ; 493 << "Rued wh -5 from PchRdWre::RdPchInfo" << dl ; 497  hd [ HEADER_LENGTH ]; 498 * dummy ; * ad_hd ; * ad_da ; 500 dummy = ic_ <*> ( hd ) ; 501 ad_hd = ic_ <*> ( dummy ) ; 504  tchID ; 505  ch = 0; itch < numPches ; ipatch++) 507 Fe . `ad ( ad_hd , ( HEADER_LENGTH * ()) ) ; 508 tchID = hd [0] ; 511  DATA_LENGTH = hd [7] * header[8] * header[9] * header[10]; 513 i Q = tchID ) 516  i = 0 ; i < dim ; i++) 518 lbbc [ i ] = hd [1+i] ; ubbc [i] = hd[4+i] ; size [i] = header[7+i] ; 520 nvs = hd [10] ; v = hd[11] ; oc = header[12] ; 523 Fe . `ekg ( DATA_LENGTH *(), ios :: cur ) ; 525 foundPch = ue ; 532 Fe . `ekg ( DATA_LENGTH *()), ios :: cur ) ; 536 i Fe . `eof ( `RewdRd (); 540 << "Pch #" << Q << " wan found!!!" << dl ; 541 << "Rued wh -6 from PchRdWre::RdPchInfo. " << dl ; 544 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Bin2Tecplot/PatchReadWrite.h 1 #ide PchRdWreSn 2  #PchRdWreSn ) 29  ~ 30  ~ 31 usg mea gd ; 33 as cPchRdWre 36 mpublic : 41 um{ READER , mWRITER } tTyOfIO ; 46 PchRdWre TyOfIO io_ty ) ; 48 $PchRdWre ({ `PchRdWre WRITER ) ; } } 50 ~ PchRdWre () ; 55 um{ gE = -1, gREAD_ONLY , gWRITE_NEW , gWRITE_APPEND } tAi ; 68  OnFe (cڡ * me , Ai mode ) ; 70  CloFe () ; 84  WreNumsPchesDims  P ,  d ) ; 105  AdPch (* da , cڡ * lbbc , cڡ * ubbc , cڡ * size , 106  nvs ,  v ,  oc ,  dim ) ; 120  RdNumsPchesDims (& P , & d ) ; 127  RewdRd () ; 150  RdPch ( Q , * & da , * lbbc , * ubbc , * size , & nvs , 151 & v , & oc ,  dim ) ; 157  RdPchInfo ( Q , * lbbc , * ubbc , * size , & nvs , & v , 158 & oc ,  dim ) ; 160 give : 162 ifam Fe ; 163 ofam goutFe ; 165 gd :: ampos FeS , goutFeS ; 167 TyOfIO gwh_am_i ; 168 Ai gmy_mode ; 170  gtches_wrn_out ; 171  gnumPches ; 172  gdims ; @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Bin2Tecplot/bin2tec.cpp 8  ~ 9  ~ 10  ~ 11  ~ 12  ~ 15  ~"PchRdWre.h " 16  ~ 17  ~ 18 usg mea gd ; 21  #MAXLEVEL 3 ) 22  #GRID_EXTENT_IN_X 1.0 ) 23  #GRID_EXTENT_IN_Y 1.0 ) 24  #GLBL_NX 32 ) 25  #GLBL_NY 32 ) 26  #MAX_FILENAME_LENGTH 20 ) 27  #RF 2 28 ) 31  PTelFe (* out_fe , * v_me ,  v ,  DesedTime , 32  my_oc , FILE * o ) ; 34  DumpInTelFm (* dimsis , * ig , * s , 35  v , * da ,  d [], 36 FILE * o ); 37  uge (); 39  $ma ( gc , ** gv ) 41 * fame , * _fe , * out_fe , * v_me ; 42 fame = _fe = out_fe = v_me = 0; 44  c , DesedTime = -1, v = 0, my_oc ; 46 FILE * o ; 49 PchRdWre `ad (PchRdWre:: READER ) ; 52  glob_nx = GLBL_NX , glob_ny = GLBL_NY , max_v = MAXLEVEL ; 54 bo IsVeDa = ue ; 55 bo DeuVName = ue ; 56 bo Csided = l ; 57 bo UnCsided = l ; 59 i( gc == 1) 61 `uge (); 62 `ex ( 0 ); 65 ** gv1 = cڡ_ <**>( gv ); 66  ( c = `gt ( gc , gv1 , "t:m:n:v:i:l:p:C")) != -1 ) 68  c2 = c ; 69  c2 ) 72 DesedTime = ic_ <> ` ( ݏrg , 0, 0) ); 75 glob_nx = ic_ <> ` ( ݏrg , 0, 0) ); 78 glob_ny = ic_ <> ` ( ݏrg , 0, 0) ); 81 max_v = ic_ <> ` ( ݏrg , 0, 0) ); 84 v = ic_ <> ` ( ݏrg , 0, 0) ); 88 v_me = w [ ( ` ( ݏrg ) +1)*() ]; 89 `ry ( v_me , ݏrg ); 90 DeuVName = l ; 93 my_oc = ic_ <> ` ( ݏrg , 0, 0)) ; 94 UnCsided = ue ; 97 Csided = ue ; 100 `uge (); 101 `ex ( 0 ); 106 i( Csided == UnCsided ) 108 `uge () ; 109 `ex ( 0 ) ; 112 if DeuVName = ue ) v_me = "U"; 115 fame = w [ MAX_FILENAME_LENGTH * () ]; 116 _fe = w [ MAX_FILENAME_LENGTH * () ]; 117 out_fe = w [ MAX_FILENAME_LENGTH * () ]; 119 i IsVeDa = ue ) 121 i( Csided ) 122 `rtf ( fame ,"%s_%d", v_me , DesedTime ); 124 `rtf ( fame ,"%s_%d_%d", v_me , DesedTime , my_oc ); 125 `ry ( _fe , fame ); 126 `rt ( _fe , ".binary"); 128 i( Csided ) 129 `rtf ( out_fe ,"%s%d_t%d_", v_me , v , DesedTime ); 131 `rtf ( out_fe ,"%s%d_t%d_p%d_", v_me , v , DesedTime , my_oc ); 132 `rt ( out_fe , "tec.dat"); 134 `tf (" Iuf: %\n", _fe ); 135 `tf (" Ouuf: %\n", out_fe ); 139 {i( Csided ) 140 `rtf ( fame , "%s_0", v_me ); 142 `rtf ( fame , "%s_0_0", v_me ); 143 `ry ( _fe , fame ); 144 `rt ( _fe , ".binary"); 146 i( Csided ) 147 `rtf ( out_fe , "%s0_t0", v_me ); 149 `rtf ( out_fe , "%s0_t0_p0", v_me ); 150 `rt ( out_fe , "_tec.dat"); 152 `tf (" Iuf: %\n", _fe ); 153 `tf (" Ouuf: %\n", out_fe ); 157 i( DesedTime >0 ) o = `fݒ ( out_fe , "w"); 158 `PTelFe ( out_fe , v_me , v , DesedTime , my_oc , o ); 161   this_v = 0;his_v < max_v ;his_level++) 164  P = 0; 165  d = 0; 168 ad . `OnFe ( _fe , PchRdWre :: READ_ONLY ) ; 170 ad . `RdNumsPchesDims ( P , d ) ; 171 << "Im id I g (P,d)" << P << "," << d << dl ; 173  lbbc [3]; 174  ubbc [3]; 175  s [3] = {1, 1, 1} ; 179  size [3] = {1, 1, 1}; 180  nvs ; 181  v ; 182  oc ; 183  d [2]; 184 * da = 0; 189 d [0] = ( 1.0 / ( glob_nx -1* ( 1.0 / `pow RF , (( max_v -1) ) ) ; 190 d [1] = ( 1.0 / ( glob_ny -1* ( 1.0 / `pow RF , (( max_v -1) ) ) ; 192  dummy = 0; 193  da_size = 0; 195  i =0; i< P ; i++) 197 * da1 = 0; 199 ad . `RdPch ( i , da1 , lbbc , ubbc , size , nvs , v , oc , d ); 201 << "PchID = " << i << ",v" << nvs << ",evel = " 202 << v << ",ro" << oc << ", dim = " << d << dl ; 205 if v = this_v ) 207  j =0; j< d ; j++ s [j] = ( ubbc [j] - lbbc [j] ) / ( size [j]-1 ) ; 210 dummy = size [0]*size[1]*size[2]; 211 da_size = dummy * v ; 213 da = & da1 [ da_size ] ; 215 `DumpInTelFm ( size , lbbc , s , v , da , d , o ) ; 217 de [] da1 ; 222 ad . `CloFe () ; 229 i( DesedTime >0 ) `fo ( o ); 231 de [] ( v_me ); 232 de [] ( fame ); 233 de [] ( out_fe ); 234 de [] ( _fe ); 236 } } 239  $DumpInTelFm (* dimsis , * ig , * s , 240  v , * da ,  d [], 241 FILE * o ) 243  nx , ny ; 244  i , j ; 245  dx , dy ; 248  d_nx = 0, d_ny = 0; 250 nx = * dimsis ; 251 ny = *( dimsis +1); 252 dx = d [0]; 253 dy = d [1]; 255 `tf (" Outputting data. Origin = (%d, %d), (dx,dy) = (%f, %f) \n", 256 * ig , *(ig+1), dx , dy ); 257 `tf (" Resuti : (%d, %dSiz%d x %d x %d \n", * s , *es+1), nx , ny , 1); 259 d_nx = nx ; 260 i nx == 1 ) {x = 2 *x ;} 262 d_ny = ny ; 263 i ny == 1 ) {y = 2 *y ;} 266 `rtf ( o , "\nZone = \" %d %d %d \" i = %d, j = %d, f =oint \n", 267 v , * s , *es+1), ( ny ), ( nx )); 268 `fush ( o ); 270  i = 0; i < nx ; i++) 272  j = 0; j < ny ; j++) 274  ii , jj ; 275  x , y ; 276  dex ; 277 x = ( * ig + (* s * i ) * dx ; 278 y = ( *( ig +1+ (*( s +1)* j ) * dy ; 279 ii = i ; ii> d_nx ) ii = ii - old_nx ; 280 jj = j ; ijj > d_ny ) jj = jj - old_ny ; 281 dex = `abs ( ii +bs( jj )* d_nx ; 282 `rtf ( o , "%%%f\n", x , y , *( da + dex )); 286 } } 288  $PTelFe (* out_fe , * v_me ,  v ,  DesedTime , 289  my_oc , FILE * o ) 291 i( DesedTime >= 0) 293 `rtf ( o , "T = \" %s%dtime %d f܅ross %d \" \n", v_me , v , DesedTime , my_oc ); 294 `rtf ( o , "vbˠ\" x \", \" y \", \" %s%d \" \n", v_me , v ); 296 } } 298  $uge () 300 `tf ("Usage : \n"); 301 `tf (" bin2tec -m -n -i -v -l -p -t -C \n"); 302 `tf ("x : (INT) X-resolution of Coarse Mesh; default = 32 \n"); 303 `tf ("y : (INT) Y-resolution of Coarse Mesh; default = 32 \n"); 304 `tf (" Var_Name : (STRING)ame ofhe variable; default = U \n"); 305 `tf (" Var # : (INT) variableumber inhe U vector; default = 0 \n"); 306 `tf ("roc # : (INT)rocessorumber ; default = 0 \n"); 307 `tf (" Levels : (INT) Maxumber ofevels ofefinement; default = 3 \n"); 308 `tf ("s : (INT)imestep of desired data dump; default = 0 \n"); 309 `tf (" -C : The input filesre Consolidated from multiplerocessor files. Doot use with -p option \n"); 310 `tf (" \n"); 311 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Bin2Tecplot/num_conv.cpp 30  ~ 31  ~ 32  ~ 33  ~ 35 #i __GNUC__ > 2 39  ~ 42  RdIuts (& M , & N , & G , d :: rg & CrFe , std::rg & FeFe , 43 d :: rg & EpsFe , & nvs throw () ; 45  AoDo3DAays (*** & y ,  size ,  nvs , bo lo ) ; 47  FlAay d :: rg fame ,  size ,  gho ,  nvs , 48 *** da throw (const *) ; 50  CompuEs *** Cda ,  CrSize , *** Fda ,  FeSize , 51  ghos ,  nvs , * s , * rs ) ; 53  #MY_EPSILON 1.0e-10 ) 55  $ma ( ) 58  M , N , G , nvs ; 59 d :: rg CrFe , FeFe , EpsFe ; 61 y 63 `RdIuts ( M , N , G , CrFe , FeFe , EpsFe , nvs ) ; 65 `tch ( i ) 67 i i < 0 ) 69 d :: << " Extg .. " << std:: dl ; 70 #i __GNUC__ > 2 71 d :: `rme () ; 73 `abt () ; 79 * s = w [ nvs ] ; 80 d :: ifam `sfe ( EpsFe . `c_r (), std:: ios :: ); 82 i(! sfe ) 84 d :: << " Nؕfmed " << EpsFe 85 << " .. usg " << MY_EPSILON << " forll variables .." 86 << d :: dl ; 87  i = 0; i < nvs ; i++ s [i] = MY_EPSILON ; 90  i = 0; i < nvs ; i++ sfe >> s [i] ; 92 sfe . `o (); 94 *** CrDa = 0 ; 95 `AoDo3DAays CrDa , ( M +2* G ), nvs , ue ) ; 96 y 98 `FlAay CrFe , M , G , nvs , CrDa ) ; 100 `tch ( cڡ * r ) 102 d :: << r << " f " << CrFe << " ..exitting " 103 << d :: dl ; 104 #i __GNUC__ > 2 105 d :: `rme () ; 107 `abt () ; 111 *** FeDa = 0 ; 112 `AoDo3DAays FeDa , ( N +2* G ), nvs , ue ) ; 113 y 115 `FlAay FeFe , N , G , nvs , FeDa ) ; 117 `tch ( cڡ * r ) 119 d :: << r << " f " << FeFe << " ..exitting " 120 << d :: dl ; 121 #i __GNUC__ > 2 122 d :: `rme () ; 124 `abt () ; 128 * rms = w [ nvs ] ; 129 `CompuEs ( CrDa , M , FeDa , N , G , nvs , s , rms ) ; 131 d :: cout << " Eܠ" << std:: dl ; 132  i = 0; i < nvs ; i++) 133 d :: cout << i << " " << rms [i] << std:: dl ; 135 d :: cout << std:: dl ; 137 `AoDo3DAays CrDa , ( M +2* G ), nvs , l ) ; 138 `AoDo3DAays FeDa , ( N +2* G ), nvs , l ) ; 139 de [] rms ; d[] s ; 141 } } 143  $AoDo3DAays (*** & y ,  size ,  nvs , bo lo ) 146 i lo = ue ) 148 y = w ** [ nvs ] ; 149  i = 0 ; i < nvs ; i++ y [i] = w * [ size ] ; 151  i = 0 ; i < nvs ; i++) 152  j = 0 ; j < size ; j++ ) 153 y [ i ][ j ] = w [ size ] ; 155  i = 0 ; i < nvs ; i++) 156  j = 0 ; j < size ; j++ ) 157  k = 0 ; j < size ; j++ ) 158 y [ i ][ j ][ k ] = 0 ; 163  i = 0 ; i < nvs ; i++) 165  j = 0 ; j < size ; j++ ) 166 de [] y [ i ][ j ] ; 168 de [] y [ i ] ; 170 de [] y ; 174 } } 176  RdIuts (& M , & N , & G , d :: rg & CrFe , std::rg & FeFe , 177 d :: rg & EpsFe , & nvs $throw () 180 d :: ifam `IutFe ("num_cv.p", std:: ios :: ) ; 182 i! IutFe ) 184 d :: << " Could fd iufnum_cv." << std:: dl ; 185 `throw (-1) ; 189 IutFe >> M >> N >> G ; 190 IutFe >> CrFe ; 191 IutFe >> FeFe ; 192 IutFe >> EpsFe ; 193 IutFe >> nvs ; 197 } } 199  $CompuEs *** Cda ,  CrSize , *** Fda ,  FeSize , 200  ghos ,  nvs , * s , * rms ) 203  fe = FeSize / CrSize ; 206  iv = 0 ; iv < nvs ; ivar++) 212  #BORDER_THICKNESS 0.1 ) 213  jc_t = () BORDER_THICKNESS * ( CrSize +2* ghos ) ) ; 214  jc_d = ()1.0 - BORDER_THICKNESS ) * ( CrSize +2* ghos ) ) ; 215  kc_t = () BORDER_THICKNESS * ( CrSize +2* ghos ) ) ; 216  kc_d = ()1.0 - BORDER_THICKNESS ) * ( CrSize +2* ghos ) ) ; 218 d :: cout << " Iv = " << iv << std:: dl ; 219 d :: cout << " S/End (X" << jc_t << " / " << jc_d << std:: dl ; 220 d :: cout << " S/End (Y" << kc_t << " / " << kc_d << std:: dl ; 221 d :: cout << std:: dl ; 223  jc = 0 ; j< ( CrSize +2* ghos ) ; jc++) 224  kc = 0 ; k< ( CrSize +2* ghos ) ; kc++) 226 i( jc > jc_t && (j< jc_d && ( kc > kc_t && (k< kc_d ) ) 228  jf = fe * jc ; 229  kf = fe * kc ; 231 i( jf < ( FeSize +2* ghos )&& ( kf < (FineSize+2*ghosts)) ) 233 i( Cda [ iv ][ jc ][ kc ] > s [iv]&& ( Fda [iv][ jf ][ kf ] >ps[ivar]) ) 235 #ifde PLOT_TEMP 236 i iv == 0 ) 237 d :: cout << "" << jc << ", " << kc << " ) " << Cda [ iv ][jc][kc] 238 << ", " << Fda [ iv ][ jf ][ kf ] << d :: dl ; 241 Cda [ iv ][ jc ][ kc ] = `bs Fda [iv][ jf ][ kf ] - Cdata[ivar][jc][kc] ) ; 245 #ifde PLOT_BIG_ERRORS 246 i( Cda [ iv ][ jc ][ kc ] > 1) 247 d :: cout << "" << jc << ", " << kc << " ) " << Cda [ iv ][jc][kc] 248 << d :: dl ; 252 Cda [ iv ][ jc ][ kc ] = -1.0 ; 255 Cda [ iv ][ jc ][ kc ] = -1.0 ; 258 Cda [ iv ][ jc ][ kc ] = -1.0 ; 262  cou = 0 ;  sum = 0.0 ; 263  jc = 0 ; j< ( CrSize +2* ghos ) ; jc++) 264  kc = 0 ; k< ( CrSize +2* ghos ) ; kc++) 266 i Cda [ iv ][ jc ][ kc ] > 0.0 ) 268 sum + Cda [ iv ][ jc ][ kc ] * Cdata[ivar][jc][kc] ; 269 cou ++ ; 273 rms [ iv ] = ( cou > 0? `sq ( sum / counter ) : 0 ; 278 #ifde PLOT_TEMP_ERRORS 280  iv = 0 ; 281  jc = 0 ; j< ( CrSize +2* ghos ) ; jc++) 282  kc = 0 ; k< ( CrSize +2* ghos ) ; kc++) 283 d :: cout << jc << " " << kc << " " << Cda [ iv ][jc][kc] << std:: dl ; 285 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Bin2Tecplot/num_conv_reader.cpp 8  ~ 9  ~ 10  ~ 11  ~ 12  ~"PchRdWre.h " 14  $WreIoAay (* da_om_fe , * lbbc , * ubbc , * size , 15  nvs ,  ndims , *** da ,  y_size , 16  gho `throw (const *) ; 19  $fdx ( i ,  j ,  k ,  iv ,  nx ,  ny ,  nz ,  nvs ) 21  i + j * nx + k *nx* ny + iv *nx*ny* nz ) ; 22 } } 25  FlAay d :: rg fame ,  y_size ,  gho ,  nvs , 26 *** da $throw (const *) 30 PchRdWre `ad PchRdWre:: READER ) ; 32  s = ad . `OnFe fame . `c_r (), PchRdWre :: READ_ONLY ); 33 i s =- 2 ) `throw ( " Fileot found " ) ; 35  ũches , ndims ; 36 ad . `RdNumsPchesDims ũches , ndims ) ; 38 ad . `RewdRd () ; 40 * da_om_fe = 0 ; 41  ubbc [3], lbbc [3], size [3], mynvs , v , oc ; 44  tٮ_s = 0 ; d :: cout << " Doingatch # " ; 45  ch = 0 ; itch < ũches ; ipatch++) 47 d :: cout << ch << " " ; 48 ad . `RdPch ch , da_om_fe , lbbc , ubbc , size , mynvs , v , 49 oc , ndims ) ; 50 `as mynvs = nvs ) ; 51  od = 1 ;  idim = 0; idim < ndims ; idim++od * size [idim] ; 52 tٮ_s + od ; 54 y 56 `WreIoAay ( da_om_fe , lbbc , ubbc , size , nvs , ndims , da , 57 y_size , gho ) ; 59 `tch (cڡ * mesge ) 61 d :: << " WreIoAayued " << mesge << std:: dl ; 62 #i __GNUC__ > 2 63 d :: `rme () ; 65 `abt () ; 69 de [] da_om_fe ; data_from_file = 0 ; 71 d :: cout << std:: dl ; 72 d :: cout << " F" << fame << " had " << tٮ_s << " gridoints " 73 << d :: dl ; 75 } } 77  #MAX ( A , B (A> (B? (A: (B) ) 78  $WreIoAay (* da_om_fe , * lbbc , * ubbc , * size , 79  nvs ,  ndims , *** DaAay ,  y_size , 80  gho $throw (const *) 90 bo ok = ue ; 91 i size [0] > ( y_size +2* gho ok = l ; 92 i( ndims > 1&& ( size [1] > ( y_size +2* gho ) ok = l ; 93 i( ndims > 2&& ( size [2] > ( y_size +2* gho ) ok = l ; 94 i ok = l ) `throw ( "Theatch is greaterhanhe globalrray size !!") ; 96  nx = 1, ny = 1, nz = 1 ; 97 nx = `MAX (1, size [0]) ; 98 i ndims > 1 ) ny = `MAX (1, size [1]) ; 99 i ndims > 2 ) nz = `MAX (1, size [2]) ; 101  ride = ( ubbc [0] - lbbc [0] ) / ( nx - 1 ) ; 103  iv = 0 ; iv < nvs ; ivar++) 105  k = 0 ; 106  j = 0 ; j < ny ; j++ ) 107  i = 0; i < nx ; i++) 109  i_glob = lbbc [0] + ride * i ; 110  j_glob = lbbc [1] + ride * j ; 111  dex = `fdx ( i , j , k , iv , nx , ny , nz , nvs ) ; 112 DaAay [ iv ][ i_glob ][ j_glob ] = da_om_fe [ dex ] ; 117 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Hdf2Tecplot/conv.c 1  ~"cv.h " 2  ~"ngths.h " 4  #MAXLEVEL 10 ) 5  #GLBL_NX 32 ) 6  #GLBL_NY 32 ) 7  #MAX_FILENAME_LENGTH 20 ) 8  #NGRIDS 2000 ) 10  $ma ( gc , ** gv ) 12 t32 nsds , ljr ; 13 * fame , * _fe , * out_fe , * v_me ; 14  i , dex , c , DesedTime = -1, v = 0, igrid , cou ; 15  sizes [ NGRIDS ], vs [NGRIDS], sizes_r_v [ MAXLEVEL ], ts ; 16  d [2], my_r_sqrd [ NGRIDS ], my_r_sqrd_r_v [ MAXLEVEL ], t ; 17 FILE * o ; 19  glob_nx = GLBL_NX , glob_ny = GLBL_NY , max_v = MAXLEVEL ; 20 BOOLEAN IsVeDa = ue ; 21 BOOLEAN DeuVName = ue ; 23 i( gc == 1) 25 `uge (); 26 `ex ( 0 ); 29  ( c = `gt ( gc , (**) gv , "t:m:n:v:i:l:P:T:")) != -1 ) 31  c ) 34 t = `od ( ݏrg , (**) NULL ) ; 37 DesedTime = ( ` ( ݏrg , (**) NULL , 0) ; 40 glob_nx = ( ` ( ݏrg , (**) NULL , 0) ; 43 glob_ny = ( ` ( ݏrg , (**) NULL , 0) ; 46 max_v = ( ` ( ݏrg , (**) NULL , 0) ; 49 v = ( ` ( ݏrg , (**) NULL , 0) ; 52 v_me = (*) `mloc ` ( ݏrg )*() ); 53 `ry ( v_me , ݏrg ); 54 DeuVName = l ; 57 v_me = (*) `mloc ` ( ݏrg )*() ); 58 `ry ( v_me , ݏrg ); 59 IsVeDa = l ; 60 DeuVName = l ; 63 `uge (); 64 `ex ( 0 ); 68 if DeuVName = ue ) v_me = "U"; 69 _fe = (*) `mloc MAX_FILENAME_LENGTH * () ); 70 out_fe = (*) `mloc MAX_FILENAME_LENGTH * () ); 71 `MakeFames MAX_FILENAME_LENGTH , _fe , out_fe , v_me , v , 72 IsVeDa , DesedTime ) ; 75 d [0] = GRID_EXTENT_IN_X / ( glob_nx * `pow (2.0, max_v -1)) ; 76 d [1] = GRID_EXTENT_IN_Y / ( glob_ny * `pow (2.0, max_v -1)) ; 77 `tf (" Using %d X %d coarse grid; %devels ofefinement \n", 78 glob_nx , glob_ny , max_v ); 80 `tf (" Desedim = %d\n", DesedTime ); 81 `tf (" Getting input file info : \n\n\n"); 83 `SDSgFeInfo ( _fe , & nsds , & ljr ); 87 igrid = 0 ; 88 ts = 0 ; 89  dex = 0; ((dex < nsds && ( ts < DesedTime ) ); index++) 92  dimsis [2], v ; 93  ig [3], s [3]; 94 * da ; 97 ts = `RuTimeAndDimsiOfCutDat ( dimsis , dex , 98 _fe ); 99 `tf ("Rdg dom sd# %d,ime = %d ", dex , ts ); 102 if( ts = DesedTime ) 104  r ;  siz = 0 ; 105 `tf (" --- Yes, valid dataset"); 106 `tf (" Dimsiڠ(%d, %d\n", dimsis [0], dimensions[1]); 107 da = (*) `mloc ( dimsis [0]*dimensions[1]*()); 108 `RdSDS ( ig , s , & v , da , _fe , dex ) ; 109 `tf (" Resuti : (%d, %d, %d\n", s [0],es[1],es[2]); 110 `tf (" D : (%e, %e, %e\n", d [0], delta[1], delta[2]); 111 cou = 0 ; 112 my_r_sqrd [ igrid ] = `CcEs ( dimsis , ig , s , v , da , d , t , 113 & cou ) ; 114 vs [ igrid ] = v ; 115 sizes [ igrid ] = cou ; 116 ` ( da ); 117 igrid ++ ; 119 `tf ("\n"); 124  tٮ_r_sqrd = 0.0 ; 125  tٮ_ts = 0; 127  i = 0; i < MAXLEVEL ; i++) 129 my_r_sqrd_r_v [ i ] = 0.0 ; 130 sizes_r_v [ i ] = 0 ; 133  i = 0; i < igrid ; i++) 135 i sizes [ i ] == 0 ) sizes[i] = 1 ; 136 `tf ("# %d, Error,pts,evel : [%e, %d, %d] ; Avg Error = %e \n", 137 i , my_r_sqrd [i], sizes [i], vs [i], `sq (my_error_sqrd[i]/sizes[i]) ); 138 tٮ_r_sqrd + my_r_sqrd [ i ] ; 139 tٮ_ts + sizes [ i ] ; 141 my_r_sqrd_r_v [ vs [ i ] ] + my_r_sqrd [i] ; 142 sizes_r_v [ vs [ i ] ] + sizes [i] ; 145 `tf ("\n"); 146  i = 0; i < MAXLEVEL ; i++) 147 `tf ("Cumutivavagovev %d = %e;ot%d\n", i , 148 `sq my_r_sqrd_r_v [ i ] / sizes_r_v [i] ), 149 sizes_r_v [ i ]); 151 `tf ("AvagRMS : %\n", `sq ( tٮ_r_sqrd / tٮ_ts ) ); 154 ` ( _fe ; fe( out_fe ) ; 156 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Hdf2Tecplot/conv.h 2  ~ 3  ~ 4  ~ 5  ~ 6  ~ 7  ~"sds.h " 9 um { ml , mue } tBOOLEAN ; 12  RuTimeAndDimsiOfCutDat (* dimsis ,  dex , 13 * fame ); 15  RdSDS (* ig , * s , * v , * da , * fame , 16  dex ); 18  MakeFames ( max_n , * fe , * outfe , * vme , 19  v , BOOLEAN IsVeDa ,  DesedTime ) ; 21  CcEs (* dimsis , * ig , * s ,  v , 22 * da ,  d [],  t , * p_cou ); 24  AlytilAnsw ( x ,  y ,  t ) ; 26  uge (); @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Hdf2Tecplot/conv_error.c 1  ~"cv.h " 2  ~"mh.h " 3  ~"ngths.h " 5  $CcEs (* dimsis , * ig , * s ,  v , 6 * da ,  d [],  t , * p_cou ) 8  nx , ny ; 9  i , j ; 10  dx , dy , tch_r = 0.0; 12 nx = * dimsis ; 13 ny = *( dimsis +1); 14 dx = d [0]; 15 dy = d [1]; 17  j = 0; j < ny ; j++) 19  i = 0; i < nx ; i++) 21  x , y , r ; 22  dex ; 23 x = ( * ig + (* s * i ) * dx ; 24 y = ( *( ig +1+ (*( s +1)* j ) * dy ; 25 dex = i + j * nx ; 26  #JR_CONVERGE ) 27 #ifde JR_CONVERGE 28 i( `bs ( x - X0 < 0.3* GRID_EXTENT_IN_X ) && 29 ( `bs ( y - Y0 < 0.3* GRID_EXTENT_IN_Y ) ) 31 r = *( da + dex - `AlytilAnsw ( x , y , t ) ; 32 * p_cou += 1; 35 r = 0.0 ; 37 r = *( da + dex - `AlytilAnsw ( x , y , t ) ; 38 * p_cou += 1; 40 tch_r =ch_r + ( r *rror) ; 44 ( tch_r ); 45 } } 47  $AlytilAnsw ( x ,  y ,  t ) 49  #CONST DELTA_0 * ) DELTA_0 50  #NU 1.0 ) 52  r0 ; 53  rm1 , rm2 ; 55 r0 = `sq ( x - X0 )*(x-X0+ ( y - Y0 )*(y-Y0) ) ; 56 rm1 = DELTA_0 * DELTA_0 + 4 * NU * t ; 57 rm2 = - r0 *r0 / rm1 ; 59  CONST * `exp rm2 ) / rm1 ) ; 60 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Hdf2Tecplot/conv_sds.c 1  ~"cv.h " 3  $RuTimeAndDimsiOfCutDat (* dimsis , 4  dex , 5 * fame ) 7  dame [256]; 8 t32 nk , ts , numbTyOfArib , mts ; 9 t32 dims [3]; 10 * p_ibme , * ib ; 12 `SDSdive ( fame ); 13 `SDSek ( fame , dex ); 14 `SDSgDims ( fame , dame , & nk , dims ); 17 ib = "AMRtimestep"; 18 p_ibme = (* `mloc (* ` ( ib ) ) ; 19 `ry ( p_ibme , ib ); 25 `SDSfdAribInfo ( fame , p_ibme , & numbTyOfArib , 26 & mts ); 27 `SDSadArib ( fame , p_ibme , mts , & ts ); 29 *( dimsis + 0 dims [0]; 30 *( dimsis + 1 dims [1]; 32 ` ( p_ibme ); 33 ( ts ); 34 } } 36  $RdSDS (* ig , * s , * v , * da , 37 * fame ,  dex ) 48 t32 nk , vnk = 2, dims [3]; 49 t32 numbTyOfArib , mts ; 50 t32 * offts , * v ; 51  dame [256]; 52 * p_ibme , * ib0 , * ib1 , * ib2 ; 54 `SDSdive ( fame ); 55 `SDSek ( fame , dex ); 56 `SDSgDims ( fame , dame , & nk , dims ); 59 ib0 = "AMRorigin"; 60 p_ibme = (* `mloc (* ` ( ib0 ) ); 61 `ry ( p_ibme , ib0 ); 62 `SDSfdAribInfo ( fame , p_ibme , & numbTyOfArib , & mts ); 63 offts = ( t32 *) `mloc ( mts *(int32)); 64 `SDSadArib ( fame , p_ibme , mts , offts ); 65 *( ig offts [0]; *(origin+1) = offsets[1]; *(origin+2) = offsets[2]; 66 ` ( p_ibme ); 69 ib1 = "AMRresolution"; 70 p_ibme = (* `mloc (* ` ( ib1 ) ); 71 `ry ( p_ibme , ib1 ); 72 `SDSfdAribInfo ( fame , p_ibme , & numbTyOfArib , & mts ); 73 v = ( t32 *) `mloc ( mts *(int32)); 74 `SDSadArib ( fame , p_ibme , mts , v ); 75 *( s v [0]; *(res+1) = val[1]; *(res+2) = val[2]; 76 ` ( v ); 77 ` ( p_ibme ); 80 ib2 = "AMRlevel" ; 81 p_ibme = (* `mloc (* ` ( ib2 ) ); 82 `ry ( p_ibme , ib2 ); 83 `SDSfdAribInfo ( fame , p_ibme , & numbTyOfArib , & mts ); 84 v = ( t32 *) `mloc ( mts *(int32)); 85 `SDSadArib ( fame , p_ibme , mts , v ); 86 * v = * v ; 87 ` ( v ); 88 ` ( p_ibme ); 91 `SDSadDa ( fame , vnk , dims , (*) da ); 92 } } @/home/jacklm/cca/ws/simtk-cca/build/CFRFSComb/Utilities/Hdf2Tecplot/conv_workers.c 1  ~"cv.h " 3  $MakeFames ( max_n , * _fe , * out_fe , * v_me , 4  v , BOOLEAN IsVeDa ,  DesedTime ) 6 * fame ; 9 fame = (*) `mloc max_n * () ); 10 i IsVeDa = ue ) 13 `rtf ( fame ,"%s%d", v_me , v ); 14 `ry ( _fe , fame ); 15 `rt ( _fe , ".hdf"); 16 `rtf ( out_fe , "%s_%d", fame , DesedTime ); 17 `rt ( out_fe , ".dat"); 18 `tf (" Iuf: %\n", _fe ); 19 `tf (" Ouuf: %\n", out_fe ); 23 `rtf ( fame , "%s", v_me ); 24 `ry ( _fe , fame ); 25 `rt ( _fe , ".hdf"); 26 `rtf ( out_fe , "%s_%d", fame , DesedTime ); 27 `rt ( out_fe , ".dat"); 28 `tf (" Iuf: %\n", _fe ); 29 `tf (" Ouuf: %\n", out_fe ); 32 ` ( fame ) ; 33 } } 36  $uge () 38 `tf ("Usage :\n"); 39 `tf (" conv -t -m -n -i -v -P -l -T