MULTI logic error during NRT job

MULTI logic error during NRT job

Postby gjtanoury » Fri Aug 18, 2017 2:17 pm

Hi,
I am getting a "MULTI: logic error" in my NRT job. The full NRT output is attached. Ideas, solutions?

Thank you for the help,
Jerry
Attachments
NRT output.txt
(3.79 KiB) Downloaded 11 times
gjtanoury
 
Posts: 33
Joined: Thu Feb 14, 2013 7:04 am

Re: MULTI logic error during NRT job

Postby ericg » Fri Aug 18, 2017 3:30 pm

I suspect that the search for reference structures in the multi-reference optimization has eliminated all structures. The optimizer is confused at this point.

It seems that the search fails here because the single-reference and multi-reference treatments (see Section B.8.1 of the Manual) are providing conflicting information to NRT. Single-reference optimizations (which target the NBO occupancies, diagonal elements only of the NBO density matrix) suggest that most of the reference structures contribute little weight to the resonance hybrid. Multi-reference optimization (which best fits all elements of the valence-only or full density matrix) should be trusted more than then single-reference.

So I would suggest the following:

1. Start over with standard NBO analysis. Then convert the resulting $CHOOSE keylist (printed near the end of the NBO output) to a $NRTSTR keylist. The formats of these keylists (see B.4 and B.8.3) are quite similar.

2. Re-run the calculation with $NRTSTR keylist input using "$nbo nrtfdm nrtlst=1 nrtthr=10 nrtcml $end". NRTFDM enables fitting of the full NAO density matrix, NRTLST=1 forces all structures with weight greater than 1% to be printed in a new $NRTSTR (at the end of NRT output), NRTTHR=10 limits NRT to delocalizing interactions that are stronger than 10 kcal/mol, and NRTCML writes a .cml output file that can be used with programs like ChemAxon's MarvinView for easy visualization of the NRT structures and weights.

3. Take the new $NRTSTR printed at the end of the second calculation and use it as input for a third calculation.

4. Take $NRTSTR from the third calculation and use it in a fourth calculation, and iterate until the list of structures and weights in the printed $NRTSTR are satisfactorily converged.

Using the $NRTSTR keylist forces NRT to treat the structures listed in the keylist as reference structures, preventing NRT from attempting to decide which structures should be used as reference, and which shouldn't.

Eric
ericg
 
Posts: 270
Joined: Sat Dec 29, 2012 9:31 am

Re: MULTI logic error during NRT job

Postby gjtanoury » Sat Aug 19, 2017 7:36 am

Thank you Eric. I'll do it and let you know the result.

Jerry
gjtanoury
 
Posts: 33
Joined: Thu Feb 14, 2013 7:04 am

Re: MULTI logic error during NRT job

Postby gjtanoury » Mon Aug 21, 2017 6:17 am

Hi Eric,
I ran the first calculation, and noticed in the output file " /NRTLST / : Set to 100.%". Shouldn't this be 1%? Needless to say, the only resonance structure was my NRTSTR input. I tried:
NRTLST=1.0 and NRTLST=0.01, but they both gave "/NRTLST / : Set to 100.%" in the output file.

Jerry
gjtanoury
 
Posts: 33
Joined: Thu Feb 14, 2013 7:04 am

Re: MULTI logic error during NRT job

Postby gjtanoury » Mon Aug 21, 2017 11:56 am

Hi Eric,
Here are some results.
1. I used the CHOOSE structure from the first calculation as NRTSTR for the second calculation, and used the keywords you recommended, except NRTLST.
2. I needed to leave NRTLST at it's default value and use NRTTHR=1, which gave MANY resonance structures: 6 structures with weights >5%, and none of RSs (wgt >1%) matched CHOOSE from the first calculation.
3. The NRTSTR structure printed at the end of the second calculation was the input NRTSTR (which is the CHOOSE structure from the first calculation), and had a weight of 0.00% (???)

Is it correct to say, therefore, that the CHOOSE structure, although not an identified RS itself, is a bonding representation of the summation of all RSs?

Jerry
gjtanoury
 
Posts: 33
Joined: Thu Feb 14, 2013 7:04 am

Re: MULTI logic error during NRT job

Postby ericg » Mon Aug 21, 2017 8:09 pm

Jerry,

