47 #ifdef HAVE_FEI_AZTECOO
55 #define AZTEC_MPI AZTEC_MPI
66 namespace fei_trilinos {
72 proc_config(AZ_PROC_SIZE),
73 update(update, update+N_update),
79 az_transformed(false),
80 globalSize_(globalSz),
82 localOffset_(localOffs),
87 AZ_set_proc_config(&proc_config[0], comm_);
92 proc_config(AZ_PROC_SIZE),
98 orderingUpdate(map.orderingUpdate),
99 az_transformed(map.az_transformed),
100 globalSize_(map.globalSize_),
101 localSize_(map.localSize_),
102 localOffset_(map.localOffset_),
103 N_update_(map.localSize_),
106 AZ_processor_info(&proc_config[0]);
107 update_index = (
int*)AZ_allocate(N_update_*
sizeof(
int));
108 for(
int i=0; i<N_update_; ++i) {
109 update_index[i] = map.update_index[i];
111 external = (
int*)AZ_allocate(data_org[AZ_N_external]*
sizeof(
int));
112 extern_index = (
int*)AZ_allocate(data_org[AZ_N_external]*
sizeof(
int));
113 for(
int i=0; i<data_org[AZ_N_external]; ++i) {
114 external[i] = map.external[i];
115 extern_index[i] = map.extern_index[i];
136 throw std::runtime_error(
"Aztec_Map: ERROR, globalSize <= 0.");
140 throw std::runtime_error(
"Aztec_Map: ERROR, localSize negative.");
144 throw std::runtime_error(
"Aztec_Map: ERROR, localOffset negative.");
Aztec_Map(int globalSize, int N_update, const int *update, int localOffset, MPI_Comm comm)