AbaqusReader.jl API Documentation
Index
AbaqusReader.element_mapping
AbaqusReader.abaqus_download
AbaqusReader.abaqus_read_mesh
AbaqusReader.abaqus_read_model
AbaqusReader.add_set!
AbaqusReader.consumeList
AbaqusReader.create_surface_element
AbaqusReader.create_surface_elements
AbaqusReader.empty_or_comment_line
AbaqusReader.find_keywords
AbaqusReader.is_abaqus_keyword_registered
AbaqusReader.matchset
AbaqusReader.parse_abaqus
AbaqusReader.parse_definition
AbaqusReader.parse_numbers
AbaqusReader.parse_section
AbaqusReader.regex_match
AbaqusReader.register_abaqus_keyword
Exported functions
AbaqusReader.abaqus_download
— Functionabaqus_download(model_name; dryrun=false)
Download ABAQUS model from Internet. model_name
is the name of the input file.
Given some model name from documentation, e.g., et22sfse
, download that file to local file system. This function uses environment variables to determine the download url and place of storage.
In order to use this function, one must set environment variable ABAQUS_DOWNLOAD_URL
, which determines a location where to download. For example, if the path to model is https://domain.com/v6.14/books/eif/et22sfse.inp
, ABAQUS_DOWNLOAD_URL
will be the basename of that path, i.e., https://domain.com/v6.14/books/eif
.
By default, the model will be downloaded to current directory. If that is not desired, one can set another environment variable ABAQUS_DOWNLOAD_DIR
, and in that case the file will be downloaded to that directory.
Function call will return full path to downloaded file or nothing, if download is failing because of missing environment variable ABAQUS_DOWNLOAD_DIR
.
AbaqusReader.abaqus_read_mesh
— Functionabaqus_read_mesh(fn::String)
Read ABAQUS mesh from file fn
. Returns a dict with elements, nodes, element sets, node sets and other topologically imporant things, but not the actual model with boundary conditions, load steps and so on.
AbaqusReader.abaqus_read_model
— Functionabaqus_read_model(filename::String)
Read ABAQUS model from file. Include also boundary conditions, load steps and so on. If only mesh is needed, it's better to use abaqus_read_mesh
insted.
AbaqusReader.create_surface_elements
— Functioncreate_surface_elements(mesh, surface_name)
Create surface elements for surface
using mesh mesh
. Mesh can be obtained by using abaqus_read_mesh
.
Internal functions
AbaqusReader.parse_definition
— MethodParse string to get set type and name
AbaqusReader.parse_section
— FunctionParse nodes from the lines
Parse elements from input lines
Reads element ids and their connectivity nodes from input lines. If elset definition exists, also adds the set to model.
Parse node and elementset from input lines
Parse SURFACE keyword
AbaqusReader.regex_match
— FunctionCuston regex to find match from string. Index used if there are multiple matches
AbaqusReader.add_set!
— FunctionAdd set to model, if set exists
AbaqusReader.consumeList
— FunctionCustom list iterator
Simple iterator for comsuming element list. Depending on the used element, connectivity nodes might be listed in multiple lines, which is why iterator is used to handle this problem.
AbaqusReader.parse_numbers
— FunctionParse all the numbers from string
AbaqusReader.register_abaqus_keyword
— Functionregister_abaqus_keyword(keyword::String)
Add ABAQUS keyword s
to register. That is, after registration every time keyword show up in .inp
file a new section is started
AbaqusReader.is_abaqus_keyword_registered
— Functionis_abaqus_keyword_registered(keyword::String)
Return true/false is ABAQUS keyword registered.
AbaqusReader.element_mapping
— Constantelement_mapping
This mapping table contains information what node ids locally match each side of element.
AbaqusReader.find_keywords
— FunctionFind lines, which contain keywords, for example "*NODE"
AbaqusReader.matchset
— FunctionMatch words from both sides of '=' character
AbaqusReader.empty_or_comment_line
— FunctionChecks for a comment or empty line
Function return true, if line starts with comment character "**" or has length of 0
AbaqusReader.create_surface_element
— FunctionGiven element code, element side and global connectivity, determine boundary element. E.g. for Tet4 we have 4 sides S1..S4 and boundary element is of type Tri3.
AbaqusReader.parse_abaqus
— FunctionMain function for parsing Abaqus input file.
Function parses Abaqus input file and generates a dictionary of all the available keywords.