diff --git a/applications/poisson_dg_tensor/CMakeLists.txt b/applications/poisson_dg_tensor/CMakeLists.txt index 27ae6ff295a83acfd889207e6e8fc266de33c18e..676a8b4e728ace33e717ed450398801af839f061 100644 --- a/applications/poisson_dg_tensor/CMakeLists.txt +++ b/applications/poisson_dg_tensor/CMakeLists.txt @@ -4,6 +4,12 @@ dune_add_formcompiler_system_test(UFLFILE poisson_dg_tensor.ufl NO_TESTS ) +dune_add_formcompiler_system_test(UFLFILE poisson_dg_tensor.ufl + BASENAME app_poisson_dg_tensor_sliced + INIFILE sliced.mini + NO_TESTS + ) + dune_add_formcompiler_system_test(UFLFILE poisson_dg_tensor.ufl BASENAME verify_app_poisson_dg_tensor INIFILE verify.mini diff --git a/applications/poisson_dg_tensor/sliced.mini b/applications/poisson_dg_tensor/sliced.mini new file mode 100644 index 0000000000000000000000000000000000000000..c60dc35f89ce0cd1b0bfd04c3b1f078dd58dafa8 --- /dev/null +++ b/applications/poisson_dg_tensor/sliced.mini @@ -0,0 +1,51 @@ +__name = app_poisson_dg_tensor_{__exec_suffix} +__exec_suffix = deg{formcompiler.ufl_variants.degree}_{opcount_suffix}_level{formcompiler.instrumentation_level} + +opcount_suffix = opcount, nonopcount | expand opcount +{opcount_suffix} == opcount and {formcompiler.instrumentation_level} != 4 | exclude + +# Calculate the size of the grid to equlibritate it to 100 MB/rank +# Input parameters +dim = 3 +mbperrank = 100 +ranks = 16 +floatingbytes = 8 + +# Metaini Calculations +memperrank = {mbperrank} * 1048576 | eval +dofsperdir = {formcompiler.ufl_variants.degree} + 1 | eval +celldofs = {dofsperdir} ** {dim} | eval +cellsperrank = {memperrank} / ({floatingbytes} * {celldofs}) | eval +cellsperdir = {cellsperrank} ** (1/{dim}) | eval | toint +firstdircells = {ranks} * {cellsperdir} | eval +dimminusone = {dim} - 1 | eval +ones = 1 | repeat {dimminusone} +otherdircells = {cellsperdir} | repeat {dimminusone} + +# Setup the grid! +extension = 1.0 | repeat {dim} +cells = {firstdircells} {otherdircells} +partitioning = {ranks} {ones} + +# Set up the timing identifier +identifier = poisson_dg_tensor_deg{formcompiler.ufl_variants.degree} + +[wrapper.vtkcompare] +name = {__name} +extension = vtu + +[formcompiler] +fastdg = 1 +sumfact = 1 +vectorize_quad = 1 +vectorize_slice = 1 +instrumentation_level = 2, 3, 4 | expand +opcounter = 1, 0 | expand opcount +time_opcounter = 0, 1 | expand opcount +exact_solution_expression = g +compare_l2errorsquared = 1e-6 +quadrature_order = {formcompiler.ufl_variants.degree} * 2 | eval + +[formcompiler.ufl_variants] +cell = hexahedron +degree = 3, 7 | expand