Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F86412331
dlaswp.f
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sun, Oct 6, 08:29
Size
4 KB
Mime Type
text/html
Expires
Tue, Oct 8, 08:29 (2 d)
Engine
blob
Format
Raw Data
Handle
21372215
Attached To
rLAMMPS lammps
dlaswp.f
View Options
*>
\
brief
\
b
DLASWP
performs
a
series
of
row
interchanges
on
a
general
rectangular
matrix
.
*
*
===========
DOCUMENTATION
===========
*
*
Online
html
documentation
available
at
*
http
:
//
www
.
netlib
.
org
/
lapack
/
explore
-
html
/
*
*>
\
htmlonly
*>
Download
DLASWP
+
dependencies
*>
<
a
href
=
"http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/dlaswp.f"
>
*>
[
TGZ
]
</
a
>
*>
<
a
href
=
"http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/dlaswp.f"
>
*>
[
ZIP
]
</
a
>
*>
<
a
href
=
"http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/dlaswp.f"
>
*>
[
TXT
]
</
a
>
*>
\
endhtmlonly
*
*
Definition
:
*
===========
*
*
SUBROUTINE
DLASWP
(
N
,
A
,
LDA
,
K1
,
K2
,
IPIV
,
INCX
)
*
*
..
Scalar
Arguments
..
*
INTEGER
INCX
,
K1
,
K2
,
LDA
,
N
*
..
*
..
Array
Arguments
..
*
INTEGER
IPIV
(
*
)
*
DOUBLE PRECISION
A
(
LDA
,
*
)
*
..
*
*
*>
\
par
Purpose
:
*
=============
*>
*>
\
verbatim
*>
*>
DLASWP
performs
a
series
of
row
interchanges
on
the
matrix
A
.
*>
One
row
interchange
is
initiated
for
each
of
rows
K1
through
K2
of
A
.
*>
\
endverbatim
*
*
Arguments
:
*
==========
*
*>
\
param
[
in
]
N
*>
\
verbatim
*>
N
is
INTEGER
*>
The
number
of
columns
of
the
matrix
A
.
*>
\
endverbatim
*>
*>
\
param
[
in
,
out
]
A
*>
\
verbatim
*>
A
is
DOUBLE PRECISION
array
,
dimension
(
LDA
,
N
)
*>
On
entry
,
the
matrix
of
column
dimension
N
to
which
the
row
*>
interchanges
will
be
applied
.
*>
On
exit
,
the
permuted
matrix
.
*>
\
endverbatim
*>
*>
\
param
[
in
]
LDA
*>
\
verbatim
*>
LDA
is
INTEGER
*>
The
leading
dimension
of
the
array
A
.
*>
\
endverbatim
*>
*>
\
param
[
in
]
K1
*>
\
verbatim
*>
K1
is
INTEGER
*>
The
first
element
of
IPIV
for
which
a
row
interchange
will
*>
be
done
.
*>
\
endverbatim
*>
*>
\
param
[
in
]
K2
*>
\
verbatim
*>
K2
is
INTEGER
*>
The
last
element
of
IPIV
for
which
a
row
interchange
will
*>
be
done
.
*>
\
endverbatim
*>
*>
\
param
[
in
]
IPIV
*>
\
verbatim
*>
IPIV
is
INTEGER
array
,
dimension
(
K2
*
abs
(
INCX
))
*>
The
vector
of
pivot
indices
.
Only
the
elements
in
positions
*>
K1
through
K2
of
IPIV
are
accessed
.
*>
IPIV
(
K
)
=
L
implies
rows
K
and
L
are
to
be
interchanged
.
*>
\
endverbatim
*>
*>
\
param
[
in
]
INCX
*>
\
verbatim
*>
INCX
is
INTEGER
*>
The
increment
between
successive
values
of
IPIV
.
If
IPIV
*>
is
negative
,
the
pivots
are
applied
in
reverse
order
.
*>
\
endverbatim
*
*
Authors
:
*
========
*
*>
\
author
Univ
.
of
Tennessee
*>
\
author
Univ
.
of
California
Berkeley
*>
\
author
Univ
.
of
Colorado
Denver
*>
\
author
NAG
Ltd
.
*
*>
\
date
September
2012
*
*>
\
ingroup
doubleOTHERauxiliary
*
*>
\
par
Further
Details
:
*
=====================
*>
*>
\
verbatim
*>
*>
Modified
by
*>
R
.
C
.
Whaley
,
Computer
Science
Dept
.
,
Univ
.
of
Tenn
.
,
Knoxville
,
USA
*>
\
endverbatim
*>
*
=====================================================================
SUBROUTINE
DLASWP
(
N
,
A
,
LDA
,
K1
,
K2
,
IPIV
,
INCX
)
*
*
--
LAPACK
auxiliary
routine
(
version
3.4.2
)
--
*
--
LAPACK
is
a
software
package
provided
by
Univ
.
of
Tennessee
,
--
*
--
Univ
.
of
California
Berkeley
,
Univ
.
of
Colorado
Denver
and
NAG
Ltd
..
--
*
September
2012
*
*
..
Scalar
Arguments
..
INTEGER
INCX
,
K1
,
K2
,
LDA
,
N
*
..
*
..
Array
Arguments
..
INTEGER
IPIV
(
*
)
DOUBLE PRECISION
A
(
LDA
,
*
)
*
..
*
*
=====================================================================
*
*
..
Local
Scalars
..
INTEGER
I
,
I1
,
I2
,
INC
,
IP
,
IX
,
IX0
,
J
,
K
,
N32
DOUBLE PRECISION
TEMP
*
..
*
..
Executable
Statements
..
*
*
Interchange
row
I
with
row
IPIV
(
I
)
for
each
of
rows
K1
through
K2
.
*
IF
(
INCX
.GT.
0
)
THEN
IX0
=
K1
I1
=
K1
I2
=
K2
INC
=
1
ELSE IF
(
INCX
.LT.
0
)
THEN
IX0
=
1
+
(
1
-
K2
)
*
INCX
I1
=
K2
I2
=
K1
INC
=
-
1
ELSE
RETURN
END IF
*
N32
=
(
N
/
32
)
*
32
IF
(
N32
.NE.
0
)
THEN
DO
30
J
=
1
,
N32
,
32
IX
=
IX0
DO
20
I
=
I1
,
I2
,
INC
IP
=
IPIV
(
IX
)
IF
(
IP
.NE.
I
)
THEN
DO
10
K
=
J
,
J
+
31
TEMP
=
A
(
I
,
K
)
A
(
I
,
K
)
=
A
(
IP
,
K
)
A
(
IP
,
K
)
=
TEMP
10
CONTINUE
END IF
IX
=
IX
+
INCX
20
CONTINUE
30
CONTINUE
END IF
IF
(
N32
.NE.
N
)
THEN
N32
=
N32
+
1
IX
=
IX0
DO
50
I
=
I1
,
I2
,
INC
IP
=
IPIV
(
IX
)
IF
(
IP
.NE.
I
)
THEN
DO
40
K
=
N32
,
N
TEMP
=
A
(
I
,
K
)
A
(
I
,
K
)
=
A
(
IP
,
K
)
A
(
IP
,
K
)
=
TEMP
40
CONTINUE
END IF
IX
=
IX
+
INCX
50
CONTINUE
END IF
*
RETURN
*
*
End
of
DLASWP
*
END
Event Timeline
Log In to Comment