Ejemplo n.º 1
0
def to_molsysmt_MolSys(item,
                       atom_indices='all',
                       structure_indices='all',
                       check=True):

    if check:

        digest_item(item, 'pytraj.Trajectory')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from molsysmt.native.molsys import MolSys
    from . import to_molsysmt_Topology
    from . import to_molsysmt_Structures

    tmp_item = MolSys()

    tmp_item.topology = to_molsysmt_Topology(item,
                                             atom_indices=atom_indices,
                                             check=False)
    tmp_item.structures = to_molsysmt_Structures(
        item,
        atom_indices=atom_indices,
        structure_indices=structure_indices,
        check=False)

    return tmp_item
Ejemplo n.º 2
0
def to_openmm_Modeller(item,
                       atom_indices='all',
                       structure_indices='all',
                       check=True):

    if check:

        digest_item(item, 'file:mol2')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from . import to_openmm_Topology
    from . import get_coordinates_from_atom, get_box_from_system
    from ..openmm_Topology import to_openmm_Modeller as openmm_Topology_to_openmm_Modeller

    tmp_item = to_openmm_Topology(item, atom_indices=atom_indices, check=False)
    coordinates = get_coordinates_from_atom(
        item,
        indices=atom_indices,
        structure_indices=structure_indices,
        check=False)
    box = get_box_from_system(item,
                              structure_indices=structure_indices,
                              check=False)
    tmp_item = openmm_Topology_to_openmm_Modeller(tmp_item,
                                                  coordinates=coordinates,
                                                  box=box,
                                                  check=False)

    return tmp_item
Ejemplo n.º 3
0
def to_string_pdb_text(item,
                       atom_indices='all',
                       structure_indices='all',
                       check=True):

    if check:

        digest_item(item, 'string:pdb_id')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from ..file_pdb import download as download_file_pdb
    from ..string_pdb_text import extract as extract_string_pdb_text
    from os import remove

    tmp_item = download_file_pdb(item.replace('pdb_id:', ''), output_filename)

    tmp_file = tmp_item
    fff = open(tmp_item, 'r')
    tmp_item = fff.read()
    fff.close()
    remove(tmp_file)

    tmp_item = extract_string_pdb_text(tmp_item,
                                       atom_indices=atom_indices,
                                       structure_indices=structure_indices,
                                       copy_if_all=False,
                                       check=False)

    return tmp_item
Ejemplo n.º 4
0
def to_mdtraj_Trajectory(item,
                         atom_indices='all',
                         structure_indices='all',
                         check=True):

    if check:

        digest_item(item, 'parmed.Structure')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from . import to_mdtraj_Topology
    from . import get_coordinates_from_atom, get_box_from_system
    from ..mdtraj_Topology import to_mdtraj_Trajectory as openmm_Topology_to_openmm_Modeller

    tmp_item = to_mdtraj_Topology(item, atom_indices=atom_indices, check=False)
    coordinates = get_coordinates_from_atom(
        item,
        indices=atom_indices,
        structure_indices=structure_indices,
        check=False)
    box = get_box_from_system(item,
                              structure_indices=structure_indices,
                              check=False)
    tmp_item = mdtraj_Topology_to_mdtraj_Trajectory(tmp_item,
                                                    coordinates=coordinates,
                                                    box=box,
                                                    check=False)

    return tmp_item
Ejemplo n.º 5
0
def extract(item,
            atom_indices='all',
            structure_indices='all',
            copy_if_all=True,
            check=True):

    if check:

        digest_item(item, 'mdtraj.Trajectory')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    if (atom_indices is 'all') and (structure_indices is 'all'):

        if copy_if_all:
            from copy import deepcopy
            tmp_item = deepcopy(item)
        else:
            tmp_item = item
    else:

        tmp_item = item
        if atom_indices is not 'all':
            tmp_item = tmp_item.atom_slice(atom_indices)
        if structure_indices is not 'all':
            tmp_item = tmp_item.slice(structure_indices)

    return tmp_item
Ejemplo n.º 6
0
def to_openmm_Modeller(item,
                       atom_indices='all',
                       coordinates=None,
                       box=None,
                       check=True):

    if check:

        digest_item(item, 'openmm.Topology')
        atom_indices = digest_atom_indices(atom_indices)
        coordinates = digest_coordinates(coordinates)
        box = digest_box(box)

    from . import extract
    from molsysmt import puw
    from openmm.app import Modeller

    tmp_item = extract(item,
                       atom_indices=atom_indices,
                       copy_if_all=False,
                       check=False)
    positions = puw.convert(coordinates[0], 'nm', to_form='openmm.unit')
    tmp_item = Modeller(tmp_item, positions)

    return tmp_item
