fixnodesel Class Reference

#include <fixnodesel.h>

List of all members.

Public Member Functions

void add_additional_fixing_nodes ()
void add_all_members ()
void add_all_surfnod ()
void add_boundary_of_surface ()
void add_centroid ()
void add_centroid_surface ()
void add_each_nth_member ()
void add_fixings ()
void add_int_points_surface ()
void add_intpoint ()
void add_max_ring ()
void add_max_triangle_on_surface ()
void add_n_part_curve ()
void add_n_rand_nodes_on_surf ()
void add_n_th_mark ()
void add_nth_member ()
void add_rand ()
void add_rings ()
void add_user_pos_def ()
void assemble_ltg_with_fixings (long *ltg)
bool check_ltg (long *ltg, long nnd, FILE *out)
void check_minimal_number_2d ()
void check_minimal_number_3d ()
void check_triangle ()
double compute_angle_of_vector_a_and_b (long a, long b, long c)
double compute_area_of_triangle (long a, long b, long c)
double compute_length_of_vector (long a, long b)
long compute_number_of_combination (long n, long k)
void compute_size_of_fictitious_subdomain ()
void compute_statistics_of_multiplicity ()
void create_link_dom_nod ()
void create_master_graph ()
void create_subdom_graph_2d ()
void create_subdom_graph_3d ()
void fixing_detection (long *ltg)
 fixnodesel (int np, int mr, long nd, meshdescription meshd, long *domproces, char *nameproc, int nl, long mes)
void give_whole_dim ()
void initiate (gtopology *topol, partop *part, FILE *out)
void mark_ring_nodes ()
void mark_surfnodes ()
void order_selected_ring_nodes ()
void print_info_curves ()
void print_info_surfaces ()
void reduce_master_graph_curve ()
void reduce_master_graph_surface ()
void reduce_master_graph_surface_2 ()
void select_centers_of_surfaces ()
void select_centers_of_surfaces_2 ()
void select_fixing_nodes_geom_2d (long auxnv)
void select_fixing_nodes_geom_3d (long auxnv)
void select_fixing_nodes_on_master ()
void select_minimal_number_2d ()
void select_minimal_number_3d ()
void select_optimum_2d ()
void set_curves ()
 void send_centre_of_gravity_on_master();
void set_curves_3D ()
void set_fictitious_subdomain ()
 ~fixnodesel ()

Public Attributes

long ** adjacboundnod
long * automember
long * boundnodes
long ** cnbn
long ** coarseadjac
long * coarseidentif
long * coarsenadjac
long condfixing
 condensation of fixing node in FETI-DP method
long corGeomSearch
long ** curadjac
long * curidentif
long * curnadjac
long * curnod
long dim
 spatial dimension of mesh
long ** domid
long * domproc
long * end
double * fictdom
long ** glinkdom
long ** glinknod
long * lgnbn
long * lnbn
long * lnin
long ** loclinkdom
long * loclinknod
double lx
double ly
double lz
long maxmultip
long maxnbn
 maximum number of boundary nodes on one subdomain
meshdescription md
 mesh description
long ** members
long *** memcor
long mespr
long methodcondcor
long minSelStrat
long * multip
int myrank
 rank of processor
long * nadjacboundnod
int nameLength
 leght of name of processor
long nbn
 number of boundary nodes on subdomain
long * nbnd
long ncurnod
long ncurves
long ndom
 number of domain attached to the processor
long * ndomid
long ne
 number of elements on subdomain
long * nedges
long nin
long nmembercur
long * nmembers
long nmembersurf
long nn
 number of nodes on subdomain
long * nodeidentif
long * nodmultip
int nproc
 number of processors
long nring
long * nstatdom
long nsubdomneib
long nsurf
long * nsurfcentres
long * nsurfmembers
long nsurfnod
long nuserdefnod
FILE * out
char procName [MPI_MAX_PROCESSOR_NAME]
 name of processor
partopptop
 topology for parallel computation
double * ratio
double ** realcg
long reduce_flag
long * ring
double sizefictdom
long * start
long ** statdom
long * subdomneib
long ** subdomsurf
long ** surfcenters
long ** surfdom
long * surfidentif
long ** surfmembers
long * surfnod
long ** surfnodmark
long * surfnodpoint
long tnbn
double tol
gtopologytop
long typecondcur
 type automatic and user defined condensation of fixing node in FETI-DP method
