Skip to content
Snippets Groups Projects
Commit 082804f1 authored by René Heß's avatar René Heß
Browse files

[skip ci] Super weird: Different grid -> quite some change in residual?

Have to investigate further. The change in the residual seems way too
large. The curious thing is that the input to the sum factorization kernels
looks good and the poisson without sum factorization gives the same
solution. Very unexpected.
parent 2c84cbcb
No related branches found
No related tags found
No related merge requests found
...@@ -249,7 +249,10 @@ int main(int argc, char** argv){ ...@@ -249,7 +249,10 @@ int main(int argc, char** argv){
// Solution for transformed gmsh file // Solution for transformed gmsh file
// std::vector<RangeType> solution {-1.5766672833937405, -50059.975281639621, -2.4083888194744993, -94691.716144054299, -0.78833364169687059, -41141.391638713889, -1.2041944097372501, -75362.893655600026, 50061.609799448859, 1.5766672833937405, 94680.783162005027, 2.4083888194744993, 41147.727233110381, 0.78833364169687059, 75365.856525443567, 1.2041944097372501}; // std::vector<RangeType> solution {-1.5766672833937405, -50059.975281639621, -2.4083888194744993, -94691.716144054299, -0.78833364169687059, -41141.391638713889, -1.2041944097372501, -75362.893655600026, 50061.609799448859, 1.5766672833937405, 94680.783162005027, 2.4083888194744993, 41147.727233110381, 0.78833364169687059, 75365.856525443567, 1.2041944097372501};
// std::vector<RangeType> solution {-0.0037474264040753213, -0.24512369823711844, -0.0032054511665800434, -0.29239154898583231, -0.0018737132020376626, -0.25941816489230152, -0.0016027255832900215, -0.29607683995777412, 0.24565020672181651, 0.0037474264040753213, 0.2756416595029384, 0.0032054511665800434, 0.27279741154891424, 0.0018737132020376626, 0.29892097429935732, 0.0016027255832900215}; // std::vector<RangeType> solution {-0.0037474264040753213, -0.24512369823711844, -0.0032054511665800434, -0.29239154898583231, -0.0018737132020376626, -0.25941816489230152, -0.0016027255832900215, -0.29607683995777412, 0.24565020672181651, 0.0037474264040753213, 0.2756416595029384, 0.0032054511665800434, 0.27279741154891424, 0.0018737132020376626, 0.29892097429935732, 0.0016027255832900215};
std::vector<RangeType> solution {-0.003747426404075297, -0.21864656102913654, -0.0032054511665800555, -0.28437017759171157, -0.0018737132020376381, -0.2429341647618537, -0.0016027255832900197, -0.29660333834120023, 0.22916620659136877, 0.0037474264040752831, 0.27616815788636451, 0.0032054511665800512, 0.24632027434093215, 0.0018737132020376344, 0.2908996029052367, 0.0016027255832900187}; std::vector<RangeType> solution_1 {-0.003747426404075297, -0.21864656102913654, -0.0032054511665800555, -0.28437017759171157, -0.0018737132020376381, -0.2429341647618537, -0.0016027255832900197, -0.29660333834120023, 0.22916620659136877, 0.0037474264040752831, 0.27616815788636451, 0.0032054511665800512, 0.24632027434093215, 0.0018737132020376344, 0.2908996029052367, 0.0016027255832900187};
std::vector<RangeType> solution_2 {-0.22216923038681022, -0.003662938655271696, -0.23743729880973413, -0.0030364756689728193, -0.29395296456019571, -0.0018314693276358439, -0.29973173153779054, -0.0015182378344864129, 0.0036629386552717003, 0.2309838664360746, 0.0030364756689728349, 0.24202149140895873, 0.001831469327635845, 0.28737146661901281, 0.001518237834486417, 0.29291440083048437};
std::cout.precision(17); std::cout.precision(17);
std::vector<RangeType> residual(16); std::vector<RangeType> residual(16);
for (std::size_t i=0; i<16; ++i){ for (std::size_t i=0; i<16; ++i){
...@@ -261,9 +264,11 @@ int main(int argc, char** argv){ ...@@ -261,9 +264,11 @@ int main(int argc, char** argv){
} }
std::cout << std::endl; std::cout << std::endl;
std::cout << "palpo is_permuation: " std::cout << "palpo is_permuation to solution_1: "
<< fuzzy_is_permutation(solution, residual) << std::endl; << fuzzy_is_permutation(solution_1, residual) << std::endl;
if (!fuzzy_is_permutation(solution, residual)) std::cout << "palpo is_permuation to solution_2: "
<< fuzzy_is_permutation(solution_2, residual) << std::endl;
if (!fuzzy_is_permutation(solution_1, residual) and !fuzzy_is_permutation(solution_2, residual) )
return 1; return 1;
} }
if (initree.get<bool>("printmatrix", false)) { if (initree.get<bool>("printmatrix", false)) {
......
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