Skip to main content

Create input files for QDng calculations

Project description

Python package to generate and modify QDng calculations inputs in xml format

Module:

  • inpxml.py: InpXML Class with methods to write and edit xml structures designed as input files for quantum chemistry calculations on QDng package. Requires lxml.

Example:

In:

Tf = 25 # [fs]
dt = 0.25 # [fs]
steps = Tf*41.34/dt
Nfiles = 5e2
wcycle = int(steps/Nfiles)
mass = 1764.30

propa_params = {'dt': dt, 'steps': int(steps), 'wcycle': wcycle, 
            'dir': 'example_directory/', 'nfile': 'norm'}

T00 = {'head':'T', 'name':'Sum', 'mass':mass, 'key':'T'}
V00 = {'head':'V', 'name':'Sum', 'file':'MgH/pots/pot_Sig_0'}
m00 = {'head':'m0', 'name':'Sum', 'Opes':[T00, V00]} 
T11 = {'head':'T', 'ref':'T'}
V11 = {'head':'V', 'name':'Sum', 'file':'MgH/pots/pot_Sig_1'}
m11 = {'head':'m1', 'name':'Sum', 'Opes':[T11, V11]} 
m22 = {'head':'m2', 'name':'Sum', 'Opes':[T11, V11]} 
m10 = {'head':'m10', 'name':'GridDipole', 'file':'mu', 'laser':'Et', 'Opes':[]} 

H_params = {'type':'Multistate', 'Mels':[m00, m11, m10, m22]} 
Hsum = {'type':'Sum', 'Opes':[T00, V00, T00]} 
wf, ef, vib =   [1, ], ['Sig0',], [1, ] # args['wf'], args['ef'], , args['vib'] #
WF_params = {'type':'Multistate', 'states':'1',
         'file':["MgH/efs_{}/ef_{}".format(ef[i], vib[i]) for i in range(len(ef))], 
         'index':[wf[i] for i in range(len(wf))], 'normalize':True}
filter_opes = [{'expeconly':{'name':'Multistate', 'states':WF_params['states'], 'unity':'False', 'header':"mu{}".format(ind)}, 
               'm{}'.format(ind):{'name':'GridPotential', 'file':'MgH/mu/mu_Sig0Sig1'}}
               for ind in [2.1,] ]
#%%
# Initialize
prop = InpXML()
prop.program('propa', propa_params, WF_params)
prop.propagation('Cheby', H_params)
prop.filter('filterpost', filter_opes)
prop.show

# Editing
prop.hamilt = 'name', 'something'
prop.hamilt = 'm0.0/T', 'name', 'something_new'
prop.show
 
# Writing to file
# prop.writexml(filename='filename', txt=True)

Out:

<qdng>
  <propa dt="1" steps="1000" dir="efs_g" Nef="20" conv="1e-11">
    <propagator name="Cheby">
      <hamiltonian name="Multistate">
        <m0.0 name="Sum">
          <T name="GridNablaSq" mass="2000" key="T"/>
          <V name="GridPotential" file="pot_Vg"/>
        </m0.0>
        <m1.1 name="Sum">
          <T ref="T"/>
          <V name="GridPotential" file="pot_Vg"/>
        </m1.1>
        <m1.0 name="GridDipole" file="mu" laser="Et"/>
        <m2.2 name="Sum">
          <T ref="T"/>
          <V name="GridPotential" file="pot_Vg"/>
        </m2.2>
      </hamiltonian>
    </propagator>
    <wf name="Multistate" states="3" normalize="true">
      <wf1 file="MgH/efs_Sig0/ef_1"/>
    </wf>
    <filterpost>
      <expeconly name="Multistate" states="1" unity="False" header="mu2.1">
        <m2.1 name="GridPotential" file="MgH/mu/mu_Sig0Sig1"/>
      </expeconly>
    </filterpost>
  </propa>
</qdng>

<qdng>
  <propa dt="1" steps="1000" dir="efs_g" Nef="20" conv="1e-11">
    <propagator name="Cheby">
      <hamiltonian name="something">
        <m0.0 name="Sum">
          <T name="something_new" mass="2000" key="T"/>
          .
          .
          .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pqinput-0.0.410.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

pqinput-0.0.410-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file pqinput-0.0.410.tar.gz.

File metadata

  • Download URL: pqinput-0.0.410.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for pqinput-0.0.410.tar.gz
Algorithm Hash digest
SHA256 218f8adb33f74a20724f5f60242d43b598269667ff7130fd7cdabef3327fefdc
MD5 a78f404e037acbe19f106b30de2eada9
BLAKE2b-256 688893b1be8fba3bc7ddfd2ff21431b7a14a0cbd750d36f18b99cb625ef9af40

See more details on using hashes here.

File details

Details for the file pqinput-0.0.410-py3-none-any.whl.

File metadata

  • Download URL: pqinput-0.0.410-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for pqinput-0.0.410-py3-none-any.whl
Algorithm Hash digest
SHA256 6472ad5a2aeffdbe93dfdb1a902a11b3ad6af54f28b22aed53b54951d97b99b3
MD5 673f05a2c2eb15a98da3976a9ec2ba4a
BLAKE2b-256 2a6115677726b5fbd87f26e11e06a165c7d57de741dc659a9912f32f378e7a06

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page