-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
195 changed files
with
17,831 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
Builds | ||
GeneratedFiles | ||
Doc | ||
CodeAnalyst | ||
ipch | ||
MacBuild | ||
Temp | ||
x64 | ||
*.exe | ||
*.zip | ||
*.sdf | ||
*.suo | ||
*.sln.docstates | ||
memory_leaks.txt | ||
*.opendb | ||
*.db |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
|
||
Microsoft Visual Studio Solution File, Format Version 12.00 | ||
# Visual Studio 14 | ||
VisualStudioVersion = 14.0.25420.1 | ||
MinimumVisualStudioVersion = 10.0.40219.1 | ||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Evolution", "Evolution.vcxproj", "{B12702AD-ABFB-343A-A199-8E24837244A3}" | ||
EndProject | ||
Global | ||
GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
Debug|x64 = Debug|x64 | ||
Debug|x86 = Debug|x86 | ||
Release|x64 = Release|x64 | ||
Release|x86 = Release|x86 | ||
EndGlobalSection | ||
GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x64.ActiveCfg = Debug|x64 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x64.Build.0 = Debug|x64 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x86.ActiveCfg = Debug|Win32 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x86.Build.0 = Debug|Win32 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.ActiveCfg = Release|x64 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.Build.0 = Release|x64 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x86.ActiveCfg = Release|Win32 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x86.Build.0 = Release|Win32 | ||
EndGlobalSection | ||
GlobalSection(SolutionProperties) = preSolution | ||
HideSolutionNode = FALSE | ||
EndGlobalSection | ||
EndGlobal |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
# Automatic design of GRMs for spatial patterns | ||
|
||
Supplementary Data for: | ||
|
||
> Automatic design of gene regulatory mechanisms for spatial pattern formation<br> | ||
> Reza Mousavi and Daniel Lobo<br> | ||
[Lobo Lab](https://lobolab.umbc.edu)<br> | ||
> *Under review* | ||
We present a general framework to automatically design GRMs able to produce any given spatial pattern. The automated method is based on high-performance evolutionary computation to rapidly design GRMs--including the necessary number of genes and interaction mechanisms. | ||
|
||
## Building | ||
Two different solutions are included: | ||
* Evolution: an evolutionary algorithm for designing GRMs | ||
* Viewer: user interface for visualizing the evolutionary algorithm results | ||
|
||
Open each solution and compile them with Microsoft Visual Studio. Make sure the required dependencies are installed on your computer. | ||
|
||
## Dependencies | ||
* Microsoft Visual Studio | ||
* NVIDIA CUDA Toolkit | ||
* Eigen | ||
* Qt | ||
* Qwt | ||
|
||
## Implementation | ||
The `Src` folder contains all the C++ source code. It is further organized into the following folders: | ||
|
||
### `Common` | ||
This folder includes helper classes to handle files, save logs, and perform general mathematical methods. | ||
|
||
### `DB` | ||
This folder contains the code for accessing the database files that store the settings and results of the automated algorithm. These include the parameters needed to run the method, the GRMs produced during the evolutionary search, and the evolutionary statistics computed during execution. The viewer can open these files to display the results of an evolutionary run. | ||
|
||
### `Experiment` | ||
This folder includes the code to specify the target spatial gene expression pattern defined in an experiment. The input target pattern is implemented as an image, in which each color corresponds to a different gene. | ||
|
||
### `GPUSimulator` | ||
This folder contains the simulator that runs on the GPU. This includes the simulation of GRMs and the computation of their fitness (error with respect the target gene expression pattern). In addition, this folder includes classes for the initialization of GPUs, the copying of input gene expression patterns, and the transfer of GRMs and their numerical fitness between the CPU and GPU memory. | ||
|
||
### `Model` | ||
This folder includes the implementation of GRMs. A mechanism includes a set of genes and their parameters and a set of links specifying the type of regulatory interactions between two genes and their parameters. | ||
|
||
### `Search` | ||
This folder contains the code for loading the parameters of the evolutionary algorithm, handling the mechanism populations on the different islands, generating new mechanisms by executing evolutionary operators (crossover and mutation), and selecting the next generation populations. The folder also includes an implementation of the mechanism fitness calculator that runs on the CPU. | ||
|
||
### `Simulator` | ||
This folder includes the simulator that runs on the CPU. This includes the implementation for generating the two-dimensional orthogonal input morphogen gradients, loading parameters related to the simulation, loading the GRMs defined as classes into a system of PDEs for simulation, and performing the numerical simulation using an Euler finite difference method. | ||
|
||
### `UI` | ||
The UI folder contains the user interface for both the evolution and viewer. The evolution program is run with a command line interface that uses a multi-thread implementation for maximizing performance. The viewer includes a graphical user interface to visualize the results of the evolution and perform simulations of the discovered mechanisms. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
<RCC> | ||
<qresource prefix="/"> | ||
<file>Images/famfamfam_silk_icons/add.png</file> | ||
<file>Images/famfamfam_silk_icons/application_view_detail.png</file> | ||
<file>Images/famfamfam_silk_icons/brick.png</file> | ||
<file>Images/famfamfam_silk_icons/bullet_add.png</file> | ||
<file>Images/famfamfam_silk_icons/bullet_black.png</file> | ||
<file>Images/famfamfam_silk_icons/bullet_blue.png</file> | ||
<file>Images/famfamfam_silk_icons/bullet_delete.png</file> | ||
<file>Images/famfamfam_silk_icons/bullet_green.png</file> | ||
<file>Images/famfamfam_silk_icons/bullet_red.png</file> | ||
<file>Images/famfamfam_silk_icons/bullet_white.png</file> | ||
<file>Images/famfamfam_silk_icons/connect.png</file> | ||
<file>Images/famfamfam_silk_icons/database_add.png</file> | ||
<file>Images/famfamfam_silk_icons/database_delete.png</file> | ||
<file>Images/famfamfam_silk_icons/database_go.png</file> | ||
<file>Images/famfamfam_silk_icons/database_save.png</file> | ||
<file>Images/famfamfam_silk_icons/delete.png</file> | ||
<file>Images/famfamfam_silk_icons/door_in.png</file> | ||
<file>Images/famfamfam_silk_icons/find.png</file> | ||
<file>Images/famfamfam_silk_icons/folder_database.png</file> | ||
<file>Images/famfamfam_silk_icons/heart_add.png</file> | ||
<file>Images/famfamfam_silk_icons/page_white_database.png</file> | ||
<file>Images/famfamfam_silk_icons/picture_save.png</file> | ||
<file>Images/famfamfam_silk_icons/pill_add.png</file> | ||
<file>Images/famfamfam_silk_icons/pill_go.png</file> | ||
<file>Images/famfamfam_silk_icons/shape_handles.png</file> | ||
<file>Images/famfamfam_silk_icons/shape_move_backwards.png</file> | ||
<file>Images/famfamfam_silk_icons/shape_square.png</file> | ||
<file>Images/famfamfam_silk_icons/shape_square_delete.png</file> | ||
<file>Images/famfamfam_silk_icons/table_delete.png</file> | ||
<file>Images/quadrupleHead32.png</file> | ||
<file>Images/famfamfam_silk_icons/transmit.png</file> | ||
<file>Images/famfamfam_silk_icons/database_lightning.png</file> | ||
<file>Images/famfamfam_silk_icons/calculator.png</file> | ||
<file>Images/famfamfam_silk_icons/report.png</file> | ||
<file>Images/famfamfam_silk_icons/calculator_add.png</file> | ||
<file>Images/famfamfam_silk_icons/picture_delete.png</file> | ||
<file>Images/famfamfam_silk_icons/help.png</file> | ||
</qresource> | ||
</RCC> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
// Copyright (c) Lobo Lab (lobolab.umbc.edu) | ||
// All rights reserved. | ||
|
||
#include <windows.h> | ||
#include "version.h" | ||
|
||
VS_VERSION_INFO VERSIONINFO | ||
FILEVERSION V_MAYORVERSION, V_MINORVERSION, V_BUGFIXVERSION | ||
PRODUCTVERSION V_MAYORVERSION, V_MINORVERSION, V_BUGFIXVERSION | ||
FILEFLAGSMASK 0x3fL | ||
FILEFLAGS 0 | ||
FILEOS VOS_NT_WINDOWS32 | ||
FILETYPE VFT_APP | ||
FILESUBTYPE VFT2_UNKNOWN | ||
BEGIN | ||
BLOCK "VarFileInfo" | ||
BEGIN | ||
VALUE "Translation", 0x409, 1200 | ||
END | ||
BLOCK "StringFileInfo" | ||
BEGIN | ||
BLOCK "040904b0" | ||
BEGIN | ||
VALUE "CompanyName", V_COMPANYNAME | ||
VALUE "FileDescription", V_FILEDESCRIPTION | ||
VALUE "LegalCopyright", V_LEGALCOPYRIGHT | ||
VALUE "OriginalFilename", V_ORIGINALFILENAME | ||
VALUE "ProductName", V_PRODUCTNAME | ||
VALUE "ProductVersion", V_PRODUCTVERSION | ||
END | ||
END | ||
END |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
|
||
Microsoft Visual Studio Solution File, Format Version 12.00 | ||
# Visual Studio 14 | ||
VisualStudioVersion = 14.0.23107.0 | ||
MinimumVisualStudioVersion = 10.0.40219.1 | ||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SearchViewer", "SearchViewer.vcxproj", "{B12702AD-ABFB-343A-A199-8E24837244A3}" | ||
EndProject | ||
Global | ||
GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
Debug|x64 = Debug|x64 | ||
Debug|x86 = Debug|x86 | ||
Release|x64 = Release|x64 | ||
Release|x86 = Release|x86 | ||
EndGlobalSection | ||
GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x64.ActiveCfg = Debug|x64 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x64.Build.0 = Debug|x64 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x86.ActiveCfg = Debug|Win32 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x86.Build.0 = Debug|Win32 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.ActiveCfg = Release|x64 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.Build.0 = Release|x64 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x86.ActiveCfg = Release|Win32 | ||
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x86.Build.0 = Release|Win32 | ||
EndGlobalSection | ||
GlobalSection(SolutionProperties) = preSolution | ||
HideSolutionNode = FALSE | ||
EndGlobalSection | ||
EndGlobal |
Oops, something went wrong.