aboutsummaryrefslogtreecommitdiff
path: root/Source/Parallelization/GuardCellManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Parallelization/GuardCellManager.cpp')
-rw-r--r--Source/Parallelization/GuardCellManager.cpp27
1 files changed, 19 insertions, 8 deletions
diff --git a/Source/Parallelization/GuardCellManager.cpp b/Source/Parallelization/GuardCellManager.cpp
index a67e15eb7..9f3e5b18d 100644
--- a/Source/Parallelization/GuardCellManager.cpp
+++ b/Source/Parallelization/GuardCellManager.cpp
@@ -110,7 +110,7 @@ guardCellManager::Init(
ng_required = std::max( ng_required, ngE[i_dim] );
ng_required = std::max( ng_required, ngJ[i_dim] );
ng_required = std::max( ng_required, ngRho[i_dim] );
- ng_required = std::max( ng_required, ngF[i_dim] );
+v ng_required = std::max( ng_required, ngF[i_dim] );
// Set the guard cells to this max
ngE[i_dim] = ng_required;
ngJ[i_dim] = ng_required;
@@ -122,11 +122,6 @@ guardCellManager::Init(
ngF = IntVect(AMREX_D_DECL(ngF_int, ngF_int, ngF_int));
#endif
- Print()<<"rrr ngE : "<<ngE <<'\n';
- Print()<<"rrr ngJ : "<<ngJ <<'\n';
- Print()<<"rrr ngRho: "<<ngRho<<'\n';
- Print()<<"rrr ngF : "<<ngF <<'\n';
-
ngExtra = IntVect(static_cast<int>(aux_is_nodal and !do_nodal));
// Guard cells for field solver
@@ -134,12 +129,28 @@ guardCellManager::Init(
ng_MovingWindow = IntVect(AMREX_D_DECL(0,0,0)); // Multiplied by number of cells moved at each timestep
ng_MovingWindow[moving_window_dir] = 1;
int FGcell[4] = {0,1,1,2}; // Index is nox
- ng_FieldGather = IntVect(AMREX_D_DECL(FGcell[nox],FGcell[nox],FGcell[nox]));
- ngJ_CurrentDepo = ng_FieldGather;
+ ng_FieldGather = IntVect(AMREX_D_DECL(FGcell[nox],FGcell[nox],FGcell[nox])) + 2*ngExtra;
+
+ ng_FieldGather = ng_FieldGather.min(ngE);
if (do_fdtd_nci_corr){
ng_NCIFilter = IntVect::TheZeroVector();
ng_NCIFilter[AMREX_SPACEDIM-1] = 4;
}
+
+ ng_FieldGatherAndNCIFilter = ng_FieldGather + ng_NCIFilter;
+ ng_FieldGatherAndNCIFilter = ng_FieldGatherAndNCIFilter.min(ngE);
+
ng_Aux = 2*ng_FieldGather+ng_NCIFilter;
ng_Aux = ng_Aux.min(ngE);
+
+ Print()<<"rrr ngE : "<<ngE <<'\n';
+ Print()<<"rrr ngJ : "<<ngJ <<'\n';
+ Print()<<"rrr ngRho : "<<ngRho <<'\n';
+ Print()<<"rrr ngF : "<<ngF <<'\n';
+ Print()<<"rrr ng_Aux: "<<ng_Aux<<'\n';
+
+ Print()<<"ttt ng_FieldSolver "<< ng_FieldSolver <<'\n';
+ Print()<<"ttt ng_FieldGather "<< ng_FieldGather <<'\n';
+ Print()<<"ttt ngJ_CurrentDepo "<< ngJ_CurrentDepo <<'\n';
+ Print()<<"ttt ngExtra "<< ngExtra <<'\n';
}