Parallel Approximation

Functions

int appr_get_ent_owner (int Field_id, int Ent_type, int Ent_id)
int appr_get_ent_id_at_owner (int Field_id, int Ent_type, int Ent_id)
int appr_adjust_field (int Field_id)
int appr_init_exchange_tables (int Nr_proc, int My_proc_id, int Field_id, int Nreq_offset, int Nreq, int Nr_levels)
int appr_create_exchange_tables (int Table_index, int Level_id, int Nr_dof_ent, int *L_dof_ent_type, int *L_dof_ent_id, int *L_bl_nrdof, int *L_bl_posg, int *L_elem_to_bl, int *L_face_to_bl, int *L_edge_to_bl, int *L_vert_to_bl)
int appr_exchange_dofs (int Table_index, int Level_id, double *Vec_dofs)
double appr_sol_vec_norm (int Table_index, int Level_id, int Nrdof, double *Vector)
double appr_sol_sc_prod (int Table_index, int Level_id, int Nrdof, double *Vector1, double *Vector2)
int appr_get_nr_dofs_owned (int Table_index)
int appr_free_exchange_tables (int Table_index)

Function Documentation

int appr_adjust_field ( int  Field_id  ) 

--------------------------------------------------------- appr_adjust_field - to adjust DOFs after domain decomposition ---------------------------------------------------------

Here is the call graph for this function:

Here is the caller graph for this function:

int appr_create_exchange_tables ( int  Table_index,
int  Level_id,
int  Nr_dof_ent,
int *  L_dof_ent_type,
int *  L_dof_ent_id,
int *  L_bl_nrdof,
int *  L_bl_posg,
int *  L_elem_to_bl,
int *  L_face_to_bl,
int *  L_edge_to_bl,
int *  L_vert_to_bl 
)

-------------------------------------------------------- appr_create_exchange_tables - to create lists of dofs exchanged between pairs of processors. REMARK. a simplified setting is used, where dof structures are modified (updated) only by their owners and data send to other processors. Thus both exchange1 and exchange2 groups of arrays are empty and only send and receive arrays are filled. In the routine appr_create_exchange_tables each processor constructs lists of dof structures needed for solver (dofrecv group) and sends them to owning processors. It also receives from other processors requests for owned dof structures needed by other processors (dofsend group). ---------------------------------------------------------

Parameters:
Table_index returns: >=0 -success code, <0 -error code
Nr_dof_ent in: level ID
L_dof_ent_type in: number of DOF entities in the level all four subsequent arrays are indexed by block IDs with 1(!!!) offset
L_dof_ent_id in: list of DOF entities associated with DOF blocks
L_bl_nrdof in: list of DOF entities associated with DOF blocks
L_bl_posg in: list of nrdofs for each dof block
L_elem_to_bl in: list of positions within the global vector of dofs for each dof block
L_face_to_bl in: list of DOF blocks associated with DOF entities
L_edge_to_bl in: list of DOF blocks associated with DOF entities
L_vert_to_bl in: list of DOF blocks associated with DOF entities in: list of DOF blocks associated with DOF entities

Here is the call graph for this function:

Here is the caller graph for this function:

int appr_exchange_dofs ( int  Table_index,
int  Level_id,
double *  Vec_dofs 
)

-------------------------------------------------------- appr_exchange_dofs - to exchange dofs between processors ---------------------------------------------------------

Parameters:
Vec_dofs in: level ID in: vector of dofs to be exchanged

Here is the call graph for this function:

Here is the caller graph for this function:

int appr_free_exchange_tables ( int  Table_index  ) 

-------------------------------------------------------- appr_free_exchange_tables - to free data structure related to exchange of dofs ---------------------------------------------------------

Parameters:
Table_index returns: >=0 -success code, <0 -error code

Here is the call graph for this function:

Here is the caller graph for this function:

int appr_get_ent_id_at_owner ( int  Field_id,
int  Ent_type,
int  Ent_id 
)

-------------------------------------------------------- appr_get_ent_id_at_owner ---------------------------------------------------------

Parameters:
Field_id returns: >=0 -success code - entity local ID, <0 -error code
Ent_type in: approximation field ID
Ent_id in: type of mesh entity in: mesh entity ID

Here is the call graph for this function:

int appr_get_ent_owner ( int  Field_id,
int  Ent_type,
int  Ent_id 
)

-------------------------------------------------------- appr_get_ent_owner - to return owning process(or) ID ---------------------------------------------------------

Parameters:
Field_id returns: >=0 -success code - owner ID, <0 -error code
Ent_type in: approximation field ID
Ent_id in: type of mesh entity in: mesh entity ID

Here is the call graph for this function:

int appr_get_nr_dofs_owned ( int  Table_index  ) 

-------------------------------------------------------- appr_get_nr_dofs_owned - utility to calculate the number of dofs owned at the finest level ---------------------------------------------------------

Here is the call graph for this function:

Here is the caller graph for this function:

int appr_init_exchange_tables ( int  Nr_proc,
int  My_proc_id,
int  Field_id,
int  Nreq_offset,
int  Nreq,
int  Nr_levels 
)

-------------------------------------------------------- appr_init_exchange_tables - to initialize data structure related to exchange of dofs ---------------------------------------------------------

Here is the call graph for this function:

Here is the caller graph for this function:

double appr_sol_sc_prod ( int  Table_index,
int  Level_id,
int  Nrdof,
double *  Vector1,
double *  Vector2 
)

-------------------------------------------------------- appr_sol_sc_prod - to compute a scalar product of two global vectors ---------------------------------------------------------

Parameters:
Table_index retruns: scalar product of Vector1 and Vector2
Nrdof in: level ID
Vector1 in: number of vector components
Vector2 in: local part of global Vector in: local part of global Vector

Here is the call graph for this function:

Here is the caller graph for this function:

double appr_sol_vec_norm ( int  Table_index,
int  Level_id,
int  Nrdof,
double *  Vector 
)

-------------------------------------------------------- appr_sol_vec_norm - to compute a norm of global vector in parallel ---------------------------------------------------------

Parameters:
Table_index returns: L2 norm of global Vector
Nrdof in: level ID
Vector in: number of vector components in: local part of global Vector

Here is the call graph for this function:

Here is the caller graph for this function:

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Jun 2020 for ModFEM by  doxygen 1.6.1