cmelab / morphct

GNU General Public License v3.0
0 stars 6 forks source link

Add charge kwarg #8

Closed JimmyRushing closed 3 years ago

JimmyRushing commented 3 years ago

Screen Shot 2021-06-10 at 1 46 03 PM

when providing the yellow and the pink as chromophores, I get an electron spin error from set_energyvalues. This will probably crop up often if we are creating intramolecular chromophores?

erjank commented 3 years ago

This is the thing that'll be solved by adding hydrogens that we talked about yesterday, correct?

On Wed, Jun 16, 2021 at 12:54 PM JimmyRushing @.***> wrote:

[image: Screen Shot 2021-06-10 at 1 46 03 PM] https://user-images.githubusercontent.com/66091001/122275584-1b6b3780-cea1-11eb-91ec-0662dc4bf6d2.png

when providing the yellow and the pink as chromophores, I get an electron spin error from set_energyvalues. This will probably crop up often if we are creating intramolecular chromophores?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/cmelab/morphct/issues/8, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABIJRSWZYKVEEHNDR6OLJWTTTDXNBANCNFSM462BURXQ .

JimmyRushing commented 3 years ago

yea, same problem. I am not sure if this describes the same proposed solution.

jennyfothergill commented 3 years ago

Screen Shot 2021-06-17 at 2 50 15 PM I think this issue is caused by this part here. This carbon atom has three bonds to it, which means one of its bonds is a double-bond. The way the qcc input writer work right now is it replaces any atom bonded to the chromophore with a hydrogen. If we replace the doubly-bonded carbon with a hydrogen, there will be problem when running QCC because we have unaccounted for electrons. These issues could be fixed by adding a charge argument that would be passed to QCC or by changing the defined chromophores.

JimmyRushing commented 3 years ago

Screen Shot 2021-06-18 at 11 25 24 AM

Screen Shot 2021-06-18 at 11 31 23 AM

Screen Shot 2021-06-18 at 11 32 03 AM

A little more context: If I assign that little guy to a cromophore, the workflow breaks down trying to get_homolumo() for the chromo with the extra atom (error shown). the get_humolumo() succeeds for the other chromo as seen in the third screenshot. If I assign the little fella to the other chromophore. Then its get_homolumo fails.

If I leave it out, I get the original error.

JimmyRushing commented 3 years ago

UPDATE: The workflow runs if I leave the little fella out. With a transfer integral of 0.000 if I call them "acceptors" and .563 if i call them "donors"

jennyfothergill commented 3 years ago

IMG_20210621_151713952 OK, I had to do a little drawing to think about where all the double bonds were in this fragment. Hopefully my chicken scratch makes sense here, but basically the end result is that I think if we want to assign this fragment to a chromophore, we should include a charge. I will work on adding this!