TARDIGRADE-EXAMPLES CLI

config_software.py

Configure software paths in a YAML file

usage: sphinx-build [-h] --config-file CONFIG_FILE

Named Arguments

--config-file

The YAML file to write software paths

peta.py

Copy DNS results from the CU Peta library to the output directory

usage: sphinx-build [-h] --source-directory SOURCE_DIRECTORY
                    --output-directory OUTPUT_DIRECTORY

Named Arguments

--source-directory

The source directory of DNS simulation results

--output-directory

The output directory destination.

DNS_Abaqus.build_dynamic_elastic_cylinder.py

Create an Abaqus model of an elastic cylinder under dynamic compression

usage: abaqus cae -noGui build_dynamic_elastic_cylinder.py -- 
       [-h] --model-name MODEL_NAME --diam DIAM --height HEIGHT --seed SEED
       --material-E MATERIAL_E --material-nu MATERIAL_NU --material-rho
       MATERIAL_RHO --total-force TOTAL_FORCE --duration DURATION --num-steps
       NUM_STEPS [--fix-lateral-dofs] [--finite-rise FINITE_RISE]

Named Arguments

--model-name

Specify the name of the model

--diam

Specify the diameter (mm) of the cylinder

--height

Specify the height (mm) of the cylinder

--seed

Specify the approximate global seed size (mm) for meshing

--material-E

Specify the elastic modulus (MPa) of the material

--material-nu

Specify the Poisson ratio of the material

--material-rho

Specify the density (g/cm^3) of the material. This value will be multiplied by 1.00e-9 to convert to units of tonne/mm^3

--total-force

Specify the force applied to cylinder.

--duration

Specify the duration of the simulation.

--num-steps

Specify the number of fixed time increments.

--fix-lateral-dofs

Option to force all x- and y-displacements to be fixed

Default: False

--finite-rise

Optional extra number of time steps over which to to ramp force

DNS_Abaqus.build_elastic_cylinder.py

Create an Abaqus model of an elastic cylinder under static compression

usage: abaqus cae -noGui build_elastic_cylinder.py --  [-h] --model-name
                                                       MODEL_NAME --diam DIAM
                                                       --height HEIGHT --seed
                                                       SEED --material-E
                                                       MATERIAL_E
                                                       --material-nu
                                                       MATERIAL_NU
                                                       --material-rho
                                                       MATERIAL_RHO
                                                       --disp-fact DISP_FACT
                                                       --num-steps NUM_STEPS
                                                       --BCs BCS

Named Arguments

--model-name

Specify the name of the model

--diam

Specify the diameter (mm) of the cylinder

--height

Specify the height (mm) of the cylinder

--seed

Specify the approximate global seed size (mm) for meshing

--material-E

Specify the elastic modulus (MPa) of the material

--material-nu

Specify the Poisson ratio of the material

--material-rho

Specify the density (g/cm^3) of the material. This value will be multiplied by 1.00e-9 to convert to units of tonne/mm^3

--disp-fact

Specify the multiplicative factor of the sample height by which the model will be compressed

--num-steps

Specify the fixed number of steps to simulate

--BCs

The type of boundary conditions, either “slip” or “clamp”

DNS_Abaqus.dynamic_analytical_comparison.py

Plot dynamic Abaqus results against an analytical solution

usage: python dynamic_analytical_comparison.py  [-h] -i INPUT_FILE
                                                [INPUT_FILE ...]
                                                [-o OUTPUT_FILE] --x-path
                                                X_PATH --y-path Y_PATH
                                                --x-label X_LABEL --y-label
                                                Y_LABEL --x-units X_UNITS
                                                --y-units Y_UNITS
                                                [--diam DIAM]
                                                [--height HEIGHT]
                                                [--material-E MATERIAL_E]
                                                [--material-rho MATERIAL_RHO]
                                                [--total-force TOTAL_FORCE]
                                                [--duration DURATION]
                                                [--num-steps NUM_STEPS]
                                                [--csv-file CSV_FILE]
                                                [--series-plot SERIES_PLOT]

Named Arguments

-o, --output-file

The output file for plotting

Default: 'dynamic_analytical_comparison.png'

--diam

Specify the diameter (mm) of the cylinder. This values will be multiplied by 1.e-3 to convert to units of m

--height

Specify the height (mm) of the cylinder. This values will be multiplied by 1.e-3 to convert to units of m

--material-E