This won't work very well unless NRTLST is functioning. I believe that I broke NRTLST early this summer as we were working in NRT. There's a missing line of code in nbo6/src/nbo/main.F:
Code: Select all
c  NRTLST -- set threshold for $NRTSTR listing:                                                                                                               
      else if(equal(keywd,nc,'nrtlst',6,6,.false.)) then
        if(jprint(32).eq.0) jprint(32) = 1
        prthr = abs(prthr)
        rdum = rfld(error,eof)
        if(eof) goto 100
        prthr = rdum / hundrd   !! <- missing line

If you have source, you can add this line, then re-make the NBO executables. Do you have NBO source?
Is it correct to say, therefore, that the CHOOSE structure, although not an identified RS itself, is a bonding representation of the summation of all RSs?

No, this is just the single-reference minimization behaving badly.

Also, I'd encourage setting NRTTHR to a higher value, like 10 (kcal/mol).

Eric
ericg
 
Posts: 270
Joined: Sat Dec 29, 2012 9:31 am

Re: MULTI logic error during NRT job

Postby gjtanoury » Tue Aug 22, 2017 9:53 am

Hi Eric,
I have the source code and will add the line and recompile.

Thanks for the answer to my Q.

Jerry
gjtanoury
 
Posts: 33
Joined: Thu Feb 14, 2013 7:04 am

Re: MULTI logic error during NRT job

Postby gjtanoury » Thu Aug 24, 2017 9:21 am

Hi Eric,
To start, I read the first of your three 1998 JCC papers on NRT to further educated myself on the topic. I'm making my way through the other two.

I followed your suggestions from our thread and here are the results:
1. Taking the $CHOOSE structure (NLS) from the first calculation and using it as NRT reference for the second resulted in 12 NRT structures with weight >1% (calculated wgts ranging 17.83 to 2.08%). In this calculation, I got "Warning: reference structure has lower weight than 17 of the secondaries." Which should be expected because the NLS is a poor guess and a poor reference structure due to the large amount of delocalization present in my system.
2. I used the 12 NRT structures from step 1 as NRT references for a second calculation, which resulted in 42 NRT structures with weight >1% (calculated wgts ranging from 8.36 to 1.02%). I got the same warning about ref structure having lower weight than 17 secondaries, for all 12 of the NRT structures. Going from 12 to 42 seems to be diverging instead of converging.
3. I tried the same calculation as in step 2, except I used only the highest weighted NRT,17.83%. This resulted in 15 structures: 1 with wgt 27.71, the remainder with wgts =< 8.5%.

Is this expected behavior, or am I still missing something here???

Thank you for all the help,
Jerry
gjtanoury
 
Posts: 33
Joined: Thu Feb 14, 2013 7:04 am

Re: MULTI logic error during NRT job

Postby ericg » Thu Aug 24, 2017 9:48 pm

Jerry,

I would recommend ignoring the "reference structure has lower weight" warnings in step (1). Step (1) is performed just to generate a set of candidate structures for step (2). [Note that the "lower weight" warnings result from the single-reference minimizations (which only fit the diagonal elements of the NBO density matrix) that are problematic in this case.]

You find that step (2) still yields "lower weight" warnings. I'd recommend repeating this step with NRTTHR=101%. Setting the delocalization list threshold (NRTTHR) above 100% shuts down the routine that generates new secondary structures. With no secondary structures, there are no single-reference minimizations to complete, and therefore, no low weight warnings. The only optimization that NRT performs, then, is the NAO density-based multi-reference minimization. The only structures that NRT considers in this optimization are those that you input via the $NRTSTR keylist.

What does step (2) yield with NRTTHR=101%?

Eric
ericg
 
Posts: 270
Joined: Sat Dec 29, 2012 9:31 am

Re: MULTI logic error during NRT job

Postby gjtanoury » Fri Aug 25, 2017 7:38 am

Hi Eric,
That worked! The second calculation gave 10 structures. A third calculation using those 10 structures at input gave the same 10 structures with the same wgts as the second calculation. So, things converged.

Thank you so much for the help. I've learned quite a bit from working through the issues of this highly non-Lewis system, and it made me learn more NRT :D . I'll be reading parts II and III of your 1998 JCC papers to fully get a grasp on NRT. I have several more of these types of systems on my plate. By the way,Valence non-Lewis and Rydberg non-Lewis are 2.364% and 0.246%, respectively.

All the best,
Jerry
gjtanoury
 
Posts: 33
Joined: Thu Feb 14, 2013 7:04 am


Return to General NBO Discussion

Who is online

Users browsing this forum: No registered users and 1 guest

cron