changeset 3464:ab5ae0aca0f1

[project @ 2000-01-20 09:48:41 by jwe]
author jwe
date Thu, 20 Jan 2000 09:49:30 +0000
parents 4e817955149b
children 996bb7ea4507
files doc/interpreter/install.txi scripts/control/marsyas/Makefile.in scripts/control/marsyas/demomarsyas.m scripts/control/marsyas/susball.m
diffstat 4 files changed, 7 insertions(+), 290 deletions(-) [+]
line wrap: on
line diff
--- a/doc/interpreter/install.txi	Wed Jan 19 18:54:40 2000 +0000
+++ b/doc/interpreter/install.txi	Thu Jan 20 09:49:30 2000 +0000
@@ -240,6 +240,13 @@
 @url{ftp://ftp.cygnus.com/pub/g++/libg++-2.7.2-hppa-gcc-fix}.
 
 @item
+On some alpha systems there may be a problem with the @code{libdxml}
+library, resulting in floating point errors and/or segmentation faults in
+the linear algebra routines called by Octave.  If you encounter such
+problems, then you should modify the configure script so that
+@code{SPECIAL_MATH_LIB} is not set to @code{-ldxml}.
+
+@item
 On FreeBSD systems Octave may hang while initializing some internal
 constants.  The fix appears to be to use
 
--- a/scripts/control/marsyas/Makefile.in	Wed Jan 19 18:54:40 2000 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,75 +0,0 @@
-#
-# Makefile for octave's scripts/control/marsyas directory
-#
-# John W. Eaton
-# jwe@bevo.che.wisc.edu
-# University of Wisconsin-Madison
-# Department of Chemical Engineering
-
-TOPDIR = ../../..
-
-script_sub_dir = control/marsyas
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-
-include $(TOPDIR)/Makeconf
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-SOURCES = *.m
-
-DISTFILES = Makefile.in $(SOURCES)
-
-FCN_FILES = $(wildcard $(srcdir)/*.m)
-FCN_FILES_NO_DIR = $(notdir $(FCN_FILES))
-
-BINDISTFILES = $(FCN_FILES)
-
-all:
-.PHONY: all
-
-install install-strip:
-	$(top_srcdir)/mkinstalldirs $(fcnfiledir)/$(script_sub_dir)
-	for f in $(FCN_FILES_NO_DIR); do \
-	  rm -f $(fcnfiledir)/$(script_sub_dir)/$$f; \
-	  $(INSTALL_DATA) $(srcdir)/$$f $(fcnfiledir)/$(script_sub_dir)/$$f; \
-	done
-.PHONY: install install-strip
-
-uninstall:
-	for f in $(FCN_FILES_NO_DIR); \
-	  do rm -f $(fcnfiledir)/$(script_sub_dir)/$$f; \
-	done
-.PHONY: uninstall
-
-clean:
-.PHONY: clean
-
-tags: $(SOURCES)
-	ctags $(SOURCES)
-
-TAGS: $(SOURCES)
-	etags $(SOURCES)
-
-mostlyclean: clean
-.PHONY: mostlyclean
-
-distclean: clean
-	rm -f Makefile
-.PHONY: distclean
-
-maintainer-clean: distclean
-	rm -f tags TAGS
-.PHONY: maintainer-clean
-
-dist:
-	ln $(DISTFILES) ../../../`cat ../../../.fname`/scripts/$(script_sub_dir)
-.PHONY: dist
-
-bin-dist:
-	ln $(BINDISTFILES) ../../../`cat ../../../.fname`/scripts/$(script_sub_dir)
-.PHONY: bin-dist
--- a/scripts/control/marsyas/demomarsyas.m	Wed Jan 19 18:54:40 2000 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,116 +0,0 @@
-## Copyright (C) 1996 Auburn University.  All rights reserved.
-##
-## This file is part of Octave.
-##
-## Octave is free software; you can redistribute it and/or modify it
-## under the terms of the GNU General Public License as published by the
-## Free Software Foundation; either version 2, or (at your option) any
-## later version.
-##
-## Octave is distributed in the hope that it will be useful, but WITHOUT
-## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-## for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with Octave; see the file COPYING.  If not, write to the Free
-## Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-page_screen_output = 1;
-opt = 0;
-QUITOPT = 7;
-while (opt != QUITOPT)
-  opt = menu("Marsyas interface update demo:", ...
-        "run Marsyas on the magnetically suspended ball example", ...
-        "load continuous time marsyas example system", ...
-        "load discrete-time marsyas example system", ...
-        "bode plot of loaded system (MIMO)", ...
-        "bode plot of loaded system (SISO)", ...
-        "Design example", ...
-        "Quit");
-
-  if(opt == 1)
-    cmd = "system(""marsyas mag1d.mar"")";
-    run_cmd
-    cmd = "system(""marplot -i"")";
-    run_cmd
-  elseif(opt == 2)
-    cmd = "ballsys = margetsys();";
-    run_cmd;
-    cmd = "sysout(ballsys);"
-    run_cmd
-  elseif(opt == 3)
-    cmd = "ballsys = margetsys(""disc"");";
-    run_cmd
-    cmd = "sysout(ballsys);"
-    run_cmd
-  elseif(opt == 4)
-    cmd = "bode(ballsys);";
-    run_cmd
-  elseif(opt == 5)
-    cmd = "bode(ballsys,[],1,1);";
-    run_cmd
-  elseif(opt == 6)
-    if(!exist("ballsys"))
-      warning("You didn't load a system yet (option 2 or 3)");
-    else
-      disp("Design LQG controller");
-      cmd = "sysout(ballsys)";
-      run_cmd
-      disp("add noise inputs to system...")
-      if(ballsys.n)
-        disp("continuous system:")
-        cmd = "ballsys1 = sysappend(ballsys,eye(ballsys.n));";
-      else
-        disp("discrete system:")
-        cmd = "ballsys1 = sysappend(ballsys,eye(ballsys.nz));";
-      endif
-      run_cmd
-      cmd = "sysout(ballsys1)";
-      run_cmd
-      disp("Notice the two additional inputs, u_2, and u_3.  These are the ");
-      disp("""entry points"" for the gaussian noise disturbance.");
-      disp(" ");
-      disp("We'll design the controller to use only position feedback:")
-      cmd = "ballsys1=sysprune(ballsys1,1,[]);";
-      run_cmd
-      cmd = "sysout(ballsys1)";
-      run_cmd
-      disp("Now design an LQG controller: Sigw: input noise")
-      Sigw = eye(2)
-      disp("Now design an LQG controller: Sigv: measurement noise")
-      Sigv = eye(rows(ballsys1.c))
-      disp("State and input penalties:")
-      Q = eye(2)
-      R = 1
-      disp("Controlled input is input 1");
-      cmd="Ksys = lqg(ballsys1,Sigw,Sigv,Q,R,1);";
-      run_cmd
-      disp("sysout(Ksys);");
-      sysout(Ksys);
-
-      disp("marsyas conversion: output in scalar form:")
-      cmd = "maroutsys(Ksys, ""ball_controller"",""scalar"");";
-      run_cmd
-      disp("here's the output file:")
-      prompt
-      system("more ball_controller.mar");
-
-      disp("marsyas conversion: output in state space form: (default option;")
-      disp("the ""ss"" in the command below is not needed)")
-      cmd = "maroutsys(Ksys, ""ball_controller_ss"",""ss"");";
-      run_cmd
-      disp("here's the output file:")
-      prompt
-      system("more ball_controller_ss.mar");
-
-      disp("marsyas conversion: output in transfer function form:")
-      cmd = "maroutsys(Ksys, ""ball_controller_tf"",""tf"")"
-      run_cmd
-      disp("here's the output file:")
-      prompt
-      system("more ball_controller_tf.mar");
-
-    endif
-  endif
-endwhile
--- a/scripts/control/marsyas/susball.m	Wed Jan 19 18:54:40 2000 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,99 +0,0 @@
-## Copyright (C) 1996 Auburn University.  All rights reserved.
-##
-## This file is part of Octave.
-##
-## Octave is free software; you can redistribute it and/or modify it
-## under the terms of the GNU General Public License as published by the
-## Free Software Foundation; either version 2, or (at your option) any
-## later version.
-##
-## Octave is distributed in the hope that it will be useful, but WITHOUT
-## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-## for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with Octave; see the file COPYING.  If not, write to the Free
-## Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-## -*- texinfo -*-
-## @deftypefn {Function File} {@var{outputs} =} susball (@var{inputs})
-## @end deftypefn
-
-cmd = "ballsys = margetsys(""disc"")";
-eval(cmd);
-
-disp("Design LQG controller");
-cmd = "sysout(ballsys)";
-run_cmd
-disp("add noise inputs to system...")
-
-disp("discrete system:")
-[nn,nz,mm,pp] = sysdimensions(ballsys);
-cmd = "ballsys = sysappend(ballsys,nz);";
-run_cmd
-
-cmd = "sysout(ballsys)";
-run_cmd
-
-disp("Notice the two additional inputs, u_2, and u_3.  These are the ");
-disp("""entry points"" for the gaussian noise disturbance.");
-disp(" ");
-disp("We'll design the controller to use only position feedback:")
-
-cmd = "ballsys=sysprune(ballsys,1,[]);";
-run_cmd
-cmd = "sysout(ballsys)";
-run_cmd
-
-disp("Now design an LQG controller: Sigw: input noise")
-Sigw = eye(2)
-disp("Now design an LQG controller: Sigv: measurement noise")
-Sigv = eye(pp);
-
-disp("State and input penalties:")
-Q = eye(2)
-R = 1
-disp("Controlled input is input 1");
-
-cmd="Ksys = lqg(ballsys,Sigw,Sigv,Q,R,1);";
-run_cmd
-
-disp("sysout(Ksys);");
-sysout(Ksys);
-
-disp("\nGet rid of the disturbance inputs");
-cmd = "ballsys = sysprune(ballsys,1,1);"
-run_cmd;
-sysout(ballsys);
-sysout(ballsys,"zp");
-
-disp("\nGrouping the plant and the controller");
-cmd = "closed_loop = sysgroup(ballsys,Ksys);"
-run_cmd;
-sysout(closed_loop);
-
-disp("\nduplicating the plant input");
-cmd = "closed_loop = sysdup(closed_loop,[],1);"
-run_cmd;
-sysout(closed_loop);
-
-## disp("\nscaling the duplicated input by -1");
-## cmd = "closed_loop = sysscale(closed_loop,[],diag([1,1,1]));"
-## run_cmd;
-## sysout(closed_loop);
-
-disp("\nconnecting plant output to controller input and controller output");
-disp("to the duplicated plant input");
-cmd = "closed_loop = sysconnect(closed_loop,[1 2],[2 3]);"
-run_cmd;
-sysout(closed_loop);
-
-disp("\nkeeping only the original plant input and plant output");
-cmd = "closed_loop = sysprune(closed_loop,1,1);"
-run_cmd;
-sysout(closed_loop);
-
-sysout(closed_loop,"zp");
-
-