Specify the elastic modulus (MPa) of the material. This value will be multiplied by 1.6 to convert to units of Pa.

--material-rho

Specify the density (g/cm^3) of the material. This value will be multiplied by 1.00e3 to convert to units of kg/m^3

--total-force

Specify the force (N) applied to cylinder.

--duration

Specify the duration of the simulation.

--num-steps

Specify the number of fixed time increments.

required named arguments

-i, --input-file

The HDF5 dataset file containing Abaqus results

--x-path

The HDF5 path to the x data

--y-path

The HDF5 path to the y data

--x-label

The label (without units) for the x data

--y-label

The label (without units) for the y data.

--x-units

The dependent (x-axis) units string.

--y-units

The independent (y-axis) units string.

--csv-file

Name of output CSV file.

--series-plot

Name of the output series convergence plot for summation terms.

DNS_Abaqus.extract_history.py

Plot Abaqus history output for force versus displacement

usage: python extract_history.py  [-h] -i INPUT_FILE [INPUT_FILE ...] --x-path
                                  X_PATH --y-path Y_PATH --x-label X_LABEL
                                  --y-label Y_LABEL --x-units X_UNITS
                                  --y-units Y_UNITS [--csv_file CSV_FILE] -o
                                  OUTPUT_FILE

Named Arguments

-o, --output-file

The output file for plotting

required named arguments

-i, --input-file

The Xarray Dataset file(s)

--x-path

The HDF5 path to the x data

--y-path

The HDF5 path to the y data

--x-label

The label (without units) for the x data

--y-label

The label (without units) for the y data.

--x-units

The dependent (x-axis) units string.

--y-units

The independent (y-axis) units string.

--csv_file

Name of output CSV file.

DNS_Abaqus.extract_frames.py

Extracts 3D field output from a completed Abaqus simulation to save as 2D image

usage: abaqus cae -noGui extract_frames.py --  [-h] -i INPUT_FILE -o
                                               OUTPUT_FILE [--frame FRAME]
                                               --field FIELD

Named Arguments

-i, --input-file

The Abaqus input file created by build_model.py.

-o, --output-file

The modified Abaqus input file

--frame

Simulation frame number to extract field output. Final frame will be plotted if nothing is specified.

--field

Field to extract

DNS_Abaqus.modify_input.py

Modify Abaqus input file to output ‘COORD’ at integration points

usage: modify_input.py [-h] [-i INPUT_FILE] [-o OUTPUT_FILE]

Named Arguments

-i, --input-file

The Abaqus input file created by build_model.py.

-o, --output-file

The modified Abaqus input file

DNS_Abaqus.ODBextract_to_XDMF.py

Convert Abaqus DNS results to XDMF format

usage: ODBextract_to_XDMF.py [-h] [-i INPUT_FILE] [-o OUTPUT_FILE]
                             [--elem-path ELEM_PATH] [--node-path NODE_PATH]
                             [--mesh-path MESH_PATH] [-c COLLOCATION_OPTION]
                             [--velocities VELOCITIES]
                             [--accelerations ACCELERATIONS]
                             [--specific-frames SPECIFIC_FRAMES [SPECIFIC_FRAMES ...]]
                             [--ref-density REF_DENSITY]
                             [--dump-all-33-stresses DUMP_ALL_33_STRESSES]

Named Arguments

-i, --input-file

Specify the input hdf5 file generated from odb_extract

-o, --output-file

Specify the output filename for the h5 + XDMF file pair

--elem-path

Specify the hdf5 group path to element fields

--node-path

Specify the hdf5 group path to nodal fields

--mesh-path

Specify the hdf5 group path to mesh data

-c, --collocation-option

Specify the method for collocation, either “qp” for quadrature points or “center” for element center.

Default: 'ip'

--velocities

String specifying “True” or “False” if velocities are to be extracted

Default: 'False'

--accelerations

String specifying “True” or “False” if accelerations are to be extracted

Default: 'False'

--specific-frames

A list of floats corresponding to the frames to extract

--ref-density

The reference density of the material in g/cm^3

Default: 2.0

--dump-all-33-stresses

Optional filename to dump all 33 stresses from DNS

DNS_Ratel.build_options_file.py

Write Ratel options file

usage: build_options_file.py [-h] -o OUTPUT_FILE --material-E MATERIAL_E
                             --material-nu MATERIAL_NU --material-rho
                             MATERIAL_RHO --top-id TOP_ID --bottom-id
                             BOTTOM_ID --num-steps NUM_STEPS --displacement
                             DISPLACEMENT --BCs BCS

