Main Functions

Main functions of the PyAuxetic API.

This package contains the main functions used in the PyAuxetic API which are used for creating and analyzing one or more auxetic structures. It also defines the bindings for the GUI library used in the Abaqus plugin.

pyauxetic.main.main_single(unit_cell_name, structure_name, unit_cell_params, pattern_params, material_params, loading_params, mesh_params, job_params, output_params, step_params=None, run_analysis=True, is_part_of_batch=False)

Model and analyze a single auxetic structure.

Parameters:
  • unit_cell_name (str) – Type of the structure. See #TODO for a complete list of values.

  • structure_name (str) – Name of the structure. Used for all output files.

  • unit_cell_params – Parameters describing the unit cell geometry. Valid classes must be selected from classes.auxetic_unit_cell_params based on unit_cell_name. For nonuniform structures, must be a tuple where all unit cell ids used in structure_map are defined.

  • pattern_params (PatternParams) – Special namedtuple describing the parameters for patterning the unit cell(s). See class for full description of options.

  • material_params (MaterialParams) – Special namedtuple describing the material used for modeling and analysis. See class for full description of options.

  • step_params (StepParams) – Special namedtuple describing the step defined for analysis. If not specified, the default values of the namedtuple are used. See class for full description of options. Defaults to None which uses the default step values.

  • loading_params (LoadingParams) – Special namedtuple describing the loading and boundary conditions applied to the model. See class for full description of options.

  • mesh_params (MeshParams) – Special namedtuple describing the mesh applied to the model. See class for full description of options.

  • job_params (JobParams) – Special namedtuple describing the job created for analysis. See class for full description of options.

  • output_params (OutputParams) – Special namedtuple describing the parameters for outputting the results of modeling and analysis. See class for full description of options.

  • run_analysis (bool) – If True, The model is analyzed. Otherwise material_params, step_params, mesh_params, job_params, and output_params are need not be defined. Defaults to True.

  • is_part_of_batch (bool) – If calling from main_batch(), must be set to True. Defaults to False.

Returns:

An object of a subclass of AuxeticStructure class.

pyauxetic.main.main_batch(unit_cell_name, structure_prefix, unit_cell_params_list, pattern_params, material_params, loading_params, mesh_params, job_params, output_params, step_params=None, run_analysis=True)

Run a number of analysis in succession and merge the results to a single csv file.

All paramters of this function are the same as main_single().

The exceptions are:

Parameters:
  • structure_prefix (str) – The prefix used for all structures. This prefix together with a number is used for defining structure_name.

  • unit_cell_params_list – A list of unit_cell_params for the structures. The id in each parameter must be unique and is used for defining structure_name.

All other parameters are passed without change or validation.

pyauxetic.main.main_gui_proxy(**kwargs)

This function is not documented. You need extensive knowledge of Abaqus GUI design to modify it. Use caution and test extensively.