File: node66.html

package info (click to toggle)
scalapack-doc 1.5-11
  • links: PTS
  • area: main
  • in suites: bullseye, buster, stretch
  • size: 10,336 kB
  • ctags: 4,931
  • sloc: makefile: 47; sh: 18
file content (85 lines) | stat: -rw-r--r-- 6,492 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds -->
<HTML>
<HEAD>
<TITLE>Orthogonal or Unitary Matrices</TITLE>
<META NAME="description" CONTENT="Orthogonal or Unitary Matrices">
<META NAME="keywords" CONTENT="slug">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<LINK REL=STYLESHEET HREF="slug.css">
</HEAD>
<BODY LANG="EN" >
 <A NAME="tex2html2974" HREF="node67.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="http://www.netlib.org/utk/icons/next_motif.gif"></A> <A NAME="tex2html2972" HREF="node38.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="http://www.netlib.org/utk/icons/up_motif.gif"></A> <A NAME="tex2html2966" HREF="node65.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="http://www.netlib.org/utk/icons/previous_motif.gif"></A> <A NAME="tex2html2976" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="http://www.netlib.org/utk/icons/contents_motif.gif"></A> <A NAME="tex2html2977" HREF="node190.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="http://www.netlib.org/utk/icons/index_motif.gif"></A> <BR>