Named Arguments

-o, --output-file

The name of the Ratel options file to output

--material-E

The material’s elastic modulus

--material-nu

The material’s Poisson ratio

--material-rho

The material’s density

--top-id

The id of the top surface

--bottom-id

The id of the bottom surface

--num-steps

The number of steps for the simulation

--displacement

The displacement to apply to the top surface

--BCs

The type of boundary conditions, either ‘slip’ or ‘clamp’

DNS_Ratel.plot_force_displacement.py

Process force-displacement from Ratel DNS results

usage: python plot_force_displacement.py  [-h] --csv-file CSV_FILE
                                          --output-file OUTPUT_FILE
                                          --output-csv OUTPUT_CSV --face-id
                                          FACE_ID --final-disp FINAL_DISP
                                          [--force-col FORCE_COL]
                                          [--header-row HEADER_ROW]
                                          [--force-factor FORCE_FACTOR]

Named Arguments

--csv-file

The csv file containing force results

--output-file

The name of the output file of collected results

--output-csv

The name of the output csv file

--face-id

The face id (or ids) of forces to process

--final-disp

The final displacement (mm) to linearly ramp over simulation duration

--force-col

The column containing desired force information

Default: 'force_z'

--header-row

The row containing the headers

Default: 0

--force-factor

The factor to scale force

Default: 1

DNS_Ratel.vtk_to_xdmf.py

Convert Ratel DNS results to XDMF format

usage: vtk_to_xdmf.py [-h] [-i INPUT_FILES [INPUT_FILES ...]] [-o OUTPUT_FILE]
                      [--dist-factor DIST_FACTOR]
                      [--stress-factor STRESS_FACTOR]
                      [--ref-density REF_DENSITY]
                      [--density-factor DENSITY_FACTOR]
                      [--dump-all-33-stresses DUMP_ALL_33_STRESSES]

Named Arguments

-i, --input-files

Specify the input VTK files containing Ratel DNS results

-o, --output-file

Specify the output filename for the h5 + XDMF file pair

--dist-factor

Optional argument to scale DNS displacements and coordinates

Default: 1

--stress-factor

Optional argument to scale DNS stresses

Default: 1

--ref-density

Optional argument to specify the reference density to be converted to current density by the Jacobian of deformation if current density is not reported in the DNS results

Default: 2e-09

--density-factor