long typecondsurf
long * userdefnod

Detailed Description

This class provides searchnig and condensing of fixing nodes for DP-FETI method

JB, 2007-2010

Constructor of the

Parameters:
np - number of processors
mr - myrank
nd - number of subdomain
meshd - mesh description
nameproc - name of processor
nl - length of name of processor
long mes - message printing JB

Destructor of

Function initialize

Parameters:
topol - pointer to gtopology class
part - pointer to partop class
outfile - pointer to outputfile

JB

Definition at line 22 of file fixnodesel.h.


Constructor & Destructor Documentation

fixnodesel ( int  np,
int  mr,
long  nd,
meshdescription  meshd,
long *  domproces,
char *  nameproc,
int  nl,
long  mes 
)
~fixnodesel (  ) 

Member Function Documentation

void add_additional_fixing_nodes (  ) 
void add_all_members (  ) 

Function adds all vertices of subgraph as fixing nodes JB

Definition at line 5175 of file fixnodesel.cpp.

References coarseidentif, members, mespr, ncurves, nmembers, and out.

Referenced by add_fixings().

void add_all_surfnod (  ) 

Function adds all nodes on surfaces as fixing nodes JB

Definition at line 5743 of file fixnodesel.cpp.

References coarseidentif, mespr, nsurf, nsurfmembers, out, and surfmembers.

Referenced by add_fixings().

void add_boundary_of_surface (  ) 
void add_centroid (  ) 

Function adds centre of subgraph as fixing node JB

Definition at line 5194 of file fixnodesel.cpp.

References coarseidentif, members, mespr, ncurves, nedges, and out.

Referenced by add_fixings().

void add_centroid_surface (  ) 

Function adds fixing nodes into centres of interface surface subgraphs The centre of interface surface subgraphs is computed as a average form geometrical coordinates of vertices of such subgraph JB

Definition at line 5762 of file fixnodesel.cpp.

References coarseidentif, mespr, nsurf, nsurfcentres, out, and surfcenters.

Referenced by add_fixings().

void add_each_nth_member (  ) 

Function adds each n-th vertex of subgraph as fixing node JB

Definition at line 5057 of file fixnodesel.cpp.

References coarseidentif, members, mespr, ncurves, nedges, nmembercur, nmembers, and out.

void add_fixings (  ) 
void add_int_points_surface (  ) 

odstranit JB

Definition at line 5804 of file fixnodesel.cpp.

void add_intpoint (  ) 
void add_max_ring (  ) 

Function adds fixing nodes on ring with maximal mark

Definition at line 5946 of file fixnodesel.cpp.

References coarseidentif, mespr, nsurf, nsurfmembers, out, surfmembers, and surfnodmark.

Referenced by add_fixings().

void add_max_triangle_on_surface (  ) 

Function adds fixing nodes on vertices of interface surface subgraphs which create triagle with maximal area. JB

Definition at line 5975 of file fixnodesel.cpp.

References cnbn, coarseidentif, compute_area_of_triangle(), compute_length_of_vector(), domproc, glinkdom, lnbn, maxnbn, mespr, MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_Barrier(), MPI_COMM_WORLD, MPI_LONG, MPI_Recv(), MPI_Send(), MPI_Status::MPI_TAG, myrank, nbn, nbnd, nproc, nsurf, nsurfmembers, out, radius(), stat, surfmembers, and surfnod.

Referenced by fixing_detection().

void add_n_part_curve (  ) 

Function adds integral points of subgraphs as fixing node JB Function adds terminuses of subpaths of subgraphs as fixing nodes JB

Definition at line 5542 of file fixnodesel.cpp.

References automatic, automember, coarseidentif, members, mespr, ncurves, nedges, nmembercur, nmembers, and out.

Referenced by add_fixings().

void add_n_rand_nodes_on_surf (  ) 

Function randomly adds fixing nodes on surfaces JB

Definition at line 5691 of file fixnodesel.cpp.

References coarseidentif, mespr, nmembersurf, nsurf, nsurfmembers, out, surfmembers, and time.

Referenced by add_fixings().

void add_n_th_mark (  ) 

Function adds fixing nodes on n-th ring, which is created with vertices with same length of walk form centre to appropriate node JB

