Advertisement
Guest User

Untitled

a guest
Feb 20th, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.49 KB | None | 0 0
  1. # Show simplex tableau
  2. # Prereq: matrix A, vectors b,c, basis
  3. printf("Current basis:"); printf(" %2i", basis); disp("");
  4. B = A(:,basis); cB = c(basis);
  5. Bm1A = B\A; x_B = B\b; zrow = cB'*Bm1A-c'; zval = cB'*x_B;
  6. nv = find(zrow==min(zrow(zrow<=0)))(1);
  7. r = x_B./Bm1A(:,nv);
  8. T = [basis' Bm1A x_B r; 0 zrow zval 0]
  9. if length(r(r>=0)) >= 1
  10. ovp = find(r==min(r(r>=0)))(1);
  11. printf("Leaving variable: %i\nEntering variable: %i\n", basis(ovp), nv);
  12. basis(ovp) = nv;
  13. else
  14. disp("Simplex ended");
  15. endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement