3DFS - 3D Flexible Database Search for Lead Discovery (version 2.0)
3DFS is a program to search 3D databases for compounds that match a pharmacophore query. 3DFS is distributed free of charge for academic and non-commercial use and designed to search NCI/NIH public 3D databases: NCI3D(127k), Cancer screened(32,443), AIDS screened(42,390) and Plated compounds (140k). These databases can be downloaded from here but must be renamed as nci3d.sdf, cana99.sdf, aido99.sdf and nature.sdf, respectively, for 3DFS searching.
If you want to search your own database, no problem, just make it in SDF format and type "5" when answering the question "Which database: NCI3D, CANCER, AIDS, NATURE or my database? (1,2,3,4,5)". See example 2 below.
What's New in Version 2.0 ?
The current version of 3DFS is 2.0. Thanks to the users who gave their suggestions and reported bugs, 3DFS2.0 now has the following features:
- Any database in the SDF format can be searched by typing "5" when answering the question "Which database: NCI3D, CANCER, AIDS, NATURE or my database? (1,2,3,4,5)". However, please make sure that every compound has 3D coordinates in the SDF file, otherwise, 3D searching can fail. As in the public NCI databases, some compounds lack 3D coordinates, they can not be used as "my database". (Version1.2 requires a NCI database-like header in the SDF file.)
- A bug related to hydrophobe searching was fixed. Version1.2 can give different number of hits when running on different machines if the query contains "Hy".
- The MOL file of each hit will be named ###.mol. ### is the NSC number of the compound if the NCI public databases are searched, or the order number of the compound if your own database is searched. Compared to version1.2 which names a MOL file after the query, this can avoid duplication of the MOL file writing of some compounds that are the common hits of different queries.
- A warning message will appear when invalid atom symbols are in the query file.
- A bug that failed to return the shell prompt after running on some linux machines was fixed.
- Create a subdirectory, e.g. 3dfs.
- Copy the following files to the subdirectory, 3dfs:
- 3dfs (the executable file)
- pcharge.dic
- ncharge.dic
- nci3d.sdf
- cana99.sdf
- aido99.sdf
- nature.sdf
- and your database file, if any
- Set the environment variable DFS to the subdirectory 3dfs.
- UNIX: setenv DFS "/../../3dfs"
- Linux: setenv DFS "/../../3dfs"
- DOS: set DFS=D:\..\3dfs\
- path=D:\..\3dfs; %PATH%
- In your working directory where you have your query file, type:
- UNIX: $DFS/3dfs infile outfile
- Linux: $DFS/3dfs infile outfile
- DOS: 3dfs infile outfile
For 3D searching, infile must be BIP format with bip extension.
For 2D searching only, infile can be BIP format with bip extension or ISIS/Draw MOL format with mol extension. Coution: An infile (BIP format or MOL format) is a text file, you can use any edit program to create and edit it in PC or Unix, but an infile edited in DOS can not be used as the infile of Unix version unless it is converted to an Unix file by the unix commond "to_unix".
Outfile is HIT format.
In addition, a MOL format file of the matched conformation of each hit can be written down by an option and visualized in RASMOL and other 3D visualization software. The MOL file name of a hit is the NSC number of the compound if the NCI public databases are searched or the order number of the compound if your database is searched.
- Example 1: Searching public databases with a 3D pharmacophore query
- % $DFS/3dfs pkc.bip pkc.hit
- Which database: NCI3D, CANCER, AIDS, NATURE or my database ? (1,2,3,4,5) 1
- Do you need 3D search ?(y/n) y
- Do you need flexible search ?(y/n) y
- Do you use POWELL or GA ?(p/g) p
- Do you need vdw check ?(y/n) n
- Do you need the MOLfile of each hit ? (y/n) y
- Searching NCI 3D , please wait...
- Search end !
- This will take about 5 min on AMD/1.4GHz Linux PC. 455 hits are recorded in the output file pkc.hit and the MOL file of each hit is written in your working directory.
- Note 1: Searching time strongly depends on your answers to the 6 questions. In general, large databases take more time than small ones; A 3D search takes longer than a 2D search; A flexible search takes longer than a rigid search; The GA algorithm takes longer than the POWELL algorithm; A search with vdw check takes much longer than that without vdw check; A search with MOLfile writing takes much langer than that without MOLfile writing.
- Note 2: Hit number strongly depends on your answers to the first 5 questions. In general, large databases give more than small ones; A 3D search gives fewer than a 2D search; A flexible search gives more than a rigid search; The GA algorithm gives more than the POWELL algorithm; A search with vdw check gives fewer than that without vdw check;
- For this pharmacophore, vdw check will get rid of 195 hits and give you 260 hits within 9 min on AMD/1.4Hz PC (see pkc_vdw.hit).
- Note 3: You probably get different number of hits when you choose the GA algorithm for 3D searching from different runnings. This is becuase the time is used as the seed of the random number generator. So you can find more hits by runing the same query for several times. But the hit number does not vary with the running time if you choose the POWELL algorithm.
- Example 2: Searching your own database with a 3D pharmacophore query
- % $DFS/3dfs pkc.bip pkc.hit
- Which database: NCI3D, CANCER, AIDS, NATURE or my database ? (1,2,3,4,5) 5
- Please input the name of your database file: my_database.sdf
- Do you need 3D search ?(y/n) y
- Do you need flexible search ?(y/n) y
- Do you use POWELL or GA ?(p/g) p
- Do you need vdw check ?(y/n) n
- Do you need the MOLfile of each hit ? (y/n) y
- Searching my database , please wait...
- Search end !
- Example 3: 2D substructural searching with ISIS/Draw MOL input file