Definition at line 5782 of file fixnodesel.cpp.

References coarseidentif, mespr, nmembersurf, nsurf, nsurfmembers, out, surfmembers, and surfnodmark.

Referenced by add_fixings().

void add_nth_member (  ) 

Function adds each n-th vertex of subgraph as fixing node JB

Definition at line 5137 of file fixnodesel.cpp.

References automatic, automember, coarseidentif, members, mespr, ncurves, nmembercur, nmembers, and out.

Referenced by add_fixings().

void add_rand (  ) 

Function randomly adds fixng nodes into curve graphs JB

Definition at line 5004 of file fixnodesel.cpp.

References coarseidentif, members, mespr, ncurves, nmembercur, nmembers, out, and time.

Referenced by add_fixings().

void add_rings (  ) 

Function adds fixing nodes into vertices which lay on user defined ring JB

Definition at line 5921 of file fixnodesel.cpp.

References coarseidentif, mespr, nring, nsurf, nsurfmembers, out, ring, surfmembers, and surfnodmark.

Referenced by add_fixings().

void add_user_pos_def (  ) 

Function adds fixing nodes into user defined positions JB

Definition at line 5617 of file fixnodesel.cpp.

References coarseidentif, cursurf, curvecond, end, members, mespr, methodcondcor, ncurves, nmembers, nsurf, nsurfmembers, nuserdefnod, out, start, surfacecond, surfmembers, and userdefnod.

Referenced by add_fixings().

void assemble_ltg_with_fixings ( long *  ltg  ) 

Function creates new local to global correspondence related to the selected fixing nodes Function changes mesh desctiption to boundary_node

Parameters:
ltg - array with local to global corresponcence rewritten ltg ltg = -1 - internal node ltg < -1 - remaining interface node ltg > 1 - fixing node JB

Definition at line 3173 of file fixnodesel.cpp.

References cnbn, coarseidentif, lnbn, lnin, maxnbn, mespr, MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_Barrier(), MPI_COMM_WORLD, MPI_LONG, MPI_Recv(), MPI_Send(), myrank, nbn, nbnd, nin, nn, nproc, out, par_print_err(), stat, and tnbn.

Referenced by fixing_detection().

bool check_ltg ( long *  ltg,
long  nnd,
FILE *  out 
)

Function checks array ltg. If there are fixing nodes then class fixnodesel is finished. If there are not fixnig nodes class fixnodesel selects appropriate fixing nodes. Fuction is called from class psolver - psolver.cpp.

Parameters:
ltg - array with global - local correspondence
nnd - number of nodes on subdomain
out - pointer to output file for logs Function return bool type - false if fixing nodes are found in ltg array

  • true if fixing nodes are not found in ltg array JB

Definition at line 407 of file fixnodesel.cpp.

References all_nodes, bound_nodes, md, mespr, and neg_bound_nodes.

void check_minimal_number_2d (  ) 
void check_minimal_number_3d (  ) 
void check_triangle (  ) 

Function check geometrical condition of selection of fixing nodes JB

Definition at line 675 of file fixnodesel.cpp.

References compute_angle_of_vector_a_and_b(), compute_length_of_vector(), length(), lnbn, mespr, nbn, nodeidentif, out, and sizefictdom.

Referenced by check_minimal_number_2d(), and check_minimal_number_3d().

double compute_angle_of_vector_a_and_b ( long  a,
long  b,
long  c 
)

Function computes angle between two vectors which are defined by nodes a, b and c vector u = b - a vector v = c - a Output is variable double angle.

Parameters:
top - pointer to the sequential general topology
a - the first node of vector u and vector v
b - the second node of vector u
c - the second node of vector v
out - output file (used for auxiliary output)

JB 24.09.2009

Definition at line 541 of file fixnodesel.cpp.

References gtopology::gnodes, top, gnode::x, gnode::y, and gnode::z.

Referenced by check_triangle(), and select_fixing_nodes_geom_3d().

double compute_area_of_triangle ( long  a,
long  b,
long  c 
)

Function compute area of triangle which is defined by nodes a, b and c. Computation is based on cross product of vectors Output is variable double area.

Parameters:
top - pointer to the sequential general topology
a - the first node of triangle
b - the second node of triangle
c - the third node of triangle
out - output file (used for auxiliary output)

