Skip to content
Snippets Groups Projects
testsuite.py 1.41 KiB
Newer Older
  • Learn to ignore specific revisions
  • import subprocess
    
    for order in range(1,4):
    
        minLevel =  5 + 1 - order;
        maxLevel = 10 + 1 - order;
    
        processList = []
    
        for numLevels in range(minLevel,maxLevel+1):
            subprocess.call(["echo", "foo"])
    
            LOGFILE = "./harmonicmaps_" + str(order) + "_" + str(numLevels) + ".log"
    
            ##  run the actual simulation
            executable = "./harmonicmaps-" + str(order)
            p = subprocess.Popen([executable, "harmonicmaps-skyrmions-hexagon.parset", "-numLevels", str(numLevels)])
            processList.append(p)
    
        exit_codes = [p.wait() for p in processList]
    
        subprocess.call(["echo", "Now measuring errors"])
    
    
        for numLevels in range(minLevel,maxLevel+1):
            # Measure the discretization errors against the solution on the finest grid
            LOGFILE = "./compute-disc-error_" + str(order) + "_" + str(numLevels) + ".log"
    
            subprocess.Popen(["../build-cmake/src/compute-disc-error", "compute-disc-error-skyrmions-hexagon.parset",
                                            "-order", str(order),
                                            "-numLevels", str(numLevels),
                                            "-numReferenceLevels", str(maxLevel),
                                            "-simulationData", "harmonicmaps-result-" + str(order) + "-" + str(numLevels) + ".data",
                                            "-referenceData", "harmonicmaps-result-" + str(order) + "-" + str(maxLevel) + ".data"])