diff --git a/BioInf/RNAdesign.hs b/BioInf/RNAdesign.hs
--- a/BioInf/RNAdesign.hs
+++ b/BioInf/RNAdesign.hs
@@ -60,8 +60,10 @@
 resolveOpt :: String -> t -> Primary -> [D1Secondary] -> Double
 resolveOpt optfun ener inp secs = parseOptString l sops mops gops props optfun where
   l = length secs
+  i = concatMap show $ VU.toList inp
   sops =
-    [ ("eos"   , \k -> unsafePerformIO $ RNA.eos (concatMap show (VU.toList inp)) (fromD1S $ secs !! (k-1)))
+    [ ("eos"   , \k -> unsafePerformIO $ RNA.eos i (fromD1S $ secs !! (k-1)))
+    , ("partc" , \k -> sel1 . unsafePerformIO $ RNA.partConstrained i (fromD1S $ secs !! (k-1)))
     , ("ed"    , \k -> ensembleDefect inp (secs !! (k-1))) -- ensemble defect
     ]
   mops =
@@ -71,8 +73,8 @@
     ]
   gops =
     [ ("Ged"   , probabilityDefectAll inp secs) -- global ensemble defect a la ``me''
-    , ("gibbs" , sel1 . unsafePerformIO $ RNA.part (concatMap show (VU.toList inp)))
-    , ("mfe"   , fst  . unsafePerformIO $ RNA.mfe (concatMap show (VU.toList inp)))
+    , ("gibbs" , sel1 . unsafePerformIO $ RNA.part i)
+    , ("mfe"   , fst  . unsafePerformIO $ RNA.mfe i)
     ]
   props =
     [ ("logMN", \ps -> lmn ps inp)
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -77,6 +77,12 @@
 
 eos      :: energy of a structure: eos(1)
 ed       :: ensemble defect of a structure: ed(3)
+partc    :: constrained partition function: partc(1).
+
+You probably want to use partc in conjunction with eos, where eos is modified
+by a small constant: "0.1 * eos(1) + partc(1)". eos guides the optimizer to the
+first viable sequence, after which the constrained partition function becomes
+active.
 
 ### nullary, constant for the current sequence:
 
diff --git a/RNAdesign.cabal b/RNAdesign.cabal
--- a/RNAdesign.cabal
+++ b/RNAdesign.cabal
@@ -1,7 +1,7 @@
 name:           RNAdesign
-version:        0.1.1.0
-author:         Christian Hoener zu Siederdissen, 2013-2014
-copyright:      Christian Hoener zu Siederdissen, Stefan Hammer, Ingrid Abfalter, Ivo L. Hofacker, Christoph Flamm, Peter F. Stadler, 2013-2014
+version:        0.1.2.1
+author:         Christian Hoener zu Siederdissen
+copyright:      Christian Hoener zu Siederdissen, 2013-2014
 maintainer:     choener@tbi.univie.ac.at
 category:       Bioinformatics
 synopsis:       Multi-target RNA sequence design
@@ -12,27 +12,35 @@
 cabal-version:  >= 1.6.0
 description:
                 The RNA sequence design problem asks for a single sequence that
-                readily folds into the one or more structural targets that are
-                given as input.
+                readily folds into the (one or more) structural targets that
+                are given as input.
                 .
                 This program expects on standard input a file with one or more
-                structures and, possibly, additional sequence constraints. It
-                will then run a Markov chain to find a sequence that is optimal
-                with regard to the structural targets and the user-defineable
-                optimization function.
+                structures and, possibly, additional sequence constraints in
+                the form of an IUPAC string. It will then run a Markov chain to
+                find a sequence that is optimal with regard to the structural
+                targets and the user-defineable optimization function.
                 .
                 The user can give different optimization criteria on the
                 command line, akin to a simple calculator.
                 .
+                For more details please consult:
+                <https://github.com/choener/RNAdesign/blob/master/README.md>
                 .
+                You can also run @RNAdesign --showmanual@ which will display
+                the same @README.md@.
                 .
+                .
+                .
                 If you find this program useful, please cite:
                 .
                 @
                 Christian Hoener zu Siederdissen, Stefan Hammer, Ingrid Abfalter, Ivo L. Hofacker, Christoph Flamm, Peter F. Stadler
                 Computational design of RNAs with complex energy landscapes
-                2013. Biopolymers. 99, no. 12. 99. 1124–36. http://dx.doi.org/10.1002/bip.22337
+                2013. Biopolymers. 99, no. 12. 99. 1124–36.
                 @
+                .
+                <http://dx.doi.org/10.1002/bip.22337>
 
 
 
@@ -63,7 +71,7 @@
     ParsecTools               >= 0.0.2 && < 0.0.3 ,
     PrimitiveArray            >= 0.5.3            ,
     RNAFold                   >= 1.99.3.3         ,
-    ViennaRNA-bindings        >= 0.1.0.0
+    ViennaRNA-bindings        >= 0.1.1.1
   exposed-modules:
     BioInf.RNAdesign
     BioInf.RNAdesign.Assignment
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,7 @@
+0.1.2.1
+
+- constrained partition function enabled
+
 0.1.1.0
 
 - IUPAC nomenclature for sequence constraints