Optional factor to scale current density (if provided in the DNS results to Mg/tonne^3

Default: 1

--dump-all-33-stresses

Optional filename to dump all 33 stresses from DNS

Filter.bounds_from_DNS.py

Create a csv containing the extents of a DNS file

usage: bounds_from_DNS.py [-h] -d DNS_FILE -o OUTPUT_FILE [--coord COORD]

Named Arguments

-d, --dns-file

The name of the input XDMF file containing DNS results

-o, --output-file

The name of the output csv file of bounding information

--coord

The name of the coordinate field

Default: 'coord'

Filter.build_filter_config.py

Write the configuration file for the Micromorphic Filter

usage: build_filter_config.py [-h] -o OUTPUT_FILE --job-name JOB_NAME
                              --dns-file DNS_FILE --macro-file MACRO_FILE
                              --volume VOLUME --density DENSITY
                              --cauchy-stress CAUCHY_STRESS --displacement
                              DISPLACEMENT [--velocity VELOCITY]
                              [--acceleration ACCELERATION]
                              [--max-parallel MAX_PARALLEL]

Named Arguments

-o, --output-file

Specify the output filename for filter configuration

--job-name

Specify the name of the job for the Micromorphic Filter

--dns-file

Specify the name of the XDMF file containing DNS data

--macro-file

Specify the name of the macroscale filter domain file

--volume

Specify the string identifying volume quantities located in “dns-file”

--density

Specify the string identifying density quantities located in “dns-file”

--cauchy-stress

Specify the string identifying stress quantities located in “dns-file”

--displacement

Specify the string identifying displacement quantities located in “dns-file”

--velocity

Optional string identifying velocity quantities located in “dns-file”

--acceleration

Optional string identifying acceleration quantities located in “dns-file”

--max-parallel

Optional parameter defining the number of parallel processes for the Micromorphic Filter

Filter.collect_multi_domain_errors.py

Collect balance equation errors across filter domain studies

usage: python collect_multi_domain_errors.py  [-h] --csv-files CSV_FILES
                                              [CSV_FILES ...] --num-domains
                                              NUM_DOMAINS [NUM_DOMAINS ...]
                                              --output-file OUTPUT_FILE

Named Arguments

--csv-files

A list of csv files containing balance equation errors

--num-domains

A list of integers corresponding to the number of filtering domains associated with results contained in each csv file.

--output-file

The name of the output file of collected results

Filter.collect_multi_domain_stats.py

Collect statistics of a homogenized micromorphic quantity across filter domain studies

usage: python collect_multi_domain_stats.py  [-h] --csv-files CSV_FILES
                                             [CSV_FILES ...] --num-domains
                                             NUM_DOMAINS [NUM_DOMAINS ...]
                                             [--output-file OUTPUT_FILE]
                                             [--box-plot BOX_PLOT]
                                             [--narrow NARROW]

Named Arguments

--csv-files

A list of csv files containing information to collect

--num-domains

A list of integers corresponding to the number of filtering domains associated with results contained in each csv file.

--output-file

The name of the output file of collected results

--box-plot

The name of an optional box and whisker plot

--narrow

Optional flag to make a narrow box plot

Filter.force_bounds.py

Create a csv file containing information for a bounding box encompassing all DNS points

usage: force_bounds.py [-h] -o OUTPUT_FILE --xmin XMIN --xmax XMAX --ymin YMIN
                       --ymax YMAX --zmin ZMIN --zmax ZMAX

Named Arguments

-o, --output-file

The name of the output csv file of bounding informaiton

--xmin

The minimum x-value

--xmax

The maximum x-value

--ymin

The minimum y-value

--ymax

The maximum y-value

--zmin

The minimum z-value

--zmax

The maximum z-value

Filter.parse_balance_errors.py

Parse balance equation errors from Micromorphic Filter standard output

usage: parse_balance_errors.py [-h] [-i INPUT_FILE] --output-csv OUTPUT_CSV
                               [--output-plot OUTPUT_PLOT]

Named Arguments

-i, --input-file

The standard out file produced when running the Micromorphic Filter

--output-csv

Name of output csv file summarizing output for each timestep

--output-plot

Optional filename to plot balance equation errors

Filter.run_micromorphic_filter.py

Run the Micromorphic Filter

usage: run_micromorphic_filter.py [-h] --config-file CONFIG_FILE

Named Arguments

--config-file

Specify the filter configuration file

Filter.single_macroscale.py

Write a single macroscale domain file for the Micromorphic Filter

usage: single_macroscale.py [-h] -o OUTPUT_FILE
                            [--single-points SINGLE_POINTS SINGLE_POINTS SINGLE_POINTS SINGLE_POINTS SINGLE_POINTS SINGLE_POINTS]
                            [--csv-file CSV_FILE]

Named Arguments

-o, --output-file

Specify the output filename for the h5 + XDMF file pair

--single-points

Specify the X, Y, and Z extents for the a single element macro domain

--csv-file

Specify a csv file containing the bounds of a DNS file

Filter.visualize_results.py

Post-process Micromorphic Filter Output

usage: visualize_results.py [-h] -i INPUT_FILE [--average AVERAGE]
                            [--num-domains NUM_DOMAINS]
                            [--plot-cauchy-couple PLOT_CAUCHY_COUPLE]
                            [--plot-cauchy-stress PLOT_CAUCHY_STRESS]
                            [--plot-PK2-stress PLOT_PK2_STRESS]
                            [--plot-symm-stress PLOT_SYMM_STRESS]
                            [--plot-SIGMA-stress PLOT_SIGMA_STRESS]
                            [--plot-stress-diff PLOT_STRESS_DIFF]
                            [--plot-body-couples PLOT_BODY_COUPLES]
                            [--plot-spin-inertias PLOT_SPIN_INERTIAS]
                            [--plot-spin-diff PLOT_SPIN_DIFF]
                            [--plot-rotation-diff PLOT_ROTATION_DIFF]
                            [--plot-stretch-diff PLOT_STRETCH_DIFF]
                            [--plot-stress-norms PLOT_STRESS_NORMS]
                            [--csv-cauchy CSV_CAUCHY] [--csv-PK2 CSV_PK2]
                            [--csv-GLstrain CSV_GLSTRAIN]
                            [--csv-ref-mod CSV_REF_MOD]
                            [--csv-cur-mod CSV_CUR_MOD]
                            [--csv-estrain CSV_ESTRAIN] [--csv-symm CSV_SYMM]
                            [--csv-stress-diff CSV_STRESS_DIFF]
                            [--csv-m CSV_M] [--csv-M CSV_M]
                            [--csv-stress33-all CSV_STRESS33_ALL]
                            [--csv-all-quantities-single-domain CSV_ALL_QUANTITIES_SINGLE_DOMAIN]
                            [--rho-binder RHO_BINDER] [--rho-grain RHO_GRAIN]

Named Arguments

-i, --input-file

The XDMF Micromorphic Filter results file

--average

Boolean whether or not homogenized DNS results will be averaged

Default: False

--num-domains

Specify the number of filter domains

Default: 1

--plot-cauchy-couple

Optional filename to plot Cauchy couple vs. simulation time

--plot-cauchy-stress

Optional filename to plot Cauchy stress vs. Eulerian strain

--plot-PK2-stress

Optional filename to plot PK2 stress vs. Green-Lagrange strain

--plot-symm-stress

Optional filename to plot symmetric micro stress vs. Eulerian strain

--plot-SIGMA-stress

Optional filename to plot Symmetric micro stress vs. Green-Lagrange strain

--plot-stress-diff

Optional filename to plot difference between Cauchy and symmetric micro stresses vs. simulation time

--plot-body-couples

Optional filename to plot body couples vs. simulation time

--plot-spin-inertias

Optional filename to plot micro spin inertias vs. simulation time

--plot-spin-diff

Optional filename to plot difference between body couples and micro spin inertias vs. simulation time

--plot-rotation-diff

Optional filename to plot difference between macro and micro rotations vs. simulation time

--plot-stretch-diff

Optional filename to plot differences between macro and micro stretches vs. simulation time

--plot-stress-norms

Optional filename to plot norms of cauchy stress, symmetric micro stress, difference between Cauchy and symmetric micro stresses, and higher order stress.

--csv-cauchy

Optional filename for csv output of Cauchy stress summary statistics

--csv-PK2

Optional filename for csv output of PK2 stress summary statistics

--csv-GLstrain

Optional filename for csv output of Green-Lagrange strain summary statistics

--csv-ref-mod

Optional filename for csv output of ‘moduli’ calculation (S_{ij} / E_{ij}) in reference configuration summary statistics

--csv-cur-mod

Optional filename for csv output of ‘moduli’ calculation (sigma_{ij} / e_{ij}) in the current configuration summary statistics

--csv-estrain

Optional filename for csv output of Eulerian strain summary statistics

--csv-symm

Optional filename for csv output of symmetric micro stress summary statistics

--csv-stress-diff

Optional filename for csv output of difference between Cauchy and symmetric micro stresses summary statistics

--csv-m

Optional filename for csv output of couple stress (current configuration) summary statistics

--csv-M

Optional filename for csv output of couple stress (reference configuration) summary statistics

--csv-stress33-all

Optional filename for csv output of all Cauchy 33 values

--csv-all-quantities-single-domain

Optional filename for csv output of all quantities for a single domain

--rho-binder

The density of the binder material, required if ‘–csv-all-quantities-single-domain’ is specified

--rho-grain

The density of the grain material, required if ‘–csv-all-quantities-single-domain’ is specified

Filter.xdmf_local_paths.py

Create a copy of an XDMF file with absolute H5 paths replaced with relative paths

usage: xdmf_local_paths.py [-h] -i INPUT_FILE -o OUTPUT_FILE --oldpath OLDPATH
                           --newpath NEWPATH

Named Arguments

-i, --input-file

The XDMF file output by the Micromorphic Filter with absolute H5 paths

-o, --output-file

The new XDMF file with relative H5 paths

--oldpath

The absolute path to be replaced by --newpath

--newpath

The relative path to replace --oldpath

Filter.xdmf_tomfoolery.py

Modify an XDMF file by combining elements from separate ‘blocks’

usage: xdmf_tomfoolery.py [-h] -o OUTPUT_FILE --input-file INPUT_FILE

Named Arguments

-o, --output-file

Specify the output filename for the h5 + XDMF file pair

--input-file

Specify the XDMF mesh file to operate on

Calibrate.build_calibration_map.py

Create a yaml file to map calibration results

usage: python build_calibration_map.py  [-h] --calibrated-elements
                                        CALIBRATED_ELEMENTS
                                        [CALIBRATED_ELEMENTS ...]
                                        --calibrated-files CALIBRATED_FILES
                                        [CALIBRATED_FILES ...]
                                        --ignore-boundary-yml
                                        IGNORE_BOUNDARY_YML
                                        --ignore-boundary-summary-file
                                        IGNORE_BOUNDARY_SUMMARY_FILE
                                        --output-file OUTPUT_FILE

Named Arguments

--calibrated-elements

A list of elements with associated calibration files

--calibrated-files

A list of files containing calibration results

--ignore-boundary-yml

A yaml file containing the ‘best’ calibration using the kernel density estimate

--ignore-boundary-summary-file

A csv file containing a summary of calibrated parameters for each element

--output-file

The name of the output yaml file

Calibrate.calibrate_element.py

Calibrate micromorphic linear elasticity for averaged output on a single filter domain (i.e. macroscale element)

usage: calibrate_element.py [-h] [-i INPUT_FILE] [-o OUTPUT_FILE]
                            [--Emod EMOD] [--nu NU] [--L L]
                            [--element ELEMENT] [--increment INCREMENT] --case
                            CASE [--plot-file PLOT_FILE] [--average AVERAGE]
                            [--UQ-file UQ_FILE]

Named Arguments

-i, --input-file

The homogenized XDMF file output by the Micromorphic Filter

-o, --output-file

The resulting list of parameters stored in a yaml file

--Emod

DNS elastic modulus, used for initial parameter estimation.

--nu

DNS Poisson’s ratio, used for initial parameter estimation.

--L

DNS max dimension (width, height, depth, etc.), used for initial parameter estimation.

--element

The macro (filter) element to calibrate

Default: 0

--increment

An optional argument to callibrate only for specific increment

--case

Specify the calibration ‘case’. 1: two parameter, 2: 7 parameter, 3: 7 parameter plus tau7, 4: all 18 parameters

--plot-file

Optional root filename to plot Cauchy and symmetric micro stress comparison between DNS and calibration results

--average

Boolean whether or not homogenized DNS results will be averaged

Default: True

--UQ-file

Optional csv filename to store function evaluations and parameter sets for UQ

Calibrate.joint_probability_distributions.py

Create a joint probability distribution plot to summarize calibration results

usage: joint_probability_distributions.py [-h] -o OUTPUT_FILE
                                          [--num-params NUM_PARAMS]
                                          --csv-files CSV_FILES
                                          [CSV_FILES ...] --num-domains
                                          NUM_DOMAINS [NUM_DOMAINS ...]
                                          [--distribution-plots DISTRIBUTION_PLOTS]
                                          [--full-kde FULL_KDE]

Named Arguments

-o, --output-file

Specify the output filename for the joint probability distribution plot

--num-params

Optionally specify the number of parameters to make a joint probability plot with if not all are desired

--csv-files

The csv files containing calibration results

--num-domains

A list of integers corresponding to the number of filtering domains associated with results contained in each csv file

--distribution-plots

Optional root file name for distribution plots of each parameter

--full-kde

Optional root file name for KDE of each parameter

Calibrate.summarize_calibration_results.py

Summarize results of parameter calibration

usage: summarize_calibration_results.py [-h] --parameter-sets PARAMETER_SETS
                                        [PARAMETER_SETS ...] --case CASE
                                        [--results-csv RESULTS_CSV]
                                        [--summary-csv SUMMARY_CSV]
                                        [--kde-hist-plot KDE_HIST_PLOT]
                                        [--kde-plot KDE_PLOT]
                                        [--kde-best KDE_BEST]
                                        [--kde-best-parameters KDE_BEST_PARAMETERS]

Named Arguments

--parameter-sets

Specify the list of yaml files containing calibration results

--case

Specify the calibration “case”. 1: two parameter, 2: 7 parameter, 3: 7 parameter plus tau7, 4: all 18 parameters

--results-csv

Optional filename to store all calibrated parameter values

--summary-csv

Optional filename to store summary statistics of calibrated parameters

--kde-hist-plot

Optional root filename to plot kernel density estimate of each calibrated parameter with histogram

--kde-plot

Optional root filename to plot kernel density estimate of each calibrated parameter

--kde-best

Optional root filename to plot kernel density estimate of each calibrated parameter with maximum value in title

--kde-best-parameters

Optional root filename to output a yaml file containing the “best” parameters sampled from the kernel density estimate associated with “–kde-best”

Calibrate.summarize_calibration_results_ignore_boundary.py

Summarize results of parameter calibration while ignoring elements on the z-boundary

usage: summarize_calibration_results_ignore_boundary.py [-h] --parameter-sets
                                                        PARAMETER_SETS
                                                        [PARAMETER_SETS ...]
                                                        --element-sets
                                                        ELEMENT_SETS
                                                        [ELEMENT_SETS ...]
                                                        --macro-file
                                                        MACRO_FILE --case CASE
                                                        [--results-csv RESULTS_CSV]
                                                        [--summary-csv SUMMARY_CSV]
                                                        [--kde-hist-plot KDE_HIST_PLOT]
                                                        [--kde-plot KDE_PLOT]
                                                        [--kde-best KDE_BEST]
                                                        [--kde-best-parameters KDE_BEST_PARAMETERS]

Named Arguments

--parameter-sets

Specify the list of yaml files containing calibration results

--element-sets

List of elements of the macro domain which have been calibrated

--macro-file

The macroscale filter domain XDMF file, less extension

--case

Specify the calibration “case”. 1: two parameter, 2: 7 parameter, 3: 7 parameter plus tau7, 4: all 18 parameters

--results-csv

Optional filename to store all calibrated parameter values

--summary-csv

Optional filename to store summary statistics of calibrated parameters

--kde-hist-plot

Optional root filename to plot kernel density estimate of each calibrated parameter with histogram

--kde-plot

Optional root filename to plot kernel density estimate of each calibrated parameter

--kde-best

Optional root filename to plot kernel density estimate of each calibrated parameter with maximum value in title

--kde-best-parameters

Optional root filename to output a yaml file containing the “best” parameters sampled from the kernel density estimate associated with “–kde-best”

Tardigrade_MOOSE.add_element_blocks_to_mesh.py

Create a cylinder mesh from the bounds of a DNS file.

usage: python cylinder_from_bounds.py  [-h] --output-file OUTPUT_FILE
                                       --bounds-file BOUNDS_FILE --seed-size
                                       SEED_SIZE [--cut CUT] [--xdmf XDMF]
                                       [--ascii ASCII]

Named Arguments

--output-file

The output filename

--bounds-file

The file containing the bounds of the DNS

--seed-size

The approximate mesh size

--cut

The option to cut geometry into octants, pass string “True” if desired

--xdmf

The option to convert default exodus mesh to XDMF (binary)

--ascii

The option to convert binary XDMF mesh to ascii

Tardigrade_MOOSE.build_dynamic_Tardigrade_input_deck.py

Write Tardigrade-MOOSE input file for dynamic simulation

usage: build_dynamic_Tardigrade_input_deck.py [-h] -o OUTPUT_FILE --mesh MESH
                                              [--parameter-sets PARAMETER_SETS [PARAMETER_SETS ...]]
                                              [--calibration-map CALIBRATION_MAP]
                                              --BCs BCS --pressure PRESSURE
                                              --start START --duration
                                              DURATION --dt DT --ref-density
                                              REF_DENSITY --height HEIGHT

Named Arguments

-o, --output-file

The name of Tardigrade-MOOSE file to write

--mesh

The mesh file

--parameter-sets

List of yaml files containing calibration results, required if calibration-map is not provided

--calibration-map

Optional yaml file containing names of calibration files

--BCs

The type of boundary conditions, either “slip” or “clamp”

--pressure

The pressure to be applied

--start

The time when heaviside pressure is applied

--duration

The duration of the simulation

--dt

The fixed time increment

--ref-density

Density in reference configuration (Mg/mm^3)

--height

Height of the geometry

Tardigrade_MOOSE.build_Tardigrade_input_deck.py

Write Tardigrade-MOOSE input file

usage: build_Tardigrade_input_deck.py [-h] -o OUTPUT_FILE --mesh MESH
                                      [--parameter-sets PARAMETER_SETS [PARAMETER_SETS ...]]
                                      [--calibration-map CALIBRATION_MAP]
                                      --BCs BCS --disp DISP --duration
                                      DURATION [--disp-point DISP_POINT]

Named Arguments

-o, --output-file

The name of Tardigrade-MOOSE file to write

--mesh

The mesh file

--parameter-sets

List of yaml files containing calibration results, required if calibration-map is not provided

--calibration-map

Optional yaml file containing names of calibration files

--BCs

The type of boundary conditions, either “slip” or “clamp”

--disp

The compressive displacement to be applied

--duration

The duration of the simulation

--disp-point

Optional string of coordinates to query x-displacement

Tardigrade_MOOSE.cylinder_from_bounds.py

Create a cylinder mesh from the bounds of a DNS file.

usage: python cylinder_from_bounds.py  [-h] --output-file OUTPUT_FILE
                                       --bounds-file BOUNDS_FILE --seed-size
                                       SEED_SIZE [--cut CUT] [--xdmf XDMF]
                                       [--ascii ASCII]

Named Arguments

--output-file

The output filename

--bounds-file

The file containing the bounds of the DNS

--seed-size

The approximate mesh size

--cut

The option to cut geometry into octants, pass string “True” if desired

--xdmf

The option to convert default exodus mesh to XDMF (binary)

--ascii

The option to convert binary XDMF mesh to ascii

Tardigrade_MOOSE.plot_dynamic_displacement.py

Process displacement vs time from Tardigrade-MOOSE results

usage: python plot_dynamic_displacement.py  [-h] --csv-file CSV_FILE
                                            --output-file OUTPUT_FILE
                                            --output-csv OUTPUT_CSV
                                            [--disp-factor DISP_FACTOR]

Named Arguments

--csv-file

The csv file containing force results

--output-file

The name of the output file of collected results

--output-csv

The name of the output csv file

--disp-factor

The factor to scale displacement

Default: 1

Tardigrade_MOOSE.plot_force_displacement.py

Process force-displacement from Tardigrade-MOOSE results

usage: python plot_force_displacement.py  [-h] --csv-file CSV_FILE
                                          --output-file OUTPUT_FILE
                                          --output-csv OUTPUT_CSV --final-disp
                                          FINAL_DISP
                                          [--force-factor FORCE_FACTOR]

Named Arguments

--csv-file

The csv file containing force results

--output-file

The name of the output file of collected results

--output-csv

The name of the output csv file

--final-disp

The final displacement (mm) to linearly ramp over simulation duration

--force-factor

The factor to scale force

Default: 1

Tardigrade_MOOSE.summarize_micro_macro_force_displacements.py

Plot mutliple force displacement plots against each other

usage: python summarize_micro_macro_force_displacements.py 
       [-h] --csv-files CSV_FILES [CSV_FILES ...] --plot-labels PLOT_LABELS
       [PLOT_LABELS ...] --output-file OUTPUT_FILE --output-csv OUTPUT_CSV
       [--convergence-plot CONVERGENCE_PLOT]

Named Arguments

--csv-files

The csv files containing force results

--plot-labels

The plot labels, same size as ‘–csv-files’

--output-file

The name of the output plot

--output-csv

The name of the output csv file

--convergence-plot

Optional file name for convergence plot

Tardigrade_MOOSE.write_elastic_material_card.py

Write elastic Tardigrade-MOOSE input card (.yml)

usage: write_elastic_material_card.py [-h] -o OUTPUT_FILE [--lamb LAMB]
                                      [--mu MU] [--eta ETA] [--tau TAU]
                                      [--kappa KAPPA] [--nu NU]
                                      [--sigma SIGMA] [--tau1 TAU1]
                                      [--tau2 TAU2] [--tau3 TAU3]
                                      [--tau4 TAU4] [--tau5 TAU5]
                                      [--tau6 TAU6] [--tau7 TAU7]
                                      [--tau8 TAU8] [--tau9 TAU9]
                                      [--tau10 TAU10] [--tau11 TAU11]

Named Arguments

-o, --output-file

Specify the name of Tardigrade-MOOSE file to write

--lamb

Specify lambda

Default: 0.0

--mu

Specify mu

Default: 0.0

--eta

Specify eta

Default: 0.0

--tau

Specify tau

Default: 0.0

--kappa

Specify kappa

Default: 0.0

--nu

Specify nu

Default: 0.0

--sigma

Specify sigma

Default: 0.0

--tau1

Specify tau1

Default: 0.0

--tau2

Specify tau2

Default: 0.0

--tau3

Specify tau3

Default: 0.0

--tau4

Specify tau4

Default: 0.0

--tau5

Specify tau5

Default: 0.0

--tau6

Specify tau6

Default: 0.0

--tau7

Specify tau7

Default: 0.001

--tau8

Specify tau8

Default: 0.0

--tau9

Specify tau9

Default: 0.0

--tau10

Specify tau10

Default: 0.0

--tau11

Specify tau11

Default: 0.0