Source code for upxo.interfaces.user_inputs.gather_user_inputs

import xlrd
import os
# Extract gridding parameters
import upxo.interfaces.user_inputs.uidata_mcgs_gridding_definitions as ip_griddef
# Exrtact simulation parametrs
import upxo.interfaces.user_inputs.uidata_mcgs_simpar as ip_simpar
# Extract parameters for grain structure analysis
import upxo.interfaces.user_inputs.uidata_mcgs_grain_structure_characterisation as ip_gschar
# Extract interval counts which trigger speciric operations
import upxo.interfaces.user_inputs.uidata_mcgs_intervals as ip_mcintervals
# Extract grain structrue property calculation parameters (bools)
import upxo.interfaces.user_inputs.uidata_mcgs_property_calc as ip_propcalc
# Extract grain geometric representation flags
import upxo.interfaces.user_inputs.uidata_mcgs_generate_geom_reprs as ip_gengeorepr
# Extract the user input data on meshing
import upxo.interfaces.user_inputs.uidata_mcgs_mesh as ip_mesh
# Load user input data
# import upxo.interfaces.user_inputs.mcgsudata as _load_user_input_data_

def _load_user_input_data_(xl_fname='input_dashboard.xls'):
    """
    CALL:
        from upxo.interfaces.user_inputs.gather_user_inputs import _load_user_input_data_
        uidata = _load_user_input_data_(xl_fname='input_dashboard.xls')
    Load user input data from an excel file
    """
    # get the current fil's path
    current_file_path = os.path.dirname(os.path.abspath(__file__))
    print(current_file_path)
    # get the path to the input_dashboard.xls file
    xl_fname = os.path.join(current_file_path, xl_fname)
    print(xl_fname)
    workbook = xlrd.open_workbook(xl_fname)
    _sheet_, uidata = workbook.sheet_by_index(0), {}
    for r in range(_sheet_.nrows):
        cellname = _sheet_.cell_value(r, 0)
        cellvalue = _sheet_.cell_value(r, 1)
        uidata[cellname] = cellvalue
    return uidata

[docs] def load_uidata(input_dashboard): """ CALL: from upxo.interfaces.user_inputs.gather_user_inputs import load_uidata uidata = load_uidata(input_dashboard='input_dashboard.xls') """ # Load user input data __ui = _load_user_input_data_(xl_fname=input_dashboard) # Extract gridding parameters uigrid = ip_griddef._uidata_mcgs_gridding_definitions_(__ui) # Exrtact simulation parametrs uisim = ip_simpar._uidata_mcgs_simpar_(__ui) # Extract parameters for grain structure analysis uigsc = ip_gschar._uidata_mcgs_grain_structure_characterisation_(__ui) # Extract interval counts which trigger speciric operations uiint = ip_mcintervals._uidata_mcgs_intervals_(__ui) # Extract grain structrue property calculation parameters (bools) uigsprop = ip_propcalc._uidata_mcgs_property_calc_(__ui) # Extract grain geometric representation flags uigeorep = ip_gengeorepr._uidata_mcgs_generate_geom_reprs_(__ui) # Extract the user input data on meshing uimesh = ip_mesh._uidata_mcgs_mesh_(__ui) data = { 'uigrid': uigrid, 'uisim': uisim, 'uigsc': uigsc, 'uiint': uiint, 'uigsprop': uigsprop, 'uigeorep': uigeorep, 'uimesh': uimesh } return data