<B> Next:</B> <A NAME="tex2html2975" HREF="node67.html">Algorithmic Differences between LAPACK </A>
<B>Up:</B> <A NAME="tex2html2973" HREF="node38.html">Contents of ScaLAPACK</A>
<B> Previous:</B> <A NAME="tex2html2967" HREF="node65.html">Generalized Symmetric Definite Eigenproblems</A>
<BR> <P>
<H1><A NAME="SECTION04340000000000000000">Orthogonal or Unitary Matrices</A></H1>
<A NAME="secorthog">&#160;</A>
<P>
A real orthogonal or complex unitary matrix (usually denoted <I>Q</I>) is often 
represented<A NAME="2189">&#160;</A> in
ScaLAPACK as a product of <B>elementary reflectors</B> -- also referred to as
<A NAME="2191">&#160;</A>
<A NAME="2192">&#160;</A>
<B>elementary Householder matrices</B> (usually denoted <IMG WIDTH=18 HEIGHT=25 ALIGN=MIDDLE ALT="tex2html_wrap_inline14421" SRC="img231.gif">). For example,
<BR><IMG WIDTH=316 HEIGHT=16 ALIGN=BOTTOM ALT="displaymath14415" SRC="img232.gif"><BR>
Most users need not be aware
of the details, because ScaLAPACK routines are provided to work with this
representation:
<P>
<UL>
<LI> routines whose names begin PSORG- (real) or PCUNG- (complex) can generate
all or part of <I>Q</I> explicitly;
<LI> routines whose name begin PSORM- (real) or PCUNM- (complex) can multiply
a given matrix by <I>Q</I> or <IMG WIDTH=25 HEIGHT=31 ALIGN=MIDDLE ALT="tex2html_wrap_inline13302" SRC="img124.gif"> without forming <I>Q</I> explicitly.
<P>
</UL>
<P>
The following details may occasionally be useful.
<P>
An elementary reflector (or elementary Householder matrix) <I>H</I> of order
<I>n</I> is a
unitary matrix<A NAME="2201">&#160;</A> of the form
<A NAME="2202">&#160;</A>
<A NAME="2203">&#160;</A>
<BR><A NAME="Hdef">&#160;</A><IMG WIDTH=500 HEIGHT=20 ALIGN=BOTTOM ALT="equation2204" SRC="img233.gif"><BR>
where <IMG WIDTH=9 HEIGHT=8 ALIGN=BOTTOM ALT="tex2html_wrap_inline14435" SRC="img234.gif"> is a scalar and <I>v</I> is an <I>n</I>-vector, with
<IMG WIDTH=129 HEIGHT=31 ALIGN=MIDDLE ALT="tex2html_wrap_inline14441" SRC="img235.gif">);  <I>v</I> is often referred to
as the <B>Householder vector.</B><A NAME="2210">&#160;</A> 
Often <I>v</I> has several leading or trailing zero elements, but for the
purpose of this discussion assume that <I>H</I> has no such special structure.
<P>
Some redundancy in the representation (<A HREF="node66.html#Hdef">3.4</A>) exists, which can be 
removed in
various ways. Like LAPACK, the representation used in ScaLAPACK (which 
differs from
that used in LINPACK or EISPACK) sets <IMG WIDTH=46 HEIGHT=25 ALIGN=MIDDLE ALT="tex2html_wrap_inline14449" SRC="img236.gif">; hence <IMG WIDTH=14 HEIGHT=17 ALIGN=MIDDLE ALT="tex2html_wrap_inline14451" SRC="img237.gif"> need not
be stored. In real arithmetic, <IMG WIDTH=72 HEIGHT=25 ALIGN=MIDDLE ALT="tex2html_wrap_inline14453" SRC="img238.gif">, except that
<IMG WIDTH=41 HEIGHT=13 ALIGN=BOTTOM ALT="tex2html_wrap_inline14455" SRC="img239.gif"> implies <I>H</I> = <I>I</I>.
<P>
In complex arithmetic<A NAME="2212">&#160;</A>, <IMG WIDTH=9 HEIGHT=8 ALIGN=BOTTOM ALT="tex2html_wrap_inline14435" SRC="img234.gif"> may be 
complex and satisfies
<IMG WIDTH=106 HEIGHT=26 ALIGN=MIDDLE ALT="tex2html_wrap_inline14461" SRC="img240.gif"> and <IMG WIDTH=77 HEIGHT=27 ALIGN=MIDDLE ALT="tex2html_wrap_inline14463" SRC="img241.gif">.
Thus a complex <I>H</I> is
not Hermitian (as it is in other representations), but it is unitary,
which is the important property. The advantage of allowing <IMG WIDTH=9 HEIGHT=8 ALIGN=BOTTOM ALT="tex2html_wrap_inline14435" SRC="img234.gif"> to be
complex is that, given an arbitrary complex vector <I>x</I>, <I>H</I> can be computed
so that <BR><IMG WIDTH=334 HEIGHT=21 ALIGN=BOTTOM ALT="displaymath14416" SRC="img242.gif"><BR>
with <I>real</I> <IMG WIDTH=11 HEIGHT=25 ALIGN=MIDDLE ALT="tex2html_wrap_inline14473" SRC="img243.gif">. This is useful, for example,
when reducing a complex Hermitian matrix to real symmetric tridiagonal form<A NAME="2215">&#160;</A>
or a complex rectangular matrix to real bidiagonal form<A NAME="2216">&#160;</A>.
<P>
For further details, see Lehoucq&nbsp;[<A HREF="node189.html#lawn72">94</A>].
<P>
<HR><A NAME="tex2html2974" HREF="node67.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="http://www.netlib.org/utk/icons/next_motif.gif"></A> <A NAME="tex2html2972" HREF="node38.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="http://www.netlib.org/utk/icons/up_motif.gif"></A> <A NAME="tex2html2966" HREF="node65.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="http://www.netlib.org/utk/icons/previous_motif.gif"></A> <A NAME="tex2html2976" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="http://www.netlib.org/utk/icons/contents_motif.gif"></A> <A NAME="tex2html2977" HREF="node190.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="http://www.netlib.org/utk/icons/index_motif.gif"></A> <BR>
<B> Next:</B> <A NAME="tex2html2975" HREF="node67.html">Algorithmic Differences between LAPACK </A>
<B>Up:</B> <A NAME="tex2html2973" HREF="node38.html">Contents of ScaLAPACK</A>
<B> Previous:</B> <A NAME="tex2html2967" HREF="node65.html">Generalized Symmetric Definite Eigenproblems</A>
<P><ADDRESS>
<I>Susan Blackford <BR>
Tue May 13 09:21:01 EDT 1997</I>
</ADDRESS>
</BODY>
</HTML>