1 %%% ---------------------------------------------------------------
3 %%% ---------------------------------------------------------------
5 \documentclass[11pt
]{report} % not use twoside
7 \usepackage{amscd,amssymb,eufrak,a4wide
} % ohne ,german,
8 \usepackage[latin1]{inputenc}
11 \usepackage{longtable
}
26 \parskip5pt plus
2pt minus
2pt
27 \renewcommand{\topfraction}{0.7}
28 \renewcommand{\bottomfraction}{0.7}
29 \renewcommand{\textfraction}{0.0}
30 \setcounter{secnumdepth
}{4}
31 \setcounter{tocdepth}{4}
33 \newcommand\ts{\textstyle}
34 \newcommand\ds{\displaystyle}
36 % Umgebungsdefinitionen
37 % ---------------------
39 % Definition [Kapitel#].Def#
40 % \begin{definition}{label} ... \end{definition}
42 \newtheorem{mathdefinition
}{Definition
}[chapter
]
43 \newenvironment{definition
}[1]{\begin{mathdefinition
}%
45 \ifx\empty\envlabel\relax\else\label{#1}\fi%
46 \rule{0pt
}{0pt
}\end{mathdefinition
}\rm}%
47 {\ $
\ds\Box$
\par\addvspace{\baselineskip}}
49 % Definitionen [Kapitel#].Def#
50 % \begin{definitions}{label} ... \end{definitions}
52 \newtheorem{mathdefinitions
}[mathdefinition
]{Definitionen
}
53 \newcounter{deflistcounter
}
54 \newenvironment{definitions
}[1]{%
55 \begin{mathdefinitions
}%
57 \ifx\empty\envlabel\relax\else\label{#1}\fi%
58 \rule{0pt
}{0pt
}\end{mathdefinitions
}%%
59 \begin{list
}{\bf\arabic{deflistcounter
})
}%
60 {\usecounter{deflistcounter
}\labelwidth4mm\leftmargin7mm\labelsep2mm}%
63 \mbox{\ $
\ds\Box$
}\par\addvspace{\baselineskip}}
65 % Satz [Kapitel#].Satz#
66 % \begin{theorem}{zusatz}{label} ... \end{theorem}
68 \newtheorem{theoremcount
}{Satz
}[chapter
]
69 \newenvironment{theorem
}[2]{%
71 \ifx\empty\zusatz\begin{theoremcount
}%
72 \else\begin{theoremcount
}[\zusatz]\fi%
74 \ifx\empty\envlabel\else\label{\envlabel}\fi%
75 \rule{0pt
}{0pt
}\end{theoremcount
}\rm}%
76 {\ $
\ds\Box$
\par\addvspace{\baselineskip}}
79 % \begin{proof} ... \end{proof}
81 %\newenvironment{proof}[1]{\par\addvspace{\baselineskip}%
82 %{\noindent\bf Beweis #1}\par\addvspace{\baselineskip}\noindent}%
83 %{\ \rule{2mm}{2mm}\par\addvspace{\baselineskip}}
86 % \begin{conclusion} ... \end{conclusion}
88 \newenvironment{conclusion
}{\par\addvspace{\baselineskip}%
89 {\bf Folgerung
}\par\addvspace{\baselineskip}}%
90 {\par\addvspace{\baselineskip}}
93 % \begin{conclusions} ... \end{conclusions}
95 \newenvironment{conclusions
}{\par\addvspace{\baselineskip}%
96 {\bf Folgerungen
}\par\addvspace{\baselineskip}}%
97 {\par\addvspace{\baselineskip}}
100 % \begin{observation} ... \end{observation}
102 \newenvironment{observation
}{\par\addvspace{\baselineskip}%
103 {\bf Beobachtung
}\par\addvspace{\baselineskip}}%
104 {\par\addvspace{\baselineskip}}
107 % \begin{observations} ... \end{observations}
109 \newenvironment{observations
}{\par\addvspace{\baselineskip}%
110 {\bf Beobachtungen
}\par\addvspace{\baselineskip}}%
111 {\par\addvspace{\baselineskip}}
114 % \begin{example}{label} ... \end{example}
116 \newtheorem{examplecount
}{Example
}[chapter
]
117 \newenvironment{example
}[1]{\begin{examplecount
}%
119 \ifx\empty\envlabel\relax\else\label{#1}\fi%
120 \rule{0pt
}{0pt
}\end{examplecount
}\rm}%
121 {\par\noindent$
\ds\Box$
\par\addvspace{\baselineskip}}
124 % \begin{remark} ... \end{remark}
126 \newenvironment{remark
}{\par{\it Anmerkung\/
}:
}{\par}
130 \newenvironment{problems
}{%
131 \begin{list
}{\arabic{problem
}.
}%
132 {\usecounter{problem
}\labelwidth1.5em
\leftmargin2em\labelsep0.5em
}}%
138 \newcommand\A{{\bf A
}}
139 \newcommand\B{{\bf B
}}
140 \newcommand\C{{\bf C
}}
141 \newcommand\E{{\bf E
}}
143 \newcommand\J{{\bf J
}}
144 \newcommand\K{{\bf K
}}
145 \newcommand\M{{\bf M
}}
146 \newcommand\N{{\bf N
}}
148 \newcommand\Q{{\bf Q
}}
149 \newcommand\T{{\bf T
}}
150 \newcommand\U{{\bf U
}}
151 \newcommand\V{{\bf V
}}
152 \newcommand\Y{{\bf Y
}}
153 \newcommand\Z{{\bf Z
}}
154 \newcommand\m{\phantom{-
}}
156 \newcommand\bb{{\bf b
}}
157 \newcommand\e{{\bf e
}}
158 \newcommand\f{{\bf f
}}
159 \newcommand\vv{{\bf v
}}
160 \newcommand\uu{{\bf u
}}
161 \newcommand\ii{{\bf i
}}
162 \newcommand\ib{{\bf i
}_b
}
163 \newcommand\ibi{{\bf i
}_
{b1
}}
164 \newcommand\ibii{{\bf i
}_
{b2
}}
165 \newcommand\ub{{\bf u
}_b
}
166 \newcommand\ubi{{\bf u
}_
{b1
}}
167 \newcommand\ubii{{\bf u
}_
{b2
}}
168 \newcommand\jl{{\bf j
}_l
}
169 \newcommand\vn{{\bf v
}_n
}
170 \newcommand\s{{\bf s
}}
171 \newcommand\x{{\bf x
}}
172 \newcommand\p{{\bf p
}}
173 \newcommand\nullvec{\underline{0}}
174 \newcommand\nullmatrix{{\bf 0}}
175 \newcommand\const{\mbox{const.
}}
177 % Mathematische Operatoren
178 % ------------------------
179 \newcommand\diver{\mathop{\mbox{div
}}} % Divergenz
180 \newcommand\rot{\mathop{\mbox{rot
}}} % Rotation
181 \newcommand\Def{\mathop{\mbox{Def
}}} % Defekt
182 \newcommand\Rg{\mathop{\mbox{Rg
}}} % Rang
183 \newcommand\Ker{\mathop{\mbox{Ker
}}} % Kern
184 \newcommand\LT{\mathop{\cal L
}} % Laplace-Transformierte
185 \newcommand\symdif{\mathbin{\bigtriangleup}} % symmetrische Differenz
186 \newcommand\union{\mathbin{\cup}} % Vereinigung
187 \newcommand\cut{\mathbin{\cap}} % Schnitt
188 \newcommand\ringsum{\mathbin{\oplus}} % Modulo-2-Addition
189 \newcommand\ovgint{\mathop{\int\!\!\!\!
\int\kern-
14pt
\bigcirc}\limits}
190 % Oberfl"achenintegral ^
191 \newcommand\volint{\mathop{\int\!\!\!\!
\int\!\!\!\!
\int}\limits}
193 \newcommand\diag{\mathop{\mbox{diag
}}} % Diagonalmatrix
194 \newcommand\Arcosh{\mathop{\mbox{Arcosh
}}}
196 \newcommand\uvec[1]{\underline{#1}}
197 \newcommand\cvec[1]{\left(
\begin{array
}{c
} #1 \end{array
} \right)
}
198 \newcommand\rvec[2]{\left(
\begin{array
}{*
{#1}{c
}} #2 \end{array
} \right)
}
199 \newcommand\rvect[2]{\left(
\begin{array
}{*
{#1}{c
}} #2 \end{array
} \right)^T
}
200 \newcommand\csvec[1]{\left[ \begin{array
}{c
} #1 \end{array
} \right]}
201 \newcommand\rsvec[2]{\left[ \begin{array
}{*
{#1}{c
}} #2 \end{array
} \right]}
202 \newcommand\rsvect[2]{\left[ \begin{array
}{*
{#1}{c
}} #2 \end{array
} \right]^T
}
203 \newcommand\vpmat[1]{\left[ \begin{array
}{cc
} #1 \end{array
} \right]}
204 \newcommand\lb{\left\
{}
205 \newcommand\rb{\right\
}}
206 \newcommand\pdf[2]{\frac{\partial #1}{\partial #2}}
208 % Zeichen fuer die Zahlbereiche:
209 % ------------------------------
211 % Natuerliche Zahlen:
212 \newcommand\nz{\ifmmode {I
\hskip -
3pt N
} \else {\hbox {$I
\hskip -
3pt N$
}}\fi}
215 \newcommand\gz{\ifmmode {Z
\hskip -
4.8pt Z
} \else
216 {\hbox {$Z
\hskip -
4.8pt Z$
}}\fi}
219 \newcommand\qz{\ifmmode {Q
\hskip -
5.0pt
\vrule height6.0pt depth
0pt
220 \hskip 6pt
} \else {\hbox
221 {$Q
\hskip -
5.0pt
\vrule height6.0pt depth
0pt
\hskip 6pt$
}}\fi}
224 \newcommand\rz{\ifmmode {I
\hskip -
3pt R
} \else {\hbox {$I
\hskip -
3pt R$
}}\fi}
227 \newcommand\cz{\ifmmode {C
\hskip -
4.8pt
\vrule height5.8pt
\hskip 6.3pt
} \else
228 {\hbox {$C
\hskip -
4.8pt
\vrule height5.8pt
\hskip 6.3pt$
}}\fi}
233 % \bordermatrixlr{ linke Klammer }{ Matrixinhalt }{ rechte Klammer }
234 % Beispiel: \bordermatrixlr{\left[}{1 & 2 \cr 3 & 4}{\right]}
237 \def\bordermatrixlr#1#2#3{\begingroup \m@th
238 \setbox\z@
\vbox{\def\cr{\crcr\noalign{\kern2\p@
\global\let\cr\endline}}%
239 \ialign{$##$
\hfil\kern2\p@
\kern\p@renwd&
\thinspace\hfil$##$
\hfil
240 &&
\quad\hfil$##$
\hfil\crcr
241 \omit\strut\hfil\crcr\noalign{\kern-
\baselineskip}%
242 #2\crcr\omit\strut\cr}}%
243 \setbox\tw@
\vbox{\unvcopy\z@
\global\setbox\@ne
\lastbox}%
244 \setbox\tw@
\hbox{\unhbox\@ne
\unskip\global\setbox\@ne
\lastbox}%
245 \setbox\tw@
\hbox{$
\kern\wd\@ne
\kern-
\p@renwd
#1\kern-
\wd\@ne
246 \global\setbox\@ne
\vbox{\box\@ne
\kern2\p@
}%
247 \vcenter{\kern-
\ht\@ne
\unvbox\z@
\kern-
\baselineskip}\,
#3$
}%
248 \null\;
\vbox{\kern\ht\@ne
\box\tw@
}\endgroup}
250 \def\docspecials{\do\
\do\$
\do\&
%
251 \do\#
\do\^
\do\^^K
\do\_\do\^^A
\do\%
\do\~
}
252 {\catcode`\/=
0\catcode`\\=
12/xdef/@bsl
{\
}}
253 \def\literatim#1{\trivlist \item[]\if@minipage
\else\vskip\parskip\fi
254 \leftskip\@totalleftmargin
\rightskip\z@
255 \parindent\z@
\parfillskip\@flushglue
\parskip\z@
256 \def\@nll
{}\def\@arg
{#1}
257 \ifx\@nll\@arg
\def\@newcc
{}\else\def\@newcc
{\catcode`
#1=
14}\fi
262 \@tempswafalse
\def\par{\if@tempswa
\hbox{}\fi\@tempswatrue\@@par
}
263 \obeylines \tt \catcode``=
13 \@noligs
\let\do\@makeother
\docspecials
268 \frenchspacing\@vobeyspaces\@newcc
}
270 \let\endliteratim=
\endtrivlist
271 \def\eqnr{{\rm (
\theequation)
}}
272 \def\eqn{\stepcounter{equation
}\eqnr}
274 % \begin{eqarr}{Musterzeile (in plain TeX)} ... \end{eqarr}
275 % Musterzeile z.B. { #\hfill\quad & $\ds #$ & # } entspr. {lcc}
279 % { #\quad\hfill & \hfill $\ds #$ & $\ds #$ & $\ds #$ \hfill }
280 % Masche 1: & u_1 + u_2 & = & 0 &\eqn\label{masche1}\cr
281 % Masche 2: & u_2 & = & U_0 &\eqn\cr
284 \newenvironment{eqarr
}[1]{%
285 \let\@currentlabel=
\theequation\tabskip=
0pt plus
1000pt minus
1000pt
\bgroup%
286 \everycr{\noalign{\vskip\jot}}%
287 $$
\halign to
\displaywidth\bgroup\tabskip=
0pt
#1%
288 \hfill\tabskip=
0pt plus1000pt minus1000pt&
\llap{##
}\tabskip=
0pt
\cr%
293 \def\vl{\smash{\vrule height
10pt depth
5pt
}}
294 \def\backupa{\noalign{\vskip-
8pt
}}
295 \def\backupb{\noalign{\vskip-
3pt
}}
300 \def\maxi{{\sc Maxima
}}
302 \newenvironment{eiginput
}{%
303 \begin{list
}{\textcolor{blue
}{}}{\color{blue
}%
304 }}{\end{list
}\color{black
}}
306 \newenvironment{eigoutput
}{%
307 \begin{list
}{\textcolor{red
}{}}{\color{red
}%
308 }}{\end{list
}\color{black
}}
311 %=====================================================###0
318 %=====================================================
322 \setcounter{page
}{-
1}
323 \newfont{\tu}{ptmrc scaled
2000}
324 \newfont{\inst}{ptmb scaled
1900}
329 \begin{minipage
}[t
]{3.5cm
}
332 \includegraphics[height=
3.5cm
]{TUBS1.png
}
337 \begin{minipage
}[t
]{12.4cm
}
342 Technische Universit\"at Braunschweig\\
[1cm
]
343 %\inst Institut f"ur Netzwerktheorie\\[3mm]
344 %und Schaltungstechnik\\[1ex]
346 %Prof.\ Dr.-Ing.\ E.-H.\ Horneber
359 \huge Symbolic Solution of Linear and\\
360 Nonlinear Parameterized Systems of Equations
363 \LARGE Eckhard Hennig
366 \Large Thesis advisor: Dr.-Ing.\ Ralf Sommer\\
[\baselineskip]
367 Braunschweig, August
1994
372 \thispagestyle{empty
}
374 \chapter*
{Statutory declaration
}
375 I hereby certify that I wrote this work myself and that I did not use any tools other than
376 those specified therein.\\
[\baselineskip]
377 Braunschweig, August
30,
1994\\
[\baselineskip]
380 \chapter*
{Translators notes
}
381 \thispagestyle{empty
}
383 This is the translation of the German version of Prof. Eckhard
{\sc Hennig
}'s
\footnote{Eckhard.Hennig@reutlingen-university.de,
\url{
384 www.reutlingen-university.de
}
385 } dissertation of his Solver package documentation.
386 We would like to thank Eckart Hennig for providing us with the original German TeX file and the accompanying pictures.
387 Using this TeX source Wolfgang Lindner translated a first version using the
{\tt solver1-en.html
} by Google Translate. He used TeXShop version
5.22 for macOS
14.2.1 (Sonoma). The flow diagrams were revised with SoftMaker
{\sc TextMaker
}\footnote{There is a free version, see
\url{https://www.freeoffice.com/de/features/freeoffice-textmaker
}}.
388 Dan Stanger revised the whole template to correct the grammar and wording errors and worked on updating the Maxima code.
390 We hope to provide some help to the user of the solver package.
391 The source is to be found at
392 \url{https://sourceforge.net/p/maxima/code/ci/master/tree/share/algebra/solver/
}
397 \noindent Dr. Wolfgang Lindner and Dan Stanger \\
398 Leichlingen, Germany and Newton, Massachusetts, USA
400 \noindent January
2024
407 \chapter*
{Acknowledgments
}
408 \thispagestyle{empty
}
409 Many persons and institutions contributed considerably to the success of this work.
410 I would like to express my thanks to:
413 \item[-
] Richard Petti and Jeffrey P. Golden of Macsyma, Inc. (USA) for their interest in this work,
414 for supplying Macsyma licenses and the modification of the
\verb+LINSOLVE+-function,
415 \item[-
] The Center for Microelectronics of the University of Kaiserslautern, in particular
416 Dr. Peter Conradi and Uwe Wassenm\"uller, for the support of the project,
418 \item[-
] Clemens, Frank and Michael for the first-class WG life and particularly Michael for the
419 temporary leaving of its computer,
420 \item[-
] My parents and grandparents for their constant support during my study,
421 \item[-
] and quite particularly my friend Dr. Ralf Sommer for outstanding co-operation and the
422 joint activities in the last three years.
426 Braunschweig, August
1994
431 \thispagestyle{empty
}
433 Engineering design tasks require frequently the solution of systems of equations, which describe an object mathematically, along the values of the function defining components and parameters. For the analytic solution of lower dimensioning problems the use of commercial computer algebra systems such as Maxima are helpful, which are able, to manipulate extensive equations algebraically and to solve them symbolically using their variables.
435 Despite their high capabilities these systems are however usually already overwhelmed, if linear or weakly nonlinear, parameterized sets of equations are to be solved after only a subset of their variables or be before-processed at least symbolically. In order to be able to treat such sets of equations, typically with draft tasks in the context of this work, a universal symbolic equation solver based on heuristic algorithms was developed and implemented in Maxima. The program module
\verb+SOLVER+ extends the functionality of the Maxima commands
\verb+SOLVE+ and
\verb+LINSOLVE+ for the symbolic solution of algebraic equations or systems of linear equations by the ability for the selective solution of nonlinear, parameterized systems with some degrees of freedom.
437 The first chapter of this work describes some areas of application of symbolic analysis methods, the respective
438 requirements following from them to a symbolic equation solver as well as the used heuristic algorithms for the extraction of linear equations and for the complexity valuation of algebraic functions. The second chapter contains an overview of the structure of the
{\em Solvers
} and guidance to its use. In the appendix is the source text of the module implemented in the internal higher programming language of Maxima,
\verb+SOLVER.MAC+.
440 %\input stabstr.tex %------ is identical with SUMMARY
444 \pagenumbering{roman
}
449 \pagenumbering{arabic
}
450 \chapter[Heuristic algorithms
]{Heuristic algorithms for
451 symbolic solution of systems of equations
}
460 \addcontentsline{toc
}{chapter
}{Bibliography
}
472 \chapter{Program listings
}
481 \thispagestyle{empty
}
485 \parskip\baselineskip
490 {\sc Estragon
} Sometimes I wonder if it wouldn't be better to diverge.
492 {\sc Wladimir
} You wouldn't get far.
495 That would really be a shame
\ldots\ Not true, Didi,
496 That would be a real shame?
\ldots\ If you think about the beauty of the path
497 \ldots\ And about the goodness of the companions
\ldots\ Isn't that right, Didi?
501 %#################################################################### ###end
507 %####################################################################