Code covered by the BSD License  

Highlights from
slatec

from slatec by Ben Barrowes
The slatec library converted into matlab functions.

[mrelas,nvars,lmx,lbm,nredc,info,ienter,ileave,iopt,npp,jstrt,ibasis,imat,ibrc,ipr,iwr,ind,ibb,anorm,eps,uu,gg,rprnrm,erdnrm,dulnrm,theta,costsc,xlamda,rhsnrm,amat,basmat,csc,wr,rprim,ww,bu,bl,rhs,erd,erp,rz,rg,colnrm,costs,primal,duals,singlr,redbas,zero
function [mrelas,nvars,lmx,lbm,nredc,info,ienter,ileave,iopt,npp,jstrt,ibasis,imat,ibrc,ipr,iwr,ind,ibb,anorm,eps,uu,gg,rprnrm,erdnrm,dulnrm,theta,costsc,xlamda,rhsnrm,amat,basmat,csc,wr,rprim,ww,bu,bl,rhs,erd,erp,rz,rg,colnrm,costs,primal,duals,singlr,redbas,zerolv,stpedg]=dplpmu(mrelas,nvars,lmx,lbm,nredc,info,ienter,ileave,iopt,npp,jstrt,ibasis,imat,ibrc,ipr,iwr,ind,ibb,anorm,eps,uu,gg,rprnrm,erdnrm,dulnrm,theta,costsc,xlamda,rhsnrm,amat,basmat,csc,wr,rprim,ww,bu,bl,rhs,erd,erp,rz,rg,colnrm,costs,primal,duals,singlr,redbas,zerolv,stpedg);
persistent aij alpha cnorm gamma gq i ibas ihi il1 ilow ipage iplace iu1 j k key lpg n20002 n20018 n20121 nerr nnegrc npr001 npr003 one pagepl rcost rzj scalr trans two wp zero ; 

if isempty(i), i=0; end;
if isempty(ibas), ibas=0; end;
if isempty(ihi), ihi=0; end;
if isempty(il1), il1=0; end;
if isempty(ilow), ilow=0; end;
if isempty(ipage), ipage=0; end;
if isempty(iplace), iplace=0; end;
if isempty(iu1), iu1=0; end;
if isempty(j), j=0; end;
if isempty(k), k=0; end;
if isempty(key), key=0; end;
if isempty(lpg), lpg=0; end;
if isempty(n20002), n20002=0; end;
if isempty(n20018), n20018=0; end;
if isempty(n20121), n20121=0; end;
if isempty(nerr), nerr=0; end;
if isempty(nnegrc), nnegrc=0; end;
if isempty(npr001), npr001=0; end;
if isempty(npr003), npr003=0; end;
%***BEGIN PROLOGUE  DPLPMU
%***SUBSIDIARY
%***PURPOSE  Subsidiary to DSPLP
%***LIBRARY   SLATEC
%***TYPE      doubleprecision (SPLPMU-S, DPLPMU-D)
%***AUTHOR  (UNKNOWN)
%***DESCRIPTION
%
%     THE EDITING REQUIRED TO CONVERT THIS SUBROUTINE FROM SINGLE TO
%     doubleprecision INVOLVES THE FOLLOWING CHARACTER STRING CHANGES.
%
%     use AN EDITING COMMAND (CHANGE) /STRING-1/(TO)STRING-2/.
%     /REAL (12 BLANKS)/doubleprecision/,
%     /SASUM/DASUM/,/SCOPY/DCOPY/,/SDOT/DDOT/,
%     /.E0/.D0/
%
%     THIS SUBPROGRAM IS FROM THE DSPLP( ) PACKAGE.  IT PERFORMS THE
%     TASKS OF UPDATING THE PRIMAL SOLUTION, EDGE WEIGHTS, REDUCED
%     COSTS, AND MATRIX DECOMPOSITION.
%     IT IS THE MAIN PART OF THE PROCEDURE (MAKE MOVE AND UPDATE).
%
%     REVISED 821122-1100
%     REVISED YYMMDD
%
%***SEE ALSO  DSPLP
%***ROUTINES CALLED  DASUM, DCOPY, DDOT, DPLPDM, DPNNZR, DPRWPG, IDLOC,
%                    LA05BD, LA05CD, XERMSG
%***REVISION HISTORY  (YYMMDD)
%   811215  DATE WRITTEN
%   890531  Changed all specific intrinsics to generic.  (WRB)
%   890605  Removed unreferenced labels.  (WRB)
%   890606  Changed references from IPLOC to IDLOC.  (WRB)
%   890606  Removed unused COMMON block LA05DD.  (WRB)
%   891214  Prologue converted to Version 4.0 format.  (BAB)
%   900315  CALLs to XERROR changed to CALLs to XERMSG.  (THJ)
%   900328  Added TYPE section.  (WRB)
%***end PROLOGUE  DPLPMU
ibasis_shape=size(ibasis);ibasis=reshape(ibasis,1,[]);
imat_shape=size(imat);imat=reshape(imat,1,[]);
ibrc_orig=ibrc;ibrc_shape=[lbm,2];ibrc=reshape([ibrc_orig(1:min(prod(ibrc_shape),numel(ibrc_orig))),zeros(1,max(0,prod(ibrc_shape)-numel(ibrc_orig)))],ibrc_shape);
ipr_shape=size(ipr);ipr=reshape(ipr,1,[]);
iwr_shape=size(iwr);iwr=reshape(iwr,1,[]);
ind_shape=size(ind);ind=reshape(ind,1,[]);
ibb_shape=size(ibb);ibb=reshape(ibb,1,[]);
if isempty(aij), aij=0; end;
if isempty(alpha), alpha=0; end;
if isempty(gamma), gamma=0; end;
if isempty(gq), gq=0; end;
if isempty(one), one=0; end;
if isempty(rzj), rzj=0; end;
if isempty(scalr), scalr=0; end;
if isempty(two), two=0; end;
if isempty(wp), wp=0; end;
if isempty(zero), zero=0; end;
amat_shape=size(amat);amat=reshape(amat,1,[]);
basmat_shape=size(basmat);basmat=reshape(basmat,1,[]);
csc_shape=size(csc);csc=reshape(csc,1,[]);
wr_shape=size(wr);wr=reshape(wr,1,[]);
rprim_shape=size(rprim);rprim=reshape(rprim,1,[]);
ww_shape=size(ww);ww=reshape(ww,1,[]);
bu_shape=size(bu);bu=reshape(bu,1,[]);
bl_shape=size(bl);bl=reshape(bl,1,[]);
rhs_shape=size(rhs);rhs=reshape(rhs,1,[]);
erd_shape=size(erd);erd=reshape(erd,1,[]);
erp_shape=size(erp);erp=reshape(erp,1,[]);
rz_shape=size(rz);rz=reshape(rz,1,[]);
rg_shape=size(rg);rg=reshape(rg,1,[]);
costs_shape=size(costs);costs=reshape(costs,1,[]);
primal_shape=size(primal);primal=reshape(primal,1,[]);
duals_shape=size(duals);duals=reshape(duals,1,[]);
colnrm_shape=size(colnrm);colnrm=reshape(colnrm,1,[]);
if isempty(rcost), rcost=0; end;
if isempty(cnorm), cnorm=0; end;
if isempty(pagepl), pagepl=false; end;
if isempty(trans), trans=false; end;
%
%***FIRST EXECUTABLE STATEMENT  DPLPMU

[mrelas,nvars,lmx,lbm,nredc,info,ienter,ileave,iopt,npp,jstrt,ibasis,imat,ibrc,ipr,iwr,ind,ibb,anorm,eps,uu,gg,rprnrm,erdnrm,dulnrm,theta,costsc,xlamda,rhsnrm,amat,basmat,csc,wr,rprim,ww,bu,bl,rhs,erd,erp,rz,rg,colnrm,costs,primal,duals,singlr,redbas,zerolv,stpedg]=splpmu(mrelas,nvars,lmx,lbm,nredc,info,ienter,ileave,iopt,npp,jstrt,ibasis,imat,ibrc,ipr,iwr,ind,ibb,anorm,eps,uu,gg,rprnrm,erdnrm,dulnrm,theta,costsc,xlamda,rhsnrm,amat,basmat,csc,wr,rprim,ww,bu,bl,rhs,erd,erp,rz,rg,colnrm,costs,primal,duals,singlr,redbas,zerolv,stpedg);
end

Contact us