JB 24.09.2009

Definition at line 613 of file fixnodesel.cpp.

References gtopology::gnodes, top, gnode::x, gnode::y, and gnode::z.

Referenced by add_max_triangle_on_surface(), and select_fixing_nodes_geom_3d().

double compute_length_of_vector ( long  a,
long  b 
)

Function computes lenght of vector which is determined by nodes a and b

Parameters:
a - start node
b - end node u=(u1,u2,u3) u1 = xb-xa u2 = yb-ya u3 = zb-za u - length of vector

JB

Definition at line 502 of file fixnodesel.cpp.

References gtopology::gnodes, top, gnode::x, gnode::y, and gnode::z.

Referenced by add_max_triangle_on_surface(), check_triangle(), select_fixing_nodes_geom_2d(), and select_fixing_nodes_geom_3d().

long compute_number_of_combination ( long  n,
long  k 
)
void compute_size_of_fictitious_subdomain (  ) 

function computes distance between nodes with minimal and maximal coordinates of fictitious subdomain 10.02.2009 JB lx/ly ratio = 1 square ratio > 1 y ------------- | | ------------- x ratio < 1 y -- | | | | | | -- x

Definition at line 928 of file fixnodesel.cpp.

References fictdom, lx, ly, lz, mespr, out, ratio, and sizefictdom.

Referenced by fixing_detection().

void compute_statistics_of_multiplicity (  ) 

Function compute statistics for selection of minimal number of fixing nodes is minSelStrat minSelStrat = 1 - choice is based on statistics minSelStrat = 2 - choice is based on graph theory JB

Definition at line 976 of file fixnodesel.cpp.

References domproc, maxmultip, mespr, minSelStrat, MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_Barrier(), MPI_COMM_WORLD, MPI_LONG, MPI_Recv(), MPI_Send(), MPI_Status::MPI_TAG, myrank, nn, nodmultip, nproc, nstatdom, out, stat, and statdom.

Referenced by fixing_detection().

void create_link_dom_nod (  ) 

Function creates global node - domain correspondence and global node - local node corespondence glinknod glinknod has tnbn components glinknod[i] has multip[i] components glinknod[i][j] = k - glinkdom glinkdom has tnbn components glinkdom[i] has multip[i] components glinkdom[i][j] = k - JB

Definition at line 1116 of file fixnodesel.cpp.

References cnbn, glinkdom, glinknod, lnbn, loclinkdom, MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_Barrier(), MPI_COMM_WORLD, MPI_LONG, MPI_Recv(), MPI_Send(), multip, myrank, nbn, nbnd, nodmultip, nproc, stat, and tnbn.

Referenced by fixing_detection().

void create_master_graph (  ) 

Function creates boundary graph on master processor coarsenadjac - number of boundary nodes adjacent to boundary node coarsenadjac has tnbn components coarsenadjac[i] = j - the i-th global node has j adjacent nodes coarseadjac - list of boundaru nodes adjacent to boundary node coarseadjac has tnbn components coarseadjac[i] has multip[i] components coarseadjac[i][j] = k - the j-th adjacent node to i-th node has global number k JB

Definition at line 2900 of file fixnodesel.cpp.

References adjacboundnod, coarseadjac, coarsenadjac, domproc, glinkdom, glinknod, MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_Barrier(), MPI_COMM_WORLD, MPI_LONG, MPI_Recv(), MPI_Send(), MPI_Status::MPI_TAG, multip, myrank, nadjacboundnod, nbn, nbnd, nproc, par_print_err(), stat, and tnbn.

Referenced by fixing_detection().

void create_subdom_graph_2d (  ) 

Function creates subdomain boundary graph for 2D meshes nadjacboundnod - array with numbers of nodes adjacent to nodes nadjacboundnod has nbn components adjacboundnod[i] = j - the i-th boundary node has j adjacent nodes adjacnodes adjacboundnod has nbn components adjacboundnod[i] has nodmultip[i] components adjacboundnod[i][j] = k the j-th adjacent node to i-th node has number k JB