Ejemplo n.º 7
0
def to_openmm_Simulation(item, atom_indices='all', structure_indices='all',
                     forcefield=None, non_bonded_method='no_cutoff', non_bonded_cutoff='1.0 nm', constraints=None,
                     rigid_water=True, remove_cm_motion=True, hydrogen_mass=None, switch_distance=None,
                     flexible_constraints=False, integrator='Langevin', temperature='300.0 K',
                     collisions_rate='1.0 1/ps', integration_timestep='2.0 fs', platform='CUDA', check=True):

    if check:

        digest_item(item, 'file:pdb')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from . import to_openmm_Modeller
    from ..openmm_Modeller import to_openmm_Simulation as openmm_Modeller_to_openmm_Simulation

    tmp_item = to_openmm_Modeller(item, atom_indices=atom_indices, structure_indices=structure_indices, check=False)
    tmp_item = openmm_Modeller_to_openmm_Simulation(tmp_item,
                         forcefield=forcefield, non_bonded_method=non_bonded_method,
                         non_bonded_cutoff=non_bonded_cutoff, constraints=constraints,
                         rigid_water=rigid_water, remove_cm_motion=remove_cm_motion,
                         hydrogen_mass=hydrogen_mass, switch_distance=switch_distance,
                         flexible_constraints=flexible_constraints, integrator=integrator,
                         temperature=temperature, collisions_rate=collisions_rate,
                         integration_timestep=integration_timestep, platform=platform, check=False)

    return tmp_item
Ejemplo n.º 8
0
def to_molsysmt_MolSys(item,
                       selection='all',
                       structure_indices='all',
                       syntaxis='MolSysMT'):

    if check:

        digest_item(item, 'openmm.GromacsGroFile')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from molsysmt.native.molsys import MolSys
    from .to_molsysmt_Topology import to_molsysmt_Topology
    from .to_molsysmt_Structures import to_molsysmt_Structures

    tmp_item = MolSys()
    tmp_item.topology = to_molsysmt_Topology(
        item,
        atom_indices=atom_indices,
        structure_indices=structure_indices,
        check=False)
    tmp_item.structures = to_molsysmt_Structures(
        item,
        atom_indices=atom_indices,
        structure_indices=structure_indices,
        check=False)

    return tmp_item
Ejemplo n.º 9
0
def to_pdbfixer_PDBFixer(item,
                         atom_indices='all',
                         structure_indices='all',
                         check=True):

    if check:

        digest_item(item, 'mdtraj.Trajectory')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from . import to_openmm_Topology
    from . import get_coordinates_from_atom
    from ..openmm_Topology import to_pdbfixer_PDBFixer as openmm_Topology_to_pdbfixer_PDBFixer

    tmp_item = to_openmm_Topology(item, atom_indices=atom_indices, check=False)
    coordinates = get_coordinates_from_atom(
        item,
        indices=atom_indices,
        structure_indices=structure_indices,
        check=False)
    tmp_item = openmm_Topology_to_pdbfixer_PDBFixer(tmp_item,
                                                    coordinates=coordinates,
                                                    check=False)

    return tmp_item
Ejemplo n.º 10
0
def to_pytraj_Trajectory(item,
                         atom_indices='all',
                         structure_indices='all',
                         check=True):

    if check:

        digest_item(item, 'file:pdb')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    try:
        from pytraj import load
    except:
        raise LibraryNotFoundError('pytraj')

    from ..pytraj_Trajectory import extract as extract_pytraj_Trajectory

    tmp_item = load(item)
    tmp_item = extract_pytraj_Trajectory(tmp_item,
                                         atom_indices=atom_indices,
                                         structure_indices=structure_indices,
                                         copy_if_all=False,
                                         check=False)

    return tmp_item
Ejemplo n.º 11
0
def to_mdanalysis_Universe(item,
                           atom_indices='all',
                           structure_indices='all',
                           check=True):

    if check:

        digest_item(item, 'file:mmtf')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    try:
        from MDAnalysis import Universe
    except:
        raise LibraryNotFoundError('MDAnalysis')

    from ..mdanalysis_Universe import extract as extract_mdanalysis_Universe

    tmp_item = Universe(item)
    tmp_item = extract_mdanalysis_Universe(tmp_item,
                                           atom_indices=atom_indices,
                                           structure_indices=structure_indices,
                                           copy_if_all=False,
                                           check=False)

    return tmp_item
