diff --git a/.github/workflows/generate_reference_plots.yml b/.github/workflows/generate_reference_plots.yml index 95a7f171..f5e54f53 100644 --- a/.github/workflows/generate_reference_plots.yml +++ b/.github/workflows/generate_reference_plots.yml @@ -1,6 +1,4 @@ -# This workflow will install Python dependencies, run tests and lint with a variety of Python versions -# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python - +# This workflow will install Python dependencies , analysator and generate verification set to /wrk-kappa/group/spacephysics/analysator/CI/verification_sets/ under new folder based on commit id name: generate_reference_data on: @@ -43,9 +41,10 @@ jobs: DATAPATH="/wrk-kappa/group/spacephysics/analysator/CI/verification_sets/$(git rev-parse HEAD)" mkdir $DATAPATH + touch $DATAPATH/.lockfile sbatch -W -o testpackage_gen_verf.txt --job-name gen_verf_plots ./testpackage/run_testpackage_generate_verf_set.sh $DATAPATH - cat testpackage_gen_verf.txt python ./testpackage/testpackage_get_job_error.py testpackage_gen_verf.txt + rm $DATAPATH/.lockfile diff --git a/.github/workflows/test_compare_image_oldest_python.yml b/.github/workflows/test_compare_image_oldest_python.yml index febd8832..57517d21 100644 --- a/.github/workflows/test_compare_image_oldest_python.yml +++ b/.github/workflows/test_compare_image_oldest_python.yml @@ -26,15 +26,38 @@ jobs: - name: Get oldest allowed python version from pyproject.toml id: pyversion run: | - echo "PYTHON=$(cat pyproject | grep -Po '^requires-python\W*=\W*".+\K\d.+\d')" >> $GITHUB_OUTPUT + module purge + PYTHON=$(cat pyproject.toml | grep -Po '^requires-python\W*=\W*".+\K\d.+\d') + #PYTHON="3.7" + MAJOR=$(echo $PYTHON | grep -Po '^\d+') + MINOR=$(echo $PYTHON | grep -Po '\.\K\d+([\.]|$)') + AVAILABLE_VERSIONS=$(module spider Python) + N=0 + while [[ ! $VERSIONS_MATCH ]] + do + echo "Trying to find module for Python/$PYTHON" + VERSIONS_MATCH=$(echo $AVAILABLE_VERSIONS | grep -Po 'Python/.+?-' | grep -Po 'Python'/$PYTHON) + if [[ ! $VERSIONS_MATCH ]]; then + MINOR=$(( $MINOR + 1 )) + PYTHON=$MAJOR.$MINOR + N=$(( N + 1)) + if (( N> 20 )); then + echo "::error:: Could not find a python version to use." + exit 1 + fi + fi + done + echo "PYTHON=$PYTHON" >> $GITHUB_OUTPUT module load Python/$PYTHON + module list Python - name: Install dependencies timeout-minutes: 5 run: | export TMPDIR=$RUNNER_TEMP export UV_LINK_MODE=copy module purge - module load Python/{{ steps.pyversion.outputs.PYTHON }} + module load Python/${{ steps.pyversion.outputs.PYTHON }} + module list uv venv CI_env . CI_env/bin/activate uv pip install --editable ../analysator[${{ matrix.extras }}] @@ -43,7 +66,7 @@ jobs: run: | export TMPDIR=$RUNNER_TEMP module purge - module load Python/{{ steps.pyversion.outputs.PYTHON }} + module load Python/${{ steps.pyversion.outputs.PYTHON }} verf_loc="/wrk-kappa/group/spacephysics/analysator/CI/verification_sets" verfset=$(ls -lth $verf_loc | grep ^d | head -n1 | grep -Po '\w+$') if [[ -f $verf_loc/$verfset/.lockfile ]]; then @@ -59,7 +82,7 @@ jobs: - name: Comparing plotted data run: | export TMPDIR=$RUNNER_TEMP - module load Python/{{ steps.pyversion.outputs.PYTHON }} + module load Python/${{ steps.pyversion.outputs.PYTHON }} . CI_env/bin/activate sbatch -W -o "testpackage_compare.txt" ./testpackage/run_compare.sh cat testpackage_compare.txt diff --git a/.github/workflows/test_compare_images.yml b/.github/workflows/test_compare_images.yml index 69d668d9..3ba2a682 100644 --- a/.github/workflows/test_compare_images.yml +++ b/.github/workflows/test_compare_images.yml @@ -1,9 +1,9 @@ -# This workflow will install Python dependencies, run tests and lint with a variety of Python versions -# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python - +# This workflow will install Python dependencies and analysator, run the analysator testpackage based on git diff and compare the images name: Turso compare selectively images on: + pull_request: + branches: [ master, dev] workflow_dispatch: concurrency: @@ -21,7 +21,7 @@ jobs: fail-fast: false max-parallel: 2 matrix: - extras: ["all"] + extras: ["testpackage"] steps: - uses: actions/checkout@v4 timeout-minutes: 5 @@ -46,10 +46,18 @@ jobs: export TMPDIR=$RUNNER_TEMP module purge module load Python/3.10.4-GCCcore-11.3.0 - - export DIFFRESULT=$(python ./testpackage/testpackage_get_diff.py) + verf_loc="/wrk-kappa/group/spacephysics/analysator/CI/verification_sets" + verfset=$(ls -lth $verf_loc | grep ^d | head -n1 | grep -Po '\w+$') + if [[ -f $verf_loc/$verfset/.lockfile ]]; then + echo -e ".lockfile found in $verf_loc/$verfset, not running test, as the verification set generation is likely still ongoing\n Check ongoing actions and/or re-run verification set generation." + exit 1 + fi + export DIFFRESULT=$(python ./testpackage/testpackage_get_diff.py ${{ github.base_ref }}) + if [[ -f diff_log.txt ]]; then + cat diff_log.txt + fi echo "DIFFRESULT=$DIFFRESULT" >> $GITHUB_OUTPUT - echo "$DIFFRESULT" + echo "Running $DIFFRESULT" sbatch -W -o testpackage_run.txt --job-name gen_plots ./testpackage/run_testpackage_workflow.sh $DIFFRESULT cat testpackage_run.txt diff --git a/.github/workflows/test_compare_images_full.yml b/.github/workflows/test_compare_images_full.yml index 9b26d7f2..1e92dac7 100644 --- a/.github/workflows/test_compare_images_full.yml +++ b/.github/workflows/test_compare_images_full.yml @@ -1,15 +1,14 @@ -# This workflow will install Python dependencies, run tests and lint with a variety of Python versions -# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python +#This workflow will install python and run the full analysator testpackage with image comparison for the results name: Turso compare all images on: + push: + branches: [ master, dev] + schedule: + - cron: '0 8 * * MON' workflow_dispatch: -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: ${{ github.event_name == 'pull_request' }} - jobs: @@ -21,7 +20,7 @@ jobs: fail-fast: false max-parallel: 2 matrix: - extras: ["all"] + extras: ["testpackage"] steps: - uses: actions/checkout@v4 timeout-minutes: 5 @@ -44,7 +43,12 @@ jobs: export TMPDIR=$RUNNER_TEMP module purge module load Python/3.10.4-GCCcore-11.3.0 - + verf_loc="/wrk-kappa/group/spacephysics/analysator/CI/verification_sets" + verfset=$(ls -lth $verf_loc | grep ^d | head -n1 | grep -Po '\w+$') + if [[ -f $verf_loc/$verfset/.lockfile ]]; then + echo -e ".lockfile found in $verf_loc/$verfset, not running test, as the verification set generation is likely still ongoing\n Check ongoing actions and/or re-run verification set generation." + exit 1 + fi sbatch -W -o testpackage_run.txt --job-name gen_plots ./testpackage/run_testpackage_workflow.sh cat testpackage_run.txt diff --git a/.github/workflows/test_python_turso.yml b/.github/workflows/test_python_turso.yml index 779bacbf..de943928 100644 --- a/.github/workflows/test_python_turso.yml +++ b/.github/workflows/test_python_turso.yml @@ -23,9 +23,12 @@ jobs: extras: ["none", "all", "bvtk"] steps: - uses: actions/checkout@v4 + timeout-minutes: 5 - name: Install uv uses: astral-sh/setup-uv@v6 + timeout-minutes: 5 - name: Install dependencies + timeout-minutes: 5 run: | export TMPDIR=$RUNNER_TEMP uv venv CI_env diff --git a/analysator/pyPlots/plot_vdf.py b/analysator/pyPlots/plot_vdf.py index 0a3412e3..9273244e 100644 --- a/analysator/pyPlots/plot_vdf.py +++ b/analysator/pyPlots/plot_vdf.py @@ -427,7 +427,7 @@ def plot_vdf(filename=None, biglabel=None, biglabloc=None, noxlabels=None, noylabels=None, axes=None, cbaxes=None, cb_horizontal=False, - contours=None + contours=None,figsize=None ): ''' Plots a coloured 2D plot of a VDF (a slice of given thickness or fully projected) with axes and a colour bar. @@ -521,7 +521,7 @@ def plot_vdf(filename=None, :kword scale_cb: Colour bar text additional scale factor (default=5.0) :kword scale_label: Big label text additional scale factor (default=12.0) :kword thick: line and axis thickness, default=1.0 - + :kword figsize: Set figure size, default=None which will use [4.0,3.15*ratio] :returns: Outputs an image to a file or to the screen. @@ -1080,15 +1080,21 @@ def plot_vdf(filename=None, # Define figure size ratio = (yvalsrange[1]-yvalsrange[0])/(xvalsrange[1]-xvalsrange[0]) # default for square figure is figsize=[4.0,3.15] - figsize = [4.0,3.15*ratio] # Plot the slice [XmeshXY,YmeshXY] = np.meshgrid(edgesX/velUnit,edgesY/velUnit) # Generates the mesh to map the data to if axes is None: - # Create 300 dpi image of suitable size - fig = plt.figure(figsize=figsize,dpi=300) + if figsize is not None: + + if noborder: + logging.warning("noborder and figsize enabled, this may undo effects of figsize") + fig = plt.figure(figsize=figsize,dpi=300) + else: + # Create 300 dpi image of suitable size + fig = plt.figure(figsize=[4.0,3.15*ratio] ,dpi=300) ax1 = plt.gca() # get current axes + else: ax1=axes fig1 = ax1.pcolormesh(XmeshXY,YmeshXY,binsXY, cmap=colormap,norm=norm) @@ -1176,8 +1182,7 @@ def plot_vdf(filename=None, elif biglabloc==3: BLcoords=[0.02,0.02] BLha = "left" - BLva = "bottom" - + BLva = "bottom" plt.text(BLcoords[0],BLcoords[1],biglabel, fontsize=fontsize4,weight='black', transform=ax1.transAxes, ha=BLha, va=BLva,color='k',bbox=dict(facecolor='white', alpha=0.5, edgecolor=None)) @@ -1295,6 +1300,9 @@ def plot_vdf(filename=None, plt.tight_layout() savefig_pad=0.05 # The default is 0.1 bbox_inches=None + elif figsize is not None: + savefig_pad=0.05 + bbox_inches=None else: plt.tight_layout(pad=0.01) savefig_pad=0.01 diff --git a/pyproject.toml b/pyproject.toml index efe3dc98..5da7dfc5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -39,7 +39,10 @@ all = [ bvtk = [ "vtk==9.2.6", ] - +testpackage = [ + "opencv-python", + "analysator[vtk]", +] [project.urls] Homepage = "https://github.com/fmihpc/analysator" Issues = "https://github.com/fmihpc/analysator/issues" diff --git a/testpackage/create_env.py b/testpackage/create_env.py new file mode 100644 index 00000000..c48ca030 --- /dev/null +++ b/testpackage/create_env.py @@ -0,0 +1,90 @@ +import os +import venv +from testpackage_helpers import system_call +from sys import version_info as python_version_info +from sys import version as python_version +import argparse + +def create_venv(path,install_analysator=True,editable=False): + virt_env= venv.EnvBuilder(with_pip=True,upgrade_deps=True) + context=virt_env.ensure_directories(path) + virt_env.create(path) + virt_env.setup_python(context) + + #Does not work in python versions <3.13 + if python_version_info.major>=3 and python_version_info.minor>=13: + virt_env.create_git_ignore_file(context) + + virt_env.create_configuration(context) + virt_env.setup_scripts(context) + virt_env.post_setup(context) + if install_analysator: + editable='--editable' if editable else None + system_call(f'{path}/bin/pip install {editable} ../[testpackage]',live_output=True) + print(f'Virtual environment created at {path}') + return None + + +def create_venv_script(path,venv_path): + if path[-1]!="/": + path=path+"/" + + if not os.path.isdir(path): + raise FileNotFoundError(f"{path} does not exist.") + + if os.path.isfile(path+"pyvenv.sh"): + #If file exists, check for source line and add one if not present + with open(path+"pyvenv.sh","a+") as f: + f.seek(0) + for line in f: + if "source" in line[:6]: + raise SystemError("source line already in pyvenv.sh!") + + f.write(f"source {venv_path}/bin/activate\n") + f.close() + else: + #Create the file with the source line + with open(path+"pyvenv.sh","w") as f: + f.write("module purge\n") + if 'TURSO' in os.uname().nodename.upper(): + f.write("export PATH=/wrk-vakka/group/spacephysics/proj/appl/tex-basic/texlive/2023/bin/x86_64-linux:$PATH\n") + + #Get used python version and gcc version + #note that this may break if the version string format changes + #Module load of python is required, otherwise python cannot be called outside the directory the venv is in (if the module system is used) + version_info = python_version.split(" ") + used_python_version = version_info[0] + used_gcc_version = version_info[-1].strip("[]") + + #If module system is used, on HILE use cray-python! + if 'HILE' in os.uname().nodename.upper(): + f.write("module load cray-python\n") + else: + f.write(f"module load Python/{used_python_version}-GCCcore-{used_gcc_version}\n") + f.write("module list\n") + f.write(f"source {venv_path}/bin/activate\n") + + f.close() + + +if __name__ == "__main__": + #Will install python venv with same version as the python this script was called with + + create_venv_local = True #Create a virtual environment in the current folder (should be in testpackage folder) + + parser=argparse.ArgumentParser(description='Create python virtual environment for testpackage, will also create batch script that can be sourced.') + parser.add_argument('--no-analysator',action='store_true',help='Do not install analysator.',default=False) + parser.add_argument('--editable','-e',action='store_true',help='Install analysator as editable',default=True) + args=parser.parse_args() + + venv_name= 'venv_testpackage' + venv_path = os.path.abspath('./'+venv_name) + if venv_name not in os.listdir('.') and create_venv_local: + print('venv_testpackage not found, creating virtual environment') + create_venv(venv_path,editable=args.editable,install_analysator=not args.no_analysator) + create_venv_script('./',venv_path) + else: + print('venv_testpackage found, not creating virtual environment') + + + diff --git a/testpackage/run_compare.sh b/testpackage/run_compare.sh new file mode 100755 index 00000000..dd3a15f9 --- /dev/null +++ b/testpackage/run_compare.sh @@ -0,0 +1,59 @@ +#!/bin/bash -l +#SBATCH -t 00:30:00 +#SBATCH -J analysator_testpackage_compare +#SBATCH --constraint="ukko|carrington" +#SBATCH -p short +#SBATCH -n 1 +#SBATCH --array=1-10 +#SBATCH --no-requeue +#SBATCH --mem-per-cpu=16000 + + +#THIS SHOULD ONLY BE USED FOR GITHUB WORKFLOW TESTS +jobcount=$(( $SLURM_ARRAY_TASK_MAX - $SLURM_ARRAY_TASK_MIN + 1 )) +index=$(( $SLURM_ARRAY_TASK_ID - $SLURM_ARRAY_TASK_MIN )) + +hostname + +module purge +module load Python/3.10.4-GCCcore-11.3.0 +source CI_env/bin/activate +module load libglvnd/1.7.0-GCCcore-13.3.0 +module list + +verf_loc="/wrk-kappa/group/spacephysics/analysator/CI/verification_sets" + +#if pass we do not check for anything +if echo $@ | grep -q -P "\spass$|\spass\s|pass"; then + exit 0 +fi + +check=true + +#gets latest verfication set (based on modification date -> grep directories only -> take firstline -> get last word) +verfset=$(ls -lth $verf_loc | grep ^d | head -n1 | grep -Po '\w+$') + +if [[ -f $verf_loc/$verfset/.lockfile ]]; then + echo ".lockfile found in $verf_loc/$verfset, not comparing, something probably went wrong removing the lockfile" + exit 1 +fi +echo "Comparing against $verfset" +#Note that this is skipped if no arguments are passed +for i in $@ +do + check=false + echo "Comparing for $i" + folder_1="$verf_loc/$verfset/$i/" + folder_2="${PWD}/produced_plots/$i/" + python3 ./testpackage/testpackage_compare.py ${folder_1} ${folder_2} $jobcount $index && echo "No differences found in produced images" + echo "EXIT_CODE_FROM_JOB $?" +done + +if $check; +then + echo "Comparing all" + folder_1="$verf_loc/$verfset/" + folder_2="${PWD}/produced_plots/" + python3 ./testpackage/testpackage_compare.py ${folder_1} ${folder_2} $jobcount $index && echo "No differences found in produced images" + echo "EXIT_CODE_FROM_JOB $?" +fi diff --git a/testpackage/run_testpackage_colormap.sh b/testpackage/run_testpackage_colormap.sh deleted file mode 100644 index 274926db..00000000 --- a/testpackage/run_testpackage_colormap.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -l -#SBATCH -t 00:30:00 -#SBATCH -J analysator_testpackage -#SBATCH -p short -#SBATCH -n 1 -#SBATCH --array=0-20 -#SBATCH --no-requeue -#SBATCH --mem-per-cpu=16000 - -jobcount=$(( $SLURM_ARRAY_TASK_MAX - $SLURM_ARRAY_TASK_MIN + 1 )) -index=$(( $SLURM_ARRAY_TASK_ID - $SLURM_ARRAY_TASK_MIN )) - -hostname -source /wrk-vakka/group/spacephysics/proj/analysator_testpackage/pyvenv.sh - -export PTNONINTERACTIVE=1 -export PTOUTPUTDIR=$PWD/ - -python testpackage_colormap.py $jobcount $index -echo Job $SLURM_ARRAY_TASK_ID complete. diff --git a/testpackage/run_testpackage_generate_verf_set.sh b/testpackage/run_testpackage_generate_verf_set.sh new file mode 100644 index 00000000..39f274b9 --- /dev/null +++ b/testpackage/run_testpackage_generate_verf_set.sh @@ -0,0 +1,26 @@ +#!/bin/bash -l +#SBATCH -t 00:60:00 +#SBATCH -J analysator_testpackage +#SBATCH -p short +#SBATCH -n 1 +#SBATCH --array=0-10 +#SBATCH --constraint="carrington|ukko" +#SBATCH --no-requeue +#SBATCH --mem-per-cpu=16000 + +jobcount=$(( $SLURM_ARRAY_TASK_MAX - $SLURM_ARRAY_TASK_MIN + 1 )) +index=$(( $SLURM_ARRAY_TASK_ID - $SLURM_ARRAY_TASK_MIN )) + +hostname + +source CI_env/bin/activate +export PATH=/wrk-vakka/group/spacephysics/proj/appl/tex-basic/texlive/2023/bin/x86_64-linux:$PATH + +export PTNONINTERACTIVE=1 +export PTOUTPUTDIR=$1 + +python ./testpackage/testpackage_commons.py $jobcount $index + +echo "EXIT_CODE_FROM_JOB $?" + + diff --git a/testpackage/run_testpackage_vdf.sh b/testpackage/run_testpackage_vdf.sh deleted file mode 100644 index c6897a82..00000000 --- a/testpackage/run_testpackage_vdf.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -l -#SBATCH -t 00:20:00 -#SBATCH -J analysator_testpackage_vdf -#SBATCH -p short -#SBATCH -M carrington -#SBATCH -n 1 -#SBATCH --array=1 -#SBATCH --no-requeue -#SBATCH --mem-per-cpu=16000 - -jobcount=$(( $SLURM_ARRAY_TASK_MAX - $SLURM_ARRAY_TASK_MIN + 1 )) -index=$(( $SLURM_ARRAY_TASK_ID - $SLURM_ARRAY_TASK_MIN )) - -source /wrk-vakka/group/spacephysics/proj/analysator_testpackage/pyvenv.sh - -export PTNONINTERACTIVE=1 -export PTOUTPUTDIR=$PWD/ - -python testpackage_vdf.py $jobcount $index -echo Job $SLURM_ARRAY_TASK_ID complete. diff --git a/testpackage/run_testpackage_workflow.sh b/testpackage/run_testpackage_workflow.sh new file mode 100755 index 00000000..9eaa6e96 --- /dev/null +++ b/testpackage/run_testpackage_workflow.sh @@ -0,0 +1,37 @@ +#!/bin/bash -l +#SBATCH -t 00:45:00 +#SBATCH -J analysator_testpackage +#SBATCH --constraint="carrington|ukko" +#SBATCH -p short +#SBATCH -n 1 +#SBATCH --array=1-20 +#SBATCH --no-requeue +#SBATCH --mem-per-cpu=64000 + + +#THIS SHOULD ONLY BE USED FOR GITHUB WORKFLOW TESTS +jobcount=$(( $SLURM_ARRAY_TASK_MAX - $SLURM_ARRAY_TASK_MIN + 1 )) +index=$(( $SLURM_ARRAY_TASK_ID - $SLURM_ARRAY_TASK_MIN )) + + +hostname + + +module purge +export PATH=/wrk-vakka/group/spacephysics/proj/appl/tex-basic/texlive/2023/bin/x86_64-linux:$PATH + +echo "SLURM_JOB_ID=$SLURM_ARRAY_JOB_ID" >> $GITHUB_OUTPUT +module load Python/3.10.4-GCCcore-11.3.0 +source CI_env/bin/activate + +module list + +mkdir -p $PWD/produced_plots/ + +export PTNONINTERACTIVE=1 +export PTOUTPUTDIR=$PWD/produced_plots/ + + + +python ./testpackage/testpackage_commons.py $jobcount $index $@ +echo "EXIT_CODE_FROM_JOB $?" diff --git a/testpackage/testpackage_commons.py b/testpackage/testpackage_commons.py new file mode 100644 index 00000000..c883cc4b --- /dev/null +++ b/testpackage/testpackage_commons.py @@ -0,0 +1,467 @@ +import analysator as pt +import os +import traceback +import argparse +from testpackage_helpers import call_replace + +def source_file_name(filename,fileLocation,time): + if filename is None: + if '2D' not in fileLocation: + bulkname = "bulk1."+str(time).rjust(7,'0')+".vlsv" + + else: + bulkname = "bulk."+str(time).rjust(7,'0')+".vlsv" + else: + bulkname=filename + return bulkname + + + +argp=argparse.ArgumentParser( + prog='Analysator Testpackage', + description='Outputs test plots' +) +argp.add_argument("jobcount",type=int) +argp.add_argument("jobindex",type=int) + +argp.add_argument('funcs',type=str,help="function/list of functions to test, if none give does all.",nargs='*') +cmd_args=argp.parse_args() +funcs_to_use=cmd_args.funcs +if "pass" in funcs_to_use: + print("No significant changes made, the testpackage will not be run!") + quit() + +datalocation = "/wrk-kappa/group/spacephysics/analysator/CI/analysator-test-data/vlasiator" +runs = [] + + +runs.append( { 'name': 'ABC', + 'verifydir': '/ABC/', + 'fileLocation': datalocation+'/2D/ABC/bulk/', + 'fluxLocation': datalocation+'/2D/ABC/flux/', + 'skipped_args':{'plot_vdf':{'step':''}, + 'plot_vdf_profiles':{'bpara':'','bperp':'','step':''}, + 'plot_vdfdiff':{'filedir':'','bpara':'','bperp':''}}, + 'funcs': ['plot_colormap','plot_vdf','plot_vdf_profiles','plot_vdfdiff'], + 'pops': ['avgs'], + 'time': 1000, + 'singletime': False, + 'filename': None, + 'nosubpops': False, # backstreaming / non-backstreaming + 'vlasiator5': False, + 'cavitonparams': [6.6e6,2.64e6,4.e-9,10] } ) + +runs.append( { 'name': 'BED', + 'verifydir': '/BED/', + 'fluxLocation': None, + 'fileLocation': datalocation+'/2D/BED/bulk/', + 'pops': ['avgs'], + 'time': 2000, + 'singletime':True, + 'nosubpops': False, # backstreaming / non-backstreaming + 'vlasiator5': False, + 'skipped_args':{'plot_vdf_profiles':{'bpara':'','bperp':'','step':''}}, + 'funcs': ['plot_vdf','plot_vdf_profiles'], + 'filename': None , + 'cavitonparams': [6.6e6,2.64e6,4.e-9,10] + }) + +runs.append( { 'name': 'FID', + 'verifydir': '/FID/', + 'fileLocation': datalocation+'/3D/FID/bulk1/', + 'fluxLocation': None, + 'funcs': ['plot_colormap3dslice','plot_ionosphere','plot_isosurface'], + 'pops': ['avgs'], + 'time': 1000, + 'skipped_args':{'plot_ionosphere':{"var":["ig_z","ig_p","ig_source","ig_residual"]}, + 'ALL':{'expression':''}}, #ig_zz and ig_pp is also skipped on purpose + 'singletime': False, + 'filename': None, #restart file + 'nosubpops': True, # backstreaming / non-backstreaming + 'vlasiator5': True, + 'cavitonparams': [6.6e6,2.64e6,4.e-9,10] } ) + +runs.append( { 'name': 'FHA', + 'verifydir': '/FHA/', + 'fileLocation': datalocation+'/3D/FHA/bulk1/', + 'fluxLocation': None, + 'funcs': ['plot_colormap3dslice','plot_ionosphere','plot_isosurface','plot_vdf','plot_vdfdiff'], + 'pops': ['avgs'], + 'time': 1000, + 'skipped_args':{'ALL':{'expression':''}}, + 'singletime': False, + 'filename': None, #restart file + 'nosubpops': True, # backstreaming / non-backstreaming + 'vlasiator5': True, + 'cavitonparams': [6.6e6,2.64e6,4.e-9,10] } ) + +runs.append( { 'name': 'BCQ', + 'verifydir': '/BCQ/', + 'fileLocation': datalocation+'/2D/BCQ/bulk/', + 'fluxLocation': None, + 'singletime': False, + 'pops': ['avgs'], + 'funcs': ['plot_colormap','plot_vdf','plot_vdf_profiles','plot_vdfdiff'], + 'time': 2000, + 'skipped_args':{'plot_vdf_profiles':{'bpara':'','bperp':'','step':''}}, + 'filename': None, + 'vlasiator5':False, + 'nosubpops':False, + 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] + } ) + +runs.append( { 'name': 'BCQr', + 'verifydir': '/BCQr/', + 'funcs': ['plot_vdf','plot_vdf_profiles'], + 'fileLocation': datalocation+'/2D/BCQ/restart/', + 'pops': ['avgs'], + 'fluxLocation': None, + 'singletime': True, # neighboring bulk files not available + 'time': 1361, + 'skipped_args':{'plot_vdf':{'step':''}}, + 'vlasiator5': False, + 'nosubpops': False, # thermal / non-thermal + 'filename': 'restart.0001361.vlsv', + 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) + +runs.append( { 'name': 'BGA', + 'verifydir': '/BGA/', + 'fileLocation': datalocation+'/2D/BGA/zero_ehall_layers_23/', + 'fluxLocation': None, + 'funcs': ['plot_colormap','plot_vdf','plot_vdf_profiles','plot_vdfdiff'], + 'pops': ['proton'], + 'skipped_args':None, + 'time': 380, + 'singletime': True, # neighboring bulk files not available + 'filename': None, + 'vlasiator5': True, + 'nosubpops': True, # thermal / non-thermal + 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) + + + +runs.append( { 'name': 'BFDr', + 'verifydir': '/BFDr/', + 'funcs': ['plot_vdf'], + 'fileLocation': datalocation+'/2D/BFD/restart/', + 'pops': ['avgs'], + 'fluxLocation': None, + 'singletime': True, # neighboring bulk files not available + 'time': 1126, + 'skipped_args':{'plot_vdf':{'step':''}}, + 'nosubpops': False, # thermal / non-thermal + 'vlasiator5': False, + 'filename': 'restart.0001126.vlsv', + 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) + +runs.append( { 'name': 'BFD', + 'verifydir': '/BFD/', + 'fileLocation': datalocation+'/2D/BFD/bulk/', + 'fluxLocation': datalocation+'/2D/BFD/fluxfunction/', + 'fluxprefix': 'bulk.', + 'funcs': ['plot_colormap','plot_vdf','plot_vdf_profiles'], + 'skipped_args':None, + 'pops': ['proton','helium'], + 'time': 2000, + 'singletime': False, + 'filename': None, + 'nosubpops': False, # backstreaming / non-backstreaming + 'vlasiator5': False, + 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) + +#First arg in tuple is the one that needs to be there, second etc can be there without the first +required_args = { + "plot_vdf": [ + (["coordre", "coordinates", "cellids"], ["coordre=REPLACECOORDRE"]), + ([("filedir", "step"), "vlsvobj", "filename"], None), + (["figsize"],["figsize=[5,3]"]) + ], + "plot_vdf_profiles": [ + (["coordre", "coordinates", "cellids"], ["coordre=REPLACECOORDRE"]), + ([("filedir", "step"), "vlsvobj", "filename"], None), + ], + "plot_vdfdiff": [ + (["coordre", "coordinates", "cellids"], ["coordre=REPLACECOORDRE"]), + ([("filedir", "step"), "vlsvobj", "filename"], None), + ], + "plot_isosurface": [ + ([("surf_step", "surf_var")], ["surf_step=10", "surf_var='vg_rho'"]), + ([("filedir", "step"), "vlsvobj", "filename"], None), + ], +} + +calls = [] +callrunids = [] +callrunindex = [] +funcids=[] +list_inidices=[] #list of tuples, first value is 0,1,2 corresponding whether restart/non/multipotcall (used for indexing files) +#here so lint doesnt complain +restartcalls=None +nonrestartcalls=None +multipopcalls=None +v5restartcalls=None +v5nonrestartcalls=None +v5multipopcalls=None + +#Prepare the call list +for i,run in enumerate(runs): + vlasiator5 = run['vlasiator5'] + filename = run['filename'] + fileLocation = run['fileLocation'] + singletime = run['singletime'] + nosubpops = run['nosubpops'] + fluxLocation = run['fluxLocation'] + if not funcs_to_use: + functions = run['funcs'] + + else: + functions = sorted(list(set(run['funcs']) & set(funcs_to_use))) + if not functions: + continue + + + for j,func in enumerate(functions): + #If one wants to test new calls to be added to the testpackage, they could be added in here after the testpackage_definitions/ lists have been parsed + callindex = 0 + + #try to import the list of calls corresponding to the function to be tested. + try: + exec(f'import testpackage_definitions.testpackage_{func} as testpackage_{func}') + except Exception as e: + raise IOError(f"testpackage_{func} could not be imported, check that the file exists and is in the correct folder! \n Error message:"+str(e)) + + + #Get the list of calls from the imported file, set list to empty list if list not foud in the file + for call_list in ["restartcalls","nonrestartcalls","multipopcalls","v5restartcalls","v5nonrestartcalls","v5multipopcalls"]: + try: + exec(f'{call_list}=testpackage_{func}.{call_list}') + except Exception: + exec(f'{call_list}=[]') + + skipped_args=run['skipped_args'] + + + if filename is not None: + calls_in=v5restartcalls if vlasiator5 else restartcalls + list_index=0 + for call in calls_in: + if vlasiator5: + call = call.replace("var='vg_v'","var='vg_restart_v'") + else: + call = call.replace("var='V'","var='restart_V'") + if skipped_args: + call=call_replace(call,func,skipped_args,required_args) + if call is not None: + callrunids.append(i) + calls.append(call) + callrunindex.append(callindex) + callindex += 1 + list_inidices.append((0,list_index)) + list_index+=1 + funcids.append(j) + + + # non-restart files + if filename is None: + #non restart calls + calls_in=v5nonrestartcalls if vlasiator5 else nonrestartcalls + list_index=0 + for call in calls_in: + + # Skip flux function calls if no flux files + if ("fluxdir" in call or "fluxfile" in call) and fluxLocation is None: + continue + + #change the extrnal and expression calls to correct format + if f"expression=testpackage_{func}" not in call and "expression=" in call: + call=call.replace("expression=",f"expression=testpackage_{func}.cexp.") + if f"external=testpackage_{func}" not in call and "external=" in call: + call=call.replace("external=",f"external=testpackage_{func}.cexp.") + + # skip time integration if only one file available + if "pass_times" in call and singletime: + continue + # thermal / non-thermal subpopulations + if vlasiator5 and (("_thermal" in call) or ("_nonthermal" in call)) and nosubpops: + continue + elif (("_backstream" in call) or ("_nonbackstream" in call)) and nosubpops: + continue + if skipped_args: + call=call_replace(call,func,skipped_args,required_args) + if call is not None: + list_inidices.append((1,list_index)) + list_index+=1 + callrunids.append(i) + calls.append(call) + callrunindex.append(callindex) + callindex += 1 + funcids.append(j) + + + + #multipop calls + calls_in=v5multipopcalls if vlasiator5 else multipopcalls + for pop in run['pops']: + if pop != 'avgs': + list_index=0 + for call in calls_in: + # Skip flux function calls if no flux files + if "flux" in call and fluxLocation is None: + continue + # skip time integration if only one file available + if "pass_times" in call and singletime: + continue + # thermal / non-thermal subpopulations + if vlasiator5 and (("_thermal" in call) or ("_nonthermal" in call)) and nosubpops: + continue + elif (("_backstream" in call) or ("_nonbackstream" in call)) and nosubpops: + continue + call = call.replace('REPLACEPOP',pop) + if skipped_args: + call=call_replace(call,func,skipped_args,required_args) + if call is not None: + list_inidices.append((2,list_index)) + list_index+=1 + callrunids.append(i) + calls.append(call) + callrunindex.append(callindex) + callindex += 1 + funcids.append(j) + + + +nteststot = len(callrunids) + +# How many jobs? +jobcount=cmd_args.jobcount +jobcurr=cmd_args.jobindex + +increment = int(nteststot/jobcount) +remainder = nteststot - jobcount * increment +start=jobcurr * increment +end=start + increment +# Remainder frames are divvied out evenly among tasks +if jobcurr < remainder: + start = start + jobcurr + end = end + jobcurr + 1 +else: + start = start + remainder + end = end + remainder + + + +# Perform calls +for j in range(start,end): + # Calculate which run + jrun = callrunindex[j] + runid = callrunids[j] + runname = runs[runid]['name'] + + call = calls[j] + + list_index=list_inidices[j] + funcid=funcids[j] + + + if not funcs_to_use: + func = runs[runid]['funcs'][funcid] + + else: + func = sorted(list(set(runs[runid]['funcs']) & set(funcs_to_use)))[funcid] + if not func: + continue + + verifydir = func+runs[runid]['verifydir'] + + fileLocation = runs[runid]['fileLocation'] + fluxLocation = runs[runid]['fluxLocation'] + pops = runs[runid]['pops'] + time = runs[runid]['time'] + filename = runs[runid]['filename'] + vlasiator5 = runs[runid]['vlasiator5'] + singletime = runs[runid]['singletime'] + + #set custom expression variables for plot_colormap + if 'plot_colormap' in func: + exec(f"testpackage_{func}.cexp.level_bow_shock = runs[runid]['cavitonparams'][0]") + exec(f"testpackage_{func}.cexp.level_n_caviton = runs[runid]['cavitonparams'][1]") + exec(f"testpackage_{func}.cexp.level_B_caviton = runs[runid]['cavitonparams'][2]") + exec(f"testpackage_{func}.cexp.level_beta_SHFA = runs[runid]['cavitonparams'][3]") + + #Custom expression vlasiator5 toggle + if vlasiator5: + exec(f'testpackage_{func}.cexp.vlasiator5=True') + else: + exec(f'testpackage_{func}.cexp.vlasiator5=False') + + + outputLocation=os.path.join(pt.plot.defaultoutputdir,verifydir) + + + # Source data files + bulkname = source_file_name(filename,fileLocation,time) + + if 'fluxprefix' in runs[runid]: + fluxname = runs[runid]['fluxprefix']+str(time).rjust(7,'0')+".bin" + else: + fluxname = "flux."+str(time).rjust(7,'0')+".bin" + + if runs[runid]['name']=="ABC" and 'plot_vdf' in func: + fileLocation=fileLocation.replace('bulk','distributions') + bulkname = "distributions."+str(100).rjust(7,'0')+".vlsv" + time=100 + + #Special case for plot_vdfdiff, we need another .vlsv file for it + if func == 'plot_vdfdiff': + time_offset=10 + bulkname_vdfdiff = source_file_name(filename,fileLocation,time-time_offset) + call = call.replace('REPLACETIME2',"'"+str(time-time_offset)+"'") + if runs[runid]['name']=="ABC": + bulkname_vdfdiff=bulkname_vdfdiff.replace('bulk','distributions') + g = pt.vlsvfile.VlsvReader(fileLocation+bulkname_vdfdiff) + + if list_index[0] == 0: + callList_name = "_restartcall" + elif list_index[0] == 1: + callList_name = "_nonrestartcall" + elif list_index[0] == 2: + callList_name = "_multipopcall" + else: + raise ValueError( + "Something went wrong with indexing, should be 0,1 or 2, but the value of list_index[0] was " + + list_index[0] + ) + + call = call.replace('REPLACEPREVINDEX',"'"+str(list_index[1]-1).rjust(4,'0')+callList_name+"'") + call = call.replace('REPLACEINDEX',"'"+str(list_index[1]).rjust(4,'0')+callList_name+"'") + call = call.replace('REPLACETIME',"'"+str(time)+"'") + + call = call.replace('REPLACECELLID','1') + call = call.replace('REPLACECOORDRE','[10,0,0]') + call = call.replace('REPLACECOORDINATES','[6.371e7,0,0]') + call = call.replace('REPLACEMULTIPLECELLID','[1,51,101]') + call = call.replace('REPLACEMULTIPLECOORDRE','[[10,0,0],[15,0,0],[20,0,0]]') + call = call.replace('REPLACEMULTIPLECOORDINATES','[[6.371e7,0,0],[9.5565e7,0,0],[12.742e7,0,0]]') + + + # Many different plots + print(j, runid, jrun, call,fileLocation+bulkname) + f = pt.vlsvfile.VlsvReader(fileLocation+bulkname) + + try: + exec(call) + except Exception as e: + #This is here so get_job_error can get the error from the call. + # note that we could also raise the error but then execution of subsequent calls would stop + if "nooverwrite" not in call: + print("EXIT_CODE_FROM_JOB 1") + + print("::error::----------------------------\nFAILURE DURING CALL ",j, runname," \n```\n"+call+"```\n", repr(e)) + + traceback.print_exc() + print("END TRACE for call",j,"\n----------------------------") + elif "nooverwrite" in call: + #Should be same but also doesnt hurt to be exact + print("----------------------------\nNOOVERWRITE CALL SUCCESSFULLY DONE ",j, runname," \n```\n"+call+"```\n", repr(e)) + traceback.print_exc() + print("END TRACE for call",j,"\n----------------------------") diff --git a/testpackage/testpackage_compare.py b/testpackage/testpackage_compare.py new file mode 100644 index 00000000..ed66863c --- /dev/null +++ b/testpackage/testpackage_compare.py @@ -0,0 +1,114 @@ +import subprocess +from argparse import ArgumentParser +import cv2 +import numpy as np + + +def compare_images(a,b): + + im1=cv2.imread(a) + im2=cv2.imread(b) + return im1.shape == im2.shape and not(np.bitwise_xor(im1,im2).any()) + + +def compare_images_in_folders(a,b,jobcount,jobcurr): + + #do the comparisons + + cmd = f'diff -r {a} {b}' + proc = subprocess.Popen(cmd.split(" "),stdout=subprocess.PIPE,stderr=subprocess.PIPE) + out,err = proc.communicate() + different=False + #If errors, raise an exception + if err: + err = str(err,'utf-8') + raise RuntimeError(err) + + out = str(out,'utf-8') + + different_files=[] + unique_files=[] + missing_files=[] + out=out.splitlines() + + #Parse the output of diff + for line in out: + line=line.split(" ") + if line[0]=="Binary" and line[1]=="files": + different_files.append(line[2]) + elif line[0]=="Only": + if b in line[2]: + unique_files.append(line[2].rstrip(":")+'/'+line[3]) + else: + missing_files.append(line[2].rstrip(":")+'/'+line[3]) + + + nteststot = len(different_files) + increment = int(nteststot/jobcount) + remainder = nteststot - jobcount * increment + start=jobcurr * increment + end=start + increment + # Remainder frames are divvied out evenly among tasks + if jobcurr < remainder: + start = start + jobcurr + end = end + jobcurr + 1 + else: + start = start + remainder + end = end + remainder + + + + #Feed the different files to compare_images + + for file in different_files[start:end]: + try: + if(not compare_images(file,file.replace(a,b))): + different=True + print("Images differ:",file,file.replace(a,b)) + except Exception as e: + raise SystemError(f"Error calling compare_images({file},{file.replace(a,b)}):"+str(e)) + + + #Print unique and missing files + if jobcurr==0: + for file in unique_files: + print("Unique file:",file) + for file in missing_files: + print("Missing file:",file) + + + if len(unique_files)!=0: + print("::warning::Found new file(s) produced by the code!") + + if len(missing_files)!=0: + raise SystemError("Found file(s) **not** produced by the code!") + + + if different: + print(f"::error title=Plot(s) differ::Produced plots not in agreement with the verfication set {a}") + raise SystemError("Images Differ") + + + +if __name__=='__main__': + + #Parse arguments + parser = ArgumentParser(prog="Image compare" + ,description="Compares images in two folders/images, and outputs the different ones to a specified output folder. Note that folders must have the same structure and filenames, otherwise these files are treated as unique." + ) + + parser.add_argument("folder_a",help="First folder/image to compare") + parser.add_argument("folder_b",help="Second folder/image to compare") + + parser.add_argument("jobcount",help="Number of parallel jobs to use",default=1,nargs='?',type=int) + parser.add_argument("jobindex",help="Index of the job to run",default=0,nargs='?',type=int) + + + args= parser.parse_args() + a,b = args.folder_a,args.folder_b + + jobcount=args.jobcount + jobindex=args.jobindex + + compare_images_in_folders(a,b,jobcount,jobindex) + diff --git a/testpackage/testpackage_custom_expr.py b/testpackage/testpackage_custom_expr.py new file mode 100644 index 00000000..ae1f31c1 --- /dev/null +++ b/testpackage/testpackage_custom_expr.py @@ -0,0 +1,189 @@ +import numpy as np + +vlasiator5=None +level_bow_shock = None +level_n_caviton = None +level_B_caviton = None +level_beta_SHFA = None + + + +# Custom expression function +def exprMA_cust(exprmaps, requestvariables=False): + if vlasiator5 is True: + reqs = ['vg_va'] + else: + reqs = ['va'] + if requestvariables==True: + return reqs + # exprmaps is a dictionary of numpy arrays + # Each array has 2 dimensions [xsize, ysize] + # or 3 dimensions [xsize, ysize, components] + # here the function returns the M_A with a preset bulk velocity + custombulkspeed=1500000. # m/s + va = exprmaps[reqs[0]][:,:] + MA = np.ma.divide(custombulkspeed,va) + return MA + +# Second example of a more involved custom expression function +def expr_cav_cust(pass_maps, requestvariables=False): + if vlasiator5 is True: + reqs= ['vg_rho','vg_b_vol','vg_beta'] + else: + reqs= ['rho', 'B', 'beta'] + if requestvariables==True: + return reqs + # pass_maps is a dictionary of numpy arrays + # Each array has 2 dimensions [ysize, xsize] + # or 3 dimensions [ysize, xsize, components] + + # for time averaging, it's a list of dictionaries + # Each dictionary contains an entry called 'dstep' + # Which contains the relative time step position, i.e. + # a value of 0 indicates no time offset. + + # This custom expression returns a map with values of + # either 0 (solar wind), 0.5 (caviton), or 1.0 (SHFA), calculated against + # time-averaged background values. This version doesn't do intelligent checks for the + # format of the incoming data. + if type(pass_maps) is not list: + # Not a list of time steps, calculating this value does not make sense. + print("expr_cav_cust expected a list of timesteps to average from, but got a single timestep. Exiting.") + quit() + + # Multiple time steps were found + ntimes = len(pass_maps) + dsteps = [x['dstep'] for x in pass_maps] + curri = dsteps.index(0) + thesemaps = pass_maps[curri] + + thisrho = np.ma.masked_less_equal(thesemaps[reqs[0]][:,:], 0) + thisB = np.ma.masked_less_equal(thesemaps[reqs[1]],0) + thisbeta = np.ma.masked_less_equal(thesemaps[reqs[2]],0) + thisBmag = np.linalg.norm(thisB, axis=-1) + + avgrho = np.zeros(np.array(thisrho.shape)) + avgBmag = np.zeros(np.array(thisrho.shape)) + # avgbeta = np.zeros(np.array(thisrho.shape)) + + for i in range(ntimes): + if i==curri: # Exclude current frame from background value averaging + continue + nowmaps = pass_maps[i] + print(nowmaps['dstep']) + avgrho = np.add(avgrho, nowmaps[reqs[0]]) + avgBcalc = np.linalg.norm(nowmaps[reqs[1]], axis=-1) + avgBmag = np.add(avgBmag, avgBcalc) + # avgbeta = np.add(avgbeta, nowmaps[2]) + + avgrho = np.divide(np.ma.masked_less_equal(avgrho,0), np.array([ntimes-1])) + avgBmag = np.divide(np.ma.masked_less_equal(avgBmag,0), np.array([ntimes-1])) + #avgbeta = np.divide(np.ma.masked_less_equal(avgbeta,0), np.array([ntimes-1])) + + rhoratio = np.ma.divide(thisrho, avgrho) + Bmagratio = np.ma.divide(thisBmag, avgBmag) + #betaratio = np.divide(thisbeta, avgbeta) + + rhoratioreq = 0.9 + bmagratioreq = 0.9 + betashfareq = level_beta_SHFA + + # Calculations using masked arrays proved problematic so a less-than elegant method is used here. + empty = np.zeros(np.array(thisrho.shape))+0.0 + half = empty + 0.5 + one = empty + 1.0 + + caviton=np.zeros(empty.shape,dtype='float64') + np.add(empty, one,out=caviton, where=(rhoratiobetashfareq)) + print("sum of SHFA ",shfa.sum()) + + combo=np.zeros(empty.shape,dtype='float64') + np.add(empty, half,out=combo,where=(cavitonbmag>1.5)) + print("sum of combo ",combo.sum()) + combo2=np.zeros(empty.shape,dtype='float64') + combo2 = np.add(empty, half,out=combo2, where=(shfa>2.5)) + print("sum of combo2 ",combo2.sum()) + combo3 = combo+combo2 + print("sum of combo3 ",combo3.sum()) + + # Mask out anything that is inside the bow shock + combo3 = np.ma.masked_where(thisrho>level_bow_shock, combo3) + print("sum of combo3 upstream ",combo3.sum()) + + return combo3 + + +# Second example of a more involved custom expression function +def timesmooth(pass_maps): + # pass_maps is a dictionary of numpy arrays + # Each array has 2 dimensions [ysize, xsize] + # or 3 dimensions [ysize, xsize, components] + + # for time averaging, it's a list of dictionaries + # Each dictionary contains an entry called 'dstep' + # Which contains the relative time step position, i.e. + # a value of 0 indicates no time offset. + + # consists of a single [ysize,xsize] array to smooth over time + + if type(pass_maps) is not list: + # Not a list of time steps, calculating this value does not make sense. + print("timesmooth expected a list of timesteps to average from, but got a single timestep. Exiting.") + quit() + ntimes = len(pass_maps) + print("this many time steps ",ntimes) + # Select first valid variable + listofkeys = iter(pass_maps[0]) + while True: + var = next(listofkeys) + if var!="dstep": break + + # Multiple time steps were found + avg = np.zeros(pass_maps[0][var].shape) + for i in range(ntimes): + avg = np.add(avg, pass_maps[i][var]) + return np.divide(avg, np.array([ntimes])) + +# Helper function for drawing on existing panel +def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): + if vlasiator5 is True: + reqs= ['vg_rho','vg_b_vol','vg_beta'] + else: + reqs= ['rho', 'B', 'beta'] + if requestvariables==True: + return reqs + + rho = extmaps[reqs[0]] + beta = extmaps[reqs[2]] + # take magnitude of B + B = np.linalg.norm(extmaps[reqs[1]],axis=-1) + + # Colours to use + color_cavitons = '#924900' + color_SHFAs = '#B66DFF' + color_BS = '#FFFF6D' + + # mask cavitons + cavitons = np.ma.masked_greater_equal(B,level_B_caviton) + cavitons.mask[rho > level_n_caviton] = True + cavitons.fill_value = 0. + cavitons[cavitons.mask == False] = 1. + + # mask SHFAs + SHFAs = np.ma.masked_greater_equal(B,level_B_caviton) + SHFAs.mask[rho > level_n_caviton] = True + SHFAs.mask[beta < level_beta_SHFA] = True + SHFAs.fill_value = 0. + SHFAs[SHFAs.mask == False] = 1. + + # draw contours + contour_shock = ax.contour(XmeshXY,YmeshXY,rho,[level_bow_shock], + linewidths=1.2, colors=color_BS) + contour_cavitons = ax.contour(XmeshXY,YmeshXY,cavitons.filled(),[0.5], linewidths=1.5, colors=color_cavitons) + contour_SHFAs = ax.contour(XmeshXY,YmeshXY,SHFAs.filled(),[0.5], linewidths=1.5, colors=color_SHFAs) diff --git a/testpackage/testpackage_colormap.py b/testpackage/testpackage_definitions/testpackage_plot_colormap.py similarity index 70% rename from testpackage/testpackage_colormap.py rename to testpackage/testpackage_definitions/testpackage_plot_colormap.py index 84832bcf..13ad2491 100644 --- a/testpackage/testpackage_colormap.py +++ b/testpackage/testpackage_definitions/testpackage_plot_colormap.py @@ -1,283 +1,16 @@ -import analysator as pt -import sys, os -import numpy as np -import traceback - -datalocation = "/wrk/group/spacephysics/vlasiator" -runs = [] -runs.append( { 'name': 'ABC', - 'verifydir': 'testpackage_colormap/ABC/', - 'fileLocation': datalocation+'/2D/ABC/bulk/', - 'fluxLocation': datalocation+'/2D/ABC/flux/', - 'pops': ['avgs'], - 'time': 1000, - 'singletime': False, - 'filename': None, - 'nosubpops': False, # backstreaming / non-backstreaming - 'vlasiator5': False, - 'cavitonparams': [6.6e6,2.64e6,4.e-9,10] } ) -runs.append( { 'name': 'BCQ', - 'verifydir': 'testpackage_colormap/BCQ/', - 'fileLocation': datalocation+'/2D/BCQ/bulk/', - 'fluxLocation': None, #datalocation+'/2D/BCQ/flux/', # missing on Vorna - 'pops': ['avgs'], - 'time': 2000, - 'singletime': False, - 'filename': None, - 'nosubpops': False, # backstreaming / non-backstreaming - 'vlasiator5': False, - 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) -runs.append( { 'name': 'BFD', - 'verifydir': 'testpackage_colormap/BFD/', - 'fileLocation': datalocation+'/2D/BFD/bulk/', - 'fluxLocation': datalocation+'/2D/BFD/fluxfunction/', - 'fluxprefix': 'bulk.', - 'pops': ['proton','helium'], - 'time': 2000, - 'singletime': False, - 'filename': None, - 'nosubpops': False, # backstreaming / non-backstreaming - 'vlasiator5': False, - 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) -# runs.append( { 'name': 'BCQr', -# 'verifydir': 'testpackage_colormap/BCQr/', -# 'fileLocation': datalocation+'/2D/BCQ/', -# 'fluxLocation': None, -# 'pops': ['avgs'], -# 'time': 0, -# 'singletime': False, -# 'filename': 'restart.0001361.vlsv', -# 'nosubpops': False, # backstreaming / non-backstreaming -# 'vlasiator5': False, -# 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) -# runs.append( { 'name': 'AFC', -# 'verifydir': 'testpackage_colormap/AFC/', -# 'fileLocation': datalocation+'/2D/AFC/production_halfres/', -# 'fluxLocation': datalocation+'/2D/AFC/production_halfres/flux/', -# 'pops': ['proton'], -# 'time': 1000, -# 'singletime': False, -# 'filename': None, -# 'nosubpops': False, # backstreaming / non-backstreaming -# 'vlasiator5': False, -# 'cavitonparams': [24.0e6,9.6e6,11.27e-9,10] } ) -# runs.append( { 'name': 'AFCr', -# 'verifydir': 'testpackage_colormap/AFCr/', -# 'fileLocation': datalocation+'/2D/AFC/production_halfres/', -# 'fluxLocation': None, -# 'pops': ['proton'], -# 'time': 0, -# 'singletime': False, -# 'filename': 'restart.0000592.2019-04-19_07-58-12.vlsv', -# 'nosubpops': False, # backstreaming / non-backstreaming -# 'vlasiator5': False, -# 'cavitonparams': [24.0e6,9.6e6,11.27e-9,10] } ) -# runs.append( { 'name': 'BFDr', -# 'verifydir': 'testpackage_colormap/BFDr/', -# 'fileLocation': datalocation+'/2D/BFD/restart/', -# 'fluxLocation': None, -# 'pops': ['avgs'], -# 'time': 0, -# 'singletime': False, -# 'filename': 'restart.0001126.2018-06-03_21-34-16.vlsv', -# 'nosubpops': False, # backstreaming / non-backstreaming -# 'vlasiator5': False, -# 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) -runs.append( { 'name': 'BGA', - 'verifydir': 'testpackage_colormap/BGA/', - 'fileLocation': datalocation+'/2D/BGA/zero_ehall_layers_23/', - 'fluxLocation': None, - 'pops': ['proton'], - 'time': 380, - 'singletime': True, # neighboring bulk files not available - 'filename': None, - 'vlasiator5': True, - 'nosubpops': True, # thermal / non-thermal - 'cavitonparams': [2.0e6,0.8e6,4.e-9,10] } ) - -# Custom expression function -def exprMA_cust(exprmaps, requestvariables=False): - if vlasiator5 is True: - reqs = ['vg_va'] - else: - reqs = ['va'] - if requestvariables==True: - return reqs - # exprmaps is a dictionary of numpy arrays - # Each array has 2 dimensions [xsize, ysize] - # or 3 dimensions [xsize, ysize, components] - # here the function returns the M_A with a preset bulk velocity - custombulkspeed=1500000. # m/s - va = exprmaps[reqs[0]][:,:] - MA = np.ma.divide(custombulkspeed,va) - return MA - -# Second example of a more involved custom expression function -def expr_cav_cust(pass_maps, requestvariables=False): - if vlasiator5 is True: - reqs= ['vg_rho','vg_b_vol','vg_beta'] - else: - reqs= ['rho', 'B', 'beta'] - if requestvariables==True: - return reqs - # pass_maps is a dictionary of numpy arrays - # Each array has 2 dimensions [ysize, xsize] - # or 3 dimensions [ysize, xsize, components] - - # for time averaging, it's a list of dictionaries - # Each dictionary contains an entry called 'dstep' - # Which contains the relative time step position, i.e. - # a value of 0 indicates no time offset. - - # This custom expression returns a map with values of - # either 0 (solar wind), 0.5 (caviton), or 1.0 (SHFA), calculated against - # time-averaged background values. This version doesn't do intelligent checks for the - # format of the incoming data. - if type(pass_maps) is not list: - # Not a list of time steps, calculating this value does not make sense. - raise TypeError("expr_cav_cust expected a list of timesteps to average from, but got a single timestep. Exiting.") - - - # Multiple time steps were found - ntimes = len(pass_maps) - dsteps = [x['dstep'] for x in pass_maps] - curri = dsteps.index(0) - thesemaps = pass_maps[curri] - - thisrho = np.ma.masked_less_equal(thesemaps[reqs[0]][:,:], 0) - thisB = np.ma.masked_less_equal(thesemaps[reqs[1]],0) - thisbeta = np.ma.masked_less_equal(thesemaps[reqs[2]],0) - thisBmag = np.linalg.norm(thisB, axis=-1) - - avgrho = np.zeros(np.array(thisrho.shape)) - avgBmag = np.zeros(np.array(thisrho.shape)) - # avgbeta = np.zeros(np.array(thisrho.shape)) - - for i in range(ntimes): - if i==curri: # Exclude current frame from background value averaging - continue - nowmaps = pass_maps[i] - print(nowmaps['dstep']) - avgrho = np.add(avgrho, nowmaps[reqs[0]]) - avgBcalc = np.linalg.norm(nowmaps[reqs[1]], axis=-1) - avgBmag = np.add(avgBmag, avgBcalc) - # avgbeta = np.add(avgbeta, nowmaps[2]) - - avgrho = np.divide(np.ma.masked_less_equal(avgrho,0), np.array([ntimes-1])) - avgBmag = np.divide(np.ma.masked_less_equal(avgBmag,0), np.array([ntimes-1])) - #avgbeta = np.divide(np.ma.masked_less_equal(avgbeta,0), np.array([ntimes-1])) - - rhoratio = np.ma.divide(thisrho, avgrho) - Bmagratio = np.ma.divide(thisBmag, avgBmag) - #betaratio = np.divide(thisbeta, avgbeta) - - rhoratioreq = 0.9 - bmagratioreq = 0.9 - betashfareq = level_beta_SHFA - - # Calculations using masked arrays proved problematic so a less-than elegant method is used here. - empty = np.zeros(np.array(thisrho.shape))+0.0 - half = empty + 0.5 - one = empty + 1.0 - - caviton=np.zeros(empty.shape,dtype='float64') - np.add(empty, one,out=caviton, where=(rhoratiobetashfareq)) - print("sum of SHFA ",shfa.sum()) - - combo=np.zeros(empty.shape,dtype='float64') - np.add(empty, half,out=combo,where=(cavitonbmag>1.5)) - print("sum of combo ",combo.sum()) - combo2=np.zeros(empty.shape,dtype='float64') - combo2 = np.add(empty, half,out=combo2, where=(shfa>2.5)) - print("sum of combo2 ",combo2.sum()) - combo3 = combo+combo2 - print("sum of combo3 ",combo3.sum()) - - # Mask out anything that is inside the bow shock - combo3 = np.ma.masked_where(thisrho>level_bow_shock, combo3) - print("sum of combo3 upstream ",combo3.sum()) - - return combo3 - - -# Second example of a more involved custom expression function -def timesmooth(pass_maps): - # pass_maps is a dictionary of numpy arrays - # Each array has 2 dimensions [ysize, xsize] - # or 3 dimensions [ysize, xsize, components] - - # for time averaging, it's a list of dictionaries - # Each dictionary contains an entry called 'dstep' - # Which contains the relative time step position, i.e. - # a value of 0 indicates no time offset. - - # consists of a single [ysize,xsize] array to smooth over time - - if type(pass_maps) is not list: - # Not a list of time steps, calculating this value does not make sense. - raise TypeError("timesmooth expected a list of timesteps to average from, but got a single timestep. Exiting.") - - ntimes = len(pass_maps) - print("this many time steps ",ntimes) - # Select first valid variable - listofkeys = iter(pass_maps[0]) - while True: - var = next(listofkeys) - if var!="dstep": break - - # Multiple time steps were found - avg = np.zeros(pass_maps[0][var].shape) - for i in range(ntimes): - avg = np.add(avg, pass_maps[i][var]) - return np.divide(avg, np.array([ntimes])) - -# Helper function for drawing on existing panel -def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): - if vlasiator5 is True: - reqs= ['vg_rho','vg_b_vol','vg_beta'] - else: - reqs= ['rho', 'B', 'beta'] - if requestvariables==True: - return reqs - - rho = extmaps[reqs[0]] - beta = extmaps[reqs[2]] - # take magnitude of B - B = np.linalg.norm(extmaps[reqs[1]],axis=-1) - - # Colours to use - color_cavitons = '#924900' - color_SHFAs = '#B66DFF' - color_BS = '#FFFF6D' - - # mask cavitons - cavitons = np.ma.masked_greater_equal(B,level_B_caviton) - cavitons.mask[rho > level_n_caviton] = True - cavitons.fill_value = 0. - cavitons[cavitons.mask == False] = 1. - - # mask SHFAs - SHFAs = np.ma.masked_greater_equal(B,level_B_caviton) - SHFAs.mask[rho > level_n_caviton] = True - SHFAs.mask[beta < level_beta_SHFA] = True - SHFAs.fill_value = 0. - SHFAs[SHFAs.mask == False] = 1. - - # draw contours - contour_shock = ax.contour(XmeshXY,YmeshXY,rho,[level_bow_shock], - linewidths=1.2, colors=color_BS) - contour_cavitons = ax.contour(XmeshXY,YmeshXY,cavitons.filled(),[0.5], linewidths=1.5, colors=color_cavitons) - contour_SHFAs = ax.contour(XmeshXY,YmeshXY,SHFAs.filled(),[0.5], linewidths=1.5, colors=color_SHFAs) - -regularcalls = [ -# Input and output methods, nooverwrite -"pt.plot.plot_colormap(filename=fileLocation+bulkname, outputdir=outputLocation+'/'+REPLACEINDEX+'_')", +import testpackage_custom_expr as cexp #importing this, even unused, is required for usage in testpackage_commons.py + +restartcalls = [ + +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', colormap='warhol',lin=1)", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', colormap='warhol',lin=1, vscale=1e-3)", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', op='x', colormap='PuOr')", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', op='y', colormap='PuOr',symlog=0, usesci=0)", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', op='z', colormap='PuOr',symlog=0, usesci=0)"] + +nonrestartcalls = [ + # Input and output methods, nooverwrite +"pt.plot.plot_colormap(filename=fileLocation+bulkname, outputdir=outputLocation,run=REPLACEINDEX)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX)", "pt.plot.plot_colormap(vlsvobj=f, outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png', nooverwrite=1)", "pt.plot.plot_colormap(vlsvobj=f, outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png', nooverwrite=1)", @@ -321,10 +54,6 @@ def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1,highres=True)", -#Horizontal colorbar -"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',highres=True,cb_horizontal=True)", -"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cb_horizontal=True)", - # Variables, operators, colormaps, usesci, lin, vscale "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='B', colormap='nipy_spectral')", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='B', colormap='nipy_spectral', vscale=1e9)", @@ -334,9 +63,7 @@ def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', colormap='warhol',lin=1, vscale=1e-3)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', op='x', colormap='PuOr')", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', op='y', colormap='PuOr',symlog=0, usesci=0)", -"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', op='z', colormap='PuOr',symlog=0, usesci=0)"] - -nonrestartcalls = [ +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V', op='z', colormap='PuOr',symlog=0, usesci=0)", # Overplots and flux lines "pt.plot.plot_colormap(filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, fsaved=1)", @@ -490,7 +217,9 @@ def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vBeamRatio')", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Thermalvelocity',lin=1)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Blocks')", -"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='gyrotropy')"] +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='gyrotropy')", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True)" +] multipopcalls = [ @@ -533,9 +262,16 @@ def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/Blocks')", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/gyrotropy')"] -v5regularcalls = [ +v5restartcalls = [ +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', colormap='warhol',lin=1)", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', colormap='warhol',lin=1, vscale=1e-3)", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='x', colormap='PuOr')", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='y', colormap='PuOr',symlog=0, usesci=0)", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='z', colormap='PuOr',symlog=0, usesci=0)"] + +v5nonrestartcalls = [ # Input and output methods, nooverwrite -"pt.plot.plot_colormap(filename=fileLocation+bulkname, outputdir=outputLocation+'/'+REPLACEINDEX+'_')", +"pt.plot.plot_colormap(filename=fileLocation+bulkname, outputdir=outputLocation,run=REPLACEINDEX)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX)", "pt.plot.plot_colormap(filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX)", "pt.plot.plot_colormap(vlsvobj=f, outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png', nooverwrite=1)", @@ -589,9 +325,8 @@ def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', colormap='warhol',lin=1, vscale=1e-3)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='x', colormap='PuOr')", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='y', colormap='PuOr',symlog=0, usesci=0)", -"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='z', colormap='PuOr',symlog=0, usesci=0)"] +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='z', colormap='PuOr',symlog=0, usesci=0)", -v5nonrestartcalls = [ # Overplots and flux lines "pt.plot.plot_colormap(filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, fsaved=1)", @@ -742,7 +477,9 @@ def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", # "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_vBeam',lin=1)", # "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_vBeamRatio')", -"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_gyrotropy')"] +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_gyrotropy')", +"pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True)" +] v5multipopcalls = [ "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_v_parallel', op='magnitude',lin=1)", @@ -783,178 +520,3 @@ def extcontour(ax, XmeshXY,YmeshXY, extmaps, requestvariables=False): "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_thermalvelocity',lin=1)", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_blocks')", "pt.plot.plot_colormap(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_gyrotropy')"] - -# For handier debugging, uncomment these to overwrite call lists and include only relevant calls -# regularcalls = [] -# nonrestartcalls = ["pt.plot.plot_colormap(filename=fileLocation+bulkname, run=verifydir+REPLACEINDEX, expression=expr_cav_cust, pass_times=3, pass_vars=['rho','B','beta'],lin=1,colormap='bwr',usesci=0)","pt.plot.plot_colormap(filename=fileLocation+bulkname, run=verifydir+REPLACEINDEX, expression=expr_cav_cust, pass_times=3,lin=1,colormap='bwr',usesci=0, boxre=[0,30,-15,15])", -# ] -# multipopcalls = [] -# v5regularcalls = [] -# v5nonrestartcalls = [] -# v5multipopcalls = [] - -# Construct test list -calls = [] -callrunids = [] -callrunindex = [] -for i,run in enumerate(runs): - # bulk and restart files - vlasiator5 = run['vlasiator5'] - filename = run['filename'] - fileLocation = run['fileLocation'] - singletime = run['singletime'] - nosubpops = run['nosubpops'] - fluxLocation = run['fluxLocation'] - - callindex = 0 - if vlasiator5: - for call in v5regularcalls: - if not filename is None: - call = call.replace("var='V'","var='restart_V'") - callrunids.append(i) - calls.append(call) - callrunindex.append(callindex) - callindex += 1 - else: - for call in regularcalls: - if not filename is None: - call = call.replace("var='V'","var='restart_V'") - callrunids.append(i) - calls.append(call) - callrunindex.append(callindex) - callindex += 1 - # non-restart files - if filename is None: - if vlasiator5: - for call in v5nonrestartcalls: - # Skip flux function calls if no flux files - if "flux" in call and fluxLocation is None: - continue - # skip time integration if only one file available - if "pass_times" in call and singletime: - continue - # thermal / non-thermal subpopulations - if (("_thermal" in call) or ("_nonthermal" in call)) and nosubpops: - continue - callrunids.append(i) - calls.append(call) - callrunindex.append(callindex) - callindex += 1 - for pop in run['pops']: - if pop != 'avgs': - for call in v5multipopcalls: - # Skip flux function calls if no flux files - if "flux" in call and fluxLocation is None: - continue - # skip time integration if only one file available - if "pass_times" in call and singletime: - continue - # thermal / non-thermal subpopulations - if (("_thermal" in call) or ("_nonthermal" in call)) and nosubpops: - continue - mpcall = call.replace('REPLACEPOP',pop) - callrunids.append(i) - calls.append(mpcall) - callrunindex.append(callindex) - callindex += 1 - else: - for call in nonrestartcalls: - # Skip flux function calls if no flux files - if "flux" in call and fluxLocation is None: - continue - # skip time integration if only one file available - if "pass_times" in call and singletime: - continue - # thermal / non-thermal subpopulations - if (("_backstream" in call) or ("_nonbackstream" in call)) and nosubpops: - continue - callrunids.append(i) - calls.append(call) - callrunindex.append(callindex) - callindex += 1 - for pop in run['pops']: - if pop != 'avgs': - for call in multipopcalls: - # Skip flux function calls if no flux files - if "flux" in call and fluxLocation is None: - continue - # skip time integration if only one file available - if "pass_times" in call and singletime: - continue - # thermal / non-thermal subpopulations - if (("_backstream" in call) or ("_nonbackstream" in call)) and nosubpops: - continue - mpcall = call.replace('REPLACEPOP',pop) - callrunids.append(i) - calls.append(mpcall) - callrunindex.append(callindex) - callindex += 1 - -nteststot = len(callrunids) - - - -# How many jobs? -jobcount=int(sys.argv[1]) -jobcurr=int(sys.argv[2]) -increment = int(nteststot/jobcount) -remainder = nteststot - jobcount * increment -start=jobcurr * increment -end=start + increment -# Remainder frames are divvied out evenly among tasks -if jobcurr < remainder: - start = start + jobcurr - end = end + jobcurr + 1 -else: - start = start + remainder - end = end + remainder - - -# Perform call -for j in range(start,end): - # Calculate which run - jrun = callrunindex[j] - runid = callrunids[j] - call = calls[j] - - runname = runs[runid]['name'] - verifydir = runs[runid]['verifydir'] - fileLocation = runs[runid]['fileLocation'] - fluxLocation = runs[runid]['fluxLocation'] - pops = runs[runid]['pops'] - time = runs[runid]['time'] - filename = runs[runid]['filename'] - vlasiator5 = runs[runid]['vlasiator5'] - singletime = runs[runid]['singletime'] - - level_bow_shock = runs[runid]['cavitonparams'][0] - level_n_caviton = runs[runid]['cavitonparams'][1] - level_B_caviton = runs[runid]['cavitonparams'][2] - level_beta_SHFA = runs[runid]['cavitonparams'][3] - - outputLocation=pt.plot.defaultoutputdir+verifydir - - # Source data files - if filename is None: - bulkname = "bulk."+str(time).rjust(7,'0')+".vlsv" - else: - bulkname = filename - if 'fluxprefix' in runs[runid]: - fluxname = runs[runid]['fluxprefix']+str(time).rjust(7,'0')+".bin" - else: - fluxname = "flux."+str(time).rjust(7,'0')+".bin" - - call = call.replace('REPLACEPREVINDEX',"'"+str(jrun-1).rjust(4,'0')+"'") - call = call.replace('REPLACEINDEX',"'"+str(jrun).rjust(4,'0')+"'") - call = call.replace('REPLACETIME',"'"+str(time)+"'") - - # Many different plots - print(j, runid, jrun, call) - f = pt.vlsvfile.VlsvReader(fileLocation+bulkname) - try: - exec(call) - except Exception as e: - print("----------------------------\nFAILURE DURING CALL ",j," \n```\n"+call+"```\n", repr(e)) - - traceback.print_exc() - print("END TRACE for call",j,"\n----------------------------") diff --git a/testpackage/testpackage_definitions/testpackage_plot_colormap3dslice.py b/testpackage/testpackage_definitions/testpackage_plot_colormap3dslice.py new file mode 100644 index 00000000..e8dc9415 --- /dev/null +++ b/testpackage/testpackage_definitions/testpackage_plot_colormap3dslice.py @@ -0,0 +1,373 @@ + +import testpackage_custom_expr as cexp + + + +nonrestartcalls=["pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname, outputdir=outputLocation,run=REPLACEINDEX)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png',nooverwrite=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png',nooverwrite=1)", +"pt.plot.plot_colormap3dslice(filedir=fileLocation,step=REPLACETIME,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,thick=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,thick=2.0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,scale=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,scale=2.0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,highres=True)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,scale=2.0,highres=True)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,thick=2.0,highres=True)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,highres=3)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,tickinterval=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,tickinterval=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,tickinterval=0.5,axisunit=6)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,tickinterval=1,axisunit=6)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='msec')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='musec')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,wmarkb=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='NE')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='NW')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='SE')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='SW')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,Earth=True)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title=r'$\mathcal{Title}$ and so forth $\odot$',cbtitle=r'$\mathcal{Color}$')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',cbtitle='')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',cbtitle='',noborder=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',cbtitle='',noxlabels=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',cbtitle='',noylabels=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',cbtitle='',noxlabels=1,noborder=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',cbtitle='',noylabels=1,noborder=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',cbtitle='',noylabels=1,noxlabels=1,noborder=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',noylabels=1,noxlabels=1,noborder=1,nocb=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1,highres=True)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,fsaved=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,fsaved=1,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,step=REPLACETIME)", +"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e3,vmax=7.e6)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e-3,vmax=7.e0,vscale=1e-6)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e6,vmax=7.e9,vscale=1e3)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,boxre=[-10,10,5,50],axisunit=3)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,boxre=[-10,10,5,50],axisunit=6)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,boxm=[-10e6,50e6,-5e6,15e6])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,boxm=[-10e6,50e6,-5e6,15e6],axisunit=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[0,0,5])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[0,1,0])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[-1,0,0])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[1,1,1])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='nipy_spectral')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='jet')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='hot_desaturated')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='hot_desaturated_r')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='viridis')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='plasma')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='magma')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='warhol')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='bwr')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='PuOr')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,fsaved='red')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,fluxrope=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,fluxrope=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='E',colormap='hot_desaturated')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='E',colormap='hot_desaturated',vscale=1e3)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='E',op='x',colormap='RdBu',symlog=0,usesci=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='E',op='y',colormap='RdBu',symlog=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='E',op='z',colormap='RdBu',symlog=0,usesci=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='RhoBackstream',colormap='jet')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='beta',lin=1,usesci=0,colormap='viridis',vmax=50)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='MA',lin=1,usesci=0,vmin=2,vmax=40,colormap='inferno_r')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Mms',lin=1,usesci=0,vmin=0,colormap='magma')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='va',lin=1,usesci=0,colormap='magma_r')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vms',lin=1,colormap='plasma_r')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vs',lin=1,colormap='viridis_r')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='max_v_dt',vscale=1e6)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='max_v_dt',vscale=1e3)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Temperature',colormap='plasma',vscale=1e-6,lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Pressure',vscale=1e9)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='B',op='y',colormap='bwr',symlog=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='B',op='y',colormap='bwr',symlog=1e-9)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='B',op='y',colormap='bwr',symlog=1e-12)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='B',op='y',colormap='bwr',symlog=0,vscale=1e9)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='B',op='y',colormap='bwr',symlog=1,vscale=1e9)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='B',op='y',colormap='bwr',symlog=1e-3,vscale=1e9)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,external=extcontour,pass_vars=['rho','B','beta'])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,external=extcontour,boxre=[0,30,-15,15])", +#"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,expression=exprMA_cust,pass_vars=['va'],vmin=1,vmax=20,lin=1,usesci=0)", +#"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,expression=exprMA_cust,boxre=[0,30,-15,15],vmin=1,vmax=20,lin=1,usesci=0)", +#"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,expression=expr_cav_cust,pass_times=3,pass_vars=['rho','B','beta'],lin=1,colormap='bwr',usesci=0)", +#"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,expression=expr_cav_cust,pass_times=3,lin=1,colormap='bwr',usesci=0,boxre=[0,30,-15,15])", +#"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,expression=timesmooth,pass_times=[7,0],pass_vars=['rho'],boxre=[0,30,-15,15])", +#"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,expression=timesmooth,pass_times=[7,0],pass_vars=['beta'])", +#"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,external=extcontour,boxre=[0,30,-15,15],expression=exprMA_cust,vmin=1,vmax=20,lin=1,usesci=0,fsaved=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='B')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='B',vectorcolormap='viridis')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='B',vectorcolormap='magma')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='B',vectordensity=20)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='B',vectordensity=400)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='B',vectordensity=20,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='B',vectordensity=400,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=20)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=400)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=20,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=400,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectorsize=1.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=20,vectorsize=1.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=400,vectorsize=1.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',boxre=[-10,10,5,50],vectorsize=1.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=20,boxre=[-10,10,5,50],vectorsize=1.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=400,boxre=[-10,10,5,50],vectorsize=1.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectorsize=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=20,vectorsize=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=400,vectorsize=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',boxre=[-10,10,5,50],vectorsize=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=20,boxre=[-10,10,5,50],vectorsize=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='E',vectordensity=400,boxre=[-10,10,5,50],vectorsize=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='B')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='B',streamlinecolor='black')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='B',streamlinecolor='gray')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='B',streamlinedensity=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='B',streamlinedensity=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='B',streamlinedensity=0.5,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='B',streamlinedensity=2,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinedensity=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinedensity=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinedensity=0.5,streamlinethick=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinethick=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinedensity=2,streamlinethick=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinedensity=0.5,streamlinethick=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinethick=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinedensity=2,streamlinethick=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinedensity=0.5,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='V',streamlinedensity=2,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='VBackstream',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='VNonBackstream',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='VParallel',op='magnitude',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='VPerpendicular',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='VParallelBackstream',op='magnitude',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='VPerpendicularBackstream',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='VParallelNonBackstream',op='magnitude',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='VPerpendicularNonBackstream',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Pressure')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PParallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PPerpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PPerpOverPar',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PParallelBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PPerpendicularBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PPerpOverParBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PParallelNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PPerpendicularNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='PPerpOverParNonBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Pdyn',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Pdynx',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Temperature')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TParallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TPerpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TParallelBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TPerpendicularBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TParallelNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TPerpendicularNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TPerpOverPar',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TPerpOverParBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='TPerpOverParNonBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='betaPerpOverPar',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='betaPerpOverParBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='betaPerpOverParNonBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='beta')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='betaParallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='betaPerpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vBeam',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vBeamRatio')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Thermalvelocity',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='Blocks')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='gyrotropy')", +"pt.plot.plot_colormap3dslice(vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True)", +"pt.plot.plot_colormap3dslice(vlsvobj=f, run=verifydir+REPLACEINDEX, var='gyrotropy',limitedsize=True)" +] + +restartcalls=["pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='restart_V')"] + +multipopcalls=["pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/VParallel',op='magnitude',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/VPerpendicular',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/Pressure')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PParallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PPerpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PPerpOverPar',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PParallelBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PPerpendicularBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PPerpOverParBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PParallelNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PPerpendicularNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/PPerpOverParNonBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/Pdyn',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/Pdynx',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/Temperature')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TParallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TPerpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TParallelBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TPerpendicularBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TParallelNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TPerpendicularNonBackstream')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TPerpOverPar',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TPerpOverParBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/TPerpOverParNonBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/betaPerpOverPar',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/betaPerpOverParBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/betaPerpOverParNonBackstream',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/beta')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/betaParallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/betaPerpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/Rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/Thermalvelocity',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/Blocks')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/gyrotropy')"] + +v5restartcalls=["pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_restart_v')"] + +v5nonrestartcalls=["pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_b_vol',colormap='nipy_spectral')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_b_vol',colormap='nipy_spectral',vscale=1e9)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_b_vol',op='x',colormap='bwr')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_b_vol',op='z',colormap='bwr')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v',colormap='warhol',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v',colormap='warhol',lin=1,vscale=1e-3)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v',op='x',colormap='PuOr')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v',op='y',colormap='PuOr',symlog=0,usesci=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v',op='z',colormap='PuOr',symlog=0,usesci=0)", +#"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,external=extcontour,pass_vars=['vg_rho','vg_b_vol','vg_beta'])", +#"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,expression=exprMA_cust,pass_vars=['vg_va'],vmin=1,vmax=20,lin=1,usesci=0)", +#"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,expression=expr_cav_cust,pass_times=3,pass_vars=['vg_rho','vg_b_vol','vg_beta'],lin=1,colormap='bwr',usesci=0)", +#"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,expression=timesmooth,pass_times=[7,0],pass_vars=['vg_rho'],boxre=[0,30,-15,15])", +#"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,expression=timesmooth,pass_times=[7,0],pass_vars=['vg_beta'])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_v',vectorsize=1,vectordensity=200)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_v',vectorsize=1,normal='x',vectordensity=200)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_v',vectorsize=1,normal='y',vectordensity=200)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_v',vectorsize=1,normal='z',vectordensity=200)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_v')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_v',vectordensity=400,boxre=[-10,10,5,50],vectorsize=1.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_v',vectordensity=20,boxre=[-10,10,5,50],vectorsize=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_b_vol',vectorcolormap='viridis')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_b_vol',vectordensity=400)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_b_vol',vectordensity=20,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_b_vol',vectorsize=1,vectordensity=200)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_b_vol',vectorsize=1,normal='x',vectordensity=200)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_b_vol',vectorsize=1,normal='y',vectordensity=200)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,vectors='vg_b_vol',vectorsize=1,normal='z',vectordensity=200)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_b_vol')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_b_vol',streamlinecolor='black')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_b_vol',streamlinecolor='gray')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_b_vol',streamlinedensity=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_b_vol',streamlinedensity=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_b_vol',streamlinedensity=0.5,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_b_vol',streamlinedensity=2,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinedensity=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinedensity=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinedensity=0.5,streamlinethick=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinethick=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinedensity=2,streamlinethick=2)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinedensity=0.5,streamlinethick=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinethick=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinedensity=2,streamlinethick=0.5)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinedensity=0.5,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,streamlines='vg_v',streamlinedensity=2,boxre=[-10,10,5,50])", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_rho')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v_nonthermal',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v_thermal',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v_parallel',op='magnitude',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v_perpendicular',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v_parallel_nonthermal',op='magnitude',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v_perpendicular_nonthermal',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v_parallel_thermal',op='magnitude',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_v_perpendicular_thermal',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_pressure')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_parallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_perpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_anisotropy',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_parallel_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_perpendicular_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_anisotropy_nonthermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_parallel_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_perpendicular_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_p_anisotropy_thermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_pdyn',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_pdynx',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_temperature')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_parallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_perpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_parallel_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_perpendicular_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_parallel_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_perpendicular_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_anisotropy',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_anisotropy_nonthermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_t_anisotropy_thermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_beta_anisotropy',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_beta_anisotropy_nonthermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_beta_anisotropy_thermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_beta')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_beta_parallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_beta_perpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='vg_rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f, run=verifydir+REPLACEINDEX,amr=0.1,amrlinestyles=['dashed'],amrcolours=['red'],amrlinewidths=[1])", +"pt.plot.plot_colormap3dslice(vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True)", +"pt.plot.plot_colormap3dslice(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_beta',limitedsize=True)" +#"pt.plot.plot_colormap3dslice(filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,expression=timesmooth,pass_times=[14,0],pass_vars=['vg_rho'])"] + ] + +v5multipopcalls=["pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_v_parallel',op='magnitude',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_v_perpendicular',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_pressure')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_parallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_perpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_anisotropy',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_parallel_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_perpendicular_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_anisotropy_nonthermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_parallel_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_perpendicular_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_p_anisotropy_thermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_pdyn',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_pdynx',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_temperature')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_parallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_perpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_parallel_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_perpendicular_nonthermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_parallel_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_perpendicular_thermal')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_anisotropy',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_anisotropy_nonthermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_t_anisotropy_thermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_beta_anisotropy',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_beta_anisotropy_nonthermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_beta_anisotropy_thermal',vmin=0.1,vmax=10)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_beta')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_beta_parallel')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_beta_perpendicular')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_thermalvelocity',lin=1)", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_blocks')", +"pt.plot.plot_colormap3dslice(vlsvobj=f,run=verifydir+REPLACEINDEX,var='REPLACEPOP/vg_gyrotropy')"] + diff --git a/testpackage/testpackage_definitions/testpackage_plot_ionosphere.py b/testpackage/testpackage_definitions/testpackage_plot_ionosphere.py new file mode 100644 index 00000000..cb13ae62 --- /dev/null +++ b/testpackage/testpackage_definitions/testpackage_plot_ionosphere.py @@ -0,0 +1,87 @@ + +v5restartcalls=[] + +v5nonrestartcalls=[ +#outputs, nooverwrite +"pt.plot.plot_ionosphere(filename=fileLocation+bulkname, outputdir=outputLocation,run=REPLACEINDEX)", +"pt.plot.plot_ionosphere(filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX)", +"pt.plot.plot_ionosphere(vlsvobj=f, outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png', nooverwrite=1)", +"pt.plot.plot_ionosphere(vlsvobj=f, outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png', nooverwrite=1)", +#colormaps + +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='nipy_spectral')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='jet')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated_r')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='viridis')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='plasma')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='magma')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='warhol')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='bwr')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='PuOr')", + +#colorbar +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, nocb=1)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, internalcb=1)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, symlog=1)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, symlog=0)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, lin=1)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, log=1)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, cbtitle='cbtitle')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, usesci=0)", + +# Thickness, scale +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, thick=0.5)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, thick=5.0)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, scale=0.5)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, scale=2.0)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='warhol',lin=1, vscale=1e-3)", + + +# Watermarks,title +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, wmarkb=1)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NE')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NW')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SE')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SW')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, title='title_test')", + +#vmin,vmax,Symmetric +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, symmetric=True,vmin=0,vmax=1)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX,vmin=0,vmax=0.5)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX,vmin=0)", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX,vscale=1e9)", +#operators +#"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX,var='ig_electrontemp',op='x')", +#"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX,var='ig_electrontemp',op='y')", +#"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX,var='ig_electrontemp',op='z')", + +#variables +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_fac')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_fac',viewdir=-1)", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_fac',viewdir=10)", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_fac',absolute=1)", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_cellarea')", +#"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_deltaphi')", (Causes failure) +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_electrontemp')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_latitude')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_openclosed')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_potential')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_precipitation')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_rhon')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_sigmah')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_sigmap')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_sigmaparallel')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_source')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_residual')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_p')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_pp')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_z')", +"pt.plot.plot_ionosphere(vlsvobj=f,run=verifydir+REPLACEINDEX,var='ig_zz')", +"pt.plot.plot_ionosphere(vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True)" + +] + +v5multipopcalls=[ +] + diff --git a/testpackage/testpackage_definitions/testpackage_plot_isosurface.py b/testpackage/testpackage_definitions/testpackage_plot_isosurface.py new file mode 100644 index 00000000..1452b431 --- /dev/null +++ b/testpackage/testpackage_definitions/testpackage_plot_isosurface.py @@ -0,0 +1,86 @@ +nonrestartcalls=["pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',filename=fileLocation+bulkname,outputdir=outputLocation , run=REPLACEINDEX)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,nooverwrite=1)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',filedir=fileLocation,step=REPLACETIME,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,thick=0.5)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,thick=2.0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,scale=0.5)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,scale=2.0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,highres=True)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,scale=2.0,highres=True)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,thick=2.0,highres=True)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,highres=3)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,title='msec')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,title='musec')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='NE')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='NW')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='SE')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='SW')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,title=r'$\mathcal{Title}$ and so forth $\odot$',cbtitle=r'$\mathcal{Color}$')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,title='',cbtitle='')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,title='',nocb=1)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,title='')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,title='',highres=True)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,boxre=[-10,10,5,50])", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,step=REPLACETIME)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e3,vmax=7.e6)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e-3,vmax=7.e0,vscale=1e-6)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e6,vmax=7.e9,vscale=1e3)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,boxm=[-10e6,50e6,-5e6,15e6])", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='nipy_spectral')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='jet')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='hot_desaturated')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='hot_desaturated_r')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='viridis')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='plasma')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='magma')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='warhol')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='bwr')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='PuOr')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='hot_desaturated',vscale=1e3)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='RdBu',symlog=0,usesci=0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='RdBu',symlog=0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,usesci=0,colormap='viridis',vmax=50)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,usesci=0,vmin=2,vmax=40,colormap='inferno_r')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,usesci=0,vmin=0,colormap='magma')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,usesci=0,colormap='magma_r')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,colormap='plasma_r')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,colormap='viridis_r')", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,vscale=1e6)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,vscale=1e3)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='plasma',vscale=1e-6,lin=1)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,vscale=1e9)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='bwr',symlog=0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='bwr',symlog=1e-9)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='bwr',symlog=1e-12)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='bwr',symlog=0,vscale=1e9)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='bwr',symlog=1,vscale=1e9)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='bwr',symlog=1e-3,vscale=1e9)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,boxre=[0,30,-15,15])", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=1,vmax=20,lin=1,usesci=0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,boxre=[0,30,-15,15],vmin=1,vmax=20,lin=1,usesci=0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,lin=1,colormap='bwr',usesci=0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,lin=1,colormap='bwr',usesci=0,boxre=[0,30,-15,15])", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,boxre=[0,30,-15,15])", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=0.1,vmax=10)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,vmin=0.5,vmax=1.5,usesci=0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True)" + ] + +restartcalls=[] + +multipopcalls=[] + +v5restartcalls=[] + +v5nonrestartcalls=["pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='nipy_spectral',vscale=1e9)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='warhol',lin=1)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='warhol',lin=1,vscale=1e-3)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f,run=verifydir+REPLACEINDEX,colormap='PuOr',symlog=0,usesci=0)", +"pt.plot.plot_isosurface(surf_step=10,surf_var='vg_rho',vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True)" +] + +v5multipopcalls=[] + diff --git a/testpackage/testpackage_definitions/testpackage_plot_vdf.py b/testpackage/testpackage_definitions/testpackage_plot_vdf.py new file mode 100644 index 00000000..adca92de --- /dev/null +++ b/testpackage/testpackage_definitions/testpackage_plot_vdf.py @@ -0,0 +1,253 @@ + +restartcalls = [ +# Input and output methods, nooverwrite +"pt.plot.plot_vdf(figsize=[5,4],filename=fileLocation+bulkname, outputdir=outputLocation , run=REPLACEINDEX, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png', nooverwrite=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png', nooverwrite=1, coordre=REPLACECOORDRE)", + +# cellids, coordinates +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellids=REPLACECELLID)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordinates=REPLACECOORDINATES)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellids=REPLACEMULTIPLECELLID)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordinates=REPLACEMULTIPLECOORDINATES)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACEMULTIPLECOORDRE)", + + +# Thickness, scale +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, thick=0.5, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, thick=2.0, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, scale=0.5, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, scale=2.0, coordre=REPLACECOORDRE)", + +# Tick interval +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=1000, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=500, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=0.5,axisunit=6, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=1,axisunit=6, coordre=REPLACECOORDRE)", + +# msec musec titles +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='msec', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='musec', coordre=REPLACECOORDRE)", + +# B vector +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, coordre=REPLACECOORDRE)", + +# Zoom and units +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, box=[-2e6,2e6,-2e6,2e6], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, box=[-2e6,2e6,-2e6,2e6],axisunit=0, coordre=REPLACECOORDRE)", + +# Watermarks +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmarkb=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NE', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NW', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SE', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SW', coordre=REPLACECOORDRE)", + +# Biglabels +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='A', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='B', biglabloc=0, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='C', biglabloc=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='D', biglabloc=2, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='E', biglabloc=3, coordre=REPLACECOORDRE)", + +# title, axes, noborders +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title=r'$\mathcal{Title}$ and so forth $\odot$', cbtitle=r'$\mathcal{Color}$', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noborder=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noxlabels=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noxlabels=1,noborder=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1,noborder=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1,noxlabels=1,noborder=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,nocb=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1, coordre=REPLACECOORDRE)", + +# slicethick +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=0, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=2, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=4, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=1e3, coordre=REPLACECOORDRE)", + +# cellsize +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=0.5, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=2, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=4, coordre=REPLACECOORDRE)", + +# fmin, fmax, setThreshold +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, fmin=1.e-14, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, fmax=1.e-12, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, fmin=1.e-14,fmax=1.e-12, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=1.e-20, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=1.e-15, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=0, coordre=REPLACECOORDRE)", + +# colormaps +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='nipy_spectral', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='jet', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated_r', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='viridis', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='plasma', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='magma', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='warhol', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='bwr', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='PuOr', coordre=REPLACECOORDRE)", + +# cbulk, center, bvector +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, cbulk=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, center=[-7e5,0,0], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, center=[2e5,2e5,2e5], coordre=REPLACECOORDRE)", + +# wflux +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wflux=1, coordre=REPLACECOORDRE)", + +# directions +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, xy=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, xy=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[0,0,5],normalx=[0,5,0], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, xz=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, xz=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[0,1,0],normalx=[0,0,1], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, yz=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, yz=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[-1,0,0],normalx=[0,1,0], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bpara=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bpara=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bperp=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bperp=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[1,1,1],normalx=[1,-1,0],coordre=REPLACECOORDRE)" +] +nonrestartcalls = [ +# Input and output methods, nooverwrite +"pt.plot.plot_vdf(figsize=[5,4],filename=fileLocation+bulkname, outputdir=outputLocation , run=REPLACEINDEX, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png', nooverwrite=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png', nooverwrite=1, coordre=REPLACECOORDRE)", + +# cellids, coordinates +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellids=REPLACECELLID)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordinates=REPLACECOORDINATES)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)",#Duplicate call +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellids=REPLACEMULTIPLECELLID)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordinates=REPLACEMULTIPLECOORDINATES)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACEMULTIPLECOORDRE)", + + +# Thickness, scale +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, thick=0.5, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, thick=2.0, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, scale=0.5, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, scale=2.0, coordre=REPLACECOORDRE)", + +# Tick interval +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=1000, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=500, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=0.5,axisunit=6, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=1,axisunit=6, coordre=REPLACECOORDRE)", + +# msec musec titles +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='msec', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='musec', coordre=REPLACECOORDRE)", + +# B vector +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, coordre=REPLACECOORDRE)", + +# Zoom and units +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, box=[-2e6,2e6,-2e6,2e6], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, box=[-2e6,2e6,-2e6,2e6],axisunit=0, coordre=REPLACECOORDRE)", + +# Watermarks +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmarkb=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NE', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NW', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SE', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SW', coordre=REPLACECOORDRE)", + +# Biglabels +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='A', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='B', biglabloc=0, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='C', biglabloc=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='D', biglabloc=2, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='E', biglabloc=3, coordre=REPLACECOORDRE)", + +# title, axes, noborders +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title=r'$\mathcal{Title}$ and so forth $\odot$', cbtitle=r'$\mathcal{Color}$', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noborder=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noxlabels=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noxlabels=1,noborder=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1,noborder=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1,noxlabels=1,noborder=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,nocb=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1, coordre=REPLACECOORDRE)", + +# slicethick +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=0, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=2, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=4, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=1e3, coordre=REPLACECOORDRE)", + +# cellsize +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=0.5, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=2, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=4, coordre=REPLACECOORDRE)", + +# fmin, fmax, setThreshold +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, fmin=1.e-14, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, fmax=1.e-12, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, fmin=1.e-14,fmax=1.e-12, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=1.e-20, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=1.e-15, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=0, coordre=REPLACECOORDRE)", + +# colormaps +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='nipy_spectral', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='jet', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated_r', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='viridis', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='plasma', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='magma', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='warhol', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='bwr', coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='PuOr', coordre=REPLACECOORDRE)", + +# cbulk, center, bvector +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, cbulk=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, center=[-7e5,0,0], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, center=[2e5,2e5,2e5], coordre=REPLACECOORDRE)", + +# wflux +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, wflux=1, coordre=REPLACECOORDRE)", + +# directions +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, xy=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, xy=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[0,0,5],normalx=[0,5,0], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, xz=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, xz=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[0,1,0],normalx=[0,0,1], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, yz=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, yz=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[-1,0,0],normalx=[0,1,0], coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bpara=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bpara=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bperp=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, bperp=1,coordswap=1, coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[1,1,1],normalx=[1,-1,0],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True,coordre=REPLACECOORDRE)", +] + +multipopcalls = [ +"pt.plot.plot_vdf(figsize=[5,4],vlsvobj=f, run=verifydir+REPLACEINDEX, pop='REPLACEPOP', coordre=REPLACECOORDRE)"] diff --git a/testpackage/testpackage_definitions/testpackage_plot_vdf_profiles.py b/testpackage/testpackage_definitions/testpackage_plot_vdf_profiles.py new file mode 100644 index 00000000..32d1218a --- /dev/null +++ b/testpackage/testpackage_definitions/testpackage_plot_vdf_profiles.py @@ -0,0 +1,75 @@ +nonrestartcalls=["pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,filename=fileLocation+bulkname,outputdir=outputLocation , run=REPLACEINDEX)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png',nooverwrite=1)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png',nooverwrite=1)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,filedir=fileLocation,step=REPLACETIME,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,cellids=REPLACECELLID)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,coordinates=REPLACECOORDINATES)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,cellids=REPLACEMULTIPLECELLID)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,coordinates=REPLACEMULTIPLECOORDINATES)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,thick=0.5)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,thick=2.0)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,tickinterval=10)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,tickinterval=1)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,tickinterval=0.5,axisunit=6)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,tickinterval=1,axisunit=6)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,title='msec')", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,title='musec')", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,wmarkb=1)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='NE')", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='NW')", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='SE')", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,wmark='SW')", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,title=r'$\mathcal{Title}$ and so forth $\odot$')", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,title='')", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,step=REPLACETIME)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e3,vmax=7.e6)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e-3,vmax=7.e0)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=7.e6,vmax=7.e9)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,axisunit=3)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,axisunit=6)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,axisunit=0)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,fmin=1.e-14,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,fmax=1.e-12,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,fmin=1.e-14,fmax=1.e-12,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,setThreshold=1.e-20,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,setThreshold=1.e-15,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,setThreshold=0,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,cbulk=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,center=[-7e5,0,0],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,center=[2e5,2e5,2e5],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,xy=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[0,0,5],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,xz=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[0,1,0],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,yz=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[-1,0,0],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,bpara=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,bperp=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[1,1,1],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,vmax=50)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,vmin=2,vmax=40)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,vmin=0)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=1,vmax=20,lin=1)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,filename=fileLocation+bulkname,run=verifydir+REPLACEINDEX,lin=1)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,vmin=0.1,vmax=10)", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,lin=1,vmin=0.5,vmax=1.5)"] + +restartcalls=[] + +multipopcalls=["pt.plot.plot_vdf_profiles(vlsvobj=f,run=verifydir+REPLACEINDEX,pop='REPLACEPOP',coordre=REPLACECOORDRE)"] + +v5restartcalls=[] + +v5nonrestartcalls=["pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[1,0,0])", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[0,1,0])", +"pt.plot.plot_vdf_profiles(coordre=REPLACECOORDRE,vlsvobj=f,run=verifydir+REPLACEINDEX,normal=[0,0,1])"] + +v5nonrestartcalls.extend(nonrestartcalls) + +v5multipopcalls=[] + diff --git a/testpackage/testpackage_definitions/testpackage_plot_vdfdiff.py b/testpackage/testpackage_definitions/testpackage_plot_vdfdiff.py new file mode 100644 index 00000000..06d8af67 --- /dev/null +++ b/testpackage/testpackage_definitions/testpackage_plot_vdfdiff.py @@ -0,0 +1,106 @@ +nonrestartcalls=["pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,outputdir=outputLocation , run=REPLACEINDEX,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png',nooverwrite=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png',nooverwrite=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(filedir=fileLocation,step=REPLACETIME,step_diff=REPLACETIME2,run=verifydir+REPLACEINDEX,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(filename1=fileLocation+bulkname,filename2=fileLocation+bulkname_vdfdiff,run=verifydir+REPLACEINDEX,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,cellids=REPLACECELLID)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,coordinates=REPLACECOORDINATES)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,cellids=REPLACEMULTIPLECELLID)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,coordinates=REPLACEMULTIPLECOORDINATES)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,thick=0.5,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,thick=2.0,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,scale=0.5,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,scale=2.,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,tickinterval=10,axisunit=5,coordre=REPLACEMULTIPLECOORDRE)", #tickinterval calls without axisunit takes far too long +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,tickinterval=1,axisunit=5,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,tickinterval=0.5,axisunit=6,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,tickinterval=1,axisunit=6,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='msec',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='musec',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,wmarkb=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,wmark='NE',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,wmark='NW',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,wmark='SE',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,wmark='SW',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title=r'$\mathcal{Title}$ and so forth $\odot$',cbtitle=r'$\mathcal{Color}$',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',cbtitle='',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',cbtitle='',noborder=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',cbtitle='',noxlabels=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',cbtitle='',noylabels=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',cbtitle='',noxlabels=1,noborder=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',cbtitle='',noylabels=1,noborder=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',cbtitle='',noylabels=1,noxlabels=1,noborder=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',noylabels=1,noxlabels=1,noborder=1,nocb=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,step=REPLACETIME,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,axisunit=3,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,axisunit=6,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,axisunit=0,coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,slicethick=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,slicethick=0,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,slicethick=2,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,slicethick=4,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,slicethick=1e3,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,cellsize=0.5,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,cellsize=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,cellsize=2,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,cellsize=4,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,fmin=1.e-14,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,fmax=1.e-12,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,fmin=1.e-14,fmax=1.e-12,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,setThreshold=1.e-20,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,setThreshold=1.e-15,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,setThreshold=0,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,biglabel='A',coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,biglabel='B',biglabloc=0,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,biglabel='C',biglabloc=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,biglabel='D',biglabloc=2,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,biglabel='E',biglabloc=3,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,bvector=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,bvector=1,cbulk=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,wflux=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,xy=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,xy=1,coordswap=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,normal=[0,0,5],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,xz=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,xz=1,coordswap=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,normal=[0,1,0],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,yz=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,yz=1,coordswap=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,normal=[-1,0,0],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,bpara=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,bpara=1,coordswap=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,bperp=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,bperp=1,coordswap=1,coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,normal=[1,1,1],coordre=REPLACECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='nipy_spectral',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='jet',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='hot_desaturated',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='hot_desaturated_r',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='viridis',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='plasma',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='magma',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='warhol',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='bwr',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='PuOr',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='RdBu',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='inferno_r',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='magma_r',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='plasma_r',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,colormap='viridis_r',coordre=REPLACEMULTIPLECOORDRE)", +"pt.plot.plot_vdfdiff(vlsvobj1=f, vlsvobj2=g,run=verifydir+REPLACEINDEX, cb_horizontal=True,coordre=REPLACEMULTIPLECOORDRE)", + ] + +restartcalls=[] + +multipopcalls=["pt.plot.plot_vdfdiff(vlsvobj1=f,vlsvobj2=g,run=verifydir+REPLACEINDEX,pop='REPLACEPOP',coordre=REPLACECOORDRE)"] + +v5restartcalls=[] + +v5nonrestartcalls=[] + +v5multipopcalls=[] + diff --git a/testpackage/testpackage_get_diff.py b/testpackage/testpackage_get_diff.py new file mode 100644 index 00000000..26149b23 --- /dev/null +++ b/testpackage/testpackage_get_diff.py @@ -0,0 +1,65 @@ +from testpackage_helpers import system_call +import sys +branch=sys.argv[1] +if branch not in ["master","dev"]: + raise SystemError("Pull request target not master or dev, this file should not even be running! Something is likely wrong with the github workflow.") + +git_diff=system_call(f'git diff --name-only origin/{branch}...').split('\n') + +#Dictionary that tells which testpackage runs to run (values) if changes were made to these files (keys). +#Checking uses 'in' operation, case insensitive +#If None, everything will be run + +file_checks = { +"plot_threeslice.py":"plot_threeslice", +"plot_colormap.py":"plot_colormap", +"plot_colormap3dslice.py":"plot_colormap3dslice", +"plot_ionosphere.py":"plot_ionosphere", +"plot_isosurface.py":["plot_isosurface","plot_neutral_sheet"], +"plot_vdf.py":"plot_vdf", +"plot_vdf_profiles.py":"plot_vdf_profiles", +"plot_vdfdiff.py":"plot_vdfdiff", +"plot_variables.py":None, +"plot_helpers.py":None, +"plot.py":None, +"colormaps.py":None, +"calculations":None, +"vlsv":None, +"testpackage_":None, +"MayaVi":None, +"compare_images.yml":None, +"miscellaneous":None, +} + +f=open("diff_log.txt","w") +#Override if there are many changes -> run all tests +run_all=False +testpackage_check=True +if len(git_diff)>10: + f.write(f"Multiple ({len(git_diff)}) changes, will run all tests\n") + run_all=True + +output=[] +for diff_line in git_diff: + for key,val in file_checks.items(): + if key.lower() in diff_line.lower(): + if 'testpackage_' in key.lower() and testpackage_check: + testpackage_check=False + f.write(f'::warning::Testpackage has changed in the current branch as compared to {branch}, make sure the test is still comparable with current verification_set!\n') + if not val: + run_all=True + elif type(val) is list: + output.extend(val) + else: + output.append(val) + +f.close() + +if run_all: + quit() +elif output: + print(" ".join(output)) +else: + print("pass") + + diff --git a/testpackage/testpackage_get_job_error.py b/testpackage/testpackage_get_job_error.py new file mode 100644 index 00000000..9a4aa5fb --- /dev/null +++ b/testpackage/testpackage_get_job_error.py @@ -0,0 +1,23 @@ + + +from argparse import ArgumentParser + + +parser = ArgumentParser(prog="Log file parser" + ,description="Parses a log file and extracts job error messages." + ) + +parser.add_argument("log_file",help="Log file to parse") + +args= parser.parse_args() + +file= args.log_file + +with open(file,'r') as f: + lines = f.readlines() + for line in lines: + error_code = line.split(" ") + if error_code[0]=="EXIT_CODE_FROM_JOB" and error_code[1].rstrip("\n")!="0": + raise SystemExit(int(line.split(" ")[1].rstrip("\n"))) + + diff --git a/testpackage/testpackage_helpers.py b/testpackage/testpackage_helpers.py new file mode 100644 index 00000000..3d0e0c91 --- /dev/null +++ b/testpackage/testpackage_helpers.py @@ -0,0 +1,93 @@ +import subprocess +import inspect +import re + +def system_call(cmd,live_output=False): + with subprocess.Popen(cmd.split(" "),stdout=subprocess.PIPE,stderr=subprocess.PIPE) as proc: + if live_output: + for line in proc.stdout: + print(str(line,'utf-8').rstrip('\n')) #Note that for example pip's progress bar is not displayed + + out,err = proc.communicate() + + + #If errors, raise an exception + if proc.returncode!=0: + err = str(err,'utf-8') + raise RuntimeError(err) + + out = str(out,'utf-8').rstrip('\n') + return out + +def call_replace(call,func,skipped_args,required_args): + #This is kind of scuffed maybe + + import analysator as pt #this import is used, see the function_pars + call=call.replace('REPLACEFUNC',func) + + #Get the arguments of the call + args = re.search(r'\((.+)\)',call).group(1) + args = [x[0] or x[1] or x[2] for x in re.findall(r'(\w+=[^,(\[]+)|(\w+=\(.+\))|(\w+=\[.+?\])',args)] + named_parameters=[arg.split("=")[0] for arg in args] + #Get parameters of the func + function_pars=inspect.getfullargspec(eval("pt.plot."+func)).args + #Remove args that are not present as parameters for the func + args_out=[] + + #check that all required func args are set + #see example for required_funcs in testpackage_template_maker.py or testpackage_commons.py + if required_args and func in required_args.keys(): + for required_tuple in required_args[func]: + required_params=required_tuple[0] + default_params=required_tuple[1] + + check=False + for param in required_params: + if type(param) is tuple and param[0] not in named_parameters: + check=True + elif any((all(r in named_parameters for r in param),(param in named_parameters))): + if not skipped_args or func not in skipped_args or not any(r in skipped_args[func].keys() for r in param): + check=True + break + if not check: + #Add parameters if there are default_params + if default_params: + if type(default_params) is str: + default_params=[default_params] + for param in default_params: + if param not in named_parameters: + args_out.append(param) + else: + return None + + + #skip args if there are skipped args and append if called arg in function_pars + for arg in args: + if arg: + if skipped_args: + if func in skipped_args.keys(): + skipped_args_dict=skipped_args[func] + elif 'ALL' in skipped_args.keys(): + skipped_args_dict=skipped_args['ALL'] + else: + skipped_args_dict=False + call_args=arg.split("=") + if skipped_args_dict and call_args[0] in skipped_args_dict.keys(): + if type(skipped_args_dict[call_args[0]]) is str and skipped_args_dict[call_args[0]] in call_args[1]: + continue + elif type(skipped_args_dict[call_args[0]]) is list and any(arg_skip in call_args[1] for arg_skip in skipped_args_dict[call_args[0]]): #list of args in dict value means OR ex. {'var':["vg_rho","vg_phi"]} + continue + if arg.split("=")[0] in function_pars: + args_out.append(arg) + #else: + # logging.warning(f"Argument {arg} removed from call {call}") + + if not args_out: + return None + args_out=filter(None,args_out) + call=call[:call.rfind("(")+1]+",".join(args_out)+")" + + return call + + + diff --git a/testpackage/testpackage_template_maker.py b/testpackage/testpackage_template_maker.py new file mode 100644 index 00000000..35968240 --- /dev/null +++ b/testpackage/testpackage_template_maker.py @@ -0,0 +1,580 @@ +import argparse +from testpackage_helpers import call_replace + +if __name__=='__main__': + + + argp=argparse.ArgumentParser( + prog='Analysator Testpackage', + description='Outputs test plots' + ) + + + argp.add_argument('funcs',type=str,help="function/list of functions to test, if none give does all.",nargs='*') + cmd_args=argp.parse_args() + funcs_to_use=cmd_args.funcs + if "pass" in funcs_to_use: + quit() + + + + #required args for functions, lists are handled as OR statements, tuples within lists as AND + #list of tuples, first element is the list of required arguments and second is the defaults if argument is not found, leaving it as None skips defaults + #tuples inside inner list [(arg1,arg2,..),..] means that for arg1 to be present arg2 has to be present + required_args ={ + "plot_vdf":[(["coordre","coordinates","cellids"],["coordre=REPLACECOORDRE"]),([("filedir","step")],[None]),("figsize","figsize=[5,4]")], + "plot_vdf_profiles":[(["coordre","coordinates","cellids"],["coordre=REPLACECOORDRE"]),([("filedir","step")],[""])], + "plot_isosurface":[([("surf_step","surf_var")],["surf_step=10","surf_var='vg_rho'"]),([("filedir","step")],[""])] + + } + + + + #This can be v4 or v5, these both get added into nonrestartcalls and v5nonrestartcalls, here for cleanliness sake + agnostic_call = [ + + + # Input and output methods, nooverwrite + "pt.plot.REPLACEFUNC(filename=fileLocation+bulkname, outputdir=outputLocation+'/'+REPLACEINDEX+'_')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX)", + "pt.plot.REPLACEFUNC(vlsvobj=f, outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png', nooverwrite=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png', nooverwrite=1)", + "pt.plot.REPLACEFUNC(filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX)", + + # cellids, coordinates + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, cellids=REPLACECELLID)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, coordinates=REPLACECOORDINATES)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, cellids=REPLACEMULTIPLECELLID)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, coordinates=REPLACEMULTIPLECOORDINATES)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACEMULTIPLECOORDRE)", + + + + # Thickness, scale + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, thick=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, thick=2.0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, scale=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, scale=2.0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, highres=True)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, scale=2.0, highres=True)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, thick=2.0, highres=True)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, highres=3)", + + # Tick interval + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=0.5,axisunit=6)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=1,axisunit=6)", + + # msec musec titles + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='msec')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='musec')", + + # Watermarks + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, wmarkb=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NE')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NW')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SE')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SW')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, Earth=True)", + + + + + # title, axes, noborders + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title=r'$\\mathcal{Title}$ and so forth $\odot$', cbtitle=r'$\\mathcal{Color}$')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noborder=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noxlabels=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noxlabels=1,noborder=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1,noborder=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1,noxlabels=1,noborder=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,nocb=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1,highres=True)", + + + + # Overplots and flux lines + "pt.plot.REPLACEFUNC(filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fsaved=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fsaved=1, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fluxfile=fluxLocation+fluxname, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(filename=fileLocation+bulkname, run=verifydir+REPLACEINDEX, fluxdir=fluxLocation, step=REPLACETIME, fluxthick=0.5, fluxlines=10)", + "pt.plot.REPLACEFUNC(filename=fileLocation+bulkname, run=verifydir+REPLACEINDEX, fluxdir=fluxLocation, fluxthick=5, fluxlines=2)", + + # Vscale + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vmin=7.e3, vmax=7.e6)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vmin=7.e-3, vmax=7.e0, vscale=1e-6)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vmin=7.e6, vmax=7.e9, vscale=1e3)", + + + # Zoom and units + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, boxre=[-10,10,5,50],axisunit=3)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, boxre=[-10,10,5,50],axisunit=6)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, boxm=[-10e6,50e6,-5e6,15e6])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, boxm=[-10e6,50e6,-5e6,15e6],axisunit=0)", + + + # slicethick (Mostly for vdf,vdf_prof,vdfdiff) + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=0, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=2, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=4, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=1e3, coordre=REPLACECOORDRE)", + # cellsize (same) + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=0.5, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=2, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=4, coordre=REPLACECOORDRE)", + # fmin, fmax, setThreshold (same) + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fmin=1.e-14, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fmax=1.e-12, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fmin=1.e-14,fmax=1.e-12, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=1.e-20, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=1.e-15, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=0, coordre=REPLACECOORDRE)", + # Biglabels(vdf,vdfdiff) + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='A', coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='B', biglabloc=0, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='C', biglabloc=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='D', biglabloc=2, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='E', biglabloc=3, coordre=REPLACECOORDRE)", + # cbulk, center, bvector(same) + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, cbulk=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, center=[-7e5,0,0], coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, center=[2e5,2e5,2e5], coordre=REPLACECOORDRE)", + + # wflux(same) + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, wflux=1, coordre=REPLACECOORDRE)", + # directions(about same) + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, xy=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, xy=1,coordswap=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[0,0,5], coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, xz=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, xz=1,coordswap=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[0,1,0], coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, yz=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, yz=1,coordswap=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[-1,0,0], coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, bpara=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, bpara=1,coordswap=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, bperp=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, bperp=1,coordswap=1, coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[1,1,1], coordre=REPLACECOORDRE)", + + + + # colormaps + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='nipy_spectral')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='jet')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated_r')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='viridis')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='plasma')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='magma')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='warhol')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='bwr')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='PuOr')", + + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, cb_horizontal=True)", + + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, amr=0.1,amrlinestyles='dashed',amrcolours='red',amrlinewidths=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fsaved='red')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fluxrope=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, fluxrope=0.5)", + ] + + + #This is here so the agnostic calls are first and the order doesnt change if you add something to nonrestartcalls + nonrestartcalls=[] + v5nonrestartcalls=[] + restartcalls=[] + v5restartcalls=[] + nonrestartcalls.extend(agnostic_call) + v5nonrestartcalls.extend(agnostic_call) + restartcalls.extend(agnostic_call) + v5restartcalls.extend(agnostic_call) + + v5restartcalls.extend([ + + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v')" + + ]) + + restartcalls.extend([ + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='V')" + + ]) + + nonrestartcalls.extend([ + + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='E', colormap='hot_desaturated')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='E', colormap='hot_desaturated', vscale=1e3)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='E', op='x', colormap='RdBu',symlog=0, usesci=0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='E', op='y', colormap='RdBu',symlog=0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='E', op='z', colormap='RdBu',symlog=0, usesci=0)", + + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='RhoBackstream', colormap='jet')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='beta',lin=1, usesci=0, colormap='viridis',vmax=50)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='MA',lin=1,usesci=0,vmin=2,vmax=40, colormap='inferno_r')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Mms',lin=1,usesci=0, vmin=0, colormap='magma')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='va',lin=1,usesci=0, colormap='magma_r')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vms',lin=1, colormap='plasma_r')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vs',lin=1, colormap='viridis_r')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='max_v_dt', vscale=1e6)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='max_v_dt', vscale=1e3)", + + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Temperature', colormap='plasma', vscale=1e-6,lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Pressure', vscale=1e9)", + + # Symlog and vscale + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='B', op='y', colormap='bwr',symlog=0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='B', op='y', colormap='bwr',symlog=1e-9)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='B', op='y', colormap='bwr',symlog=1e-12)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='B', op='y', colormap='bwr',symlog=0,vscale=1e9)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='B', op='y', colormap='bwr',symlog=1,vscale=1e9)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='B', op='y', colormap='bwr',symlog=1e-3,vscale=1e9)", + + + + # Streamlines, vectors + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='B')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='B', vectorcolormap='viridis')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='B', vectorcolormap='magma')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='B',vectordensity=20)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='B',vectordensity=400)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='B',vectordensity=20, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='B',vectordensity=400, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=20)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=400)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=20, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=400, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectorsize=1.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=20,vectorsize=1.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=400,vectorsize=1.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',boxre=[-10,10,5,50],vectorsize=1.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=20, boxre=[-10,10,5,50],vectorsize=1.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=400, boxre=[-10,10,5,50],vectorsize=1.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectorsize=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=20,vectorsize=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=400,vectorsize=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',boxre=[-10,10,5,50],vectorsize=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=20, boxre=[-10,10,5,50],vectorsize=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='E',vectordensity=400, boxre=[-10,10,5,50],vectorsize=0.5)", + + + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='B')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='B', streamlinecolor='black')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='B', streamlinecolor='gray')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='B', streamlinedensity=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='B', streamlinedensity=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='B', streamlinedensity=0.5, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='B', streamlinedensity=2, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinedensity=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinedensity=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinedensity=0.5,streamlinethick=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinethick=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinedensity=2,streamlinethick=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinedensity=0.5,streamlinethick=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinethick=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinedensity=2,streamlinethick=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinedensity=0.5, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='V', streamlinedensity=2, boxre=[-10,10,5,50])", + + # More data reducers + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='VBackstream',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='VNonBackstream',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='VParallel', op='magnitude',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='VPerpendicular',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='VParallelBackstream', op='magnitude',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='VPerpendicularBackstream',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='VParallelNonBackstream', op='magnitude',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='VPerpendicularNonBackstream',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Pressure')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PParallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PPerpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PPerpOverPar', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PParallelBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PPerpendicularBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PPerpOverParBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PParallelNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PPerpendicularNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='PPerpOverParNonBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Pdyn',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Pdynx',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Temperature')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TParallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TPerpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TParallelBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TPerpendicularBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TParallelNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TPerpendicularNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TPerpOverPar', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TPerpOverParBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='TPerpOverParNonBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='betaPerpOverPar', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='betaPerpOverParBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='betaPerpOverParNonBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='beta')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='betaParallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='betaPerpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vBeam',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vBeamRatio')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Thermalvelocity',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='Blocks')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='gyrotropy')"]) + + + + + + + + v5nonrestartcalls.extend([ + # Variables, operators, colormaps, usesci, lin, vscale + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_b_vol', colormap='nipy_spectral')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_b_vol', colormap='nipy_spectral', vscale=1e9)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_b_vol', op='x', colormap='bwr')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_b_vol', op='z', colormap='bwr')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', colormap='warhol',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', colormap='warhol',lin=1, vscale=1e-3)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='x', colormap='PuOr')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='y', colormap='PuOr',symlog=0, usesci=0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v', op='z', colormap='PuOr',symlog=0, usesci=0)", + + + # Streamlines, vectors + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_v',vectorsize=1,vectordensity=200)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_v',vectorsize=1,normal='x',vectordensity=200)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_v',vectorsize=1,normal='y',vectordensity=200)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_v',vectorsize=1,normal='z',vectordensity=200)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_v')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_v',vectordensity=400, boxre=[-10,10,5,50],vectorsize=1.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_v',vectordensity=20, boxre=[-10,10,5,50],vectorsize=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_b_vol', vectorcolormap='viridis')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_b_vol',vectordensity=400)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_b_vol',vectordensity=20, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_b_vol',vectorsize=1,vectordensity=200)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_b_vol',vectorsize=1,normal='x',vectordensity=200)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_b_vol',vectorsize=1,normal='y',vectordensity=200)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, vectors='vg_b_vol',vectorsize=1,normal='z',vectordensity=200)", + + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_b_vol')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_b_vol', streamlinecolor='black')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_b_vol', streamlinecolor='gray')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_b_vol', streamlinedensity=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_b_vol', streamlinedensity=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_b_vol', streamlinedensity=0.5, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_b_vol', streamlinedensity=2, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinedensity=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinedensity=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinedensity=0.5,streamlinethick=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinethick=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinedensity=2,streamlinethick=2)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinedensity=0.5,streamlinethick=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinethick=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinedensity=2,streamlinethick=0.5)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinedensity=0.5, boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', boxre=[-10,10,5,50])", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, streamlines='vg_v', streamlinedensity=2, boxre=[-10,10,5,50])", + + + # More data reducers + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_rho')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v_nonthermal',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v_thermal',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v_parallel', op='magnitude',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v_perpendicular',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v_parallel_nonthermal', op='magnitude',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v_perpendicular_nonthermal',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v_parallel_thermal', op='magnitude',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_v_perpendicular_thermal',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_pressure')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_parallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_perpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_anisotropy', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_parallel_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_perpendicular_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_anisotropy_nonthermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_parallel_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_perpendicular_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_p_anisotropy_thermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_pdyn',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_pdynx',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_temperature')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_parallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_perpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_parallel_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_perpendicular_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_parallel_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_perpendicular_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_anisotropy', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_anisotropy_nonthermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_t_anisotropy_thermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_beta_anisotropy', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_beta_anisotropy_nonthermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_beta_anisotropy_thermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_beta')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_beta_parallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_beta_perpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='vg_rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", + # "pt.plot.REPLACEFUNC(filename=fileLocation+bulkname, run=verifydir+REPLACEINDEX, expression=timesmooth, pass_times=[14,0],pass_vars=['vg_rho'])" + + ]) + + + v5multipopcalls=[ + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_v_parallel', op='magnitude',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_v_perpendicular',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_pressure')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_parallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_perpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_anisotropy', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_parallel_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_perpendicular_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_anisotropy_nonthermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_parallel_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_perpendicular_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_p_anisotropy_thermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_pdyn',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_pdynx',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_temperature')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_parallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_perpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_parallel_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_perpendicular_nonthermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_parallel_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_perpendicular_thermal')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_anisotropy', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_anisotropy_nonthermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_t_anisotropy_thermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_beta_anisotropy', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_beta_anisotropy_nonthermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_beta_anisotropy_thermal', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_beta')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_beta_parallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_beta_perpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_thermalvelocity',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_blocks')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/vg_gyrotropy')" + ] + + + multipopcalls=[ + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, pop='REPLACEPOP', coordre=REPLACECOORDRE)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/VParallel', op='magnitude',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/VPerpendicular',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/Pressure')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PParallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PPerpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PPerpOverPar', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PParallelBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PPerpendicularBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PPerpOverParBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PParallelNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PPerpendicularNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/PPerpOverParNonBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/Pdyn',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/Pdynx',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/Temperature')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TParallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TPerpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TParallelBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TPerpendicularBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TParallelNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TPerpendicularNonBackstream')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TPerpOverPar', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TPerpOverParBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/TPerpOverParNonBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/betaPerpOverPar', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/betaPerpOverParBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/betaPerpOverParNonBackstream', vmin=0.1, vmax=10)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/beta')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/betaParallel')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/betaPerpendicular')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/Rmirror',lin=1,vmin=0.5,vmax=1.5,usesci=0)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/Thermalvelocity',lin=1)", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/Blocks')", + "pt.plot.REPLACEFUNC(vlsvobj=f, run=verifydir+REPLACEINDEX, var='REPLACEPOP/gyrotropy')"] + + + calls = [] + + + + functions = funcs_to_use + if not functions: + quit() + + skipped_args=[] + + + + for j,func in enumerate(functions): + copy_of_lists=[nonrestartcalls.copy(),restartcalls.copy(),multipopcalls.copy(),v5restartcalls.copy(),v5nonrestartcalls.copy(),v5multipopcalls.copy()] + for calls_in in copy_of_lists: + temp_list=[] + v5restart_replace=False + restart_replace=False + if calls_in == v5restartcalls: + v5restart_replace=True + elif calls_in == restartcalls: + restart_replace=True + + for call in calls_in: + call=call_replace(call,func,skipped_args,required_args) + if not call: + continue + + if v5restart_replace: + call = call.replace("var='vg_v'","var='vg_restart_v'") + elif restart_replace: + call = call.replace("var='V'","var='restart_V'") + + if call not in calls: + calls.append(call) + temp_list.append(call) + + calls_in[:]=temp_list + + + with open(f"testpackage_{func}.py","w") as f: + f.write("nonrestartcalls=["+',\n'.join(['"{}"'.format(call) for call in copy_of_lists[0]])+"]\n\n") + f.write("restartcalls=["+',\n'.join(['"{}"'.format(call) for call in copy_of_lists[1]])+"]\n\n") + f.write("multipopcalls=["+',\n'.join(['"{}"'.format(call) for call in copy_of_lists[2]])+"]\n\n") + + #v5 + f.write("v5restartcalls=["+',\n'.join(['"{}"'.format(call) for call in copy_of_lists[3]])+"]\n\n") + f.write("v5nonrestartcalls=["+',\n'.join(['"{}"'.format(call) for call in copy_of_lists[4]])+"]\n\n") + f.write("v5multipopcalls=["+',\n'.join(['"{}"'.format(call) for call in copy_of_lists[5]])+"]\n\n") + + diff --git a/testpackage/testpackage_vdf.py b/testpackage/testpackage_vdf.py deleted file mode 100644 index f73622fe..00000000 --- a/testpackage/testpackage_vdf.py +++ /dev/null @@ -1,273 +0,0 @@ -import analysator as pt -import sys, os -import numpy as np -import traceback - -runs = [] -runs.append( { 'name': 'ABC', - 'verifydir': 'testpackage_vdf/ABC/', - 'fileLocation': '/wrk-vakka/group/spacephysics/vlasiator/2D/ABC/distributions/', - 'pops': ['avgs'], - 'time': 100, - 'filename': None} ) -runs.append( { 'name': 'BCQ', - 'verifydir': 'testpackage_vdf/BCQ/', - 'fileLocation': '/wrk-vakka/group/spacephysics/vlasiator/2D/BCQ/bulk/', - 'pops': ['avgs'], - 'time': 1600, - 'filename': None } ) -runs.append( { 'name': 'BED', - 'verifydir': 'testpackage_vdf/BED/', - 'fileLocation': '/wrk-vakka/group/spacephysics/vlasiator/2D/BED/bulk/', - 'pops': ['avgs'], - 'time': 2000, - 'filename': None } ) -runs.append( { 'name': 'BFD', - 'verifydir': 'testpackage_vdf/BFD/', - 'fileLocation': '/wrk-vakka/group/spacephysics/vlasiator/2D/BFD/bulk/', - 'pops': ['proton','helium'], - 'time': 1000, - 'filename': None } ) -runs.append( { 'name': 'BCQr', - 'verifydir': 'testpackage_vdf/BCQr/', - 'fileLocation': '/wrk-vakka/group/spacephysics/vlasiator/2D/BCQ/restart/', - 'pops': ['avgs'], - 'time': 0, - 'filename': 'restart.0001361.vlsv' } ) -runs.append( { 'name': 'BFDr', - 'verifydir': 'testpackage_vdf/BFDr/', - 'fileLocation': '/wrk-vakka/group/spacephysics/vlasiator/2D/BFD/restart/', - 'pops': ['avgs'], - 'time': 0, - 'filename': 'restart.0001126.vlsv' } ) - -regularcalls = [ -# Input and output methods, nooverwrite -"pt.plot.plot_vdf(filename=fileLocation+bulkname, outputdir=outputLocation+'/'+REPLACEINDEX+'_', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(filedir=fileLocation, step=REPLACETIME, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, outputfile=outputLocation+REPLACEINDEX+'_outputfiletest.png', nooverwrite=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, outputfile=outputLocation+REPLACEPREVINDEX+'_outputfiletest.png', nooverwrite=1, coordre=REPLACECOORDRE)", - -# cellids, coordinates -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, cellids=REPLACECELLID)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, coordinates=REPLACECOORDINATES)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, cellids=REPLACEMULTIPLECELLID)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, coordinates=REPLACEMULTIPLECOORDINATES)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACEMULTIPLECOORDRE)", - -# Colorbar -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, coordre=REPLACEMULTIPLECOORDRE,cb_horizontal=True)", - - -# Thickness, scale -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, thick=0.5, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, thick=2.0, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, scale=0.5, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, scale=2.0, coordre=REPLACECOORDRE)", - -# Tick interval -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=1000, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=500, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=0.5,axisunit=6, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, tickinterval=1,axisunit=6, coordre=REPLACECOORDRE)", - -# msec musec titles -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='msec', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='musec', coordre=REPLACECOORDRE)", - -# B vector -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, coordre=REPLACECOORDRE)", - -# Zoom and units -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, box=[-2e6,2e6,-2e6,2e6], coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, box=[-2e6,2e6,-2e6,2e6],axisunit=0, coordre=REPLACECOORDRE)", - -# Watermarks -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, wmarkb=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NE', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='NW', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SE', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, wmark='SW', coordre=REPLACECOORDRE)", - -# Biglabels -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='A', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='B', biglabloc=0, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='C', biglabloc=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='D', biglabloc=2, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, biglabel='E', biglabloc=3, coordre=REPLACECOORDRE)", - -# title, axes, noborders -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title=r'$\mathcal{Title}$ and so forth $\odot$', cbtitle=r'$\mathcal{Color}$', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noborder=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noxlabels=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noxlabels=1,noborder=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1,noborder=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',cbtitle='',noylabels=1,noxlabels=1,noborder=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,nocb=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, title='',noylabels=1,noxlabels=1,noborder=1,internalcb=1, coordre=REPLACECOORDRE)", - -# slicethick -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=0, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=2, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=4, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, slicethick=1e3, coordre=REPLACECOORDRE)", - -# cellsize -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=0.5, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=2, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, cellsize=4, coordre=REPLACECOORDRE)", - -# fmin, fmax, setThreshold -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, fmin=1.e-14, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, fmax=1.e-12, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, fmin=1.e-14,fmax=1.e-12, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=1.e-20, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=1.e-15, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, setThreshold=0, coordre=REPLACECOORDRE)", - -# colormaps -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='nipy_spectral', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='jet', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='hot_desaturated_r', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='viridis', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='plasma', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='magma', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='warhol', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='bwr', coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, colormap='PuOr', coordre=REPLACECOORDRE)", - -# cbulk, center, bvector -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, cbulk=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, center=[-7e5,0,0], coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bvector=1, center=[2e5,2e5,2e5], coordre=REPLACECOORDRE)", - -# wflux -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, wflux=1, coordre=REPLACECOORDRE)", - -# directions -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, xy=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, xy=1,coordswap=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[0,0,5], coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, xz=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, xz=1,coordswap=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[0,1,0], coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, yz=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, yz=1,coordswap=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[-1,0,0], coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bpara=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bpara=1,coordswap=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bperp=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, bperp=1,coordswap=1, coordre=REPLACECOORDRE)", -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, normal=[1,1,1], coordre=REPLACECOORDRE)", -] - -multipopcalls = [ -"pt.plot.plot_vdf(vlsvobj=f, run=verifydir+REPLACEINDEX, pop='REPLACEPOP', coordre=REPLACECOORDRE)"] - - - -# count how many tests to run in total -ntests = [] -for i,run in enumerate(runs): - n = len(regularcalls) - for pop in run['pops']: - if pop!='avgs': - n += len(multipopcalls) - ntests.append(n) -nteststot = np.sum(np.array(ntests)) - -# How many jobs? -jobcount=int(sys.argv[1]) -jobcurr=int(sys.argv[2]) -increment = int(nteststot/jobcount) -remainder = nteststot - jobcount * increment -start=jobcurr * increment -end=start + increment -# Remainder frames are divvied out evenly among tasks -if jobcurr < remainder: - start = start + jobcurr - end = end + jobcurr + 1 -else: - start = start + remainder - end = end + remainder - -#print("nteststot",nteststot) -#print("jobcount",jobcount,"jobcurr",jobcurr,"start",start,"end",end) - -for j in range(start,end): - # Calculate which run - jrun = j - runid = 0 - while True: - if jrun