Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
tsoc
openmm
Commits
d6e2a771
"wrappers/vscode:/vscode.git/clone" did not exist on "913410fc7ab3696a5e927e0be9cd64f24ef66b24"
Commit
d6e2a771
authored
Jul 03, 2019
by
tic20
Browse files
allow custom template prefix when loading ffXML files
parent
6a021413
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
2 deletions
+5
-2
wrappers/python/simtk/openmm/app/forcefield.py
wrappers/python/simtk/openmm/app/forcefield.py
+5
-2
No files found.
wrappers/python/simtk/openmm/app/forcefield.py
View file @
d6e2a771
...
@@ -183,7 +183,7 @@ class ForceField(object):
...
@@ -183,7 +183,7 @@ class ForceField(object):
self
.
_templateGenerators
=
[]
self
.
_templateGenerators
=
[]
self
.
loadFile
(
files
)
self
.
loadFile
(
files
)
def
loadFile
(
self
,
files
):
def
loadFile
(
self
,
files
,
prefix
=
''
):
"""Load an XML file and add the definitions from it to this ForceField.
"""Load an XML file and add the definitions from it to this ForceField.
Parameters
Parameters
...
@@ -194,6 +194,9 @@ class ForceField(object):
...
@@ -194,6 +194,9 @@ class ForceField(object):
directory, a path relative to this module's data subdirectory (for
directory, a path relative to this module's data subdirectory (for
built in force fields), or an open file-like object with a read()
built in force fields), or an open file-like object with a read()
method from which the forcefield XML data can be loaded.
method from which the forcefield XML data can be loaded.
prefix : string
An optional string to be prepended to each residue name found in the
loaded files.
"""
"""
if
isinstance
(
files
,
tuple
):
if
isinstance
(
files
,
tuple
):
...
@@ -259,7 +262,7 @@ class ForceField(object):
...
@@ -259,7 +262,7 @@ class ForceField(object):
for
tree
in
trees
:
for
tree
in
trees
:
if
tree
.
getroot
().
find
(
'Residues'
)
is
not
None
:
if
tree
.
getroot
().
find
(
'Residues'
)
is
not
None
:
for
residue
in
tree
.
getroot
().
find
(
'Residues'
).
findall
(
'Residue'
):
for
residue
in
tree
.
getroot
().
find
(
'Residues'
).
findall
(
'Residue'
):
resName
=
residue
.
attrib
[
'name'
]
resName
=
prefix
+
residue
.
attrib
[
'name'
]
template
=
ForceField
.
_TemplateData
(
resName
)
template
=
ForceField
.
_TemplateData
(
resName
)
if
'override'
in
residue
.
attrib
:
if
'override'
in
residue
.
attrib
:
template
.
overrideLevel
=
int
(
residue
.
attrib
[
'override'
])
template
.
overrideLevel
=
int
(
residue
.
attrib
[
'override'
])
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment