WarSwap Software Application
A network motif discovery tool for large multi-layer biological networks
Summary
The WaRSwap Software Application is a fast network motif discovery tool for large multi-layer biological networks with highly uneven in-degree and out-degree distributions (large source and target hubs). It implements the WaRSwap core randomization algorithm coupled with a fast sub-graph enumeration tool, and is available in two versions: 1) A Standalone version for PC and MAC desktop computers, which takes advantage of parallel execution on all available CPU cores. 2) A Cluster version, which uses the DRMAA-Java library to manage resources on grid computing platforms.Supplementary Material
Download and Install
The WaRSwap Software Application is available in two versions: 1) PC version for running on personal computers, and 2) Cluster version. Both versions are available for download from the following links:
Software version | File | Description |
PC (Linux, Windows, MAC) | WaRSwapSoftwareApplication_PC.zip | PC installation guide |
Cluster | WaRSwapSoftwareApplication_cluster.zip | Cluster installation guide |
Source code | Github link to source code |
PC installation guide
The standalone PC version is a Java application, which takes advantage of parallel execution on all available CPU cores. The PC version is platform-independent and provides a user-friendly graphical user interface (GUI). It takes advantage of parallel execution on all available CPU cores. The user manual can be found here.
- Make sure you have Java jdk installed on your computer (How to check java is installed on your machine?).
- Download the software from the Downloads section.
- Extract the downloaded package to a destination folder.
- Go into the directory in which you extracted the software and run the WaRSwapSoftwareApplication as follows:
- For windows: double click on
jwarswap.jar
- For linux and mac: Open a command line terminal and type
cd WaRSwapSoftwareApplication
./startApplication.sh
- For windows: double click on
- To test with the existing sample input graph, select an edge file such as the
small_sample_graph.edges.txt
and a vertex file such as thesmall_sample_graph.vertices.txt
from thesample_inputs
directory. - Change default options if desired, otherwise click on the "Start" button to run the program.
- Wait while program is running. For the small_sample_graph it may take ~2 minutes to complete.
- Find motif discovery output files in given output directory.
- Find detailed information on options in the User Manual.
Cluster installation guide
Use the cluster version of the WaRSwap Software Application when the input network is very large (running the PC version of the software may take several days to finish). The cluster version is built on the DRMAA-Java library, and can be depolyed on grid engines such as Oracle (Sun) Grid Engine, Univa Grid Engine, and on GridWay a framework as a programming interface. The GridWay framework enables sharing of computing resources (clusters, servers, supercomputers, etc.) managed by different distributed resource management (DRM) systems such as Condor, Univa Grid Engine, and Son Grid Engine.
Related Materials
- Login into a cluster-head machine, which can submit jobs to other nodes in the cluster.
- Make sure that you have the "drmaa" library installed on your cluster (http://www.drmaa.org/).
- Download the cluster version of the software from the Downloads section.
- Extract the package and change the current directory to the extracted folder, and then type:
cd WaRSwapSoftwareApplication/
- DRMAA settings:
- Ask your cluster admin about the location of
libdrmaa.so
anddrmaa.jar
files in the cluster. - Open
startApplication.sh file
to change the DRMAA settings if needed:- Set the DRMAA_LIB_PATH variable in
startApplication.sh
to the directory in whichlibdrmaa.so
is located (the default path points to: /local/cluster/sge/lib/lx24-amd64/) - Save changes in the
startApplication.sh
file.
- Set the DRMAA_LIB_PATH variable in
- (Optional) Copy
drmaa.jar
intoWaRSwapSoftwareApplication/lib
directory. (Note: do this step only if the current version ofdrmaa.jar
located inWaRSwapSoftwareApplication/lib
didn't work on your cluster)
- Ask your cluster admin about the location of
- Run the application (see the User Manual for more details on how to set the options):
./startApplication.sh [NETWORK_NAME] [EDGE_FILE] [VERTEX_FILE] [NO_OF_RAND_NETWORKS] [MOTIF_SIZE] [DETECT_SELF_LOOPS]
* NETWORK_NAME : an arbitrary string to name the input graph
* EDGE_FILE : a valid input edge file
* VERTEX_FILE : a valid input vertex file
* NO_OF_RAND_NETWORKS : the number of random networks (2500 is recommended)
* MOTIF_SIZE: an integer larger than 0
* DETECT_SELF_LOOPS : TRUE or FALSE- The results are located in the “output” directory as follows:
- A text file named "NETWORK_NAME.motifs.out” which is a human readable text format file containing output motifs.
- An HTML file named “NETWORK_NAME.motifs.html” which is a graphical representation of output motifs (Use a web browser to open this file).
- (*Note: load management on available cluster nodes) - The DRMAA-Java application distributes jobs on available nodes which the user has access to. If being a good neighbor on your cluster requires you to limit node usage, you will need to run the program only on the appropriate queues (consult your cluster admin for the advised way to do this on your cluster).
- The WaRSwap core randomization algorithm is published at:
Megraw,M. et al. (2013) Sustained-input switches for transcription factors and microRNAs are central building blocks of eukaryotic gene circuits.Genome Biol., 14, R85.
Please see the LICENSE file included in both archives for copyright and distribution rights.