Skip to content
Snippets Groups Projects
Commit 9555996c authored by Dominic Kempf's avatar Dominic Kempf
Browse files

Update the test, although broken

convergence test does not work
parent e09243c7
No related branches found
No related tags found
No related merge requests found
add_dune_system_test(BASENAME poisson INIFILE poisson.mini SOURCE poisson_uniform.cc TARGETS output)
#add_dune_system_test(BASENAME poisson INIFILE poisson.mini SOURCE poisson_uniform.cc TARGETS output)
add_dune_convergence_test(BASENAME poisson_convergence SOURCE poisson_uniform.cc INIFILE poisson_conv.mini OUTPUT_TARGETS output)
foreach(target ${output})
add_dune_ug_flags(${target})
add_dune_umfpack_flags(${target})
add_dune_mpi_flags(${target})
target_link_libraries(${target} ${DUNE_LIBS})
endforeach()
#add_dune_convergence_test(BASENAME poisson_convergence TARGET ${output} INIFILE poisson_conv.mini)
\ No newline at end of file
# define some convenience variables
dim =dim= 2#, 3
grid =grid= yasp, ug
degree =deg= 1, 2
naming = {grid}_{dim}d_Q{degree}
level == 1,2,3,4,5
# The suffix for the executable
__exec_suffix = {naming}
outputFile = output_{naming}_lev{level}
computeError = true
[vtk]
output = False
name = poisson_{naming}
[yaspgrid]
cells =dim= 1 1#, 1 1 1
extension =dim= 1. 1.#, 1. 1. 1.
refinement = {level}
[ug]
cells =dim= 1 1#, 1 1 1
lowerleft =dim= 0. 0.#, 0. 0. 0.
upperright =dim= 1. 1.#, 1. 1. 1.
refinement = {level}
[__STATIC.COMPILE_DEFINITIONS]
GRIDTYPE =grid= Dune::YaspGrid<{dim}>, Dune::UGGrid<{dim}>
DEGREE = {degree}
[__CONVERGENCE_TEST]
TestKey = level
ExpectedRate =deg= 2, 3
AbsoluteDiff = 0.1
\ No newline at end of file
......@@ -240,11 +240,14 @@ int main(int argc, char** argv)
SLP slp(go,ls,x0,1e-12);
slp.apply();
// make discrete function object
Dune::SubsamplingVTKWriter<GV> vtkwriter( gv, 1 );
//Dune::VTKWriter<GV> vtkwriter(gv,Dune::VTK::conforming);
Dune::PDELab::addSolutionToVTKWriter(vtkwriter,gfs,x0);
vtkwriter.write(params.get<std::string>("vtk.name"),Dune::VTK::ascii);
if (params.get<bool>("vtk.output", false))
{
// make discrete function object
Dune::SubsamplingVTKWriter<GV> vtkwriter( gv, 1 );
//Dune::VTKWriter<GV> vtkwriter(gv,Dune::VTK::conforming);
Dune::PDELab::addSolutionToVTKWriter(vtkwriter,gfs,x0);
vtkwriter.write(params.get<std::string>("vtk.name"),Dune::VTK::ascii);
}
if (params.get<bool>("computeError", false))
{
......@@ -258,7 +261,8 @@ int main(int argc, char** argv)
Dune::PDELab::integrateGridFunction(l2,currentL2Error,intorder);
Dune::OutputTree output(params.get<std::string>("outputFile"));
output.set("l2error", std::sqrt(currentL2Error));
output.set("HMax", std::pow(grid->size(0), -1. / dim));
output.set("Norm", std::sqrt(currentL2Error));
}
return 0;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment