Materials Utilities
[Utilities]

Collaboration diagram for Materials Utilities:

Classes

struct  utt_material_data
struct  utt_material_query_params
struct  utt_material_query_result
 Result of the utr_material_query . NOTE: if parameter is required, it have to be set to UTC_MAT_QUERY_RESULT_REQUIRED before executing utr_material_query !. By default all parameters are set to UTC_MAT_QUERY_RESULT_NOT_NEEDED. More...

Defines

#define UTC_MAT_QUERY_RESULT_NOT_NEEDED   -1.0
 Used to indicate not needed parameters in utt_material_query_result .
#define UTC_MAT_QUERY_RESULT_REQUIRED   -3.0
 Used to indicate required parameters in utt_material_query_result .

Enumerations

enum  utt_query_type { QUERY_NODE, QUERY_POINT }
enum  utt_is_fluid { NOT_FLUID = 0, FLUID = 1 }
enum  ute_mat_groupID_flag { UTE_GROUP_ID_NOT_ASSIGNED = -1, UTE_GROUP_ID_DEFAULT_BLOCK = 1 }
 

For the purpose of backward-compatibility and support of auto-assigning to groups, a few additional flags are provided.

More...
enum  ute_mat_read_result { UTE_SUCCESS = EXIT_SUCCESS, UTE_FAIL = -1, UTE_REF_TEMP_MUST_BE_GEQ_ZERO = -2, UTE_NOT_NEED_MATERIAL_DATABASE = 1 }

Functions

ute_mat_read_result utr_mat_read (const char *Work_dir, const char *Filename, FILE *Interactive_output)
void utr_mat_init_query_result (utt_material_query_result *result)
int utr_material_query (const utt_material_query_params *Params, utt_material_query_result *Result)
 Main function for queering for material data.
int utr_mat_get_matID (int groupID)
 To get material number associated with given element group number.
int utr_mat_get_n_materials ()
 To get total number of materials in current database.
int utr_mat_get_materials_IDs (int *materialIDs)
 utr_mat_get_materials_IDs To get array of all known materialIDs
void utr_mat_clear_material (utt_material_data *mat)
 To permanently delete stored material and free resources.
void utr_mat_clear_all ()
 To permanently delete all stored materials.
const utt_material_datautr_mat_get_material (const int groupID)
 To gain access to raw material data. NOTE: this is NOT the same as calling utr_material_query !
const utt_material_datautr_mat_get_material_by_matID (int matID)
 To gain access to raw material data. NOTE: this is NOT the same as calling utr_material_query !

Variables

const char * utc_mat_database_filename

Detailed Description

The materials in ModFEM are defined as stucture of different material properties . The materials submodule of the utilities module is responsible for reading the material file(s) and providing access to the exisiting database . The default and preferred way of accessing the materials is to make use of material query function with groupID as a parameter.

The correct way of using the material database is as follows:

At program initialisation: 1. Read the material file(s) at least once.

group_to_materials_assignment: ( { material_number = 10; groups = (15,11); }, { material_number = 5; groups = ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); });

During computations: 2. Get the groupID of the element you are analysing. 3. Create structure with params of the material query.

Examples of the material query usage can be found in heat module , ns_supg module and ns_supg-heat-vof supermodule .

NOTE: The materials submodule provides also direct access to the raw material data , but it is intended to be an additional feature for special purposes, and using this other way is much more cumbersome during computations.


Define Documentation

#define UTC_MAT_QUERY_RESULT_NOT_NEEDED   -1.0

Used to indicate not needed parameters in utt_material_query_result .

#define UTC_MAT_QUERY_RESULT_REQUIRED   -3.0

Used to indicate required parameters in utt_material_query_result .


Enumeration Type Documentation

For the purpose of backward-compatibility and support of auto-assigning to groups, a few additional flags are provided.

Enumerator:
UTE_GROUP_ID_NOT_ASSIGNED 

to indicate, that given group ID is not connected with any material or block

UTE_GROUP_ID_DEFAULT_BLOCK 

to indicate auto-assignment for so-called "default block" which is created when no blocks have been defined

Enumerator:
UTE_SUCCESS 
UTE_FAIL 
UTE_REF_TEMP_MUST_BE_GEQ_ZERO 
UTE_NOT_NEED_MATERIAL_DATABASE 
Enumerator:
NOT_FLUID 
FLUID 
Enumerator:
QUERY_NODE 

if query concerns exact mesh node (vertex) of element

QUERY_POINT 

if query concerns any arbitrary selected point within given element


Function Documentation

void utr_mat_clear_all (  ) 

To permanently delete all stored materials.

Returns:
void

Here is the call graph for this function:

Here is the caller graph for this function:

void utr_mat_clear_material ( utt_material_data mat  ) 

To permanently delete stored material and free resources.

Returns:
void

Here is the caller graph for this function:

const utt_material_data* utr_mat_get_material ( const int  groupID  ) 

To gain access to raw material data. NOTE: this is NOT the same as calling utr_material_query !

Parameters:
groupID const int see mmr_el_groupID
Returns:
const utt_material_data*

Here is the call graph for this function:

Here is the caller graph for this function:

const utt_material_data* utr_mat_get_material_by_matID ( int  matID  ) 

To gain access to raw material data. NOTE: this is NOT the same as calling utr_material_query !

Parameters:
matID int see see utr_mat_get_matID
Returns:
const utt_material_data*

Here is the caller graph for this function:

int utr_mat_get_materials_IDs ( int *  materialIDs  ) 

utr_mat_get_materials_IDs To get array of all known materialIDs

Parameters:
materialIDs array of size returned by utr_mat_get_n_materials
Returns:
number of written material IDs into array
Parameters:
materialIDs or UTE_FAIL.
materialIDs array of size returned by utr_mat_get_n_materials
Returns:
number of written material IDs into array
Parameters:
materialIDs 

Here is the caller graph for this function:

int utr_mat_get_matID ( int  groupID  ) 

To get material number associated with given element group number.

Parameters:
groupID int see mmr_el_groupID
Returns:
int material number (ID)

Here is the caller graph for this function:

int utr_mat_get_n_materials (  ) 

To get total number of materials in current database.

Returns:
int

Here is the caller graph for this function:

void utr_mat_init_query_result ( utt_material_query_result result  ) 

Here is the caller graph for this function:

ute_mat_read_result utr_mat_read ( const char *  Work_dir,
const char *  Filename,
FILE *  Interactive_output 
)

Here is the call graph for this function:

Here is the caller graph for this function:

int utr_material_query ( const utt_material_query_params Params,
utt_material_query_result Result 
)

Main function for queering for material data.

Parameters:
Params 
Result 
Returns:
success code

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

Filename of the default built-in material database linked with executable. The default location of this file is the directory of the executable. If given problem require to provide additional materials, then the material file given in problem file should be modyfied.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Jun 2020 for ModFEM by  doxygen 1.6.1