Menu

Computing eta, y0 and y1 parameters from from Molcas CASSCF calculations

Anonymous
2023-08-31
2023-11-13
  • Anonymous

    Anonymous - 2023-08-31

    Dear Felix,
    first of all, let me congratulate you on TheoDore. I find it amaizing. Thank you for making public such an arsenal of important tools. Now, on to my question. I a trying to characterise double excited states using casscf calculations from OpenMolcas (input file attached). However, I can't seem to get the eta, y0 and y1 parameters to work. Could you please help me with this issue?

    Thank you
    Best wishes
    Federico Hernández

     
  • Felix Plasser

    Felix Plasser - 2023-08-31

    Hi Federico,

    Nice to hear that you are looking at this. These descriptors are actually computed from the density matrix (not transition density matrix). I think they are printed if you run something of the sort

    theodore analyze_nos MOLCAS.molden.1 MOLCAS.molden.2

    I can have a closer look later ...

     
  • Anonymous

    Anonymous - 2023-09-01

    Hi Felix,
    Could you please give me some more hints on how to using the analyse_nos module? Because I could not make it work. It does not run when I call it as you put in your post. I also tried running tne sden module with the option NO_ana=True but still don't get the values for the descriptors I want.
    Thank you in advancee
    Federico

     
  • Felix Plasser

    Felix Plasser - 2023-09-01

    Hi, just a few comments:

    You can get y0 and y1 already from the standard WFA output. If you have the line

      Occupation of frontier NOs:
         0.0000   0.0191   0.1021   1.8989   1.9819   1.9979
    

    then this means that y0=0.1021 and y1=0.0191 .

    You can also get Omega from the WFA output. In our paper ( http://dx.doi.org/10.1039/D2SC06990C ) we are actually arguing that Omega is a bit more meaningful to use than eta.

    NTOs
      Leading SVs:
         0.8600   0.0007   0.0000
      Sum of SVs (Omega):               0.860726
    

    In this case Omega is 0.861

    I never included eta into WFA because I was not so happy with how it performs and how to interpret it. But you can do the detour via TheoDORE. First you need to set MOLCAS_MOLDEN=ON to get the molden files. In my case these files are called MOLCAS.rasscf.molden.1 and MOLCAS.rasscf.molden.2 but this of course depends on your precise set up. If those files are there, then I can run

    theodore analyze_nos MOLCAS.rasscf.molden.1 MOLCAS.rasscf.molden.2
    

    And if I have the newest TheoDORE version, then it should print y0, y1 and eta by default.

     
  • Anonymous

    Anonymous - 2023-09-05

    Thank you very much! Your help has been so useful.
    Federico

     
  • Anonymous

    Anonymous - 2023-09-07

    Hi Felix,
    just a follow-up quesiton. I have been trying to obtain the same parameters to characterise doubly excited states but using ADC2 from Turbomole. Just for the sake of learning to use the program, I would like to obtain 'y0', 'y1', 'p', 'eta', 'n_u', and 'n_u,nl'. I understand I need to run the "sden" for this. However, I have not been susccesful even running the module. I get this error:

      File "/Theodore/theodore-qc/theodore/lib_sden.py", line 82, in print_valence_table
        pop = state[data]
    
    KeyError: 'V_A'
    rtype='ricc2'
    rfile='ricc2.out'
    read_binary=True
    mo_file='molden.input'
    NO_ana=True
    AD_ana=True
    unpaired_ana=True
    pop_ana=True
    output_file='summ.txt'
    output_prec=(7, 3)
    mcfmt='% 10E'
    print_sorted=True
    

    And here is the last part of the TM's control file:

    $freeze
     implicit core=   26 virt=    0
    $cbas    file=auxbasis
    $ricc2
      adc(2)
      maxiter=  500
    $excitations
      irrep=a   nexc=  10  npre=  0  nstart=  0
      spectrum  states=all  operators=xdiplen,ydiplen,zdiplen
      xgrad states=all
    $response
      static relaxed
    $anadens
     calc Stp0_densS3 from
     1d0 adcp2-xsdn-1a-003-total.cao
    -1d0 mp2-gsdn-1a-000-total.cao
    $pop nbo short
      mp2-gsdn-1a-000-total.cao
      adcp2-xsdn-1a-003-total.cao
    $pointval fmt=cub
    $last step     tm2molden
    

    May thanks in advance.
    Federico

     
  • Felix Plasser

    Felix Plasser - 2023-09-08

    Hi Federico.

    ADC(2) is not actually able to describe doubly excited states properly. So, you won't see anything interesting there.

    You can run analyze_tden and this will produce an Om values. But in the case of ADC(2) this is just a normalisation factor, not actually the double excitations.

    There is no integrated option for running analyze_sden with ADC(2). If you can produce molden files with the NOs, then you can analyze those via analyze_nos. But again, I don't think there is much of a point for ADC(2).

     

Anonymous
Anonymous

Add attachments
Cancel