for(j = 0; j < auxnned[i]; j++ ){

Definition at line 1269 of file fixnodesel.cpp.

References adjacboundnod, gtopology::give_edge_nodes(), gtopology::give_ned(), gtopology::give_nned(), lgnbn, lnbn, nadjacboundnod, nbn, ne, nn, nodmultip, and top.

Referenced by fixing_detection().

void create_subdom_graph_3d (  ) 

Function creates subdomain boundary graph for 3D meshes nadjacboundnod - array with numbers of nodes adjacent to nodes nadjacboundnod has nbn components adjacboundnod[i] = j - the i-th boundary node has j adjacent nodes adjacnodes adjacboundnod has nbn components adjacboundnod[i] has nodmultip[i] components adjacboundnod[i][j] = k the j-th adjacent node to i-th node has number k JB

Definition at line 1975 of file fixnodesel.cpp.

References adjacboundnod, gtopology::give_edge_nodes(), gtopology::give_ned(), gtopology::give_nned(), lgnbn, lnbn, nadjacboundnod, nbn, ne, nodmultip, out, and top.

Referenced by fixing_detection().

void fixing_detection ( long *  ltg  ) 
void give_whole_dim (  ) 

function recognizes spatial dimension of the mesh dim - spatial dimension 29.5.2007, JB

Definition at line 464 of file fixnodesel.cpp.

References dim, elem, gtopology::give_whole_dim(), myrank, ne, par_print_err(), and top.

Referenced by fixing_detection().

void initiate ( gtopology topol,
partop part,
FILE *  out 
)
void mark_ring_nodes (  ) 

Definition at line 3646 of file fixnodesel.cpp.

void mark_surfnodes (  ) 

Function marks nodes on boundary surfaces surfnodmark - list of marks of boundary nodes on boundary surfaces surfnodmark has nsurf components surfnodmark[i] has nsurfmember components surfnodmark[i][j] = k - the j-th member of i-th surface has mark k k is the path length form centre of gravity of boundary surface to j-th member JB

Definition at line 3596 of file fixnodesel.cpp.

References coarseadjac, coarsenadjac, nsurf, nsurfcentres, nsurfmembers, surfcenters, surfmembers, surfnod, surfnodmark, and surfnodpoint.

Referenced by fixing_detection().

void order_selected_ring_nodes (  ) 
void print_info_curves (  ) 

Function prints information about interface curves (interface subgraphs in 2D or interface curve subgraphs in 3D) JB

Definition at line 4888 of file fixnodesel.cpp.

References end, members, ncurves, nedges, nmembers, out, and start.

Referenced by fixing_detection().

void print_info_surfaces (  ) 

Function prints information about interface surfaces (interface surface subgraphs) JB

Definition at line 4913 of file fixnodesel.cpp.

References nsurf, nsurfmembers, out, surfdom, and surfmembers.

Referenced by fixing_detection().

void reduce_master_graph_curve (  ) 

Function reduce boundary graph and create boundary curves graph It is used for 3D meshes only curnod curnadjac curadjac curidentif JB

Definition at line 4134 of file fixnodesel.cpp.

References coarseadjac, coarseidentif, coarsenadjac, curadjac, curidentif, curnadjac, curnod, multip, ncurnod, reduce_flag, and tnbn.

Referenced by fixing_detection().

void reduce_master_graph_surface (  ) 

Function reduce boundary graph and create boundary surfaces graph It is used for 3D meshes only

JB

Definition at line 4222 of file fixnodesel.cpp.

References coarseadjac, coarsenadjac, glinkdom, multip, nproc, nsurf, nsurfmembers, reduce_flag, subdomsurf, surfdom, surfmembers, surfnod, surfnodpoint, and tnbn.

Referenced by fixing_detection().

void reduce_master_graph_surface_2 (  ) 
void select_centers_of_surfaces (  ) 

Function computes centers of gravity of boundary surfaces nsurfcentres - the number of centers of gravity of boundary surface nsurfcenters has nsurf components nsurcenters[i] = j - the i-th surface has j-th centres surfcenters - the list of centers of gravity of boundary surface surfcenters has nsurf componets surfcenters[i] has nsurfcenters components surfcenters[i][j]=k - the j-th centre of i-th surfaces has global number k JB

Definition at line 3269 of file fixnodesel.cpp.

References cnbn, domproc, glinkdom, gtopology::gnodes, lnbn, maxnbn, mespr, MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_Barrier(), MPI_COMM_WORLD, MPI_LONG, MPI_Recv(), MPI_Send(), MPI_Status::MPI_TAG, myrank, nbn, nbnd, nproc, nsurf, nsurfcentres, out, realcg, stat, surfcenters, surfnod, tol, top, gnode::x, gnode::y, and gnode::z.

Referenced by fixing_detection().

void select_centers_of_surfaces_2 (  ) 
void select_fixing_nodes_geom_2d ( long  auxnv  ) 

Function selects fixing nodes based on geometrical condition of 2D mesh JB

Definition at line 1846 of file fixnodesel.cpp.

References compute_length_of_vector(), lnbn, nbn, nodeidentif, radius(), and time.

Referenced by check_minimal_number_2d().

void select_fixing_nodes_geom_3d ( long  auxnv  ) 

Function selects fixing nodes based on geometrical condition of 3D mesh JB

Definition at line 2440 of file fixnodesel.cpp.

References compute_angle_of_vector_a_and_b(), compute_area_of_triangle(), compute_length_of_vector(), lnbn, nbn, nodeidentif, radius(), sizefictdom, and time.

Referenced by check_minimal_number_3d().

void select_fixing_nodes_on_master (  ) 

Function select fixing nodes for 3D meshes based on statistics only JB

Definition at line 2319 of file fixnodesel.cpp.

References cnbn, coarseidentif, glinkdom, lnbn, maxmultip, maxnbn, mespr, MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_COMM_WORLD, MPI_LONG, MPI_Recv(), MPI_Send(), multip, myrank, nbn, nbnd, nodeidentif, nproc, out, stat, statdom, and tnbn.

Referenced by fixing_detection().

void select_minimal_number_2d (  ) 

Function select minimal number of fixing nodes for 2D meshes Selection is based on graph theory and is described in dissertation JB coarseidentif - array with identification of boundaty nodes coarseidentif = 2 - remaining interface node coarseidentif = 3 - fixing node coarseidentif has tnbn components JB

Definition at line 1561 of file fixnodesel.cpp.

References coarseidentif, coarsenadjac, mespr, multip, myrank, out, and tnbn.

Referenced by fixing_detection().

void select_minimal_number_3d (  ) 

Function select minimal number of fixing nodes for 3D meshes Selection is based on graph theory and is described in dissertation JB coarseidentif - array with identification of boundaty nodes coarseidentif = 2 - remaining interface node coarseidentif = 3 - fixing node coarseidentif has tnbn components JB

Definition at line 2262 of file fixnodesel.cpp.

References coarseadjac, coarseidentif, coarsenadjac, mespr, multip, myrank, out, and tnbn.

Referenced by fixing_detection().

void select_optimum_2d (  ) 

Function selects optimal number of fixing nodes for 2D meshes methodcondcor - place of fixing node condensation (curvecond) typecondcur - method of condensation of fixing nodes on boundary curves typecondcur = nth_member - nedges[i] is prime number typecondcur = n_part_curve - nedges[i] is non-prime number automember - list of nmembers for additon of fixing nodes automember has ncurves components automember[i] = j - i-th curve will be cut onto j-th parts in case of n_part_curve or automember[i] = j - on i-th curve will be selected each j-th node in case of nth_member

The optimum number of fixing nodes was established as 5% of tnbn JB

Definition at line 3666 of file fixnodesel.cpp.

References automember, curvecond, edges, isPrime(), long(), mespr, methodcondcor, n_part_curve, ncurves, nedges, nmembercur, nodes, out, round_it(), tnbn, and typecondcur.

Referenced by fixing_detection().

void set_curves (  ) 

void send_centre_of_gravity_on_master();

Function establish interface subgraphs in 2D. Intreface subgraphs are defined by basic fixing nodes obtained from select_fixing_nodes_2D JB

Definition at line 4496 of file fixnodesel.cpp.

References coarseadjac, coarseidentif, coarsenadjac, end, members, mespr, ncurves, nedges, nmembers, out, start, and tnbn.

Referenced by fixing_detection().

void set_curves_3D (  ) 

Function establish interface curve subgraphs in 3D. Intreface curve subgraphs are defined by basic fixing nodes obtained from select_fixing_nodes_3D JB

Definition at line 4676 of file fixnodesel.cpp.

References curadjac, curidentif, curnadjac, curnod, end, members, mespr, ncurnod, ncurves, nedges, nmembers, out, and start.

Referenced by fixing_detection().

void set_fictitious_subdomain (  ) 

Definition at line 846 of file fixnodesel.cpp.

References fictdom, gtopology::gnodes, mespr, nn, out, top, gnode::x, gnode::y, and gnode::z.

Referenced by fixing_detection().


Member Data Documentation

long** adjacboundnod
long* automember
long* boundnodes

Definition at line 244 of file fixnodesel.h.

long** cnbn

array containing coarse node numbers of boundary nodes it contains nproc rows and nbnd[i] columns cnbn[i][j]=k - the j-th boundary node on the i-th subdomain has coarse node number k array is allocated in function boundary_nodes_on_master

Definition at line 322 of file fixnodesel.h.

Referenced by add_max_triangle_on_surface(), assemble_ltg_with_fixings(), check_minimal_number_2d(), check_minimal_number_3d(), create_link_dom_nod(), initiate(), select_centers_of_surfaces(), and select_fixing_nodes_on_master().

long** coarseadjac
long* coarsenadjac
long condfixing

condensation of fixing node in FETI-DP method

Definition at line 222 of file fixnodesel.h.

Definition at line 249 of file fixnodesel.h.

long** curadjac

Definition at line 292 of file fixnodesel.h.

Referenced by fixnodesel(), reduce_master_graph_curve(), set_curves_3D(), and ~fixnodesel().

long* curidentif

Definition at line 293 of file fixnodesel.h.

Referenced by fixnodesel(), reduce_master_graph_curve(), set_curves_3D(), and ~fixnodesel().

long* curnadjac

Definition at line 291 of file fixnodesel.h.

Referenced by fixnodesel(), reduce_master_graph_curve(), set_curves_3D(), and ~fixnodesel().

long* curnod

Definition at line 385 of file fixnodesel.h.

Referenced by fixnodesel(), reduce_master_graph_curve(), set_curves_3D(), and ~fixnodesel().

long dim

spatial dimension of mesh

Definition at line 187 of file fixnodesel.h.

Referenced by fixing_detection(), fixnodesel(), and give_whole_dim().

long** domid

Definition at line 377 of file fixnodesel.h.

long* domproc
long* end
double* fictdom
long** glinkdom
long** glinknod
long* lgnbn

array containing list of global numbers of boundary nodes lgnbn[i]=j - the i-th boundary node has global number k

Definition at line 211 of file fixnodesel.h.

Referenced by create_subdom_graph_2d(), create_subdom_graph_3d(), and initiate().

long* lnbn
long* lnin

array containing numbers of internal nodes it contains nin components lnin[i]=j - the i-th internal node has local number j

Definition at line 206 of file fixnodesel.h.

Referenced by assemble_ltg_with_fixings(), and initiate().

long** loclinkdom

Definition at line 260 of file fixnodesel.h.

Referenced by create_link_dom_nod(), fixnodesel(), and ~fixnodesel().

long* loclinknod

Definition at line 258 of file fixnodesel.h.

double lx

Definition at line 283 of file fixnodesel.h.

Referenced by compute_size_of_fictitious_subdomain().

double ly

Definition at line 283 of file fixnodesel.h.

Referenced by compute_size_of_fictitious_subdomain().

double lz

Definition at line 283 of file fixnodesel.h.

Referenced by compute_size_of_fictitious_subdomain().

long maxmultip
long maxnbn

mesh description

Definition at line 185 of file fixnodesel.h.

Referenced by check_ltg(), and fixnodesel().

long** members
long*** memcor

Definition at line 380 of file fixnodesel.h.

long mespr

Definition at line 251 of file fixnodesel.h.

Referenced by compute_statistics_of_multiplicity(), fixing_detection(), and fixnodesel().

long* multip

array containing number of subdomains which each boundary node belongs to it contains tnnp components multip[i]=j - the i-th node belongs to j subdomains array is allocated in function compute_multiplicity

Definition at line 309 of file fixnodesel.h.

Referenced by check_minimal_number_2d(), check_minimal_number_3d(), create_link_dom_nod(), create_master_graph(), initiate(), reduce_master_graph_curve(), reduce_master_graph_surface(), select_fixing_nodes_on_master(), select_minimal_number_2d(), and select_minimal_number_3d().

int myrank

leght of name of processor

Definition at line 161 of file fixnodesel.h.

Referenced by fixnodesel().

long nbn
long* nbnd

array containing list of numbers of boundary nodes on subdomains it contains nproc components nbnd[i]=j - the i-th domain contains j boundary nodes array is allocated in function find_boundary_nodes

Definition at line 315 of file fixnodesel.h.

Referenced by add_max_triangle_on_surface(), assemble_ltg_with_fixings(), check_minimal_number_2d(), check_minimal_number_3d(), create_link_dom_nod(), create_master_graph(), initiate(), order_selected_ring_nodes(), select_centers_of_surfaces(), and select_fixing_nodes_on_master().

long ncurnod

Definition at line 294 of file fixnodesel.h.

Referenced by reduce_master_graph_curve(), set_curves_3D(), and ~fixnodesel().

long ncurves
long ndom

number of domain attached to the processor

Definition at line 163 of file fixnodesel.h.

Referenced by fixnodesel().

long* ndomid

Definition at line 375 of file fixnodesel.h.

long ne

number of elements on subdomain

Definition at line 167 of file fixnodesel.h.

Referenced by create_subdom_graph_2d(), create_subdom_graph_3d(), give_whole_dim(), and initiate().

long* nedges
long nin

Definition at line 182 of file fixnodesel.h.

Referenced by assemble_ltg_with_fixings(), and initiate().

long nmembercur
long* nmembers
long nn
long* nodeidentif
long* nodmultip

array containing number of subdomains which share the nodes it contains nn components nodmultip[i]=j - the i-th node belong to j subdomains

Definition at line 195 of file fixnodesel.h.

Referenced by compute_statistics_of_multiplicity(), create_link_dom_nod(), create_subdom_graph_2d(), create_subdom_graph_3d(), and initiate().

int nproc
long nring

Definition at line 235 of file fixnodesel.h.

Referenced by add_rings(), and order_selected_ring_nodes().

long* nstatdom

Definition at line 335 of file fixnodesel.h.

Referenced by compute_statistics_of_multiplicity().

Definition at line 399 of file fixnodesel.h.

long nsurf
long* nsurfcentres
long* nsurfmembers
long nsurfnod

Definition at line 357 of file fixnodesel.h.

Definition at line 246 of file fixnodesel.h.

Referenced by add_user_pos_def(), and fixnodesel().

FILE* out
char procName[MPI_MAX_PROCESSOR_NAME]

name of processor

Definition at line 159 of file fixnodesel.h.

Referenced by fixnodesel().

topology for parallel computation

Definition at line 173 of file fixnodesel.h.

Referenced by initiate().

double* ratio

Definition at line 289 of file fixnodesel.h.

Referenced by compute_size_of_fictitious_subdomain(), fixnodesel(), and ~fixnodesel().

double** realcg

Definition at line 411 of file fixnodesel.h.

Referenced by order_selected_ring_nodes(), and select_centers_of_surfaces().

long* ring

Definition at line 237 of file fixnodesel.h.

Referenced by add_rings().

double sizefictdom
long* start
long** statdom
long* subdomneib

Definition at line 397 of file fixnodesel.h.

long** subdomsurf

Definition at line 401 of file fixnodesel.h.

Referenced by reduce_master_graph_surface().

long** surfcenters
long** surfdom
long* surfidentif

Definition at line 354 of file fixnodesel.h.

Referenced by fixnodesel(), and ~fixnodesel().

long** surfmembers
long* surfnod
long** surfnodmark
long* surfnodpoint
long tnbn
double tol

Definition at line 339 of file fixnodesel.h.

Referenced by fixnodesel(), and select_centers_of_surfaces().

type automatic and user defined condensation of fixing node in FETI-DP method

Definition at line 226 of file fixnodesel.h.

Referenced by add_fixings(), fixnodesel(), and select_optimum_2d().

Definition at line 228 of file fixnodesel.h.

Referenced by add_fixings(), fixing_detection(), and fixnodesel().

long* userdefnod

Definition at line 247 of file fixnodesel.h.

Referenced by add_user_pos_def(), fixnodesel(), and ~fixnodesel().


The documentation for this class was generated from the following files:

Generated by  doxygen 1.6.2