Recent Changes

Friday, April 6

  1. page home edited THIS WIKI IS GOING AWAY! But don't worry, because the VMECwiki is being moved over to BitBucket…

    THIS WIKI IS GOING AWAY!
    But don't worry, because the VMECwiki is being moved over to BitBucket. While not all features are mirrored, the vast majority of information on these pages has been copied over there. For this reason the VMECwiki has ben switched over to write-only. Please use the bitbucket wiki in the future.

    VMECwiki
    {NCSX_art_sm.png} NCSX VMEC Free boundary run with coils
    The VMECwiki is designed to provide user documentation for various equilibrium magnetic confinement fusion codes. It is the goal of this wiki to forward the development of fusion science by bridging the gap between 'scientific' and 'engineering' approaches to software. This is achieved through coherent documentation of codes with regards to their purpose, usage, and capabilities. Each page contains relevant information regarding the theory behind each code, input formats, execution, output formats, visualization, and tutorials. Members encouraged to participate in discussions (tab at the top of each page) and to contribute to the pages themselves. The wiki is not a repository for codes. It is suggested that authors upload their codes through external sites designed to handle such capabilities. Pages are maintained by organizers and members are encouraged to make commentary and provide content through the discussions on each page. To learn more about VMEC please see the pages below and check out the VMEC Users Group page. If you are new to using Wiki's please see the New User Page.
    Please note that accounts are only necessary if you wish to EDIT the pages.
    ...
    tag="codepage" homeAtTop="on" limit="50" ]]limit="50"]]
    (view changes)
    4:34 am

Friday, March 2

  1. tag_add REGCOIL tagged public
    6:53 am
  2. tag_add REGCOIL tagged codepage
    6:52 am
  3. page REGCOIL edited REGCOIL Integration within STELLOPT This is a stub. TheoryTheory Here's the section to explai…

    REGCOIL Integration within STELLOPT
    This is a stub.
    TheoryTheory
    Here's the section to explain the theory behind the code.
    CompilationCompilation
    Here's the section to explain how to compile the code.
    https://github.com/landreman/regcoil
    Input Data FormatInput
    Explain how the input data is organized.
    ExecutionExecution
    Explain how to execute the code and what it produces.
    Output Data FormatOutput
    Explain how the output data is formatted.
    VisualizationVisualization
    Explain how to visualize the data.
    TutorialsTutorials
    Put links to tutorial pages here.

    (view changes)
    6:50 am

