Skip to content

Commit

Permalink
first commit
Browse files Browse the repository at this point in the history
  • Loading branch information
corbinq committed Jan 24, 2019
0 parents commit 3a2c890
Show file tree
Hide file tree
Showing 376 changed files with 102,844 additions and 0 deletions.
25 changes: 25 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
VERSION=0.2

CPPFLAGS= -Ofast -flto -pipe
CXXFLAGS= -std=c++11 -DNDEBUG
FFLAGS=

LDFLAGS= -lz -lm

cppsrc = $(wildcard src/*.cpp) src/tabix_util/tabix.cpp
csrc = $(wildcard src/*.c) src/tabix_util/index.c src/tabix_util/bgzf.c

objs = $(cppsrc:.cpp=.o) $(csrc:.c=.o)

bin/GaMBIT: $(objs) src/libMvtnorm/libMvtnorm.a
$(CXX) $(CPPFLAGS) -o $@ $^ $(LDFLAGS)

src/libMvtnorm/libMvtnorm.a:
cd src/libMvtnorm && $(MAKE)

.PHONY: clean

clean:
rm -f src/*.o src/*/*.o bin/*
cd src/libMvtnorm && $(MAKE) clean

12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# GAMBIT

A C++ tool for Gene-based Analysis with oMniBus, Integrative Tests

- Implements SKAT, burden, and ACAT gene-based test methods using variant- or region-based functional annotations
- Calculates annotation-stratified gene-based tests (e.g., TWAS/PrediXcan tests using eSNPs, gene-based tests using only coding variants, and gene-based tests using enhancer-to-target-gene maps)
- Calculates omnibus gene-based tests by aggregating across annotation classes
- Inputs: GWAS association summary statistics file (chromosome, position, ref/alt allele, and z-score or beta-hat + se), annotation files, and LD reference panel

#### Feedback and bug reports
- Feel free to contact Corbin Quick (corbinq@gmail.com) with bug reports or feedback

Binary file added bin/GaMBIT
Binary file not shown.
675 changes: 675 additions & 0 deletions copyrights/COPYING

Large diffs are not rendered by default.

25 changes: 25 additions & 0 deletions copyrights/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
/*
* Copyright (c) 2009 Regents of the University of Michigan
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/

7 changes: 7 additions & 0 deletions defs.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Coding Protein_Altering Nonsynonymous,Start_Loss,Stop_Gain,Stop_Loss,CodonGain,CodonLoss,Frameshift
Coding Splice_Site Essential_Splice_Site,Normal_Splice_Site
UTR3 UTR3 Utr3
UTR5 UTR5 Utr5
Exon Exon Exon,Synonymous,Insertion,Deletion
Promoter Promoter promoter
Proximal Proximal Upstream,Downstream
27 changes: 27 additions & 0 deletions format_gwas_summary_stats.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#!/bin/sh

infile=$1
prefix=$2

echo "input format:"
echo " CHR POS REF ALT RSID N Z"
echo ""
echo "annotating $infile..."

path_epacts=/net/snowwhite/home/corbinq/statgen/EPACTS

anno_bin=$path_epacts/src/anno
gfile=$path_epacts/data/hg19_refFlat.txt.gz
cfile=$path_epacts/data/codon.txt
pfile=$path_epacts/data/priority.txt
rfile=$path_funcwas/data/human_g1k_v37.fasta

$anno_bin -i $infile -o $prefix.tmp -g $gfile --inputFormat plain -c $cfile -p $pfile -r $rfile

cut -f1-8 $prefix.tmp | bgzip -c > $prefix.az.gz

echo "annotated gwas output written to $prefix.az.gz"

rm -f $prefix.tmp*

tabix -p vcf $prefix.az.gz
11 changes: 11 additions & 0 deletions src/Eigen/Array
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#ifndef EIGEN_ARRAY_MODULE_H
#define EIGEN_ARRAY_MODULE_H

// include Core first to handle Eigen2 support macros
#include "Core"

#ifndef EIGEN2_SUPPORT
#error The Eigen/Array header does no longer exist in Eigen3. All that functionality has moved to Eigen/Core.
#endif

#endif // EIGEN_ARRAY_MODULE_H
19 changes: 19 additions & 0 deletions src/Eigen/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
include(RegexUtils)
test_escape_string_as_regex()

file(GLOB Eigen_directory_files "*")

escape_string_as_regex(ESCAPED_CMAKE_CURRENT_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")

foreach(f ${Eigen_directory_files})
if(NOT f MATCHES "\\.txt" AND NOT f MATCHES "${ESCAPED_CMAKE_CURRENT_SOURCE_DIR}/[.].+" AND NOT f MATCHES "${ESCAPED_CMAKE_CURRENT_SOURCE_DIR}/src")
list(APPEND Eigen_directory_files_to_install ${f})
endif()
endforeach(f ${Eigen_directory_files})

install(FILES
${Eigen_directory_files_to_install}
DESTINATION ${INCLUDE_INSTALL_DIR}/Eigen COMPONENT Devel
)

add_subdirectory(src)
32 changes: 32 additions & 0 deletions src/Eigen/Cholesky
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#ifndef EIGEN_CHOLESKY_MODULE_H
#define EIGEN_CHOLESKY_MODULE_H

#include "Core"

#include "src/Core/util/DisableStupidWarnings.h"

/** \defgroup Cholesky_Module Cholesky module
*
*
*
* This module provides two variants of the Cholesky decomposition for selfadjoint (hermitian) matrices.
* Those decompositions are accessible via the following MatrixBase methods:
* - MatrixBase::llt(),
* - MatrixBase::ldlt()
*
* \code
* #include <Eigen/Cholesky>
* \endcode
*/

#include "src/misc/Solve.h"
#include "src/Cholesky/LLT.h"
#include "src/Cholesky/LDLT.h"
#ifdef EIGEN_USE_LAPACKE
#include "src/Cholesky/LLT_MKL.h"
#endif

#include "src/Core/util/ReenableStupidWarnings.h"

#endif // EIGEN_CHOLESKY_MODULE_H
/* vim: set filetype=cpp et sw=2 ts=2 ai: */
45 changes: 45 additions & 0 deletions src/Eigen/CholmodSupport
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#ifndef EIGEN_CHOLMODSUPPORT_MODULE_H
#define EIGEN_CHOLMODSUPPORT_MODULE_H

#include "SparseCore"

#include "src/Core/util/DisableStupidWarnings.h"

extern "C" {
#include <cholmod.h>
}

/** \ingroup Support_modules
* \defgroup CholmodSupport_Module CholmodSupport module
*
* This module provides an interface to the Cholmod library which is part of the <a href="http://www.suitesparse.com">suitesparse</a> package.
* It provides the two following main factorization classes:
* - class CholmodSupernodalLLT: a supernodal LLT Cholesky factorization.
* - class CholmodDecomposiiton: a general L(D)LT Cholesky factorization with automatic or explicit runtime selection of the underlying factorization method (supernodal or simplicial).
*
* For the sake of completeness, this module also propose the two following classes:
* - class CholmodSimplicialLLT
* - class CholmodSimplicialLDLT
* Note that these classes does not bring any particular advantage compared to the built-in
* SimplicialLLT and SimplicialLDLT factorization classes.
*
* \code
* #include <Eigen/CholmodSupport>
* \endcode
*
* In order to use this module, the cholmod headers must be accessible from the include paths, and your binary must be linked to the cholmod library and its dependencies.
* The dependencies depend on how cholmod has been compiled.
* For a cmake based project, you can use our FindCholmod.cmake module to help you in this task.
*
*/

#include "src/misc/Solve.h"
#include "src/misc/SparseSolve.h"

#include "src/CholmodSupport/CholmodSupport.h"


#include "src/Core/util/ReenableStupidWarnings.h"

#endif // EIGEN_CHOLMODSUPPORT_MODULE_H

Loading

0 comments on commit 3a2c890

Please sign in to comment.