BOUT++

Contacts: Orso Meneghini, Theresa Wilks, Cody Moynihan

Short Description

Run the BOUT++ code

Keywords

BOUT++, Fluid Turbulence

Long Description

This module prepares the input, runs, and postprocesses the output of the BOUT++ code.

Typical workflows

The BOUT++ module handles building of the BOUT++ user model, execution, data fetching and post-processing

  1. The input files of BOUT++ need to be set

    • the script .cxx root[‘INPUTS’][‘CXX’] as OMFITascii

    • the option file BOUT.inp root[‘INPUTS’][‘INP’] as OMFITini

    • the NetCDF grid file .nc (optional) root[‘INPUTS’][‘GRID’] as OMFITnc

    • the NetCDF restarting files BOUT.restart.*.nc (optional) [‘RESTART’][‘data/BOUT.restart.*.nc’] as OMFITnc

  2. Running BOUT++

    • The run of BOUT++ can be made by the execution of root[‘SCRIPTS’][‘runBOUT++’].

    • If a sweep over mode numbers is preferred, execution of root[‘SCRIPTS’][‘batchrun’] is useful.

    • The output can be pre-visualized in the console of OMFIT.

    • The run of BOUT++ can be aborted, continuing the script root[‘SCRIPTS’][‘runBOUT++’] or completely killed.

    • When the run of BOUT++ is done, the output files are saved into

      • root[‘OUTPUTS’][‘LOG’] a OMFITascii type for the BOUT.log.* files

      • root[‘OUTPUTS’][‘DATA’] a single merged OMFITnc type for the BOUT.dmp.*.nc data files This file is obtained by merging the output data files BOUT.dmp.*.nc by the script root[‘SCRIPTS’][‘fetchBOUT++’]

      • root[‘OUTPUTS’][‘RESTART’] a OMFITnc type for the last time step needed for restarting the BOUT++ run

  3. Post-running / Analysis

    • Saving of data to root['Saves'] can be achieved through the GUI root['GUIS']['SAVE'].

    • Data visualization is available via the GUIs root['GUIS']['BOUT++_Analysis'] and root['GUIS']['BOUT++_ScanAnalysis'].

    • The GUI root['GUIS']['BOUT++_Analysis'] allows the following for a single run

      • Plot of the linear log growth rate

      • Plot of 1D mode structure vs. Psi

      • Plot of 2D mode structure

    • The GUI root['GUIS']['BOUT++_ScanAnalysis'] allows the following for multiple runs

      • Plot the 1D mode structure for each run on the same figure

      • Plot the growth rate vs. n for multiple trends

Supported devices

  • Device independent

Relevant publications

  • B D Dudson, M. V. Umansky, X. Q. Xu, P. B. Snyder, H. R. Wilson: BOUT++: a framework for parallel plasma fluid simulations. Computer Physics Communications 180 (2009), pp. 1467-1480 doi:10.1016/j.cpc.2009.03.008

Contributors

List of contributors sorted by number of lines authored:

630 Cody Moynihan
281 Orso Meneghini
 93 Sterling Smith
 90 Fusion Bot
 69 Galina Avdeeva
 58 Theresa Wilks
 37 Olivier Izacard

Users

List of usernames sorted by number of module imports: wilkstm, moynihanc, meneghini, binchen, cmoynih2, train41, jgchen, twilks, luxin, wangy, luoyiming, oizacard, tang31, train45, wanghuiqian, zhuyiren, eldond, izacard, train33, train35, david, izacardo, josephi, smithsp, train37, train47, train48, umansky1, zhhwang, carbinj, chenj, drsmith, duhl, greendl1, guowf, halpernf, hhwang, izzov, jlchen, lizj, mfitz, namili, nelsonand, parkjm, rchurchi, shenders, shisy, snyder, teklua, train31, train36, train38, train39, train43, train46, train50, train53, umansky, wangzhuo, wangzw, willensdorferm, wuxh, xiangjian, xingz, xugl, yuguanying