Thursday, March 1

  1. page SFINCS edited ... # SFINCS Options ####################################################################### H…
    ...
    # SFINCS Options
    #######################################################################
    Here, set
    LSFINCS = T
    Also, set SFINCS_DIR and PETSC_DIR appropriately for your system. Now build STELLOPTV2. This should generate an executable xstelloptv2 that is linked to SFINCS.
    Input Data FormatInput
    Explain how
    "vboot" iterationsInput
    To obtain a self-consistent profile of bootstrap current, each call to (PAR)VMEC is replaced by an iteration between VMEC and a bootstrap current code (SFINCS, or perhaps some other code like BOOTSJ). VMEC takes a given profile of toroidal current and computes
    the input datamagnetic geometry. Then the bootstrap current code takes the given magnetic geometry and computes an updated current profile. The process is organized.
    ExecutionExecution
    Explain how
    repeated until convergence. These iterations are coordinated by STELLOPT, in the file STELLOPTV2/Sources/General/stellopt_vboot.f90. The switch to executeturn on this iteration in STELLOPTV2 is
    equil_type = 'vboot'
    in
    the &optimum namelist, instead of the usual settings 'vmec2000' or 'parvmec'. To select which code is used to compute the bootstrap current, you should include
    bootcalc_type='sfincs'
    or
    bootcalc_type='bootsj'
    in the &optimum namelist. In this namelist you should also specify
    vboot_tolerance = 1.e-2
    or some other value; this variable controls the number of iterations that will be performed between VMEC
    and whatthe bootstrap current code, with a smaller tolerance leading to more iterations.
    For further mathematical details of the vboot iteration, see the note doc/computing_vmec_AC_profile_from_a_bootstrap_current_code
    SFINCS input parametersExecution
    When SFINCS is run as a standalone code,
    it produces.
    Output Data FormatOutput
    Explain how
    reads several namelists (&general, &geometryParameters, etc.) from a file named input.namelist. However when SFINCS is run via STELLOPT, these namelists should all be appended to the output datamain STELLOPT input.* file. If there is formatted.an input.namelist file present, it will not be read by SFINCS.
    For detailed documentation of the SFINCS input namelists and parameters, see the SFINCS user manual.
    The following SFINCS input parameters must all be specified in the input file:
    equilibriumFile
    inputRadialCoordinate
    inputRadialCoordinateForGradients
    psiN_wish
    nHats
    THats
    dnHatdpsiNs
    dTHatdpsiNs
    These parameters will all be over-written by STELLOPT.
    There are several parameters related to the SFINCS-STELLOPT interaction that are not used with standalone SFINCS, and which should be specified in the &optimum namelist. First, sfincs_s should be set to a real array with entries in (0,1], giving the radii (in terms of normalized toroidal flux s) at which SFINCS will be run. Do not include 0 as a radius, since the bootstrap current always vanishes on axis. Depending on the density and temperature profiles, you may or may not wish to include 1 as a radius; if either the density or temperature vanish at s=1 then SFINCS will fail there.
    Also, sfincs_min_procs should be set to an integer giving the minimum number of processors allocated to SFINCS for each magnetic surface.
    Parallelization considerationsExecution
    ...
    SFINCS numerical resolution parametersExecution
    It is important to tune the SFINCS resolution parameters Ntheta, Nzeta, Nxi, and Nx based on the magnetic geometry and collisionality. If these values are too low, the SFINCS calculation will be under-resolved. If these resolution parameters are too high, the SFINCS calculations will take unnecessary computational time and memory. It is recommended that you do convergence testing using standalone SFINCS (not using STELLOPT) any time you make significant changes to the density, temperature, or magnetic geometry. (Small modifications to magnetic geometry, as arise during optimization, will not require changes to SFINCS resolution, but major changes such as switching from W7-X to NCSX will require resolution changes.) For detailed instructions on resolution convergence testing, see the chapter of the SFINCS user manual on `Numerical resolution parameters.'

    VisualizationVisualization
    Explain how to visualize the data.
    (view changes)
    11:19 am
  2. page SFINCS edited SFINCS Put SFINCS is a blurb here explaining what code that solves the drift-kinetic equa…

    SFINCS
    Put
    SFINCS is a blurb here explaining whatcode that solves the drift-kinetic equation to compute many neoclassical quantities, such as the collisional radial fluxes, parallel flows, and bootstrap current. The code doeshas a separate GitHub repository here
    https://github.com/landreman/sfincs
    and is not included in the main STELLOPT repository. This page describes one particular application of SFINCS: coupling to STELLOPT in order to obtain MHD equilibria with a self-consistent profile of bootstrap current. For other applications, you can refer directly to the SFINCS GitHub repository
    and howthe user manual there.
    RequirementsCompilation
    SFINCS requires a real (not complex) version of PETSc. There is basically no way for an executable to link to both real and complex versions of PETSc, and since GENE uses a complex version of PETSc, this means SFINCS and GENE cannot both be linked to STELLOPT at the same time. (Although perhaps GENE could be built without PETSc support?)
    SFINCS requires that the PETSc library be built with either MUMPS or SuperLU_DIST, which are libraries for parallel direct solution of sparse linear systems. MUMPS is preferable to SuperLU_DIST, as
    it does it.
    TheoryTheory
    Here's
    is faster and uses less memory.
    SFINCS also requires
    the sectionHDF5 and NetCDF libraries.
    Installing, compiling, and linkingCompilation
    To get SFINCS, clone the git repository:
    git clone https://github.com/landreman/sfincs.git
    Compile SFINCS following the directions in the SFINCS user manual. A library file libsfincs.a will be generated that we will link into STELLOPT.
    Next, in your STELLOPT repository, you must (at least for now) switch
    to explain the theory behind"sfincs" branch of the code.
    CompilationCompilation
    Here's
    repo. To do this, type
    git checkout sfincs
    from anywhere in the STELLOPT repository.
    In your stellopt make_*.inc file, look for
    the section
    #######################################################################
    # SFINCS Options
    #######################################################################
    Here, set
    LSFINCS = T
    Also, set SFINCS_DIR and PETSC_DIR appropriately for your system. Now build STELLOPTV2. This should generate an executable xstelloptv2 that is linked
    to explain how to compile the code.SFINCS.
    Input Data FormatInput
    Explain how the input data is organized.
    (view changes)
    6:59 am
  3. tag_add SFINCS tagged public
    6:35 am
  4. page home edited ... The VMECwiki is designed to provide user documentation for various equilibrium magnetic confin…
    ...
    The VMECwiki is designed to provide user documentation for various equilibrium magnetic confinement fusion codes. It is the goal of this wiki to forward the development of fusion science by bridging the gap between 'scientific' and 'engineering' approaches to software. This is achieved through coherent documentation of codes with regards to their purpose, usage, and capabilities. Each page contains relevant information regarding the theory behind each code, input formats, execution, output formats, visualization, and tutorials. Members encouraged to participate in discussions (tab at the top of each page) and to contribute to the pages themselves. The wiki is not a repository for codes. It is suggested that authors upload their codes through external sites designed to handle such capabilities. Pages are maintained by organizers and members are encouraged to make commentary and provide content through the discussions on each page. To learn more about VMEC please see the pages below and check out the VMEC Users Group page. If you are new to using Wiki's please see the New User Page.
    Please note that accounts are only necessary if you wish to EDIT the pages.
    ...
    tag="codepage" homeAtTop="on" limit="20"]]limit="50" ]]
    (view changes)
    6:32 am
  5. tag_add SFINCS tagged codepage
    6:30 am
  6. page SFINCS edited SFINCS Put a blurb here explaining what the code does and how it does it. TheoryTheory Here's…

    SFINCS
    Put a blurb here explaining what the code does and how it does it.
    TheoryTheory
    Here's the section to explain the theory behind the code.
    CompilationCompilation
    Here's the section to explain how to compile the code.
    Input Data FormatInput
    Explain how the input data is organized.
    ExecutionExecution
    Explain how to execute the code and what it produces.
    Output Data FormatOutput
    Explain how the output data is formatted.
    VisualizationVisualization
    Explain how to visualize the data.
    TutorialsTutorials
    Put links to tutorial pages here.

    (view changes)
    6:27 am

More