Ejemplo n.º 12
0
def extract(item,
            atom_indices='all',
            structure_indices='all',
            copy_if_all=True,
            check=True):

    if check:

        digest_item(item, 'parmed.Structure')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    if (atom_indices is 'all') and (structure_indices is 'all'):

        if copy_if_all:
            from copy import deepcopy
            tmp_item = deepcopy(item)
        else:
            tmp_item = item
    else:

        from molsysmt._private.atom_indices import atom_indices_to_AmberMask
        from molsysmt._private.atom_indices import complementary_atom_indices
        tmp_atom_indices = complementary_atom_indices(item, atom_indices)
        mask = atom_indices_to_AmberMask(item, tmp_atom_indices)
        tmp_item = copy(item)
        tmp_item.strip(
            atom_indices2AmberMask(atom_indices, len(item.atoms),
                                   inverse=True))

    return tmp_item
Ejemplo n.º 13
0
def add(to_item, item, check=True):

    if check:

        digest_item(item, 'pytraj.Trajectory')
        digest_item(to_item, 'pytraj.Trajectory')

    raise NotImplementedMethodError()
Ejemplo n.º 14
0
def add(to_item, item, check=True):

    if check:

        digest_item(item, 'mdanalysis.Universe')
        digest_item(to_item, 'mdanalysis.Universe')

    raise NotImplementedMethodError()
Ejemplo n.º 15
0
def add(to_item, item, check=True):

    if check:

        digest_item(item, 'mdtraj.Topology')
        digest_item(to_item, 'mdtraj.Topology')

    raise NotImplementedMethodError()
Ejemplo n.º 16
0
def add(to_item, item, check=True):

    if check:

        digest_item(item, 'mdtraj.HDF5TrajectoryFile')
        digest_item(to_item, 'mdtraj.HDF5TrajectoryFile')

    raise NotImplementedMethodError()
Ejemplo n.º 17
0
def to_openmm_Topology(item, atom_indices='all', check=True):

    if check:

        digest_item(item, 'openmm.GromacsTopFile')
        atom_indices = digest_atom_indices(atom_indices)

    tmp_item = item.topology

    return tmp_item
Ejemplo n.º 18
0
def append_structures(item, step=None, time=None, coordinates=None, box=None, check=True):

    if check:

        digest_item(item, 'mdtraj.Trajectory')
        step = digest_step(step)
        time = digest_time(time)
        coordinates = digest_coordinates(coordinates)
        box = digest_box(box)

    raise NotImplementedMethodError()
Ejemplo n.º 19
0
def to_mdanalysis_Topology(item, atom_indices='all', check=True):

    if check:

        digest_item(item, 'file:pdb')
        atom_indices = digest_atom_indices(atom_indices)

    from . import to_mdanalysis_topology_PDBParser
    from ..mdanalysis_topology_PDBParser import to_mdanalysis_Topology as mdanalysis_topology_PDBParser_to_mdanalysis_Topology

    tmp_item = to_mdanalysis_topology_PDBParser(item, check=False)
    tmp_item = mdanalysis_topology_PDBParser_to_mdanalysis_Topology(tmp_item, atom_indices=atom_indices, check=False)

    return tmp_item
Ejemplo n.º 20
0
def to_molsysmt_Topology(item, atom_indices='all', check=True):

    if check:

        digest_item(item, 'file:gro')
        atom_indices = digest_atom_indices(atom_indices)

    from . import to_openmm_GromacsGroFile
    from ..openmm_GromacsGroFile import to_molsysmt_Topology as openmm_GromacsGroFile_to_molsysmt_Topology

    tmp_item = to_openmm_GromacsGroFile(item, check=False)
    tmp_item = openmm_GromacsGroFile_to_molsysmt_Topology(tmp_item, atom_indices=atom_indices, check=False)

    return tmp_item
Ejemplo n.º 21
0
def to_string_aminoacids1(item, group_indices='all', check=True):

    if check:

        digest_item(item, 'mdtraj.Topology')
        atom_indices = digest_atom_indices(atom_indices)

    from . import to_string_aminoacids3
    from ..string_aminoacids3 import to_string_aminoacids1 as string_aminoacids3_to_string_aminoacids1

    tmp_item = to_string_aminoacids3(item, group_indices=group_indices, check=False)
    tmp_item = string_aminoacids3_to_string_aminoacids1(tmp_item, check=False)

    return tmp_item
Ejemplo n.º 22
0
def to_mdtraj_Topology(item, atom_indices='all', check=True):

    if check:

        digest_item(item, 'file:mol2')
        atom_indices = digest_atom_indices(atom_indices)

    from mdtraj import load_mol2
    from ..mdtraj_Topology import extract as extract_mdtraj_Topology

    tmp_item = load_mol2(item).topology
    tmp_item = extract_mdtraj_Topology(tmp_item)

    return tmp_item
