Loading src/libnptm/Commons.cpp +28 −28 Original line number Diff line number Diff line Loading @@ -1779,7 +1779,7 @@ ParticleDescriptor::ParticleDescriptor(const mixMPI *mpidata) { int last_layer_index = 0; for (int rci = 0; rci < _num_configurations; rci++) { rc[rci] = vec_rc + last_layer_index; last_layer_index += rhs.nshl[rci]; last_layer_index += nshl[rci]; if (rci == 0 && tot_nshl < _num_layers) last_layer_index++; } vint = new dcomplex[16]; Loading @@ -1796,7 +1796,7 @@ ParticleDescriptor::ParticleDescriptor(const mixMPI *mpidata) { MPI_Bcast(ros, _num_configurations, MPI_DOUBLE, 0, MPI_COMM_WORLD); } ParticleDescriptor::mpibcast(const mixMPI *mpidata) { void ParticleDescriptor::mpibcast(const mixMPI *mpidata) { MPI_Bcast(&_class_type, 1, MPI_SHORT, 0, MPI_COMM_WORLD); MPI_Bcast(&_nsph, 1, MPI_INT, 0, MPI_COMM_WORLD); MPI_Bcast(&_li, 1, MPI_INT, 0, MPI_COMM_WORLD); Loading Loading @@ -1871,14 +1871,14 @@ ParticleDescriptor::mpibcast(const mixMPI *mpidata) { } // >>> NEEDED BY INCLU <<< // if (_class_type == INCLUSION_TYPE) { MPI_Bcast(rm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(re0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rmw, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rew, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(tm, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(te, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(tm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(te0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(re0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(rmw, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(rew, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(tm, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(te, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(tm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(te0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); } } #endif // MPI_VERSION Loading Loading @@ -2424,21 +2424,21 @@ ParticleDescriptorInclusion::ParticleDescriptorInclusion(const mixMPI *mpidata) for (int ii = 0; ii <= _lm; ii++) ind3j[ii] = vec_ind3j + (_lm * ii); // >>> NEEDED BY INCLU <<< // rm0 = new dcomplex[_le]; MPI_Bcast(rm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); re0 = new dcomplex[_le]; MPI_Bcast(re0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(re0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); rmw = new dcomplex[_le]; MPI_Bcast(rmw, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rmw, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); rew = new dcomplex[_le]; MPI_Bcast(rew, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rew, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); tm = new dcomplex[_le]; MPI_Bcast(tm, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(tm, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); te = new dcomplex[_le]; MPI_Bcast(te, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(te, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); tm0 = new dcomplex[_le]; MPI_Bcast(tm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(tm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); te0 = new dcomplex[_le]; MPI_Bcast(te0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(te0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); } #endif // MPI_VERSION // >>> End of ParticleDescriptorInclusion class implementation. <<< // Loading Loading @@ -2506,26 +2506,26 @@ ParticleDescriptorSphere::ParticleDescriptorSphere(const ParticleDescriptorSpher ParticleDescriptorSphere::ParticleDescriptorSphere(const mixMPI *mpidata) : ParticleDescriptor(mpidata) { // >>> NEEDED BY SPHERE AND CLUSTER <<< // vec_sas = new dcomplex[4 * _nsph]; MPI_Bcast(vec_sas, 4 * _nsph, MPI_C_DOUBLE_COMPLEX, 0 MPI_COMM_WORLD); MPI_Bcast(vec_sas, 4 * _nsph, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); vec_vints = new dcomplex[16 * _nsph]; MPI_Bcast(vec_vints, 16 * _nsph, MPI_C_DOUBLE_COMPLEX, 0 MPI_COMM_WORLD); MPI_Bcast(vec_vints, 16 * _nsph, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); fsas = new dcomplex[_nsph]; MPI_Bcast(fsas, _nsph, MPI_C_DOUBLE_COMPLEX, 0 MPI_COMM_WORLD); MPI_Bcast(fsas, _nsph, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); sscs = new double[_nsph]; MPI_Bcast(sscs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sscs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sexs = new double[_nsph]; MPI_Bcast(sexs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sexs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sabs = new double[_nsph]; MPI_Bcast(sabs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sabs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sqscs = new double[_nsph]; MPI_Bcast(sqscs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sqscs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sqexs = new double[_nsph]; MPI_Bcast(sqexs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sqexs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sqabs = new double[_nsph]; MPI_Bcast(sqabs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sqabs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); gcsv = new double[_nsph]; MPI_Bcast(gcsv, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(gcsv, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sas = new dcomplex**[_nsph]; vints = new dcomplex*[_nsph]; for (int vi = 0; vi < nsph; vi++) { Loading Loading
src/libnptm/Commons.cpp +28 −28 Original line number Diff line number Diff line Loading @@ -1779,7 +1779,7 @@ ParticleDescriptor::ParticleDescriptor(const mixMPI *mpidata) { int last_layer_index = 0; for (int rci = 0; rci < _num_configurations; rci++) { rc[rci] = vec_rc + last_layer_index; last_layer_index += rhs.nshl[rci]; last_layer_index += nshl[rci]; if (rci == 0 && tot_nshl < _num_layers) last_layer_index++; } vint = new dcomplex[16]; Loading @@ -1796,7 +1796,7 @@ ParticleDescriptor::ParticleDescriptor(const mixMPI *mpidata) { MPI_Bcast(ros, _num_configurations, MPI_DOUBLE, 0, MPI_COMM_WORLD); } ParticleDescriptor::mpibcast(const mixMPI *mpidata) { void ParticleDescriptor::mpibcast(const mixMPI *mpidata) { MPI_Bcast(&_class_type, 1, MPI_SHORT, 0, MPI_COMM_WORLD); MPI_Bcast(&_nsph, 1, MPI_INT, 0, MPI_COMM_WORLD); MPI_Bcast(&_li, 1, MPI_INT, 0, MPI_COMM_WORLD); Loading Loading @@ -1871,14 +1871,14 @@ ParticleDescriptor::mpibcast(const mixMPI *mpidata) { } // >>> NEEDED BY INCLU <<< // if (_class_type == INCLUSION_TYPE) { MPI_Bcast(rm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(re0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rmw, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rew, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(tm, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(te, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(tm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(te0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(re0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(rmw, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(rew, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(tm, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(te, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(tm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); MPI_Bcast(te0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); } } #endif // MPI_VERSION Loading Loading @@ -2424,21 +2424,21 @@ ParticleDescriptorInclusion::ParticleDescriptorInclusion(const mixMPI *mpidata) for (int ii = 0; ii <= _lm; ii++) ind3j[ii] = vec_ind3j + (_lm * ii); // >>> NEEDED BY INCLU <<< // rm0 = new dcomplex[_le]; MPI_Bcast(rm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); re0 = new dcomplex[_le]; MPI_Bcast(re0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(re0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); rmw = new dcomplex[_le]; MPI_Bcast(rmw, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rmw, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); rew = new dcomplex[_le]; MPI_Bcast(rew, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(rew, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); tm = new dcomplex[_le]; MPI_Bcast(tm, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(tm, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); te = new dcomplex[_le]; MPI_Bcast(te, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(te, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); tm0 = new dcomplex[_le]; MPI_Bcast(tm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(tm0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); te0 = new dcomplex[_le]; MPI_Bcast(te0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMMWORLD); MPI_Bcast(te0, _le, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); } #endif // MPI_VERSION // >>> End of ParticleDescriptorInclusion class implementation. <<< // Loading Loading @@ -2506,26 +2506,26 @@ ParticleDescriptorSphere::ParticleDescriptorSphere(const ParticleDescriptorSpher ParticleDescriptorSphere::ParticleDescriptorSphere(const mixMPI *mpidata) : ParticleDescriptor(mpidata) { // >>> NEEDED BY SPHERE AND CLUSTER <<< // vec_sas = new dcomplex[4 * _nsph]; MPI_Bcast(vec_sas, 4 * _nsph, MPI_C_DOUBLE_COMPLEX, 0 MPI_COMM_WORLD); MPI_Bcast(vec_sas, 4 * _nsph, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); vec_vints = new dcomplex[16 * _nsph]; MPI_Bcast(vec_vints, 16 * _nsph, MPI_C_DOUBLE_COMPLEX, 0 MPI_COMM_WORLD); MPI_Bcast(vec_vints, 16 * _nsph, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); fsas = new dcomplex[_nsph]; MPI_Bcast(fsas, _nsph, MPI_C_DOUBLE_COMPLEX, 0 MPI_COMM_WORLD); MPI_Bcast(fsas, _nsph, MPI_C_DOUBLE_COMPLEX, 0, MPI_COMM_WORLD); sscs = new double[_nsph]; MPI_Bcast(sscs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sscs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sexs = new double[_nsph]; MPI_Bcast(sexs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sexs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sabs = new double[_nsph]; MPI_Bcast(sabs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sabs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sqscs = new double[_nsph]; MPI_Bcast(sqscs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sqscs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sqexs = new double[_nsph]; MPI_Bcast(sqexs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sqexs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sqabs = new double[_nsph]; MPI_Bcast(sqabs, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(sqabs, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); gcsv = new double[_nsph]; MPI_Bcast(gcsv, _nsph, MPI_DOUBLE, 0 MPI_COMM_WORLD); MPI_Bcast(gcsv, _nsph, MPI_DOUBLE, 0, MPI_COMM_WORLD); sas = new dcomplex**[_nsph]; vints = new dcomplex*[_nsph]; for (int vi = 0; vi < nsph; vi++) { Loading