schrodinger.protein.getpdb_utility module¶
Copy a PDB file out of the PDB directory, or, if not found, download it from the rcsb repository: https://rcsb.org/.
Note: the location of the PDB directory can be specified via environment variables; the order of precedence is:
SCHRODINGER_PDB
SCHRODINGER_THIRDPARTY
SCHRODINGER/thirdparty (the default)
Copyright Schrodinger, LLC. All rights reserved.
- schrodinger.protein.getpdb_utility.parse_arguments(args)¶
- class schrodinger.protein.getpdb_utility.WholePDB(code)¶
Bases:
object
Class to take care of the file work for entire PDB files.
- __init__(code)¶
Create a WholePDB object.
- Parameters
code (str) – the PDB code for this file
- openFile(web)¶
- write(line)¶
If we are writing a file, add this line to it.
- Parameters
line (str) – The line to add to the file
- closeFile()¶
Close the file if it is open
- checkOK()¶
This is just a stub routine for compatibility with the Chain class
- Return type
bool
- Returns
True
- class schrodinger.protein.getpdb_utility.Chain(name, code, debug=False)¶
Bases:
object
Class to handle splitting a chain out of a PDB file.
- __init__(name, code, debug=False)¶
Create a Chain object.
- Parameters
code (str) – The PDB code of the parent PDB file
name (1 character string) – the Chain ID to extract
- openFile(web)¶
- write(line)¶
Write a line to the chain file if it applies to this chain.
- Parameters
line (str) – the current line of the PDB file.
- checkOK()¶
Check to see if everything went OK writing the file.
- Return type
bool
- Returns
True if everything checks out OK, false if not
- closeFile()¶
Add the END tag and close the chain file
- class schrodinger.protein.getpdb_utility.Code(code, debug=False)¶
Bases:
object
Class to handle all the various files for each PDB code.
- __init__(code, debug=False)¶
Create a Code object.
- Parameters
code (str) – the 4-letter PDB code
- addChain(chain)¶
Add another Chain ID to be extracted from the parent file.
- Parameters
chain (1 character string or None) – The Chain ID to be extracted. If chain is None, then the whole PDB file is desired.
- sidechains()¶
Check if any chains are to be extracted.
- Return type
bool
- Returns
True if any chains are to be extracted, False if not
- wholePDB()¶
Returns True if the whole PDB file should be kept
- findLocally(local_dirs)¶
Check a series of local directories and filenames for the PDB files.
First we look for current files ending in .gz or .Z, then obsolete files with the same endings. The file name we search for is:
pdbXXXX.ent.Y where XXXX is the PDB code and Y is either gz or Z
- handleObsolete()¶
Print a warning if we are using a file from the obsolete directory
- openFiles(web=False)¶
Prepare all the chain and whole PDB files for writing.
- Parameters
web (bool) – True if the source file is from the web, False if not. In this case “from the web” means uncompressed and in the destination directory with the correct name.
- write(line)¶
Write line to each of the appropriate files
- Parameters
line (str) – the current line from the source PDB file.
- checkOK()¶
Check to make sure all the files were written properly.
- Return type
bool
- Returns
True if all the files were written properly, False if there were any problems.
- closeFiles()¶
Close all the files
- merge_biologic_unit(pdb_file)¶
- schrodinger.protein.getpdb_utility.invalid_code(acode)¶
Print a warning that a given code is invalid
- schrodinger.protein.getpdb_utility.download_format(pdb_code, file_format)¶
Attemps to download the file of requested format for the given given PDB ID and (optinally) chain.
- Parameters
pdb_code (str) – PDB ID of the file to download
file_format (str) – Format extension. One of: pdb, cif, xml, sf, fasta.
- schrodinger.protein.getpdb_utility.from_maestro(*args)¶
- schrodinger.protein.getpdb_utility.main(args)¶