Commit 1be8938e authored by Andreas Tille's avatar Andreas Tille
Browse files

New upstream version 2.4.0

parent 585d3498
Loading
Loading
Loading
Loading

.gitignore

0 → 100644
+64 −0
Original line number Diff line number Diff line
# Compiled Object files
*.o

# Compiled Static libraries
*.a

# Executables
src/long_seq_tm_test
src/ntdpal
src/ntthal
src/oligotm
src/primer3_core
src/primer3_masker
src/*.exe

# Temporary Test Files
test/primer1_list_tmp/*
test/primer1_th_list_tmp/*
test/primer_list_tmp/*
test/th-w-other-tasks_list_tmp/*
test/*.err
test/*.tmp
test/*.tmp2
test/*.valg
test/*.vg
test/primer_global_err/*.tmp
test/primer_global_err/*.tmp2
test/primer_global_err/*.valg
test/primer_global_err/*.vg

# Individual Test Files
test/hyb_probe_only.for
test/hyb_probe_only.int
test/left_only.for
test/pcr_primers.for
test/pcr_primers.rev
test/pcr_primers_and_io.for
test/pcr_primers_and_io.int
test/pcr_primers_and_io.rev
test/right_only.for
test/right_only.rev
test/syntax01.for
test/syntax01.int
test/syntax01.rev
test/syntax02.for
test/syntax02.int
test/syntax02.rev
test/syntax03.for
test/syntax03.int
test/syntax03.rev
test/syntax04.for
test/syntax04.int
test/syntax04.rev
test/syntax07.for
test/syntax07.int
test/syntax07.rev
test/syntax09.for
test/syntax09.int
test/syntax09.rev
test/syntax10.for
test/syntax10.int
test/syntax10.rev

.DS_Store
+0 −0

File moved.

README.md

0 → 100644
+29 −0
Original line number Diff line number Diff line
Design PCR primers from DNA sequence. Widely used (190k Google hits for "primer3").
From mispriming libraries to sequence quality data to the generation of internal
oligos, primer3 does it. C&perl.

Installing
----------

`sudo apt-get install -y build-essential g++ cmake git-all`

`git clone https://github.com/primer3-org/primer3.git primer3`

`cd primer3/src`

`make`

`make test`


Run Primer3
-----------

`./primer3_core ../example`


Read the complete Primer3 manual
--------------------------------
[Primer3 Manual](http://primer3.org/primer3_manual.htm)

or see /src/primer3_manual.htm

create_test_folders.pl

0 → 100755
+74 −0
Original line number Diff line number Diff line
#!/usr/bin/perl

# ======================================================================
# (c) Copyright 1996,1997,1998,1999,2000,2001,2004,2006,2007,2008,2010,
#  2011,2012,2016
# Whitehead Institute for Biomedical Research, Steve Rozen, 
# Andreas Untergasser and Helen Skaletsky
# All rights reserved.
# 
#   This file is part of the primer3 suite.
#
#   The primer3 suite is free software; you can redistribute it and/or
#   modify it under the terms of the GNU General Public License as
#   published by the Free Software Foundation; either version 2 of the
#   License, or (at your option) any later version.
#
#   This software is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#   GNU General Public License for more details.
#
#   You should have received a copy of the GNU General Public License
#   along with this file (file gpl-2.0.txt in the source distribution); if
#   not, write to the Free Software Foundation, Inc., 51 Franklin St,
#   Fifth Floor, Boston, MA 02110-1301 USA
# 
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# ======================================================================

use warnings 'all';
use strict;

if (-d "test") {
    if (-d "test/primer_list_tmp") {
        print "Folder excists: test/primer_list_tmp\n";
    } else {
        mkdir "test/primer_list_tmp";
        print "Created folder: test/primer_list_tmp\n";
    }
    if (-d "test/primer1_list_tmp") {
        print "Folder excists: test/primer1_list_tmp\n";
    } else {
        mkdir "test/primer1_list_tmp";
        print "Created folder: test/primer1_list_tmp\n";
    }
    if (-d "test/primer1_th_list_tmp") {
        print "Folder excists: test/primer1_th_list_tmp\n";
    } else {
        mkdir "test/primer1_th_list_tmp";
        print "Created folder: test/primer1_th_list_tmp\n";
    }
    if (-d "test/th-w-other-tasks_list_tmp") {
        print "Folder excists: test/th-w-other-tasks_list_tmp\n";
    } else {
        mkdir "test/th-w-other-tasks_list_tmp";
        print "Created folder: test/th-w-other-tasks_list_tmp\n";
    }

}
else {
    print "Run this script in the Primer3 root folder\n";
}

+7 −11
Original line number Diff line number Diff line
SEQUENCE_ID=example
SEQUENCE_TEMPLATE=GTAGTCAGTAGACNATGACNACTGACGATGCAGACNACACACACACACACAGCACACAGGTATTAGTGGGCCATTCGATCCCGACCCAAATCGATAGCTACGATGACG
SEQUENCE_TARGET=37,21
PRIMER_TASK=pick_detection_primers
SEQUENCE_TEMPLATE=tattggtgaagcctcaggtagtgcagaatatgaaacttcaggatccagtgggcatgctactggtagtgctgccggccttacaggcattatggtggcaaagtcgacagagttta
PRIMER_TASK=generic
PRIMER_PICK_LEFT_PRIMER=1
PRIMER_PICK_INTERNAL_OLIGO=1
PRIMER_PICK_INTERNAL_OLIGO=0
PRIMER_PICK_RIGHT_PRIMER=1
PRIMER_OPT_SIZE=18
PRIMER_MIN_SIZE=15
PRIMER_MAX_SIZE=21
PRIMER_MAX_NS_ACCEPTED=1
PRIMER_PRODUCT_SIZE_RANGE=75-100
P3_FILE_FLAG=1
SEQUENCE_INTERNAL_EXCLUDED_REGION=37,21
PRIMER_OPT_SIZE=20
PRIMER_MIN_SIZE=18
PRIMER_MAX_SIZE=22
PRIMER_PRODUCT_SIZE_RANGE=75-150
PRIMER_EXPLAIN_FLAG=1
=
Loading