Source code for odatse._main

# SPDX-License-Identifier: MPL-2.0
#
# ODAT-SE -- an open framework for data analysis
# Copyright (C) 2020- The University of Tokyo
#
# This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.

import sys
import odatse

[docs] def main(): """ Main function to run the data-analysis software for quantum beam diffraction experiments on 2D material structures. It parses command-line arguments, loads the input file, selects the appropriate algorithm and solver, and executes the analysis. """ info, run_mode = odatse.initialize() alg_module = odatse.algorithm.choose_algorithm(info.algorithm["name"]) solvername = info.solver["name"] if solvername == "analytical": from .solver.analytical import Solver else: if odatse.mpi.rank() == 0: print(f"ERROR: Unknown solver ({solvername})") sys.exit(1) solver = Solver(info) runner = odatse.Runner(solver, info) alg = alg_module.Algorithm(info, runner, run_mode=run_mode) result = alg.main()