37 #define TOLERANCIA_NODO 1e-14
44 #include "Definiciones.hpp"
169 int ix = nodo % (Particion.
retorna(0) +1);
175 int iy = nodo / (Particion.
retorna(0) +1);
179 int iz = nodo / ((Particion.
retorna(0) +1) *(Particion.
retorna(1) +1));
188 for (
int i = 0; i <
DIM; i++)
207 return EL->
retorna(elemento,nodo);
293 int regresaNodosSatisfagan(ldouble val,
int ind,
int *arr,
int narr,
int ind1, ldouble exc1, ldouble exc2);
320 for (
int i = NNE; i < nnd; i++) nd[i] = -1;
327 printf(
"\nError falta de memoria en: %s\n",cad);
MatrizDensa coordenadasDominio(void)
Retrona las coordenadas del dominio.
Definition: Geometria.hpp:333
int retorna(const int ren, const int col)
Retorna el valor del renglon y columna solicitado.
Definition: MatrizInt.hpp:111
void estableceNumeroNodo(int nodo, int n)
Establece la numeracion de los nodos.
Definition: Geometria.hpp:233
int NNE
Numero de nodos por elemento.
Definition: Geometria.hpp:94
void visualizaTipoNodos(void)
Visualiza el tipo de nodo dentro del dominio positivo es desconocido, negativo es conocido...
Definition: Geometria.hpp:347
ldouble retornaValorNodo(int nodo, int Xi)
Retorna la coordenada especificada del nodo.
Definition: Geometria.hpp:164
void visualizaNodosElemento(int ne)
Visualiza a los nodos del elemento NE.
Definition: Geometria.cpp:95
ldouble retorna(const int ren, const int col)
Retorna valor almacenado en el renglon y la columna indicada.
Definition: MatrizTamanoVariable.hpp:119
MatrizDensa Dominio
Dominio de la geometria.
Definition: Geometria.hpp:65
int retornaParticion(int i)
Retorna partición del dominio.
Definition: Geometria.hpp:127
void inicializaNumeracionNodos(void)
Inicializa la numeración de nodos.
Definition: Geometria.hpp:218
int NMESN
Numero máximo de elementos que son soporte de un nodo.
Definition: Geometria.hpp:97
void visualizaNodos(void)
Visualiza las coordenadas de los nodos.
Definition: Geometria.cpp:401
Clase para el trabajar con matrices con etradas enteras.
Definition: MatrizInt.hpp:43
void marcaNodo(int nd, int mc)
Marca el nodo nd con el valor mc.
Definition: Geometria.hpp:307
~Geometria()
Destructor de la clase.
Definition: Geometria.hpp:113
virtual void generaGeometria(void)=0
Genera la geometria.
int DIM
Dimension a trabajar.
Definition: Geometria.hpp:91
Clase para el trabajar con matrices densas de punto flotante.
Definition: MatrizDensa.hpp:44
Clase para el trabajar con matrices de tamaño variable.
Definition: MatrizTamanoVariable.hpp:44
void numeraNodos(void)
Numera nodos, (< 0) conocido, (>=0) desconocido.
Definition: Geometria.cpp:117
void visualizaSoporteNodos(void)
Visualiza el soporte de cada nodo.
Definition: Geometria.hpp:357
void visualiza(void)
Visualiza la matriz.
Definition: MatrizInt.cpp:167
void generaSoporteNodos(void)
Genera arreglo de soporte de cada nodo.
Definition: Geometria.cpp:309
void errorSolicitudMemoria(const char *cad)
Aviso de error al solicitar memoria.
Definition: Geometria.hpp:325
void visualizaElementos(void)
Visualiza los nodos de los elementos.
Definition: Geometria.cpp:383
Clase para el trabajar con vectores con valores enteros.
Definition: VectorInt.hpp:46
void asigna(const int col, const int val)
Asigna el valor val a la columna col.
Definition: VectorInt.hpp:202
int retornaElementosContienenNodo(int nd, int *el, int nel)
Regresa un arreglo EL de los elementos que contienen al nodo ND.
Definition: Geometria.cpp:78
Clase base para generar una geometria.
Definition: Geometria.hpp:59
VectorInt * NN
Puntero a un VectorInt que contiene a la numeracion de nodos.
Definition: Geometria.hpp:76
VectorInt * TN
Puntero a un VectorInt que contiene el tipo de nodo.
Definition: Geometria.hpp:79
int retornaNumeroNodosDesconocidos(void)
Regresa el numero de nodos desconocidos.
Definition: Geometria.cpp:105
int retornaDimension(void)
Retorna la dimensión de la geometría
Definition: Geometria.hpp:155
void visualiza(void)
Definition: Geometria.hpp:390
MatrizInt * EL
Puntero a una MatrizInt que contiene a los nodos de los elementos.
Definition: Geometria.hpp:71
MatrizTamanoVariable * ND
Definition: Geometria.hpp:73
void visualiza(int nl=0, int num=0)
Visualiza el vector.
Definition: VectorInt.cpp:69
void retornaValorNodo(int nodo, ldouble *coord)
Retorna la coordenada especificada del nodo.
Definition: Geometria.hpp:186
int N_N
Numero de nodos.
Definition: Geometria.hpp:85
int regresaNodosSatisfagan(ldouble val, int ind, int *arr, int narr)
Regresa en el arreglo ARR de tamaño NARR los nodos que satisfacen la condicion de tener el valor VAL e...
Definition: Geometria.cpp:178
void visualizaElementosContienenNodo(int nd)
Visualiza a los elementos que contienen al nodo ND.
Definition: Geometria.cpp:56
void leeGeometria(const char *arch)
Lee la geometria a un archivo.
Definition: Geometria.hpp:386
int retornaNumeracionNodo(int nodo)
Retorna la numeracion de los nodos.
Definition: Geometria.hpp:225
int retornaNumeroNodo(int elemento, int nodo)
Retorna el número de nodo del elemento.
Definition: Geometria.hpp:205
int retornaNodosConocidos(int *nds, int nnds)
Retorna en un arreglo los nodos conocidos asi como su numero.
Definition: Geometria.cpp:137
int retorna(const int col)
Retorna el valor de la columna col.
Definition: VectorInt.hpp:210
MatrizInt * EE
Puntero a una MatrizInt que contiene a los elementos que contienen al nodo.
Definition: Geometria.hpp:82
virtual void visualizaCoordenadasDominio(void)=0
Visualiza coordenadas del dominio.
void retornaNodosElemento(int ne, int *nd, int nnd)
Regresa un arreglo ND de los nodos del elemento NE.
Definition: Geometria.hpp:317
Geometria(void)
Constructor de la clase.
Definition: Geometria.hpp:103
VectorInt Particion
Particion del dominio.
Definition: Geometria.hpp:68
int N_E
Numero de elementos.
Definition: Geometria.hpp:88
int retornaNumeroElementos(void)
Retorna el numero de elementos en el dominio.
Definition: Geometria.hpp:141
void grabaGeometria(const char *arch)
Graba la geometria a un archivo.
Definition: Geometria.hpp:381
int retornaTipoNodo(int nd)
Retorna el tipo de nodo dentro del dominio positivo es desconocido, negativo es conocido, (1) Interior , (2) cara, (3) Vertice.
Definition: Geometria.hpp:341
int retornaNumeroNodos(void)
Regresa el número de nodos en el dominio.
Definition: Geometria.hpp:134
int numeroElementosSoporteNodo(void)
Retorna el número de elementos en el soporte de un nodos.
Definition: Geometria.hpp:212
int retornaNumeroNodosConocidos(void)
Retorna el numero de nodos conocidos.
Definition: Geometria.cpp:161
int retornaNodosElemento(void)
Retorna el número de nodos por elemento.
Definition: Geometria.hpp:148
void marcaNodosSatisfagan(ldouble val, int ind, int mc)
Marca con el valor MC a los nodos que satisfacen la condicion de tener el valor VAL en la componente ...
Definition: Geometria.cpp:211
void liberaSoporteNodos(void)
Libera arreglo de soporte de cada nodo.
Definition: Geometria.hpp:363
void inicializa(const int val)
Inicializa el vector al valor val indicado.
Definition: VectorInt.cpp:59