Esempio n. 1
0
if __name__ == '__main__':
    optlist, args = getopt.getopt(sys.argv[1:], '',
                                  ['exclude=', 'has_finterface='])

    if len(args) != 5:
        raise RuntimeError('Syntax: listclasses.py <path> <interface> '
                           '<definition-file> <makefile> <config-file> '
                           '[--exclude=<exclude list>] '
                           '[--has_finterface=<interface list>]')

    path = args[0]
    interface = args[1]
    deffn = args[2]
    mkfn = args[3]
    cfgfn = args[4]

    exclude_list = [ ]
    finterface_list = [ ]

    for key, value in optlist:
        if key == '--exclude':
            exclude_list = value.split(',')
        elif key == '--has_finterface':
            finterface_list = value.split(',')

    metadata = scanallmeta(path)
   
    write_interface_info(metadata, interface, finterface_list, exclude_list,
                         deffn, mkfn, cfgfn)
Esempio n. 2
0
              'src/notb',
              'src/notb/dense',
              ]

lib_macros = [ ( 'NO_BIND_C_OPTIONAL', None ),
               ( 'MDCORE_PYTHON', None ),
               ]

###

#
# Scan all metadata and get list of potentials
#

#print 'Scanning f90 metadata in directory {0}...'.format(srcdir)
metadata = scanallmeta(['{0}/{1}'.format(srcdir, x) for x in 
                        ['notb', 'potentials', 'potentials_nonfree']])

#print 'Writing factories...'

# Coulomb modules
mods1, fns1 = get_module_list(metadata, 'coulomb',
                              include_list = inc_dirs)
if sys.version_info >= (3,0):
    lib_srcs += fns1
else:
    lib_srcs += [ fn.encode('ascii') for fn in fns1 ]

print('* Found the following Coulomb modules:')
for f90name, f90type, name, features, methods in mods1:
    print('    {0}'.format(name))
Esempio n. 3
0
              '%s/python/c/neighbors.c' % (srcdir),
              '%s/python/c/coulomb.c' % (srcdir),
              '%s/python/c/coulomb_callback.c' % (srcdir),
              '%s/python/c/potential.c' % (srcdir),
              '%s/python/c/analysis.c' % (srcdir),
              '%s/python/c/atomisticamodule.c' % (srcdir),
              ]

###

#
# Scan all metadata and get list of potentials
#

#print 'Scanning f90 metadata in directory {0}...'.format(srcdir)
metadata = scanallmeta(srcdir)

#print 'Writing factories...'

# Coulomb modules
mods1, fns1 = get_module_list(metadata, 'coulomb',
                              finterface_list = [ 'register_data',
                                                  'set_Hubbard_U' ])
lib_srcs += fns1


# Write coulomb factory
write_coulomb_factory_f90(mods1, 'coulomb', 'build/coulomb_factory_f90.f90')
write_coulomb_factory_c(mods1, 'coulomb',
                        '%s/python/c/coulomb_factory.template.c' \
                             % (srcdir),
Esempio n. 4
0
              'src/notb',
              'src/notb/dense',
              ]

lib_macros = [ ( 'NO_BIND_C_OPTIONAL', None ),
               ( 'PYTHON', None ),
               ]

###

#
# Scan all metadata and get list of potentials
#

#print 'Scanning f90 metadata in directory {0}...'.format(srcdir)
metadata = scanallmeta(['{0}/{1}'.format(srcdir, x) for x in
                        ['notb', 'potentials', 'potentials_nonfree']])

#print 'Writing factories...'

# Coulomb modules
mods1, fns1 = get_module_list(metadata, 'coulomb',
                              include_list = inc_dirs)
if sys.version_info >= (3,0):
    lib_srcs += fns1
else:
    lib_srcs += [ fn.encode('ascii') for fn in fns1 ]

print('* Found the following Coulomb modules:')
for f90name, f90type, name, features, methods in mods1:
    print('    {0}'.format(name))
Esempio n. 5
0
    '{0}/python/c/py_f.c'.format(srcdir),
    '{0}/python/c/particles.c'.format(srcdir),
    '{0}/python/c/neighbors.c'.format(srcdir),
    '{0}/python/c/potential.c'.format(srcdir),
    '{0}/python/c/analysis.c'.format(srcdir),
    '{0}/python/c/mdcoremodule.c'.format(srcdir),
]

###

#
# Scan all metadata and get list of potentials
#

#print 'Scanning f90 metadata in directory {0}...'.format(srcdir)
metadata = scanallmeta(srcdir)

#print 'Writing factories...'

mods2, fns2 = get_module_list(metadata,
                              'potentials',
                              finterface_list=['register_data'],
                              exclude_list=[
                                  'MolecularTightBinding', 'VariableCharge',
                                  'ConstantForce', 'HarmonicHook', 'Harmonic',
                                  'LennardJones', 'Confinement', 'SlidingP',
                                  'FFMTip'
                              ])
lib_srcs += fns2

write_factory_f90(mods2, 'potential', 'build/potentials_factory_f90.f90')