Example #1
0
def _run_one(simu_id, result_path, paramtree, measuretree, verbose):
    """
    This function need to be outisde Launcher class to allow
    multiprocessing module to work
    """
    queue = _run_one.q

    queue.put({"id": simu_id, "state": "start"})
    meta = Metaphase(verbose=False,
                     paramtree=paramtree,
                     measuretree=measuretree,
                     reduce_p=True)
    meta.simul()
    meta.evaluate()

    # Build filename
    simu_path = os.path.join(result_path, "simu_%06d.zip" % simu_id)

    # Write simulation result
    io = SimuIO(meta)
    io.save(simufname=simu_path, verbose=False)

    queue.put({"id" : simu_id, "state" : "stop" })

    del meta
    del io
    gc.collect()
    return True
Example #2
0
    MEASUREFILE = parameters.MEASUREFILE

    # Arguments parser
    parser = argparse.ArgumentParser(description="KtSimu Animator")
    parser.add_argument("--new", "-n", action="store_true", default=False, help="Run a new simulation")
    parser.add_argument(
        "--results",
        "-r",
        type=str,
        default="simu.h5",
        help="Specified results hdf5 file for new or already runned simulation",
    )
    args = parser.parse_args()

    results_file = args.results

    if args.new:

        meta = Metaphase(paramfile=PARAMFILE, measurefile=MEASUREFILE, verbose=True)
        meta.simul()
        io = SimuIO(meta)
        io.save(results_file)

    else:

        meta = SimuIO().read(results_file)

    # Run animation
    anim = Animator(meta)
    anim.play()