postprocessor{ }#

Calling sequence

postprocessor{ }

Properties

  • usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)

  • items: maximum 1

Dependencies

Functionality

A group allowing to run post-processing automatically after the simulation is done.

Attention

This group is ignored by default. It is active only when nextnano++ is run with an option --postprocessor.

Examples

General example

postprocessor{
    datafile = "query.bat"
    call = "query.bat"
    goto_output = yes
}

!DATA
# some list of commands here

Printing properties of the input file

postprocessor{
    datafile = "query.bat"
    call = "query.bat"
    goto_output = yes
}

!DATA

@echo off

@echo:

FOR %%? IN (*.*) DO (
    ECHO File Name Only       : %%~n?
    ECHO Name in 8.3 notation : %%~sn?
    ECHO File Extension       : %%~x?
    ECHO File Attributes      : %%~a?
    ECHO Located on Drive     : %%~d?
    ECHO File Size            : %%~z?
    ECHO Last-Modified Date   : %%~t?
    ECHO Parent Folder        : %%~dp?
    ECHO Fully Qualified Path : %%~f?
    ECHO FQP in 8.3 notation  : %%~sf?
    @echo:
)

@echo:

Moving the bias_00000Quantumamplitudes_quantum_region_Gamma.dat outside of the bias_00000Quantum directory (to bias_00000) and deleting the:output:bias_00000Quantum directory with the entire content.

Note

The removing command (rmdir) is called in the quiet mode (/q) such that no prompts occur and the script can be executed automatically.

postprocessor{
    datafile = "query.bat"
    call = "query.bat"
    goto_output = yes
}

!DATA

move "bias_00000\Quantum\amplitudes_quantum_region_Gamma.dat" "bias_00000\amplitudes_quantum_region_Gamma.dat"
rmdir /s /q "bias_00000\Quantum"

Nested keywords


datafile#

Calling sequence

postprocessor{ datafile }

Properties

  • usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)

  • type: character string

Functionality

If datafile is defined, then a file datafile is created in the output directory. The content of the !DATA section, if it exists, will be written into this file. Possible content in the !DATA section could be, e.g., comments, copyright or user info, or scripts in Python, Julia, Bash, Cmd, etc.

Example

postprocessor{
    datafile = "query.bat"
}

!DATA

dir

goto_output#

Calling sequence

postprocessor{ goto_output }

Properties

  • usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)

  • type: choice

  • values: yes or no

  • default: yes

Functionality

If goto_output = yes then the shell command defined by call will be launched from within the output directory. Otherwise, the directory from where nextnano++ has been launched will be used.

Warning

Setting goto_output = no may cause conflicts between jobs when running multiple jobs in parallel e.g. in nextnanomat or through a batch system such as HTCondor or Slurm.

Example

postprocessor{
    goto_output = no
    call = dir
}

call#

Calling sequence

postprocessor{ call }

Properties

  • usage: \(\mathrm{\textcolor{ForestGreen}{optional}}\)

  • type: character string

Functionality

If call is defined, then it is used as a shell command line, typically cmd on Windows and bash on Linux, which will be launched. This command line can, but does not have to, refer to a file defined by datafile.

Attention

Calling GUI based programs such as ParaView is also possible but may interfere with operation of job control tools such as nextnanomat or nextnanopy, as the job will only be considered finished once also all the post-processing tasks are finished.

Note

If nextnano++ is running through a batch system such as HTCondor or Slurm, the postprocessing is executed on the respective destination computer using the file systems available there.

Example

postprocessor{
    goto_output = yes
    call = dir
}


Last update: 2025-09-02