Changeset d192142


Ignore:
Timestamp:
Mar 2, 2017, 12:26:24 PM (8 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_StructOpt_integration_tests, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_ChronosMutex, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, GeometryObjects, Gui_displays_atomic_force_velocity, IndependentFragmentGrids_IntegrationTest, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, RotateToPrincipalAxisSystem_UndoRedo, StoppableMakroAction, Subpackage_levmar, Subpackage_vmg, ThirdParty_MPQC_rebuilt_buildsystem, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, Ubuntu_1604_changes, stable
Children:
6e12a6
Parents:
83fa5c
git-author:
Frederik Heber <heber@…> (01/30/17 21:25:48)
git-committer:
Frederik Heber <heber@…> (03/02/17 12:26:24)
Message:

FIX: Fixed some mpqc crashes in check target due to hacked calculations in mpqc.cc.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified ThirdParty/mpqc_open/src/bin/mpqc/mpqc.cc

    r83fa5c rd192142  
    15731573       SCFEnergy *eop = new SCFEnergy;
    15741574       eop->reference();
    1575        Ref<SCElementOp2> op = eop;
    1576        t.element_op(op,cl_dens_);
    1577        op=0;
     1575       if (t.dim()->equiv(cl_dens_.dim())) {
     1576         Ref<SCElementOp2> op = eop;
     1577         t.element_op(op,cl_dens_);
     1578         op=0;
     1579       }
    15781580       eop->dereference();
    15791581
     
    16021604       SCFEnergy *eop = new SCFEnergy;
    16031605       eop->reference();
    1604        Ref<SCElementOp2> op = eop;
    1605        h.element_op(op,cl_dens_);
    1606        op=0;
     1606       if (h.dim()->equiv(cl_dens_.dim())) {
     1607         Ref<SCElementOp2> op = eop;
     1608         h.element_op(op,cl_dens_);
     1609         op=0;
     1610       }
    16071611       eop->dereference();
    16081612
     
    16321636       SCFEnergy *eop = new SCFEnergy;
    16331637       eop->reference();
    1634        Ref<SCElementOp2> op = eop;
    1635        h.element_op(op,cl_dens_);
    1636        op=0;
     1638       if (h.dim()->equiv(cl_dens_.dim())) {
     1639         Ref<SCElementOp2> op = eop;
     1640         h.element_op(op,cl_dens_);
     1641         op=0;
     1642       }
    16371643       eop->dereference();
    16381644
     
    16701676       grad = mole->gradient_result().result_noupdate();
    16711677     }
    1672      else {
    1673        grad = mole->gradient();
    1674      }
     1678     // gradient calculation needs to be activated in the configuration
     1679     // some methods such as open shell MBPT2 do not allow for gradient calc.
     1680//     else {
     1681//       grad = mole->gradient();
     1682//     }
    16751683     if (grad.nonnull()) {
    16761684       data.forces.resize(grad.dim()/3);
     
    16871695         ExEnv::out0() << endl;
    16881696       }
     1697     } else {
     1698       ExEnv::out0() << "INFO: There is no gradient information available." << endl;
    16891699     }
    16901700     grad = NULL;
     
    16921702     {
    16931703       // eigenvalues (this only works if we have a OneBodyWavefunction, i.e. SCF procedure)
    1694 //       SCF *scf = dynamic_cast<SCF*>(wfn.pointer());
    1695 //       if (scf != NULL) {
    1696 //         const double scfernergy = scf->energy();
     1704       // eigenvalues seem to be invalid for unrestricted SCF calculation
     1705       // (see UnrestrictedSCF::eigenvalues() implementation)
     1706       UnrestrictedSCF *uscf = dynamic_cast<UnrestrictedSCF*>(wfn.pointer());
     1707       if ((scf != NULL) && (uscf == NULL)) {
     1708         const double scfernergy = scf->energy();
    16971709         RefDiagSCMatrix evals = scf->eigenvalues();
    16981710
     
    17021714           ExEnv::out0() << i << "th eigenvalue is " << evals(i) << endl;
    17031715         }
    1704 //       }
     1716       } else {
     1717           ExEnv::out0() << "INFO: There is no eigenvalue information available." << endl;
     1718       }
    17051719     }
    17061720     // we do sample the density only on request
Note: See TracChangeset for help on using the changeset viewer.