/*
  -matrix svd-

*!  VERSION 1.1.0  28mar2005

*/

VERSION 9.0

INCLUDE _std_small
INCLUDE _ht260
INCLUDE header

HELP hlp1, view("help matrix_svd")
RESET res1

DIALOG main, label("matrix svd - Singular value decomposition") tabtitle("Main")
BEGIN
  TEXT     tx_mat            _lft      _top      _iwd      .,		/*
		*/ label("Compute singular value decomposition for:")
  LISTBOX  lb_mat            @         _ss       @         _ht7,	/*
		*/ contents(matrix)					/*
		*/ label("Compute singular value decomposition for")

  GROUPBOX gb_produce        @         _vs7      _iwd      _ht8,	/*
		*/ label("Create:  U diag(W) V' ")

  EDIT     ed_U              _ilft     _ss       _vnwd     .,		/*
		*/ label("U matrix")
  TEXT     tx_U              _vnsep    @         _ivlwd    .,		/*
		*/ label("U matrix")

  EDIT     ed_W              _ilft     _ls       _vnwd     .,		/*
		*/ label("W vector")
  TEXT     tx_W              _vnsep    @         _ivlwd    .,		/*
		*/ label("W vector")

  EDIT     ed_V              _ilft     _ls       _vnwd     .,		/*
		*/ label("V matrix")
  TEXT     tx_V              _vnsep    @         _ivlwd    .,		/*
		*/ label("V matrix")

END

PROGRAM command
BEGIN
	require main.lb_mat main.ed_U main.ed_W main.ed_V

	put "matrix svd "
	put main.ed_U " " main.ed_W " " main.ed_V " " "= " main.lb_mat
END
