From 078860f8f434c151313038d01702f96b3c463751 Mon Sep 17 00:00:00 2001 From: iwia06 <christoph.pflaum@fau.de> Date: Thu, 6 Apr 2023 14:13:12 +0200 Subject: [PATCH] iKomischer KOnstruktor raus --- program/source/extemp/variable.cc | 133 ------------------------------ program/source/extemp/variable.h | 6 -- 2 files changed, 139 deletions(-) diff --git a/program/source/extemp/variable.cc b/program/source/extemp/variable.cc index 1af0d3b..8f4a2d0 100644 --- a/program/source/extemp/variable.cc +++ b/program/source/extemp/variable.cc @@ -260,139 +260,6 @@ bool Variable<double>::containsNaN() { } -template <> -Variable<double>::Variable(Blockgrid& blockgrid_, double *data) : - Object_based_on_ug ( blockgrid_.Give_unstructured_grid()) { - int num_total, num_neighbor; - blockgrid = &blockgrid_; - ug = blockgrid->Give_unstructured_grid(); - - totalNumberData = 0; - dataTotal = NULL; - specialVariableForOneBlock = true; - - // Kopie der UG Daten zum Löschen - ug_number_hexahedra = ug->Give_number_hexahedra(); - assert(ug_number_hexahedra==1); - ug_number_quadrangles = ug->Give_number_quadrangles(); - ug_number_edges = ug->Give_number_edges(); - ug_number_points = ug->Give_number_points(); - ug_edge_number_neighbors = new int[ug_number_edges]; - idGrid = blockgrid->getId(); - - for(int i=0;i<ug_number_edges;++i) - ug_edge_number_neighbors[i] = ug->Give_edge(i)->Give_number_neighbors(); - - // for parallel - my_rank = ug->Give_my_rank(); - comm = ug->Give_MPI_comm(); - - // hexahedra - data_hexahedra = new double*[ 1 ]; - for ( int id=0; id< 1; ++id ) { - num_total = blockgrid->Give_N_total_hexahedron ( id ); - - if ( ug->Give_hexahedron ( id )->my_object ( my_rank ) ) { - data_hexahedra[id] = data; - } else data_hexahedra[id] = NULL; - } - - // quadrangles - data_quadrangles = new double*[ug->Give_number_quadrangles() ]; - for ( int id=0; id<ug->Give_number_quadrangles(); ++id ) { - num_total = blockgrid->Give_N_total_quadrangle ( id ); - - if ( ug->Give_quadrangle ( id )->my_object ( my_rank ) ) { - data_quadrangles[id] = new double[num_total]; - - for ( int i=0; i<num_total; ++i ) - data_quadrangles[id][i] = 0.0; - } else { - data_quadrangles[id] = NULL; - } - } - - data_interior_quadrangles = new double*[ug->Give_number_quadrangles() ]; - for ( int id=0; id<ug->Give_number_quadrangles(); ++id ) { - num_total = blockgrid->Give_N_total_quadrangle ( id ); - - if ( ug->Give_quadrangle ( id )->my_object ( my_rank ) ) { - data_interior_quadrangles[id] = new double[num_total]; - - for ( int i=0; i<num_total; ++i ) - data_interior_quadrangles[id][i] = 0.0; - } else data_interior_quadrangles[id] = NULL; - } - - data_exterior_quadrangles = new double*[ug->Give_number_quadrangles() ]; - for ( int id=0; id<ug->Give_number_quadrangles(); ++id ) { - if ( ug->Give_quadrangle ( id )->Give_exists_exterior() && - ug->Give_quadrangle ( id )->my_object ( my_rank ) ) { - num_total = blockgrid->Give_N_total_quadrangle ( id ); - data_exterior_quadrangles[id] = new double[num_total]; - - for ( int i=0; i<num_total; ++i ) - data_exterior_quadrangles[id][i] = 0.0; - } else data_exterior_quadrangles[id] = NULL; - } - - // edges - data_edges = new double*[ug->Give_number_edges() ]; - for ( int id=0; id<ug->Give_number_edges(); ++id ) { - num_total = blockgrid->Give_Nx_edge ( id ) +1; - if ( ug->Give_edge ( id )->my_object ( my_rank ) ) { - data_edges[id] = new double[num_total]; - - for ( int i=0; i<num_total; ++i ) - data_edges[id][i] = 0.0; - } else data_edges[id] = NULL; - } - - - data_neighbor_edges = new double**[ug->Give_number_edges() ]; - for ( int id=0; id<ug->Give_number_edges(); ++id ) { - num_neighbor = ug->Give_edge ( id )->Give_number_neighbors(); - - if ( ug->Give_edge ( id )->my_object ( my_rank ) ) { - data_neighbor_edges[id] = new double*[num_neighbor]; - for ( int i=0; i<num_neighbor; ++i ) { - num_total = blockgrid->Give_Nx_edge ( id ) +1; - data_neighbor_edges[id][i] = new double[num_total]; - - for ( int j=0; j<num_total; ++j ) - data_neighbor_edges[id][i][j] = 0.0; - } - } else data_neighbor_edges[id] = NULL; - } - - // points - data_points = new double*[ug->Give_number_points() ]; - for ( int id=0; id<ug->Give_number_points(); ++id ) { - num_total = 1; - - if ( ug->Give_point ( id )->my_object ( my_rank ) ) { - data_points[id] = new double[num_total]; - - for ( int i=0; i<num_total; ++i ) - data_points[id][i] = 0.0; - } else data_points[id] = NULL; - } - data_neighbor_points = new double*[ug->Give_number_points() ]; - for ( int id=0; id<ug->Give_number_points(); ++id ) { - num_neighbor = ug->Give_point ( id )->Give_number_neighbors(); - - if ( ug->Give_point ( id )->my_object ( my_rank ) ) { - data_neighbor_points[id] = new double[num_neighbor]; - - for ( int i=0; i<num_neighbor; ++i ) - data_neighbor_points[id][i] = 0.0; - } else data_neighbor_points[id] = NULL; - } - - Update_back(0); -} - - template <> Variable<double>::Variable(Blockgrid& blockgrid_, double **dataHex) : Object_based_on_ug ( blockgrid_.Give_unstructured_grid()) { diff --git a/program/source/extemp/variable.h b/program/source/extemp/variable.h index 5b37f49..4a26ded 100644 --- a/program/source/extemp/variable.h +++ b/program/source/extemp/variable.h @@ -238,12 +238,6 @@ class Variable : public Expr<Variable< DTyp > >, public Object_based_on_ug { // friend DTyp_ product(Variable<DTyp_>& a, Variable<DTyp_>& b, Marker& marker); Variable(Blockgrid& blockgrid_ ); - /** - * Ganz spezieller Konstruktor der nur für Ausgabe von Daten in Raytracing ist - * Blockgrid darf nur einen Block enthalten - * das ist dann: specialVariableForOneBlock - **/ - Variable(Blockgrid& blockgrid_, double *data); /** * Ganz spezieller Konstruktor fuer vtKReader -- GitLab