You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
4.2 KiB
72 lines
4.2 KiB
2 years ago
|
/*
|
||
|
* Copyright(C) 1999-2020, 2022 National Technology & Engineering Solutions
|
||
|
* of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
|
||
|
* NTESS, the U.S. Government retains certain rights in this software.
|
||
|
*
|
||
|
* See packages/seacas/LICENSE for details
|
||
|
*/
|
||
|
#pragma once
|
||
|
|
||
|
#include <string> // for string
|
||
|
struct Machine_Description;
|
||
|
struct Problem_Description;
|
||
|
struct Solver_Description;
|
||
|
template <typename INT> struct LB_Description;
|
||
|
template <typename INT> struct Weight_Description;
|
||
|
|
||
|
/* Prototype for command-line parsing function */
|
||
|
template <typename INT>
|
||
|
int cmd_line_arg_parse(
|
||
|
int argc, /* The command line argument count */
|
||
|
char *argv[], /* The command line arguments array */
|
||
|
std::string &exoII_inp_file, /* The ExodusII input FEM file name */
|
||
|
std::string &ascii_inp_file, /* The ASCII input file name */
|
||
|
std::string &nemI_out_file, /* The output NemesisI file name */
|
||
|
Machine_Description *machine, /* Pointer to structure in which to place machine
|
||
|
* information */
|
||
|
LB_Description<INT> *lb, /* Pointer to structure in which to place load
|
||
|
* balance parameters */
|
||
|
Problem_Description *prob, /* Pointer to structure in which to place general
|
||
|
* information about the run */
|
||
|
Solver_Description *solver, /* Pointer to structure in which to place parameters
|
||
|
* for the eigensolver */
|
||
|
Weight_Description<INT> *weight /* Pointer to structure in which to place parameters
|
||
|
* for the graph weighting scheme */
|
||
|
);
|
||
|
|
||
|
/* Prototype for function which reads in the ASCII input file */
|
||
|
template <typename INT>
|
||
|
int read_cmd_file(std::string &ascii_inp_file, /* The ASCII input file name */
|
||
|
std::string &exoII_inp_file, /* The ExodusII input FEM file name */
|
||
|
std::string &nemI_out_file, /* The output NemesisI file name */
|
||
|
Machine_Description *machine, /* Pointer to structure in which to place machine
|
||
|
* information */
|
||
|
LB_Description<INT> *lb, /* Pointer to structure in which to place load
|
||
|
* balance parameters */
|
||
|
Problem_Description *problem, /* Pointer to structure in which to place general
|
||
|
* information about the run */
|
||
|
Solver_Description *solver, /* Pointer to structure in which to place parameters
|
||
|
* for the eigensolver */
|
||
|
Weight_Description<INT> *weight /* Pointer to structure in which to place
|
||
|
* parameters for the eigensolver */
|
||
|
);
|
||
|
|
||
|
/* Prototype for function which checks the user specified input */
|
||
|
template <typename INT>
|
||
|
int check_inp_specs(std::string &exoII_inp_file, /* The ExodusII input FEM file name */
|
||
|
std::string &nemI_out_file, /* The output NemesisI file name */
|
||
|
Machine_Description *machine, /* Pointer to structure in which to place machine
|
||
|
* information */
|
||
|
LB_Description<INT> *lb, /* Pointer to structure in which to place load
|
||
|
* balance parameters */
|
||
|
Problem_Description *prob, /* Pointer to structure in which to place general
|
||
|
* information about the run */
|
||
|
Solver_Description *solver, /* Pointer to structure in which to place parameters
|
||
|
* for the eigensolver */
|
||
|
Weight_Description<INT> *weight /* Pointer to structure in which to place
|
||
|
* parameters for the weighting scheme */
|
||
|
);
|
||
|
|
||
|
/* Various defines used by the input routines */
|
||
|
#define NS_NONE -1
|