00001 #ifndef ELEMNODE_H 00002 #define ELEMNODE_H 00003 00004 #include "gtopology.h" 00005 00006 /** 00007 class deals with correspondence between nodes and elements 00008 it assembles and contains list of nodes shared by selected elements 00009 it assembles and contains list of elements which contain selected nodes 00010 00011 JK, 20.10.2007 00012 */ 00013 00014 class elemnode 00015 { 00016 public: 00017 elemnode (); 00018 ~elemnode (); 00019 00020 void selelem (long nselelem,long *lselem); 00021 void selnode (long nselnod,long *lselnod); 00022 00023 void elemnodes (gtopology *gt); 00024 00025 /// number of selected elements 00026 long nse; 00027 00028 /// list of selected elements 00029 /// lse[i]=j - the i-th selected element has number j 00030 long *lse; 00031 00032 /// number of selected nodes 00033 long nsn; 00034 00035 /// list of selected nodes 00036 /// lsn[i]=j - the i-th selected node has number j 00037 long *lsn; 00038 00039 00040 /// number of influenced elements 00041 long nie; 00042 00043 /// list of elements influenced by selected nodes, it contains number of selected node 00044 /// in other words, it contains positions in array lsn 00045 /// elnod[i][j] = k - the j-th node on the i-th influenced element has number k 00046 /// k=-1 - the j-th node is not selected, k>-1 - number of selected node 00047 /// example: list of selected nodes lsn = 1, 4, 7, 12 00048 /// elnod[3][1]=2 - second node on the fourth element has number 7, because lsn[2]=7 00049 /// array elnod has nie x nne[i] components 00050 long **elnod; 00051 00052 }; 00053 00054 #endif