pdynamo / pDynamo3

The pDynamo molecular modeling and simulation program
28 stars 8 forks source link

QM/MM calculations: pDynamo3 and ORCA 5.0.4 QCModelORCA () issue #4

Open arm22470 opened 3 months ago

arm22470 commented 3 months ago

Hello everybody!

I’ve been attempting to run QM/MM calculations with the newest version of pDynamo3 (python3) and ORCA 5_0_4 (Linux system) by following the ORCA manual instructions (page 390) and pDynamo’s wiki. Setting up the qcmodel = QCModelOrca (options, command = ……) in such a manner leads to an error.

############################# File "", line 1, in TypeError: AttributableObject.init() got an unexpected keyword argument 'scratch'

system.DefineQCModel (qcmodel, qcSelection=Selection(Qreg) ) Traceback (most recent call last): File "", line 1, in

################################

The same happens with variations like qcmodel = pMolecule.QCModelOrca (options, command = ……)

The only way I’ve been successful in avoiding the error has been by using qcmodel = QCModelOrca.WithOptions (…) which ironically doesn’t allow the use of user defined options for the ORCA method. Has something changed in the way QCMoldelORCA ( ) is used? Any help would be greatly appreciated.

Example of my code:

. Define Model

options= \ """ ! UKS BP86 SV(P) Def2/J RI SlowConv PAL8 %basis NewECP Fe "SDD" end end %scf MaxIter 1000 end """ jobname = 'test_job' qcmodel = QCModelORCA (options, scratch = './tmp', deleteJobFiles = False, \ command = '/home/user/orca/orca') system.DefineQCModel (qcmodel, qcSelection=Selection(Qreg) ) system.Summary ()

garantes commented 3 months ago

Hi,

ORCA 5 has altered its input/output syntax, and pDynamo3 has not (yet) been updated to reflected that. If you want to use QCModelOrca (options, command = ...), then you will need to execute ORCA 4.

If you have to stick with ORCA 5, you will have to use QCModelORCA.WithOptions ( keywords = [ " UKS ", " BP86 ", " SV(P) ", " Def2/J ", " RI ", " SlowConv ", " PAL8 " ] ) with spaces between the keywords and the quotation marks, and you probably won't be able to use the ORCA input modifiers (%basis, etc).

Cheers,

Guilherme

--

Prof. Dr. Guilherme Menegon Arantes

Instituto de Química Universidade de São Paulo Av. Prof. Lineu Prestes, 748 São Paulo 05508-000 Brasil Fone: 55-11-30913848 Sala 915 http://gaznevada.iq.usp.br/


On Fri, Jun 07, 2024 at 07:00:26AM -0700, arm22470 wrote:

Hello everybody! I’ve been attempting to run QM/MM calculations with the newest version of pDynamo3 (python3) and ORCA 5_0_4 (Linux system) by following the ORCA manual instructions (page 390) and pDynamo’s wiki. Setting up the qcmodel = QCModelOrca (options, command = ……) in such a manner leads to an error.

File "", line 1, in TypeError: AttributableObject.init() got an unexpected keyword argument 'scratch'

system.DefineQCModel (qcmodel, qcSelection=Selection(Qreg) ) Traceback (most recent call last): File "", line 1, in

The same happens with variations like qcmodel = pMolecule.QCModelOrca (options, command = ……)

The only way I’ve been successful in avoiding the error has been by using qcmodel = QCModelOrca.WithOptions (…) which ironically doesn’t allow the use of user defined options for the ORCA method. Has something changed in the way QCMoldelORCA ( ) is used? Any help would be greatly appreciated.

Example of my code:

. Define Model

options= \ """ ! UKS BP86 SV(P) Def2/J RI SlowConv PAL8 %basis NewECP Fe "SDD" end end %scf MaxIter 1000 end """ jobname = 'test_job' qcmodel = QCModelORCA (options, scratch = './tmp', deleteJobFiles = False, \ command = '/home/user/orca/orca') system.DefineQCModel (qcmodel, qcSelection=Selection(Qreg) ) system.Summary ()

-- Reply to this email directly or view it on GitHub: https://github.com/pdynamo/pDynamo3/issues/4 You are receiving this because you are subscribed to this thread.

Message ID: @.***>

arm22470 commented 3 months ago

Thanks for the reply! Its good to know, but when testing with pDynamo 2 (1.9.0 - python2.7) and ORCA 5 all methods of setting up the QCModelORCA work. Perhaps its just something regarding Python 3?