Ejemplo n.º 23
0
def to_parmed_Structure(item, atom_indices='all', check=True):

    if check:

        digest_item(item, 'mdtraj.Topology')
        atom_indices = digest_atom_indices(atom_indices)

    from . import to_openmm_Topology
    from .openmm_Topology import to_parmed_Structure as openmm_Topology_to_parmed_Structure

    tmp_item = to_openmm_Topology(item, atom_indices=atom_indices, check=False)
    tmp_item = openmm_Topology_to_parmed_Structure(tmp_item, check=False)

    return tmp_item
Ejemplo n.º 24
0
def to_openmm_Topology(item, atom_indices='all', check=True):

    if check:

        digest_item(item, 'mdtraj.HDF5TrajectoryFile')
        atom_indices = digest_atom_indices(atom_indices)

    from . import to_mdtraj_Topology
    from ..mdtraj_Topology import to_openmm_Topology as mdtraj_Topology_to_openmm_Topology

    tmp_item = to_mdtraj_Topology(item, atom_indices=atom_indices, check=False)
    tmp_item = mdtraj_Topology_to_openmm_Topology(item, check=False)

    return tmp_item
Ejemplo n.º 25
0
def to_molsysmt_Topology(item, atom_indices='all', check=True):

    if check:

        digest_item(item, 'file:mol2')
        atom_indices = digest_atom_indices(atom_indices)

    from . import to_mdtraj_Topology
    from ..mdtraj_Topology import to_molsysmt_Topology as mdtraj_Topology_to_molsysmt_Topology

    tmp_item = to_mdtraj_Topology(item, atom_indices=atom_indices, check=False)
    tmp_item = mdtraj_Topology_to_molsysmt_Topology(tmp_item, check=False)

    return tmp_item
Ejemplo n.º 26
0
def to_string_aminoacids3(item, group_indices='all', check=True):

    if check:

        digest_item(item, 'file:mmtf.MMTFDecoder')
        group_indices = digest_group_indices(atom_indices)

    from . import to_molsysmt_Topology
    from ..molsysmt_Topology import to_string_aminoacids3 as molsysmt_Topology_to_string_aminoacids3

    tmp_item = to_molsysmt_Topology(item, check=False)
    tmp_item = molsysmt_Topology_to_string_aminoacids3(tmp_item, group_indices=group_indices, check=False)

    return tmp_item
def to_mdanalysis_topology_PDBParser(item, atom_indices='all', check=True):

    if check:

        digest_item(item, 'file:pdb')
        atom_indices = digest_atom_indices(atom_indices)

    try:
        from MDAnalysis.topology import PDBParser
    except:
        raise LibraryNotFoundError('MDAnalysis')

    tmp_item = PDBParser.PDBParser(item)

    return tmp_item
Ejemplo n.º 28
0
def to_file_xyznpy(item, atom_indices='all', structure_indices='all', output_filename=None, check=True):

    if check:

        digest_item(item, 'XYZ')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    tmp_item = output_filename

    with open(tmp_item, 'wb') as fff:
        np.save(fff, item.shape, allow_pickle=True)
        np.save(fff, puw.get_value(item, to_unit='nm'), allow_pickle=True)

    return tmp_item
Ejemplo n.º 29
0
def to_molsysmt_Structures(item, atom_indices='all', structure_indices='all', check=True):

    if check:

        digest_item(item, 'file:xtc')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from . import to_mdtraj_XTCTrajectoryFile
    from ..mdtraj_XTCTrajectoryFile import to_molsysmt_Structures as mdtraj_XTCTrajectoryFile_to_molsysmt_Structures

    tmp_item = to_mdtraj_XTCTrajectoryFile(item, check=False)
    tmp_item = mdtraj_XTCTrajectoryFile_to_molsysmt_Structures(tmp_item, atom_indices=atom_indices, structure_indices=structure_indices, check=False)

    return tmp_item
Ejemplo n.º 30
0
def to_file_pdb(item, atom_indices='all', structure_indices='all', output_filename=None, check=True):

    if check:

        digest_item(item, 'mmtf.MMTFDecoder')
        atom_indices = digest_atom_indices(atom_indices)
        structure_indices = digest_structure_indices(structure_indices)

    from . import to_molsysmt_MolSys
    from ..molsysmt_MolSys import to_file_pdb as molsysmt_MolSys_to_file_pdb

    tmp_item = to_molsysmt_MolSys(item, atom_indices=atom_indices, structure_indices=structure_indices)
    tmp_item = molsysmt_MolSys_to_file_pdb(tmp_item, output_filename=output_filename)

    return tmp_item