Test "Poisson equation" example

Issue #2173 resolved
Roland Haas created an issue

Before each release, check that http://einsteintoolkit.org/gallery/poisson/index.html still works and produces correct output.

Keyword: None

Comments (7)

  1. Roland Haas reporter
    • removed comment

    I re-ran the example using current master code and got this graph for the error (terr value, plotted as line number vs. column 2):

    [[Image(err.png)]]

    However looking at the values of the coefficient (or the solution in psi for that matter) reveals that not all is well:

    [[Image(ct_testc0.jpg, 600px)]]

    namely of the 5 Gaussian blobs mentioned in the parfile only 2 show up.

    Some digging reveals that this is b/c of a not-backwards compatible change to CT_Analytic in [https://bitbucket.org/eloisa/ctthorns/commits/d07b160 d07b160] - (tag: ET_2015_11_v0) Reduced number of terms of gaussian[] superposition in Analytic.m in the first version of the thorn in the toolkit.

    This is in principle ok since it never supported more than 2 Gaussian blobs while in the ET but we likely should

    1. remove the non-functional parameters from param.ccl
    2. regenerate the gallery example with the correct data
  2. anonymous
    • removed comment

    We agreed in the ET call today to: 1. remove the non-functional parameters from the thorn 1. regenerate the example data using the current thorn. Will compare that the result are comparable to what was produced by the original code when using the same number of Gaussians.

  3. Roland Haas reporter
    • removed comment

    In the call on 2018-0802 a suggestion was made to mabye re-instantiate the 5 Gaussians. param.ccl right now claims that 20 gaussians are supported, so supporting 5 is not actually fixing the "bug" but instead only making the gallery example work.

    I new pull request enabling 20 gaussians is here:

    I have quickly checked on runtime and find that run time of the generated routine is:

    ||= number of Gaussians =||= run time (s) =||= total run time (s) =|| || 2 || 139 || 287 || || 5 || 305 || 582 || || 20 || 869 || 1030 ||

    So basically the CT_Analytic function's runtime is scaling almost linearly with the number of Gaussians. Note that this is a version of the poisson.par file where the max. number of iterations in the ML scheme has been reduced to 2 from 200 so presumably in a real run of the parfile CT_Analytic would not take >50% of the runtime since it only runs once and not once per grid sweep.

    I will thus prepare and test a commit allowing up to 5 Gaussians which lets one run the gallery example as shown.

    Only relative numbers matter as the absolute numbers would change with processor speed etc.

  4. Roland Haas reporter
    • removed comment

    Commands to create tarball and upload to bitbucket:

    tar czf poisson-$(date +%Ym%d).tar.gz --exclude cactus-source --exclude SIMFACTORY --exclude 'checkpoint*.h5' --exclude 'ct_multilevel-err*.h5' --exclude 'ct_multilevel-residual*.h5' err.p?? poisson
    
    curl -u 'rhaas@illinois.edu' -X POST https://api.bitbucket.org/2.0/repositories/einsteintoolkit/www/downloads -F files=@"poisson-$(date +%Ym%d).tar.tar.gz"
    

    removing some of the output files was required as the upload otherwise fails (for the 750MB full tarball).

  5. Roland Haas reporter
    • changed status to resolved
    • removed comment

    I pushed a change to support 5 amp[] values in git hash 2563eba "CT_Analytic: regenrate code" of ctthorns. This makes the result look like what the gallery shows. I have updated the gallery in git hash 71f3c7a "gallery/ns: update plot and data after re-run" of wwww.

  6. Log in to comment