void Twopdm_container::save_npdms(const int& i, const int& j) { #ifndef SERIAL boost::mpi::communicator world; world.barrier(); #endif Timer timer; if ( store_full_spin_array_ ) { accumulate_npdm(); save_npdm_binary(i, j); save_npdm_text(i, j); } if ( store_full_spatial_array_ ) { if(dmrginp.spinAdapted()) accumulate_spatial_npdm(); else calculate_spatial_npdm(); save_spatial_npdm_binary(i, j); save_spatial_npdm_text(i, j); } #ifndef SERIAL world.barrier(); #endif ecpu = timer.elapsedcputime();ewall=timer.elapsedwalltime(); p3out << "2PDM save full array time " << ewall << " " << ecpu << endl; }
void Onepdm_container::save_npdms(const int& i, const int& j) { #ifndef SERIAL boost::mpi::communicator world; world.barrier(); #endif Timer timer; accumulate_npdm(); save_npdm_binary(i, j); save_npdm_text(i, j); accumulate_spatial_npdm(); save_spatial_npdm_binary(i, j); save_spatial_npdm_text(i, j); #ifndef SERIAL world.barrier(); #endif std::cout << "1PDM save full array time " << timer.elapsedwalltime() << " " << timer.elapsedcputime() << endl; }
void Onepdm_container::save_npdms(const int& i, const int& j, int integralIndex) { #ifndef SERIAL boost::mpi::communicator world; calc.barrier(); #endif Timer timer; accumulate_npdm(); save_npdm_binary(i, j); save_npdm_text(i, j); if(dmrginp.spinAdapted()) accumulate_spatial_npdm(); else calculate_spatial_npdm(); save_spatial_npdm_binary(i, j); save_spatial_npdm_text(i, j); #ifndef SERIAL calc.barrier(); #endif double cputime = timer.elapsedcputime(); p3out << "1PDM save full array time " << timer.elapsedwalltime() << " " << cputime << endl; }