Rename *ll* and *ul* to ll and ul in easy-subs
[maxima.git] / share / simplex / Readme.txt
blob9da37fa006204149b0e95f900a884196044ab20f
1 SIMPLEX\r
2 ========\r
3 \r
4 The simplex package implements the two-phase standard simplex method for\r
5 solving linear programming problems in maxima.\r
6 \r
7 The simplex package contains two files: simplex.lisp and\r
8 minimize_sx.mac. The file simplex.lisp should be compiled for speed. You\r
9 must load simplex before minimize_sx.\r
12 FUNCTIONS\r
13 ==========\r
15 - linear_program(A, b, c): finds the vector x which minimizes c'.x subject\r
16     to A.x=b. A is a n.m matrix, b a list of length n and c a list of length\r
17     m. The return value is [x, val] where x is the minimizing vector and\r
18     val=c'.x. This function is defined in the file simplex.lisp.\r
20 - minimize_lp(ex, const, pos): minimizes expression ex subject to\r
21     constraints in the list const. pos is an optional arguments which lists\r
22     non-negative variables. This function is defined in the file\r
23     minimize_sx.\r
25 - maximize_lp(ex, const, pos): maximizes expression ex subject to\r
26     constraints in the list const. pos is an optional arguments which lists\r
27     non-negative variables. This function is defined in the file\r
28     minimize_sx.\r
31 VARIABLES\r
32 ==========\r
34 - epsilon_lp:     epsilon for numerical computation (float)\r
35 - scale_lp:       scale input (boolean)\r
36 - pivot_count_sx: the number of pivots in last computation (fixnum)\r
37 - pivot_max_sx:   maximum number of pivots allowed (fixnum)\r
38 - nonnegative_lp: assume all variables to minimize_lp/maximize_lp are\r
39                   non-negative (boolean)\r
41 DEMO\r
42 =====\r
44 (%i1) A : matrix([1,1,-1,0],[2,-3,0,-1], [4,-5,0,0])$\r
45 (%i2) b : [1,1,6]$\r
46 (%i3) c : [1,-2,0,0]$\r
47 (%i4) linear_program(A, b, c);\r
48 (%o4) [[13/2, 4, 19/2, 0], -3/2]\r
50 (%i1) minimize_lp(x+y, [3*x+y>4, x+4*y>4]), nonnegative_lp=true;\r
51 (%o1) [20/11, [x = 12/11, y = 8/11]]\r
54 TESTS\r
55 ======\r
57 There are some tests in the Tests subdirectory.\r
60 AUTHOR\r
61 =======\r
63 This package was written by\r
65   Andrej Vodopivec <andrejv@users.sourceforge.net>\r
66   http://wxmaxima.sourceforge.net/maxima.html\r
68 It is licensed under the GPL licence.\r