OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
mpi.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine mpi_bsend (buf, cnt, datatype, dest, tag, comm, ierr)
subroutine mpi_buffer_attach (buf, cnt, ierr)
subroutine mpi_buffer_detach (buf, cnt, ierr)
subroutine mpi_gather (sendbuf, cnt, datatype, recvbuf, reccnt, rectype, root, comm, ierr)
subroutine mpi_gatherv (sendbuf, cnt, datatype, recvbuf, reccnt, displs, rectype, root, comm, ierr)
subroutine mpi_allreduce (sendbuf, recvbuf, cnt, datatype, operation, comm, ierr)
subroutine mpi_reduce (sendbuf, recvbuf, cnt, datatype, op, root, comm, ierr)
subroutine mpi_reduce_scatter (sendbuf, recvbuf, rcvcnt, datatype, op, comm, ierr)
subroutine mpi_abort (comm, ierrcode, ierr)
subroutine mpi_alltoall (sendbuf, sendcnt, sendtype, recvbuf, recvcnt, recvtype, comm, ierr)
subroutine mpi_attr_put (comm, key, val, ierr)
subroutine mpi_barrier (comm, ierr)
subroutine mpi_get_processor_name (name, resultlen, ierror)
subroutine mpi_bcast (buffer, cnt, datatype, root, comm, ierr)
subroutine mpi_cancel (ireq, ierr)
subroutine mpi_comm_create (comm, group, comm2, ierr)
subroutine mpi_comm_dup (comm, comm2, ierr)
subroutine mpi_comm_free (comm, ierr)
subroutine mpi_comm_group (comm, group, ierr)
subroutine mpi_comm_rank (comm, rank, ierr)
subroutine mpi_comm_size (comm, size, ierr)
subroutine mpi_comm_split (comm, color, key, comm2, ierr)
subroutine mpi_finalize (ierr)
subroutine mpi_get_count (status, datatype, cnt, ierr)
subroutine mpi_group_free (group, ierr)
subroutine mpi_group_range_excl (group, n, ranges, group2, ierr)
subroutine mpi_group_size (group, size, ierr)
subroutine mpi_init_thread (mpi_thread_req, thread_support, ierr)
subroutine mpi_init (ierr)
subroutine mpi_initialized (flag, ierr)
subroutine mpi_iprobe (source, tag, comm, flag, status, ierr)
subroutine mpi_irecv (buf, cnt, datatype, source, tag, comm, ireq, ierr)
subroutine mpi_isend (buf, cnt, datatype, dest, tag, comm, ireq, ierr)
subroutine mpi_type_commit (newtyp, ierr_mpi)
subroutine mpi_type_free (newtyp, ierr_mpi)
subroutine mpi_type_contiguous (length, datatype, newtype, ierr_mpi)
subroutine mpi_op_create (func, commute, op, ierr)
subroutine mpi_op_free (op, ierr)
subroutine mpi_pack (inbuf, incnt, datatype, outbuf, outcnt, position, comm, ierr)
subroutine mpi_pack_size (incnt, datatype, comm, size, ierr)
subroutine mpi_probe (source, tag, comm, status, ierr)
subroutine mpi_recv (buf, cnt, datatype, source, tag, comm, status, ierr)
subroutine mpi_request_free (ireq, ierr)
subroutine mpi_send (buf, cnt, datatype, dest, tag, comm, ierr)
subroutine mpi_ssend (buf, cnt, datatype, dest, tag, comm, ierr)
subroutine mpi_test (ireq, flag, status, ierr)
subroutine mpi_unpack (inbuf, insize, position, outbuf, outcnt, datatype, comm, ierr)
subroutine mpi_wait (ireq, status, ierr)
subroutine mpi_waitall (cnt, array_of_requests, status, ierr)
subroutine mpi_waitany (cnt, array_of_requests, index, status, ierr)
double precision function mpi_wtime ()
subroutine mumps_copy (cnt, sendbuf, recvbuf, datatype, ierr)
subroutine mumps_copy_integer (s, r, n)
subroutine mumps_copy_integer8 (s, r, n)
subroutine mumps_copy_logical (s, r, n)
subroutine mumps_copy_2integer (s, r, n)
subroutine mumps_copy_real (s, r, n)
subroutine mumps_copy_2double_precision (s, r, n)
subroutine mumps_copy_double_precision (s, r, n)
subroutine mumps_copy_complex (s, r, n)
subroutine mumps_copy_double_complex (s, r, n)
logical function mumps_is_in_place (sendbuf, cnt)
subroutine blacs_gridinit (cntxt, c, nprow, npcol)
subroutine blacs_gridinfo (cntxt, nprow, npcol, myrow, mycol)
subroutine blacs_gridexit (cntxt)
subroutine descinit (desc, m, n, mb, nb, irsrc, icsrc, ictxt, lld, info)
integer function numroc (n, nb, iproc, isrcproc, nprocs)
subroutine pcpotrf (uplo, n, a, ia, ja, desca, info)
subroutine pcgetrf (m, n, a, ia, ja, desca, ipiv, info)
subroutine pctrtrs (uplo, trans, diag, n, nrhs, a, ia, ja, desca, b, ib, jb, descb, info)
subroutine pzpotrf (uplo, n, a, ia, ja, desca, info)
subroutine pzgetrf (m, n, a, ia, ja, desca, ipiv, info)
subroutine pztrtrs (uplo, trans, diag, n, nrhs, a, ia, ja, desca, b, ib, jb, descb, info)
subroutine pspotrf (uplo, n, a, ia, ja, desca, info)
subroutine psgetrf (m, n, a, ia, ja, desca, ipiv, info)
subroutine pstrtrs (uplo, trans, diag, n, nrhs, a, ia, ja, desca, b, ib, jb, descb, info)
subroutine pdpotrf (uplo, n, a, ia, ja, desca, info)
subroutine pdgetrf (m, n, a, ia, ja, desca, ipiv, info)
subroutine pdtrtrs (uplo, trans, diag, n, nrhs, a, ia, ja, desca, b, ib, jb, descb, info)
subroutine infog2l (grindx, gcindx, desc, nprow, npcol, myrow, mycol, lrindx, lcindx, rsrc, csrc)
integer function indxg2p (indxglob, nb, iproc, isrcproc, nprocs)
subroutine pcscal (n, alpha, x, ix, jx, descx, incx)
subroutine pzscal (n, alpha, x, ix, jx, descx, incx)
subroutine pdscal (n, alpha, x, ix, jx, descx, incx)
subroutine psscal (n, alpha, x, ix, jx, descx, incx)
subroutine pzdot (n, dot, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
subroutine pcdot (n, dot, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
subroutine pddot (n, dot, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
subroutine psdot (n, dot, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
subroutine zgebs2d (contxt, scope, top, m, n, a, lda)
subroutine cgebs2d (contxt, scope, top, m, n, a, lda)
subroutine sgebs2d (contxt, scope, top, m, n, a, lda)
subroutine dgebs2d (contxt, scope, top, m, n, a, lda)
subroutine zgebr2d (contxt, scope, top, m, n, a, lda)
subroutine cgebr2d (contxt, scope, top, m, n, a, lda)
subroutine sgebr2d (contxt, scope, top, m, n, a, lda)
subroutine dgebr2d (contxt, scope, top, m, n, a, lda)
subroutine pcgetrs (trans, n, nrhs, a, ia, ja, desca, ipiv, b, ib, jb, descb, info)
subroutine pzgetrs (trans, n, nrhs, a, ia, ja, desca, ipiv, b, ib, jb, descb, info)
subroutine psgetrs (trans, n, nrhs, a, ia, ja, desca, ipiv, b, ib, jb, descb, info)
subroutine pdgetrs (trans, n, nrhs, a, ia, ja, desca, ipiv, b, ib, jb, descb, info)
subroutine pcpotrs (uplo, n, nrhs, a, ia, ja, desca, b, ib, jb, descb, info)
subroutine pzpotrs (uplo, n, nrhs, a, ia, ja, desca, b, ib, jb, descb, info)
subroutine pspotrs (uplo, n, nrhs, a, ia, ja, desca, b, ib, jb, descb, info)
subroutine pdpotrs (uplo, n, nrhs, a, ia, ja, desca, b, ib, jb, descb, info)
subroutine pscnrm2 (n, norm2, x, ix, jx, descx, incx)
subroutine pdznrm2 (n, norm2, x, ix, jx, descx, incx)
subroutine psnrm2 (n, norm2, x, ix, jx, descx, incx)
subroutine pdnrm2 (n, norm2, x, ix, jx, descx, incx)
real function pclange (norm, m, n, a, ia, ja, desca, work)
double precision function pzlange (norm, m, n, a, ia, ja, desca, work)
real function pslange (norm, m, n, a, ia, ja, desca, work)
double precision function pdlange (norm, m, n, a, ia, ja, desca, work)
subroutine pcgecon (norm, n, a, ia, ja, desca, anorm, rcond, work, lwork, iwork, liwork, info)
subroutine pzgecon (norm, n, a, ia, ja, desca, anorm, rcond, work, lwork, iwork, liwork, info)
subroutine psgecon (norm, n, a, ia, ja, desca, anorm, rcond, work, lwork, iwork, liwork, info)
subroutine pdgecon (norm, n, a, ia, ja, desca, anorm, rcond, work, lwork, iwork, liwork, info)
subroutine pcgeqpf (m, n, a, ia, ja, desca, ipiv, tau, work, lwork, info)
subroutine pzgeqpf (m, n, a, ia, ja, desca, ipiv, tau, work, lwork, info)
subroutine psgeqpf (m, n, a, ia, ja, desca, ipiv, tau, work, lwork, info)
subroutine pdgeqpf (m, n, a, ia, ja, desca, ipiv, tau, work, lwork, info)
subroutine pcaxpy (n, a, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
subroutine pzaxpy (n, a, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
subroutine psaxpy (n, a, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
subroutine pdaxpy (n, a, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
subroutine pctrsm (side, uplo, transa, diag, m, n, alpha, a, ia, ja, desca, b, ib, jb, descb)
subroutine pztrsm (side, uplo, transa, diag, m, n, alpha, a, ia, ja, desca, b, ib, jb, descb)
subroutine pstrsm (side, uplo, transa, diag, m, n, alpha, a, ia, ja, desca, b, ib, jb, descb)
subroutine pdtrsm (side, uplo, transa, diag, m, n, alpha, a, ia, ja, desca, b, ib, jb, descb)
subroutine pcunmqr (side, trans, m, n, k, a, ia, ja, desca, tau, c, ic, jc, descc, work, lwork, info)
subroutine pzunmqr (side, trans, m, n, k, a, ia, ja, desca, tau, c, ic, jc, descc, work, lwork, info)
subroutine psormqr (side, trans, m, n, k, a, ia, ja, desca, tau, c, ic, jc, descc, work, lwork, info)
subroutine pdormqr (side, trans, m, n, k, a, ia, ja, desca, tau, c, ic, jc, descc, work, lwork, info)
subroutine chk1mat (ma, mapos0, na, napos0, ia, ja, desca, descapos0, info)
subroutine pchk2mat (ma, mapos0, na, napos0, ia, ja, desca, descapos0, mb, mbpos0, nb, nbpos0, ib, jb, descb, descbpos0, nextra, ex, expos, info)
subroutine pxerbla (contxt, srname, info)
subroutine descset (desc, m, n, mb, nb, irsrc, icsrc, ictxt, lld)

Function/Subroutine Documentation

◆ blacs_gridexit()

subroutine blacs_gridexit ( integer cntxt)

Definition at line 761 of file mpi.f.

762 IMPLICIT NONE
763 INTEGER CNTXT
764 WRITE(*,*) 'Error. BLACS_GRIDEXIT should not be called.'
765 stop
766 RETURN

◆ blacs_gridinfo()

subroutine blacs_gridinfo ( integer cntxt,
integer nprow,
integer npcol,
integer myrow,
integer mycol )

Definition at line 753 of file mpi.f.

754 IMPLICIT NONE
755 INTEGER CNTXT, NPROW, NPCOL, MYROW, MYCOL
756 WRITE(*,*) 'Error. BLACS_GRIDINFO should not be called.'
757 stop
758 RETURN

◆ blacs_gridinit()

subroutine blacs_gridinit ( integer cntxt,
character c,
integer nprow,
integer npcol )

Definition at line 744 of file mpi.f.

745 IMPLICIT NONE
746 INTEGER CNTXT, NPROW, NPCOL
747 CHARACTER C
748 WRITE(*,*) 'Error. BLACS_GRIDINIT should not be called.'
749 stop
750 RETURN

◆ cgebr2d()

subroutine cgebr2d ( integer contxt,
character scope,
character top,
integer m,
integer n,
complex, dimension(*) a,
integer lda )

Definition at line 1102 of file mpi.f.

1103 IMPLICIT NONE
1104 INTEGER CONTXT, M, N, LDA
1105 COMPLEX A(*)
1106 CHARACTER SCOPE, TOP
1107 WRITE(*,*) 'Error. CGEBR2D should not be called.'
1108 stop
1109 RETURN

◆ cgebs2d()

subroutine cgebs2d ( integer contxt,
character scope,
character top,
integer m,
integer n,
complex, dimension(*) a,
integer lda )

Definition at line 1061 of file mpi.f.

1062 IMPLICIT NONE
1063 INTEGER CONTXT, M, N, LDA
1064 COMPLEX A(*)
1065 CHARACTER SCOPE, TOP
1066 WRITE(*,*) 'Error. CGEBS2D should not be called.'
1067 stop
1068 RETURN

◆ chk1mat()

subroutine chk1mat ( integer ma,
integer mapos0,
integer na,
integer napos0,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer descapos0,
integer info )

Definition at line 1575 of file mpi.f.

1577 IMPLICIT NONE
1578 INTEGER DESCAPOS0, IA, INFO, JA, MA, MAPOS0, NA, NAPOS0
1579 INTEGER DESCA( * )
1580 WRITE(*,*) 'Error. CHK1MAT should not be called.'
1581 stop
1582 RETURN

◆ descinit()

subroutine descinit ( integer, dimension( * ) desc,
integer m,
integer n,
integer mb,
integer nb,
integer irsrc,
integer icsrc,
integer ictxt,
integer lld,
integer info )

Definition at line 775 of file mpi.f.

777 IMPLICIT NONE
778 INTEGER ICSRC, ICTXT, INFO, IRSRC, LLD, M, MB, N, NB
779 INTEGER DESC( * )
780 WRITE(*,*) 'Error. DESCINIT should not be called.'
781 stop
782 RETURN

◆ descset()

subroutine descset ( integer, dimension( * ) desc,
integer m,
integer n,
integer mb,
integer nb,
integer irsrc,
integer icsrc,
integer ictxt,
integer lld )

Definition at line 1608 of file mpi.f.

1610 IMPLICIT NONE
1611 INTEGER ICSRC, ICTXT, IRSRC, LLD, M, MB, N, NB
1612 INTEGER DESC( * )
1613 WRITE(*,*) 'Error. DESCSET should not be called.'
1614 stop
1615 RETURN

◆ dgebr2d()

subroutine dgebr2d ( integer contxt,
character scope,
character top,
integer m,
integer n,
double precision, dimension(*) a,
integer lda )

Definition at line 1122 of file mpi.f.

1123 IMPLICIT NONE
1124 INTEGER CONTXT, M, N, LDA
1125 DOUBLE PRECISION A(*)
1126 CHARACTER SCOPE, TOP
1127 WRITE(*,*) 'Error. DGEBR2D should not be called.'
1128 stop
1129 RETURN

◆ dgebs2d()

subroutine dgebs2d ( integer contxt,
character scope,
character top,
integer m,
integer n,
double precision, dimension(*) a,
integer lda )

Definition at line 1081 of file mpi.f.

1082 IMPLICIT NONE
1083 INTEGER CONTXT, M, N, LDA
1084 DOUBLE PRECISION A(*)
1085 CHARACTER SCOPE, TOP
1086 WRITE(*,*) 'Error. DGEBS2D should not be called.'
1087 stop
1088 RETURN

◆ indxg2p()

integer function indxg2p ( integer indxglob,
integer nb,
integer iproc,
integer isrcproc,
integer nprocs )

Definition at line 946 of file mpi.f.

947 INTEGER INDXGLOB, IPROC, ISRCPROC, NB, NPROCS
948 indxg2p = 0
949 WRITE(*,*) 'Error. INFOG2L should not be called.'
950 stop
951 RETURN
integer function indxg2p(indxglob, nb, iproc, isrcproc, nprocs)
Definition mpi.f:947

◆ infog2l()

subroutine infog2l ( integer grindx,
integer gcindx,
integer, dimension( * ) desc,
integer nprow,
integer npcol,
integer myrow,
integer mycol,
integer lrindx,
integer lcindx,
integer rsrc,
integer csrc )

Definition at line 935 of file mpi.f.

937 IMPLICIT NONE
938 INTEGER CSRC, GCINDX, GRINDX, LRINDX, LCINDX, MYCOL,
939 & MYROW, NPCOL, NPROW, RSRC
940 INTEGER DESC( * )
941 WRITE(*,*) 'Error. INFOG2L should not be called.'
942 stop
943 RETURN

◆ mpi_abort()

subroutine mpi_abort ( integer comm,
integer ierrcode,
integer ierr )

Definition at line 152 of file mpi.f.

153 IMPLICIT NONE
154 INTEGER COMM, IERRCODE, IERR
155 WRITE(*,*) "** MPI_ABORT called"
156 stop

◆ mpi_allreduce()

subroutine mpi_allreduce ( integer, dimension(*) sendbuf,
integer, dimension(*) recvbuf,
integer cnt,
integer datatype,
integer operation,
integer comm,
integer ierr )

Definition at line 101 of file mpi.f.

103 IMPLICIT NONE
104 INTEGER CNT, DATATYPE, OPERATION, COMM, IERR
105 INTEGER SENDBUF(*), RECVBUF(*)
106 LOGICAL, EXTERNAL :: MUMPS_IS_IN_PLACE
107 IF (.NOT. mumps_is_in_place(sendbuf, cnt)) THEN
108 CALL mumps_copy( cnt, sendbuf, recvbuf, datatype, ierr )
109 IF ( ierr .NE. 0 ) THEN
110 WRITE(*,*) 'ERROR in MPI_ALLREDUCE, DATATYPE=',datatype
111 stop
112 END IF
113 ENDIF
114 ierr = 0
115 RETURN
subroutine mumps_copy(cnt, sendbuf, recvbuf, datatype, ierr)
Definition mpi.f:578
logical function mumps_is_in_place(sendbuf, cnt)
Definition mpi.f:701

◆ mpi_alltoall()

subroutine mpi_alltoall ( integer, dimension(*) sendbuf,
integer sendcnt,
integer sendtype,
integer, dimension(*) recvbuf,
integer recvcnt,
integer recvtype,
integer comm,
integer ierr )

Definition at line 159 of file mpi.f.

161 IMPLICIT NONE
162 INTEGER SENDCNT, SENDTYPE, RECVCNT, RECVTYPE, COMM, IERR
163 INTEGER SENDBUF(*), RECVBUF(*)
164 IF ( recvcnt .NE. sendcnt ) THEN
165 WRITE(*,*) 'ERROR in MPI_ALLTOALL, RECVCNT != SENDCNT'
166 stop
167 ELSE IF ( recvtype .NE. sendtype ) THEN
168 WRITE(*,*) 'ERROR in MPI_ALLTOALL, RECVTYPE != SENDTYPE'
169 stop
170 ELSE
171 CALL mumps_copy( sendcnt, sendbuf, recvbuf, sendtype, ierr )
172 IF ( ierr .NE. 0 ) THEN
173 WRITE(*,*) 'ERROR in MPI_ALLTOALL, SENDTYPE=',sendtype
174 stop
175 END IF
176 END IF
177 ierr = 0
178 RETURN

◆ mpi_attr_put()

subroutine mpi_attr_put ( integer comm,
integer key,
integer val,
integer ierr )

Definition at line 181 of file mpi.f.

182 IMPLICIT NONE
183 INTEGER COMM, KEY, VAL, IERR
184 RETURN

◆ mpi_barrier()

subroutine mpi_barrier ( integer comm,
integer ierr )

Definition at line 187 of file mpi.f.

188 IMPLICIT NONE
189 include 'mpif.h'
190 INTEGER COMM, IERR
191 ierr = 0
192 RETURN

◆ mpi_bcast()

subroutine mpi_bcast ( integer, dimension( * ) buffer,
integer cnt,
integer datatype,
integer root,
integer comm,
integer ierr )

Definition at line 204 of file mpi.f.

205 IMPLICIT NONE
206 include 'mpif.h'
207 INTEGER CNT, DATATYPE, ROOT, COMM, IERR
208 INTEGER BUFFER( * )
209 ierr = 0
210 RETURN

◆ mpi_bsend()

subroutine mpi_bsend ( integer, dimension(*) buf,
integer cnt,
integer datatype,
integer dest,
integer tag,
integer comm,
integer ierr )

Definition at line 24 of file mpi.f.

26 IMPLICIT NONE
27 include 'mpif.h'
28 INTEGER CNT, DATATYPE, DEST, TAG, COMM, IERR
29 INTEGER BUF(*)
30 WRITE(*,*) 'Error. MPI_BSEND should not be called.'
31 stop
32 ierr = 0
33 RETURN

◆ mpi_buffer_attach()

subroutine mpi_buffer_attach ( integer, dimension(*) buf,
integer cnt,
integer ierr )

Definition at line 36 of file mpi.f.

37 IMPLICIT NONE
38 include 'mpif.h'
39 INTEGER CNT, IERR
40 INTEGER BUF(*)
41 ierr = 0
42 RETURN

◆ mpi_buffer_detach()

subroutine mpi_buffer_detach ( integer, dimension(*) buf,
integer cnt,
integer ierr )

Definition at line 45 of file mpi.f.

46 IMPLICIT NONE
47 include 'mpif.h'
48 INTEGER CNT, IERR
49 INTEGER BUF(*)
50 ierr = 0
51 RETURN

◆ mpi_cancel()

subroutine mpi_cancel ( integer ireq,
integer ierr )

Definition at line 213 of file mpi.f.

214 IMPLICIT NONE
215 include 'mpif.h'
216 INTEGER IREQ, IERR
217 ierr = 0
218 RETURN

◆ mpi_comm_create()

subroutine mpi_comm_create ( integer comm,
integer group,
integer comm2,
integer ierr )

Definition at line 221 of file mpi.f.

222 IMPLICIT NONE
223 include 'mpif.h'
224 INTEGER COMM, GROUP, COMM2, IERR
225 ierr = 0
226 RETURN

◆ mpi_comm_dup()

subroutine mpi_comm_dup ( integer comm,
integer comm2,
integer ierr )

Definition at line 229 of file mpi.f.

230 IMPLICIT NONE
231 include 'mpif.h'
232 INTEGER COMM, COMM2, IERR
233 ierr = 0
234 RETURN

◆ mpi_comm_free()

subroutine mpi_comm_free ( integer comm,
integer ierr )

Definition at line 237 of file mpi.f.

238 IMPLICIT NONE
239 include 'mpif.h'
240 INTEGER COMM, IERR
241 ierr = 0
242 RETURN

◆ mpi_comm_group()

subroutine mpi_comm_group ( integer comm,
integer group,
integer ierr )

Definition at line 245 of file mpi.f.

246 IMPLICIT NONE
247 include 'mpif.h'
248 INTEGER COMM, GROUP, IERR
249 ierr = 0
250 RETURN

◆ mpi_comm_rank()

subroutine mpi_comm_rank ( integer comm,
integer rank,
integer ierr )

Definition at line 253 of file mpi.f.

254 IMPLICIT NONE
255 include 'mpif.h'
256 INTEGER COMM, RANK, IERR
257 rank = 0
258 ierr = 0
259 RETURN

◆ mpi_comm_size()

subroutine mpi_comm_size ( integer comm,
integer size,
integer ierr )

Definition at line 262 of file mpi.f.

263 IMPLICIT NONE
264 include 'mpif.h'
265 INTEGER COMM, SIZE, IERR
266 SIZE = 1
267 ierr = 0
268 RETURN

◆ mpi_comm_split()

subroutine mpi_comm_split ( integer comm,
integer color,
integer key,
integer comm2,
integer ierr )

Definition at line 271 of file mpi.f.

272 IMPLICIT NONE
273 include 'mpif.h'
274 INTEGER COMM, COLOR, KEY, COMM2, IERR
275 ierr = 0
276 RETURN

◆ mpi_finalize()

subroutine mpi_finalize ( integer ierr)

Definition at line 287 of file mpi.f.

288 IMPLICIT NONE
289 include 'mpif.h'
290 INTEGER IERR
291 ierr = 0
292 RETURN

◆ mpi_gather()

subroutine mpi_gather ( integer, dimension(*) sendbuf,
integer cnt,
integer datatype,
integer, dimension(*) recvbuf,
integer reccnt,
integer rectype,
integer root,
integer comm,
integer ierr )

Definition at line 53 of file mpi.f.

56 IMPLICIT NONE
57 INTEGER CNT, DATATYPE, RECCNT, RECTYPE, ROOT, COMM, IERR
58 INTEGER SENDBUF(*), RECVBUF(*)
59 IF ( reccnt .NE. cnt ) THEN
60 WRITE(*,*) 'ERROR in MPI_GATHER, RECCNT != CNT'
61 stop
62 ELSE
63 CALL mumps_copy( cnt, sendbuf, recvbuf, datatype, ierr )
64 IF ( ierr .NE. 0 ) THEN
65 WRITE(*,*) 'ERROR in MPI_GATHER, DATATYPE=',datatype
66 stop
67 END IF
68 END IF
69 ierr = 0
70 RETURN

◆ mpi_gatherv()

subroutine mpi_gatherv ( integer, dimension(*) sendbuf,
integer cnt,
integer datatype,
integer, dimension(*) recvbuf,
integer, dimension(1) reccnt,
integer, dimension(*) displs,
integer rectype,
integer root,
integer comm,
integer ierr )

Definition at line 73 of file mpi.f.

76 IMPLICIT NONE
77 INTEGER CNT, DATATYPE, RECTYPE, ROOT, COMM, IERR
78 INTEGER RECCNT(1)
79 INTEGER SENDBUF(*), RECVBUF(*)
80 INTEGER DISPLS(*)
81C
82C Note that DISPLS is ignored in this version. One may
83C want to copy in reception buffer with a shift DISPLS(1).
84C This requires passing the offset DISPLS(1) to
85C "MUMPS_COPY_DATATYPE" routines.
86C
87 IF ( reccnt(1) .NE. cnt ) THEN
88 WRITE(*,*) 'ERROR in MPI_GATHERV, RECCNT(1) != CNT'
89 stop
90 ELSE
91 CALL mumps_copy( cnt, sendbuf, recvbuf, datatype, ierr )
92 IF ( ierr .NE. 0 ) THEN
93 WRITE(*,*) 'ERROR in MPI_GATHERV, DATATYPE=',datatype
94 stop
95 END IF
96 END IF
97 ierr = 0
98 RETURN

◆ mpi_get_count()

subroutine mpi_get_count ( integer, dimension( mpi_status_size ) status,
integer datatype,
integer cnt,
integer ierr )

Definition at line 295 of file mpi.f.

296 IMPLICIT NONE
297 include 'mpif.h'
298 INTEGER DATATYPE, CNT, IERR
299 INTEGER STATUS( MPI_STATUS_SIZE )
300 WRITE(*,*) 'Error. MPI_GET_CNT should not be called.'
301 stop
302 ierr = 0
303 RETURN

◆ mpi_get_processor_name()

subroutine mpi_get_processor_name ( character (len=*) name,
integer resultlen,
integer ierror )

Definition at line 195 of file mpi.f.

196 CHARACTER (LEN=*) NAME
197 INTEGER RESULTLEN,IERROR
198 resultlen = 1
199 ierror = 0
200 name = 'X'
201 RETURN

◆ mpi_group_free()

subroutine mpi_group_free ( integer group,
integer ierr )

Definition at line 306 of file mpi.f.

307 IMPLICIT NONE
308 include 'mpif.h'
309 INTEGER GROUP, IERR
310 ierr = 0
311 RETURN

◆ mpi_group_range_excl()

subroutine mpi_group_range_excl ( integer group,
integer n,
integer, dimension(*) ranges,
integer group2,
integer ierr )

Definition at line 314 of file mpi.f.

315 IMPLICIT NONE
316 include 'mpif.h'
317 INTEGER GROUP, N, GROUP2, IERR
318 INTEGER RANGES(*)
319 ierr = 0
320 RETURN

◆ mpi_group_size()

subroutine mpi_group_size ( integer group,
integer size,
integer ierr )

Definition at line 323 of file mpi.f.

324 IMPLICIT NONE
325 include 'mpif.h'
326 INTEGER GROUP, SIZE, IERR
327 SIZE = 1 ! Or should it be zero ?
328 ierr = 0
329 RETURN

◆ mpi_init()

subroutine mpi_init ( integer ierr)

Definition at line 341 of file mpi.f.

342 IMPLICIT NONE
343 include 'mpif.h'
344 INTEGER IERR
345 ierr = 0
346 RETURN

◆ mpi_init_thread()

subroutine mpi_init_thread ( integer mpi_thread_req,
integer thread_support,
integer ierr )

Definition at line 332 of file mpi.f.

333 IMPLICIT NONE
334 include 'mpif.h'
335 INTEGER IERR, MPI_THREAD_REQ, THREAD_SUPPORT
336 ierr = 0
337 thread_support=mpi_thread_req
338 RETURN

◆ mpi_initialized()

subroutine mpi_initialized ( logical flag,
integer ierr )

Definition at line 349 of file mpi.f.

350 IMPLICIT NONE
351 include 'mpif.h'
352 LOGICAL FLAG
353 INTEGER IERR
354 flag = .true.
355 ierr = 0
356 RETURN

◆ mpi_iprobe()

subroutine mpi_iprobe ( integer source,
integer tag,
integer comm,
logical flag,
integer, dimension(mpi_status_size) status,
integer ierr )

Definition at line 359 of file mpi.f.

360 IMPLICIT NONE
361 include 'mpif.h'
362 INTEGER SOURCE, TAG, COMM, IERR
363 INTEGER STATUS(MPI_STATUS_SIZE)
364 LOGICAL FLAG
365 flag = .false.
366 ierr = 0
367 RETURN

◆ mpi_irecv()

subroutine mpi_irecv ( integer, dimension(*) buf,
integer cnt,
integer datatype,
integer source,
integer tag,
integer comm,
integer ireq,
integer ierr )

Definition at line 370 of file mpi.f.

372 IMPLICIT NONE
373 include 'mpif.h'
374 INTEGER CNT, DATATYPE, SOURCE, TAG, COMM, IREQ, IERR
375 INTEGER BUF(*)
376 ierr = 0
377 RETURN

◆ mpi_isend()

subroutine mpi_isend ( integer, dimension(*) buf,
integer cnt,
integer datatype,
integer dest,
integer tag,
integer comm,
integer ireq,
integer ierr )

Definition at line 380 of file mpi.f.

382 IMPLICIT NONE
383 include 'mpif.h'
384 INTEGER CNT, DATATYPE, DEST, TAG, COMM, IERR, IREQ
385 INTEGER BUF(*)
386 WRITE(*,*) 'Error. MPI_ISEND should not be called.'
387 stop
388 ierr = 0
389 RETURN

◆ mpi_op_create()

subroutine mpi_op_create ( external func,
logical commute,
integer op,
integer ierr )

Definition at line 411 of file mpi.f.

412 IMPLICIT NONE
413 EXTERNAL func
414 LOGICAL COMMUTE
415 INTEGER OP, IERR
416 op = 0
417 RETURN

◆ mpi_op_free()

subroutine mpi_op_free ( integer op,
integer ierr )

Definition at line 420 of file mpi.f.

421 IMPLICIT NONE
422 INTEGER OP, IERR
423 RETURN

◆ mpi_pack()

subroutine mpi_pack ( integer, dimension(*) inbuf,
integer incnt,
integer datatype,
integer, dimension(*) outbuf,
integer outcnt,
integer position,
integer comm,
integer ierr )

Definition at line 426 of file mpi.f.

428 IMPLICIT NONE
429 include 'mpif.h'
430 INTEGER INCNT, DATATYPE, OUTCNT, POSITION, COMM, IERR
431 INTEGER INBUF(*), OUTBUF(*)
432 WRITE(*,*) 'Error. MPI_PACKED should not be called.'
433 stop
434 ierr = 0
435 RETURN

◆ mpi_pack_size()

subroutine mpi_pack_size ( integer incnt,
integer datatype,
integer comm,
integer size,
integer ierr )

Definition at line 438 of file mpi.f.

439 IMPLICIT NONE
440 include 'mpif.h'
441 INTEGER INCNT, DATATYPE, COMM, SIZE, IERR
442 WRITE(*,*) 'Error. MPI_PACK_SIZE should not be called.'
443 stop
444 ierr = 0
445 RETURN

◆ mpi_probe()

subroutine mpi_probe ( integer source,
integer tag,
integer comm,
integer, dimension( mpi_status_size ) status,
integer ierr )

Definition at line 448 of file mpi.f.

449 IMPLICIT NONE
450 include 'mpif.h'
451 INTEGER SOURCE, TAG, COMM, IERR
452 INTEGER STATUS( MPI_STATUS_SIZE )
453 WRITE(*,*) 'Error. MPI_PROBE should not be called.'
454 stop
455 ierr = 0
456 RETURN

◆ mpi_recv()

subroutine mpi_recv ( integer, dimension(*) buf,
integer cnt,
integer datatype,
integer source,
integer tag,
integer comm,
integer, dimension(mpi_status_size) status,
integer ierr )

Definition at line 459 of file mpi.f.

461 IMPLICIT NONE
462 include 'mpif.h'
463 INTEGER CNT, DATATYPE, SOURCE, TAG, COMM, IERR
464 INTEGER BUF(*), STATUS(MPI_STATUS_SIZE)
465 WRITE(*,*) 'Error. MPI_RECV should not be called.'
466 stop
467 ierr = 0
468 RETURN

◆ mpi_reduce()

subroutine mpi_reduce ( integer, dimension(*) sendbuf,
integer, dimension(*) recvbuf,
integer cnt,
integer datatype,
integer op,
integer root,
integer comm,
integer ierr )

Definition at line 118 of file mpi.f.

120 IMPLICIT NONE
121 INTEGER CNT, DATATYPE, OP, ROOT, COMM, IERR
122 INTEGER SENDBUF(*), RECVBUF(*)
123 LOGICAL, EXTERNAL :: MUMPS_IS_IN_PLACE
124 IF (.NOT. mumps_is_in_place(sendbuf, cnt)) THEN
125 CALL mumps_copy( cnt, sendbuf, recvbuf, datatype, ierr )
126 IF ( ierr .NE. 0 ) THEN
127 WRITE(*,*) 'ERROR in MPI_REDUCE, DATATYPE=',datatype
128 stop
129 END IF
130 ENDIF
131 ierr = 0
132 RETURN

◆ mpi_reduce_scatter()

subroutine mpi_reduce_scatter ( integer, dimension(*) sendbuf,
integer, dimension(*) recvbuf,
integer rcvcnt,
integer datatype,
integer op,
integer comm,
integer ierr )

Definition at line 135 of file mpi.f.

137 IMPLICIT NONE
138 INTEGER RCVCNT, DATATYPE, OP, COMM, IERR
139 INTEGER SENDBUF(*), RECVBUF(*)
140 LOGICAL, EXTERNAL :: MUMPS_IS_IN_PLACE
141 IF (.NOT. mumps_is_in_place(sendbuf, rcvcnt)) THEN
142 CALL mumps_copy( rcvcnt, sendbuf, recvbuf, datatype, ierr )
143 IF ( ierr .NE. 0 ) THEN
144 WRITE(*,*) 'ERROR in MPI_REDUCE_SCATTER, DATATYPE=',datatype
145 stop
146 END IF
147 ENDIF
148 ierr = 0
149 RETURN

◆ mpi_request_free()

subroutine mpi_request_free ( integer ireq,
integer ierr )

Definition at line 471 of file mpi.f.

472 IMPLICIT NONE
473 include 'mpif.h'
474 INTEGER IREQ, IERR
475 ierr = 0
476 RETURN

◆ mpi_send()

subroutine mpi_send ( integer, dimension(*) buf,
integer cnt,
integer datatype,
integer dest,
integer tag,
integer comm,
integer ierr )

Definition at line 479 of file mpi.f.

480 IMPLICIT NONE
481 include 'mpif.h'
482 INTEGER CNT, DATATYPE, DEST, TAG, COMM, IERR
483 INTEGER BUF(*)
484 WRITE(*,*) 'Error. MPI_SEND should not be called.'
485 stop
486 ierr = 0
487 RETURN

◆ mpi_ssend()

subroutine mpi_ssend ( integer, dimension(*) buf,
integer cnt,
integer datatype,
integer dest,
integer tag,
integer comm,
integer ierr )

Definition at line 490 of file mpi.f.

491 IMPLICIT NONE
492 include 'mpif.h'
493 INTEGER CNT, DATATYPE, DEST, TAG, COMM, IERR
494 INTEGER BUF(*)
495 WRITE(*,*) 'Error. MPI_SSEND should not be called.'
496 stop
497 ierr = 0
498 RETURN

◆ mpi_test()

subroutine mpi_test ( integer ireq,
logical flag,
integer, dimension( mpi_status_size ) status,
integer ierr )

Definition at line 501 of file mpi.f.

502 IMPLICIT NONE
503 include 'mpif.h'
504 INTEGER IREQ, IERR
505 INTEGER STATUS( MPI_STATUS_SIZE )
506 LOGICAL FLAG
507 flag = .false.
508 ierr = 0
509 RETURN

◆ mpi_type_commit()

subroutine mpi_type_commit ( integer newtyp,
integer ierr_mpi )

Definition at line 392 of file mpi.f.

393 IMPLICIT NONE
394 INTEGER NEWTYP, IERR_MPI
395 RETURN

◆ mpi_type_contiguous()

subroutine mpi_type_contiguous ( integer length,
integer datatype,
integer newtype,
integer ierr_mpi )

Definition at line 404 of file mpi.f.

406 IMPLICIT NONE
407 INTEGER LENGTH, DATATYPE, NEWTYPE, IERR_MPI
408 RETURN

◆ mpi_type_free()

subroutine mpi_type_free ( integer newtyp,
integer ierr_mpi )

Definition at line 398 of file mpi.f.

399 IMPLICIT NONE
400 INTEGER NEWTYP, IERR_MPI
401 RETURN

◆ mpi_unpack()

subroutine mpi_unpack ( integer, dimension(*) inbuf,
integer insize,
integer position,
integer, dimension(*) outbuf,
integer outcnt,
integer datatype,
integer comm,
integer ierr )

Definition at line 512 of file mpi.f.

514 IMPLICIT NONE
515 include 'mpif.h'
516 INTEGER INSIZE, POSITION, OUTCNT, DATATYPE, COMM, IERR
517 INTEGER INBUF(*), OUTBUF(*)
518 WRITE(*,*) 'Error. MPI_UNPACK should not be called.'
519 stop
520 ierr = 0
521 RETURN

◆ mpi_wait()

subroutine mpi_wait ( integer ireq,
integer, dimension( mpi_status_size ) status,
integer ierr )

Definition at line 524 of file mpi.f.

525 IMPLICIT NONE
526 include 'mpif.h'
527 INTEGER IREQ, IERR
528 INTEGER STATUS( MPI_STATUS_SIZE )
529 WRITE(*,*) 'Error. MPI_WAIT should not be called.'
530 stop
531 ierr = 0
532 RETURN

◆ mpi_waitall()

subroutine mpi_waitall ( integer cnt,
integer, dimension( cnt ) array_of_requests,
integer, dimension( mpi_status_size ) status,
integer ierr )

Definition at line 535 of file mpi.f.

536 IMPLICIT NONE
537 include 'mpif.h'
538 INTEGER CNT, IERR
539 INTEGER STATUS( MPI_STATUS_SIZE )
540 INTEGER ARRAY_OF_REQUESTS( CNT )
541 WRITE(*,*) 'Error. MPI_WAITALL should not be called.'
542 stop
543 ierr = 0
544 RETURN

◆ mpi_waitany()

subroutine mpi_waitany ( integer cnt,
integer, dimension( cnt ) array_of_requests,
integer index,
integer, dimension( mpi_status_size ) status,
integer ierr )

Definition at line 547 of file mpi.f.

549 IMPLICIT NONE
550 include 'mpif.h'
551 INTEGER CNT, INDEX, IERR
552 INTEGER STATUS( MPI_STATUS_SIZE )
553 INTEGER ARRAY_OF_REQUESTS( CNT )
554 WRITE(*,*) 'Error. MPI_WAITANY should not be called.'
555 stop
556 ierr = 0
557 RETURN

◆ mpi_wtime()

double precision function mpi_wtime

Definition at line 560 of file mpi.f.

561C elapsed time
562 DOUBLE PRECISION VAL
563C write(*,*) 'Entering MPI_WTIME'
564 CALL mumps_elapse( val )
565 mpi_wtime = val
566C write(*,*) 'Exiting MPI_WTIME'
567 RETURN
void mumps_elapse(double *val)
Definition elapse.c:34
double precision function mpi_wtime()
Definition mpi.f:561

◆ mumps_copy()

subroutine mumps_copy ( integer cnt,
integer, dimension(*) sendbuf,
integer, dimension(*) recvbuf,
integer datatype,
integer ierr )

Definition at line 577 of file mpi.f.

578 IMPLICIT NONE
579 include 'mpif.h'
580 INTEGER CNT, DATATYPE, IERR
581 INTEGER SENDBUF(*), RECVBUF(*)
582 IF ( datatype .EQ. mpi_integer ) THEN
583 CALL mumps_copy_integer( sendbuf, recvbuf, cnt )
584 ELSEIF ( datatype .EQ. mpi_logical ) THEN
585 CALL mumps_copy_logical( sendbuf, recvbuf, cnt )
586 ELSE IF ( datatype .EQ. mpi_real ) THEN
587 CALL mumps_copy_real( sendbuf, recvbuf, cnt )
588 ELSE IF ( datatype .EQ. mpi_double_precision .OR.
589 & datatype .EQ. mpi_real8 ) THEN
590 CALL mumps_copy_double_precision( sendbuf, recvbuf, cnt )
591 ELSE IF ( datatype .EQ. mpi_complex ) THEN
592 CALL mumps_copy_complex( sendbuf, recvbuf, cnt )
593 ELSE IF ( datatype .EQ. mpi_double_complex ) THEN
594 CALL mumps_copy_double_complex( sendbuf, recvbuf, cnt )
595 ELSE IF ( datatype .EQ. mpi_2double_precision) THEN
596 CALL mumps_copy_2double_precision( sendbuf, recvbuf, cnt )
597 ELSE IF ( datatype .EQ. mpi_2integer) THEN
598 CALL mumps_copy_2integer( sendbuf, recvbuf, cnt )
599 ELSE IF ( datatype .EQ. mpi_integer8) THEN
600 CALL mumps_copy_integer8( sendbuf, recvbuf, cnt )
601 ELSE
602 ierr=1
603 RETURN
604 END IF
605 ierr=0
606 RETURN
subroutine mumps_copy_double_precision(s, r, n)
Definition mpi.f:670
subroutine mumps_copy_double_complex(s, r, n)
Definition mpi.f:690
subroutine mumps_copy_integer8(s, r, n)
Definition mpi.f:620
subroutine mumps_copy_2double_precision(s, r, n)
Definition mpi.f:660
subroutine mumps_copy_complex(s, r, n)
Definition mpi.f:680
subroutine mumps_copy_integer(s, r, n)
Definition mpi.f:610
subroutine mumps_copy_logical(s, r, n)
Definition mpi.f:630
subroutine mumps_copy_2integer(s, r, n)
Definition mpi.f:640
subroutine mumps_copy_real(s, r, n)
Definition mpi.f:650

◆ mumps_copy_2double_precision()

subroutine mumps_copy_2double_precision ( double precision, dimension(n+n) s,
double precision, dimension(n+n) r,
integer n )

Definition at line 659 of file mpi.f.

660 IMPLICIT NONE
661 INTEGER N
662 DOUBLE PRECISION S(N+N),R(N+N)
663 INTEGER I
664 DO i = 1, n+n
665 r(i) = s(i)
666 END DO
667 RETURN

◆ mumps_copy_2integer()

subroutine mumps_copy_2integer ( integer, dimension(n+n) s,
integer, dimension(n+n) r,
integer n )

Definition at line 639 of file mpi.f.

640 IMPLICIT NONE
641 INTEGER N
642 INTEGER S(N+N),R(N+N)
643 INTEGER I
644 DO i = 1, n+n
645 r(i) = s(i)
646 END DO
647 RETURN

◆ mumps_copy_complex()

subroutine mumps_copy_complex ( complex, dimension(n) s,
complex, dimension(n) r,
integer n )

Definition at line 679 of file mpi.f.

680 IMPLICIT NONE
681 INTEGER N
682 COMPLEX S(N),R(N)
683 INTEGER I
684 DO i = 1, n
685 r(i) = s(i)
686 END DO
687 RETURN

◆ mumps_copy_double_complex()

subroutine mumps_copy_double_complex ( complex(kind=kind(0.0d0)), dimension(n) s,
complex(kind=kind(0.0d0)), dimension(n) r,
integer n )

Definition at line 689 of file mpi.f.

690 IMPLICIT NONE
691 INTEGER N
692C DOUBLE COMPLEX S(N),R(N)
693 COMPLEX(kind=kind(0.0D0)) :: S(N),R(N)
694 INTEGER I
695 DO i = 1, n
696 r(i) = s(i)
697 END DO
698 RETURN

◆ mumps_copy_double_precision()

subroutine mumps_copy_double_precision ( double precision, dimension(n) s,
double precision, dimension(n) r,
integer n )

Definition at line 669 of file mpi.f.

670 IMPLICIT NONE
671 INTEGER N
672 DOUBLE PRECISION S(N),R(N)
673 INTEGER I
674 DO i = 1, n
675 r(i) = s(i)
676 END DO
677 RETURN

◆ mumps_copy_integer()

subroutine mumps_copy_integer ( integer, dimension(n) s,
integer, dimension(n) r,
integer n )

Definition at line 609 of file mpi.f.

610 IMPLICIT NONE
611 INTEGER N
612 INTEGER S(N),R(N)
613 INTEGER I
614 DO i = 1, n
615 r(i) = s(i)
616 END DO
617 RETURN

◆ mumps_copy_integer8()

subroutine mumps_copy_integer8 ( integer(8), dimension(n) s,
integer(8), dimension(n) r,
integer n )

Definition at line 619 of file mpi.f.

620 IMPLICIT NONE
621 INTEGER N
622 INTEGER(8) S(N),R(N)
623 INTEGER I
624 DO i = 1, n
625 r(i) = s(i)
626 END DO
627 RETURN

◆ mumps_copy_logical()

subroutine mumps_copy_logical ( logical, dimension(n) s,
logical, dimension(n) r,
integer n )

Definition at line 629 of file mpi.f.

630 IMPLICIT NONE
631 INTEGER N
632 LOGICAL S(N),R(N)
633 INTEGER I
634 DO i = 1, n
635 r(i) = s(i)
636 END DO
637 RETURN

◆ mumps_copy_real()

subroutine mumps_copy_real ( real, dimension(n) s,
real, dimension(n) r,
integer n )

Definition at line 649 of file mpi.f.

650 IMPLICIT NONE
651 INTEGER N
652 REAL S(N),R(N)
653 INTEGER I
654 DO i = 1, n
655 r(i) = s(i)
656 END DO
657 RETURN

◆ mumps_is_in_place()

logical function mumps_is_in_place ( integer, dimension(*) sendbuf,
integer cnt )

Definition at line 700 of file mpi.f.

701 INTEGER SENDBUF(*), CNT
702 include 'mpif.h'
703 INTEGER :: I
704C Check address using C code
705 mumps_is_in_place = .false.
706 IF ( cnt .GT. 0 ) THEN
707 CALL mumps_checkaddrequal(sendbuf(1), mpi_in_place, i)
708 IF (i .EQ. 1) THEN
709 mumps_is_in_place = .true.
710 ENDIF
711 ENDIF
712C Begin old code which requires the MPI_IN_PLACE
713C variable to have the F2003 attribute VOLATILE
714C IF ( CNT .GT. 0 ) THEN
715C MPI_IN_PLACE = -1
716C IF (SENDBUF(1) .EQ. MPI_IN_PLACE) THEN
717C MPI_IN_PLACE = -9876543
718C IF (MUMPS_CHECK_EQUAL(SENDBUF(1), MPI_IN_PLACE)) THEN
719C MUMPS_IS_IN_PLACE = .TRUE.
720C ENDIF
721C ENDIF
722C ENDIF
723C End old code
724 RETURN

◆ numroc()

integer function numroc ( integer n,
integer nb,
integer iproc,
integer isrcproc,
integer nprocs )

Definition at line 785 of file mpi.f.

786 INTEGER N, NB, IPROC, ISRCPROC, NPROCS
787C Can be called
788 IF ( nprocs .ne. 1 ) THEN
789 WRITE(*,*) 'Error. Last parameter from NUMROC should be 1'
790 stop
791 ENDIF
792 IF ( iproc .ne. 0 ) THEN
793 WRITE(*,*) 'Error. IPROC should be 0 in NUMROC.'
794 stop
795 ENDIF
796 numroc = n
797 RETURN
integer function numroc(n, nb, iproc, isrcproc, nprocs)
Definition mpi.f:786

◆ pcaxpy()

subroutine pcaxpy ( integer n,
complex, dimension(*) a,
complex, dimension(*) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx,
complex, dimension(*) y,
integer iy,
integer jy,
integer, dimension(*) descy,
integer incy )

Definition at line 1423 of file mpi.f.

1425 IMPLICIT NONE
1426 INTEGER N, IX, IY, JX, JY, INCX, INCY
1427 INTEGER DESCX(*), DESCY(*)
1428 COMPLEX A(*),X(*),Y(*)
1429 WRITE(*,*) 'Error. PCAXPY should not be called.'
1430 stop
1431 RETURN

◆ pcdot()

subroutine pcdot ( integer n,
real dot,
complex, dimension(*) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx,
complex, dimension(*) y,
integer iy,
integer jy,
integer, dimension(*) descy,
integer incy )

Definition at line 1013 of file mpi.f.

1015 IMPLICIT NONE
1016 INTEGER N, IX, JX, IY, JY, INCX, INCY
1017 INTEGER DESCX(*), DESCY(*)
1018 COMPLEX X(*), Y(*)
1019 REAL DOT
1020 dot = 0.0e0
1021 WRITE(*,*) 'Error. PCDOT should not be called.'
1022 stop
1023 RETURN

◆ pcgecon()

subroutine pcgecon ( character norm,
integer n,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
real anorm,
real rcond,
complex, dimension( * ) work,
integer lwork,
integer, dimension( * ) iwork,
integer liwork,
integer info )

Definition at line 1321 of file mpi.f.

1323 IMPLICIT NONE
1324
1325 CHARACTER NORM
1326 INTEGER IA, INFO, JA, LIWORK, LWORK, N
1327 REAL ANORM, RCOND
1328 INTEGER DESCA( * ), IWORK( * )
1329 COMPLEX A( * ), WORK( * )
1330 WRITE(*,*) 'Error. PCGECON should not be called.'
1331 stop
1332 RETURN

◆ pcgeqpf()

subroutine pcgeqpf ( integer m,
integer n,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
complex, dimension( * ) tau,
complex, dimension( * ) work,
integer lwork,
integer info )

Definition at line 1378 of file mpi.f.

1380 IMPLICIT NONE
1381 INTEGER IA, JA, INFO, LWORK, M, N
1382 INTEGER DESCA( * ), IPIV( * )
1383 COMPLEX A( * ), TAU( * ), WORK( * )
1384 WRITE(*,*) 'Error. PCGEQPF should not be called.'
1385 stop
1386 RETURN

◆ pcgetrf()

subroutine pcgetrf ( integer m,
integer n,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
integer info )

Definition at line 811 of file mpi.f.

812 IMPLICIT NONE
813 INTEGER IA, INFO, JA, M, N
814 INTEGER DESCA( * ), IPIV( * )
815 COMPLEX A( * )
816 WRITE(*,*) 'Error. PCGETRF should not be called.'
817 stop
818 RETURN

◆ pcgetrs()

subroutine pcgetrs ( character trans,
integer n,
integer nrhs,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
complex, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 1132 of file mpi.f.

1134 IMPLICIT NONE
1135 CHARACTER TRANS
1136 INTEGER IA, IB, INFO, JA, JB, N, NRHS
1137 INTEGER DESCA( * ), DESCB( * ), IPIV( * )
1138 COMPLEX A( * ), B( * )
1139 WRITE(*,*) 'Error. PCGETRS should not be called.'
1140 stop
1141 RETURN

◆ pchk2mat()

subroutine pchk2mat ( integer ma,
integer mapos0,
integer na,
integer napos0,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer descapos0,
integer mb,
integer mbpos0,
integer nb,
integer nbpos0,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer descbpos0,
integer nextra,
integer, dimension( nextra ) ex,
integer, dimension( nextra ) expos,
integer info )

Definition at line 1585 of file mpi.f.

1588 IMPLICIT NONE
1589 INTEGER DESCAPOS0, DESCBPOS0, IA, IB, INFO, JA, JB, MA,
1590 & MAPOS0, MB, MBPOS0, NA, NAPOS0, NB, NBPOS0,
1591 & NEXTRA
1592 INTEGER DESCA( * ), DESCB( * ), EX( NEXTRA ),
1593 & EXPOS( NEXTRA )
1594 WRITE(*,*) 'Error. PCHK2MAT should not be called.'
1595 stop
1596 RETURN

◆ pclange()

real function pclange ( character norm,
integer m,
integer n,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex, dimension( * ) work )

Definition at line 1273 of file mpi.f.

1275 CHARACTER NORM
1276 INTEGER IA, JA, M, N
1277 INTEGER DESCA( * )
1278 COMPLEX A( * ), WORK( * )
1279 pclange = 0.0e0
1280 WRITE(*,*) 'Error. PCLANGE should not be called.'
1281 stop
1282 RETURN
real function pclange(norm, m, n, a, ia, ja, desca, work)
Definition mpi.f:1275

◆ pcpotrf()

subroutine pcpotrf ( character uplo,
integer n,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer info )

Definition at line 800 of file mpi.f.

801 IMPLICIT NONE
802 CHARACTER UPLO
803 INTEGER IA, INFO, JA, N
804 INTEGER DESCA( * )
805 COMPLEX A( * )
806 WRITE(*,*) 'Error. PCPOTRF should not be called.'
807 stop
808 RETURN

◆ pcpotrs()

subroutine pcpotrs ( character uplo,
integer n,
integer nrhs,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 1181 of file mpi.f.

1183 IMPLICIT NONE
1184 CHARACTER UPLO
1185 INTEGER IA, IB, INFO, JA, JB, N, NRHS
1186 INTEGER DESCA( * ), DESCB( * )
1187 COMPLEX A( * ), B( * )
1188 WRITE(*,*) 'Error. PCPOTRS should not be called.'
1189 stop
1190 RETURN

◆ pcscal()

subroutine pcscal ( integer n,
complex alpha,
complex, dimension( * ) x,
integer ix,
integer jx,
integer, dimension( * ) descx,
integer incx )

Definition at line 954 of file mpi.f.

955 IMPLICIT NONE
956 INTEGER INCX, N, IX, JX
957 COMPLEX ALPHA
958 COMPLEX X( * )
959 INTEGER DESCX( * )
960 WRITE(*,*) 'Error. PCSCAL should not be called.'
961 stop
962 RETURN

◆ pctrsm()

subroutine pctrsm ( character side,
character uplo,
character transa,
character diag,
integer m,
integer n,
complex alpha,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb )

Definition at line 1468 of file mpi.f.

1470 IMPLICIT NONE
1471 CHARACTER SIDE, UPLO, TRANSA, DIAG
1472 INTEGER M, N, IA, JA, IB, JB
1473 COMPLEX ALPHA
1474 INTEGER DESCA( * ), DESCB( * )
1475 COMPLEX A( * ), B( * )
1476 WRITE(*,*) 'Error. PCTRSM should not be called.'
1477 stop
1478 RETURN

◆ pctrtrs()

subroutine pctrtrs ( character uplo,
character trans,
character diag,
integer n,
integer nrhs,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 821 of file mpi.f.

823 IMPLICIT NONE
824 CHARACTER DIAG, TRANS, UPLO
825 INTEGER IA, IB, INFO, JA, JB, N, NRHS
826 INTEGER DESCA( * ), DESCB( * )
827 COMPLEX A( * ), B( * )
828 WRITE(*,*) 'Error. PCTRTRS should not be called.'
829 stop
830 RETURN

◆ pcunmqr()

subroutine pcunmqr ( character side,
character trans,
integer m,
integer n,
integer k,
complex, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex, dimension( * ) tau,
complex, dimension( * ) c,
integer ic,
integer jc,
integer, dimension( * ) descc,
complex, dimension( * ) work,
integer lwork,
integer info )

Definition at line 1522 of file mpi.f.

1525 IMPLICIT NONE
1526 CHARACTER SIDE, TRANS
1527 INTEGER IA, IC, INFO, JA, JC, K, LWORK, M, N
1528 INTEGER DESCA( * ), DESCC( * )
1529 COMPLEX A( * ), C( * ), TAU( * ), WORK( * )
1530 WRITE(*,*) 'Error. PCUNMQR should not be called.'
1531 stop
1532 RETURN

◆ pdaxpy()

subroutine pdaxpy ( integer n,
double precision, dimension(*) a,
double precision, dimension(*) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx,
double precision, dimension(*) y,
integer iy,
integer jy,
integer, dimension(*) descy,
integer incy )

Definition at line 1457 of file mpi.f.

1459 IMPLICIT NONE
1460 INTEGER N, IX, IY, JX, JY, INCX, INCY
1461 INTEGER DESCX(*), DESCY(*)
1462 DOUBLE PRECISION A(*),X(*),Y(*)
1463 WRITE(*,*) 'Error. PDAXPY should not be called.'
1464 stop
1465 RETURN

◆ pddot()

subroutine pddot ( integer n,
double precision dot,
double precision, dimension(*) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx,
double precision, dimension(*) y,
integer iy,
integer jy,
integer, dimension(*) descy,
integer incy )

Definition at line 1026 of file mpi.f.

1028 IMPLICIT NONE
1029 INTEGER N, IX, JX, IY, JY, INCX, INCY
1030 INTEGER DESCX(*), DESCY(*)
1031 DOUBLE PRECISION X(*), Y(*), DOT
1032 dot = 0.0d0
1033 WRITE(*,*) 'error. pddot should not be called.'
1034 STOP
1035 RETURN
subroutine pddot(n, dot, x, ix, jx, descx, incx, y, iy, jy, descy, incy)
Definition mpi.f:1028

◆ pdgecon()

subroutine pdgecon ( character norm,
integer n,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
double precision anorm,
double precision rcond,
double precision, dimension( * ) work,
integer lwork,
integer, dimension( * ) iwork,
integer liwork,
integer info )

Definition at line 1364 of file mpi.f.

1366 IMPLICIT NONE
1367
1368 CHARACTER NORM
1369 INTEGER IA, INFO, JA, LIWORK, LWORK, N
1370 DOUBLE PRECISION ANORM, RCOND
1371 INTEGER DESCA( * ), IWORK( * )
1372 DOUBLE PRECISION A( * ), WORK( * )
1373 WRITE(*,*) 'Error. PDGECON should not be called.'
1374 stop
1375 RETURN

◆ pdgeqpf()

subroutine pdgeqpf ( integer m,
integer n,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
double precision, dimension( * ) tau,
double precision, dimension( * ) work,
integer lwork,
integer info )

Definition at line 1412 of file mpi.f.

1414 IMPLICIT NONE
1415 INTEGER IA, JA, INFO, LWORK, M, N
1416 INTEGER DESCA( * ), IPIV( * )
1417 DOUBLE PRECISION A( * ), TAU( * ), WORK( * )
1418 WRITE(*,*) 'Error. PDGEQPF should not be called.'
1419 stop
1420 RETURN

◆ pdgetrf()

subroutine pdgetrf ( integer m,
integer n,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
integer info )

Definition at line 913 of file mpi.f.

914 IMPLICIT NONE
915 INTEGER IA, INFO, JA, M, N
916 INTEGER DESCA( * ), IPIV( * )
917 DOUBLE PRECISION A( * )
918 WRITE(*,*) 'Error. PDGETRF should not be called.'
919 stop
920 RETURN

◆ pdgetrs()

subroutine pdgetrs ( character trans,
integer n,
integer nrhs,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
double precision, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 1169 of file mpi.f.

1171 IMPLICIT NONE
1172 CHARACTER TRANS
1173 INTEGER IA, IB, INFO, JA, JB, N, NRHS
1174 INTEGER DESCA( * ), DESCB( * ), IPIV( * )
1175 DOUBLE PRECISION A( * ), B( * )
1176 WRITE(*,*) 'Error. PDGETRS should not be called.'
1177 stop
1178 RETURN

◆ pdlange()

double precision function pdlange ( character norm,
integer m,
integer n,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
double precision, dimension( * ) work )

Definition at line 1309 of file mpi.f.

1311 CHARACTER NORM
1312 INTEGER IA, JA, M, N
1313 INTEGER DESCA( * )
1314 DOUBLE PRECISION A( * ), WORK( * )
1315 pdlange = 0.0d0
1316 WRITE(*,*) 'Error. PDLANGE should not be called.'
1317 stop
1318 RETURN
double precision function pdlange(norm, m, n, a, ia, ja, desca, work)
Definition mpi.f:1311

◆ pdnrm2()

subroutine pdnrm2 ( integer n,
double precision norm2,
double precision, dimension( * ) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx )

Definition at line 1263 of file mpi.f.

1264 IMPLICIT NONE
1265 INTEGER N, IX, JX, INCX
1266 INTEGER DESCX(*)
1267 DOUBLE PRECISION NORM2, X( * )
1268 WRITE(*,*) 'Error. PDNRM2 should not be called.'
1269 stop
1270 RETURN

◆ pdormqr()

subroutine pdormqr ( character side,
character trans,
integer m,
integer n,
integer k,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
double precision, dimension( * ) tau,
double precision, dimension( * ) c,
integer ic,
integer jc,
integer, dimension( * ) descc,
double precision, dimension( * ) work,
integer lwork,
integer info )

Definition at line 1562 of file mpi.f.

1565 IMPLICIT NONE
1566 CHARACTER SIDE, TRANS
1567 INTEGER IA, IC, INFO, JA, JC, K, LWORK, M, N
1568 INTEGER DESCA( * ), DESCC( * )
1569 DOUBLE PRECISION A( * ), C( * ), TAU( * ), WORK( * )
1570 WRITE(*,*) 'Error. PDORMQR should not be called.'
1571 stop
1572 RETURN

◆ pdpotrf()

subroutine pdpotrf ( character uplo,
integer n,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer info )

Definition at line 902 of file mpi.f.

903 IMPLICIT NONE
904 CHARACTER UPLO
905 INTEGER IA, INFO, JA, N
906 INTEGER DESCA( * )
907 DOUBLE PRECISION A( * )
908 WRITE(*,*) 'Error. PDPOTRF should not be called.'
909 stop
910 RETURN

◆ pdpotrs()

subroutine pdpotrs ( character uplo,
integer n,
integer nrhs,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
double precision, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 1218 of file mpi.f.

1220 IMPLICIT NONE
1221 CHARACTER UPLO
1222 INTEGER IA, IB, INFO, JA, JB, N, NRHS
1223 INTEGER DESCA( * ), DESCB( * )
1224 DOUBLE PRECISION A( * ), B( * )
1225 WRITE(*,*) 'Error. PDPOTRS should not be called.'
1226 stop
1227 RETURN

◆ pdscal()

subroutine pdscal ( integer n,
double precision alpha,
double precision, dimension( * ) x,
integer ix,
integer jx,
integer, dimension( * ) descx,
integer incx )

Definition at line 977 of file mpi.f.

978 IMPLICIT NONE
979 INTEGER INCX, N, IX, JX
980 DOUBLE PRECISION ALPHA
981 DOUBLE PRECISION X( * )
982 INTEGER DESCX( * )
983 WRITE(*,*) 'Error. PDSCAL should not be called.'
984 stop
985 RETURN

◆ pdtrsm()

subroutine pdtrsm ( character side,
character uplo,
character transa,
character diag,
integer m,
integer n,
double precision alpha,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
double precision, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb )

Definition at line 1509 of file mpi.f.

1511 IMPLICIT NONE
1512 CHARACTER SIDE, UPLO, TRANSA, DIAG
1513 INTEGER M, N, IA, JA, IB, JB
1514 DOUBLE PRECISION ALPHA
1515 INTEGER DESCA( * ), DESCB( * )
1516 DOUBLE PRECISION A( * ), B( * )
1517 WRITE(*,*) 'Error. PDTRSM should not be called.'
1518 stop
1519 RETURN

◆ pdtrtrs()

subroutine pdtrtrs ( character uplo,
character trans,
character diag,
integer n,
integer nrhs,
double precision, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
double precision, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 923 of file mpi.f.

925 IMPLICIT NONE
926 CHARACTER DIAG, TRANS, UPLO
927 INTEGER IA, IB, INFO, JA, JB, N, NRHS
928 INTEGER DESCA( * ), DESCB( * )
929 DOUBLE PRECISION A( * ), B( * )
930 WRITE(*,*) 'Error. PDTRTRS should not be called.'
931 stop
932 RETURN

◆ pdznrm2()

subroutine pdznrm2 ( integer n,
double precision norm2,
complex(kind=kind(0.0d0)), dimension( * ) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx )

Definition at line 1241 of file mpi.f.

1242 IMPLICIT NONE
1243 INTEGER N, IX, JX, INCX
1244 INTEGER DESCX(*)
1245 DOUBLE PRECISION NORM2
1246C DOUBLE COMPLEX X( * )
1247 COMPLEX(kind=kind(0.0D0)) :: X( * )
1248 WRITE(*,*) 'Error. PZNRM2 should not be called.'
1249 stop
1250 RETURN

◆ psaxpy()

subroutine psaxpy ( integer n,
real, dimension(*) a,
real, dimension(*) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx,
real, dimension(*) y,
integer iy,
integer jy,
integer, dimension(*) descy,
integer incy )

Definition at line 1446 of file mpi.f.

1448 IMPLICIT NONE
1449 INTEGER N, IX, IY, JX, JY, INCX, INCY
1450 INTEGER DESCX(*), DESCY(*)
1451 REAL A(*),X(*),Y(*)
1452 WRITE(*,*) 'Error. PSAXPY should not be called.'
1453 stop
1454 RETURN

◆ pscnrm2()

subroutine pscnrm2 ( integer n,
real norm2,
complex, dimension( * ) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx )

Definition at line 1230 of file mpi.f.

1231 IMPLICIT NONE
1232 INTEGER N, IX, JX, INCX
1233 INTEGER DESCX(*)
1234 REAL NORM2
1235 COMPLEX X( * )
1236 WRITE(*,*) 'Error. PCNRM2 should not be called.'
1237 stop
1238 RETURN

◆ psdot()

subroutine psdot ( integer n,
real dot,
real, dimension(*) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx,
real, dimension(*) y,
integer iy,
integer jy,
integer, dimension(*) descy,
integer incy )

Definition at line 1038 of file mpi.f.

1040 IMPLICIT NONE
1041 INTEGER N, IX, JX, IY, JY, INCX, INCY
1042 INTEGER DESCX(*), DESCY(*)
1043 REAL X(*), Y(*), DOT
1044 dot = 0.0e0
1045 WRITE(*,*) 'Error. PSDOT should not be called.'
1046 stop
1047 RETURN

◆ psgecon()

subroutine psgecon ( character norm,
integer n,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
real anorm,
real rcond,
real, dimension( * ) work,
integer lwork,
integer, dimension( * ) iwork,
integer liwork,
integer info )

Definition at line 1350 of file mpi.f.

1352 IMPLICIT NONE
1353
1354 CHARACTER NORM
1355 INTEGER IA, INFO, JA, LIWORK, LWORK, N
1356 REAL ANORM, RCOND
1357 INTEGER DESCA( * ), IWORK( * )
1358 REAL A( * ), WORK( * )
1359 WRITE(*,*) 'Error. PSGECON should not be called.'
1360 stop
1361 RETURN

◆ psgeqpf()

subroutine psgeqpf ( integer m,
integer n,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
real, dimension( * ) tau,
real, dimension( * ) work,
integer lwork,
integer info )

Definition at line 1401 of file mpi.f.

1403 IMPLICIT NONE
1404 INTEGER IA, JA, INFO, LWORK, M, N
1405 INTEGER DESCA( * ), IPIV( * )
1406 REAL A( * ), TAU( * ), WORK( * )
1407 WRITE(*,*) 'Error. PSGEQPF should not be called.'
1408 stop
1409 RETURN

◆ psgetrf()

subroutine psgetrf ( integer m,
integer n,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
integer info )

Definition at line 880 of file mpi.f.

881 IMPLICIT NONE
882 INTEGER IA, INFO, JA, M, N
883 INTEGER DESCA( * ), IPIV( * )
884 REAL A( * )
885 WRITE(*,*) 'Error. PSGETRF should not be called.'
886 stop
887 RETURN

◆ psgetrs()

subroutine psgetrs ( character trans,
integer n,
integer nrhs,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
real, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 1157 of file mpi.f.

1159 IMPLICIT NONE
1160 CHARACTER TRANS
1161 INTEGER IA, IB, INFO, JA, JB, N, NRHS
1162 INTEGER DESCA( * ), DESCB( * ), IPIV( * )
1163 REAL A( * ), B( * )
1164 WRITE(*,*) 'Error. PSGETRS should not be called.'
1165 stop
1166 RETURN

◆ pslange()

real function pslange ( character norm,
integer m,
integer n,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
real, dimension( * ) work )

Definition at line 1297 of file mpi.f.

1299 CHARACTER NORM
1300 INTEGER IA, JA, M, N
1301 INTEGER DESCA( * )
1302 REAL A( * ), WORK( * )
1303 pslange = 0.0e0
1304 WRITE(*,*) 'Error. PSLANGE should not be called.'
1305 stop
1306 RETURN
real function pslange(norm, m, n, a, ia, ja, desca, work)
Definition mpi.f:1299

◆ psnrm2()

subroutine psnrm2 ( integer n,
real norm2,
real, dimension( * ) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx )

Definition at line 1253 of file mpi.f.

1254 IMPLICIT NONE
1255 INTEGER N, IX, JX, INCX
1256 INTEGER DESCX(*)
1257 REAL NORM2, X( * )
1258 WRITE(*,*) 'Error. PSNRM2 should not be called.'
1259 stop
1260 RETURN

◆ psormqr()

subroutine psormqr ( character side,
character trans,
integer m,
integer n,
integer k,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
real, dimension( * ) tau,
real, dimension( * ) c,
integer ic,
integer jc,
integer, dimension( * ) descc,
real, dimension( * ) work,
integer lwork,
integer info )

Definition at line 1549 of file mpi.f.

1552 IMPLICIT NONE
1553 CHARACTER SIDE, TRANS
1554 INTEGER IA, IC, INFO, JA, JC, K, LWORK, M, N
1555 INTEGER DESCA( * ), DESCC( * )
1556 REAL A( * ), C( * ), TAU( * ), WORK( * )
1557 WRITE(*,*) 'Error. PSORMQR should not be called.'
1558 stop
1559 RETURN

◆ pspotrf()

subroutine pspotrf ( character uplo,
integer n,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer info )

Definition at line 869 of file mpi.f.

870 IMPLICIT NONE
871 CHARACTER UPLO
872 INTEGER IA, INFO, JA, N
873 INTEGER DESCA( * )
874 REAL A( * )
875 WRITE(*,*) 'Error. PSPOTRF should not be called.'
876 stop
877 RETURN

◆ pspotrs()

subroutine pspotrs ( character uplo,
integer n,
integer nrhs,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
real, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 1206 of file mpi.f.

1208 IMPLICIT NONE
1209 CHARACTER UPLO
1210 INTEGER IA, IB, INFO, JA, JB, N, NRHS
1211 INTEGER DESCA( * ), DESCB( * )
1212 REAL A( * ), B( * )
1213 WRITE(*,*) 'Error. PSPOTRS should not be called.'
1214 stop
1215 RETURN

◆ psscal()

subroutine psscal ( integer n,
real alpha,
real, dimension( * ) x,
integer ix,
integer jx,
integer, dimension( * ) descx,
integer incx )

Definition at line 988 of file mpi.f.

989 IMPLICIT NONE
990 INTEGER INCX, N, IX, JX
991 REAL ALPHA
992 REAL X( * )
993 INTEGER DESCX( * )
994 WRITE(*,*) 'Error. PSSCAL should not be called.'
995 stop
996 RETURN

◆ pstrsm()

subroutine pstrsm ( character side,
character uplo,
character transa,
character diag,
integer m,
integer n,
real alpha,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
real, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb )

Definition at line 1496 of file mpi.f.

1498 IMPLICIT NONE
1499 CHARACTER SIDE, UPLO, TRANSA, DIAG
1500 INTEGER M, N, IA, JA, IB, JB
1501 REAL ALPHA
1502 INTEGER DESCA( * ), DESCB( * )
1503 REAL A( * ), B( * )
1504 WRITE(*,*) 'Error. PSTRSM should not be called.'
1505 stop
1506 RETURN

◆ pstrtrs()

subroutine pstrtrs ( character uplo,
character trans,
character diag,
integer n,
integer nrhs,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
real, dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 890 of file mpi.f.

892 IMPLICIT NONE
893 CHARACTER DIAG, TRANS, UPLO
894 INTEGER IA, IB, INFO, JA, JB, N, NRHS
895 INTEGER DESCA( * ), DESCB( * )
896 REAL A( * ), B( * )
897 WRITE(*,*) 'Error. PSTRTRS should not be called.'
898 stop
899 RETURN

◆ pxerbla()

subroutine pxerbla ( integer contxt,
character srname,
integer info )

Definition at line 1599 of file mpi.f.

1600 IMPLICIT NONE
1601 INTEGER CONTXT, INFO
1602 CHARACTER SRNAME
1603 WRITE(*,*) 'Error. PXERBLA should not be called.'
1604 stop
1605 RETURN

◆ pzaxpy()

subroutine pzaxpy ( integer n,
complex(kind=kind(0.0d0)), dimension(*) a,
complex(kind=kind(0.0d0)), dimension(*) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx,
complex(kind=kind(0.0d0)), dimension(*) y,
integer iy,
integer jy,
integer, dimension(*) descy,
integer incy )

Definition at line 1434 of file mpi.f.

1436 IMPLICIT NONE
1437 INTEGER N, IX, IY, JX, JY, INCX, INCY
1438 INTEGER DESCX(*), DESCY(*)
1439C DOUBLE COMPLEX A(*),X(*),Y(*)
1440 COMPLEX(kind=kind(0.0D0)) :: A(*),X(*),Y(*)
1441 WRITE(*,*) 'Error. PZAXPY should not be called.'
1442 stop
1443 RETURN

◆ pzdot()

subroutine pzdot ( integer n,
double precision dot,
complex(kind=kind(0.0d0)), dimension(*) x,
integer ix,
integer jx,
integer, dimension(*) descx,
integer incx,
complex(kind=kind(0.0d0)), dimension(*) y,
integer iy,
integer jy,
integer, dimension(*) descy,
integer incy )

Definition at line 999 of file mpi.f.

1001 IMPLICIT NONE
1002 INTEGER N, IX, JX, IY, JY, INCX, INCY
1003 INTEGER DESCX(*), DESCY(*)
1004C DOUBLE COMPLEX X(*), Y(*)
1005 COMPLEX(kind=kind(0.0D0)) :: X(*), Y(*)
1006 DOUBLE PRECISION DOT
1007 dot = 0.0d0
1008 WRITE(*,*) 'Error. PZDOT should not be called.'
1009 stop
1010 RETURN

◆ pzgecon()

subroutine pzgecon ( character norm,
integer n,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
double precision anorm,
double precision rcond,
complex(kind=kind(0.0d0)), dimension( * ) work,
integer lwork,
integer, dimension( * ) iwork,
integer liwork,
integer info )

Definition at line 1335 of file mpi.f.

1337 IMPLICIT NONE
1338
1339 CHARACTER NORM
1340 INTEGER IA, INFO, JA, LIWORK, LWORK, N
1341 DOUBLE PRECISION ANORM, RCOND
1342 INTEGER DESCA( * ), IWORK( * )
1343C DOUBLE COMPLEX A( * ), WORK( * )
1344 COMPLEX(kind=kind(0.0D0)) :: A( * ), WORK( * )
1345 WRITE(*,*) 'Error. PZGECON should not be called.'
1346 stop
1347 RETURN

◆ pzgeqpf()

subroutine pzgeqpf ( integer m,
integer n,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
complex(kind=kind(0.0d0)), dimension( * ) tau,
complex(kind=kind(0.0d0)), dimension( * ) work,
integer lwork,
integer info )

Definition at line 1389 of file mpi.f.

1391 IMPLICIT NONE
1392 INTEGER IA, JA, INFO, LWORK, M, N
1393 INTEGER DESCA( * ), IPIV( * )
1394C DOUBLE COMPLEX A( * ), TAU( * ), WORK( * )
1395 COMPLEX(kind=kind(0.0D0)) :: A( * ), TAU( * ), WORK( * )
1396 WRITE(*,*) 'Error. PZGEQPF should not be called.'
1397 stop
1398 RETURN

◆ pzgetrf()

subroutine pzgetrf ( integer m,
integer n,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
integer info )

Definition at line 845 of file mpi.f.

846 IMPLICIT NONE
847 INTEGER IA, INFO, JA, M, N
848 INTEGER DESCA( * ), IPIV( * )
849C DOUBLE COMPLEX A( * )
850 COMPLEX(kind=kind(0.0D0)) :: A( * )
851 WRITE(*,*) 'Error. PZGETRF should not be called.'
852 stop
853 RETURN

◆ pzgetrs()

subroutine pzgetrs ( character trans,
integer n,
integer nrhs,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer, dimension( * ) ipiv,
complex(kind=kind(0.0d0)), dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 1144 of file mpi.f.

1146 IMPLICIT NONE
1147 CHARACTER TRANS
1148 INTEGER IA, IB, INFO, JA, JB, N, NRHS
1149 INTEGER DESCA( * ), DESCB( * ), IPIV( * )
1150c DOUBLE COMPLEX A( * ), B( * )
1151 COMPLEX(kind=kind(0.0D0)) :: A( * ), B( * )
1152 WRITE(*,*) 'Error. PZGETRS should not be called.'
1153 stop
1154 RETURN

◆ pzlange()

double precision function pzlange ( character norm,
integer m,
integer n,
real, dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
real, dimension( * ) work )

Definition at line 1285 of file mpi.f.

1287 CHARACTER NORM
1288 INTEGER IA, JA, M, N
1289 INTEGER DESCA( * )
1290 REAL A( * ), WORK( * )
1291 pzlange = 0.0d0
1292 WRITE(*,*) 'Error. PZLANGE should not be called.'
1293 stop
1294 RETURN
double precision function pzlange(norm, m, n, a, ia, ja, desca, work)
Definition mpi.f:1287

◆ pzpotrf()

subroutine pzpotrf ( character uplo,
integer n,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
integer info )

Definition at line 833 of file mpi.f.

834 IMPLICIT NONE
835 CHARACTER UPLO
836 INTEGER IA, INFO, JA, N
837 INTEGER DESCA( * )
838C DOUBLE COMPLEX A( * )
839 COMPLEX(kind=kind(0.0D0)) :: A( * )
840 WRITE(*,*) 'Error. PZPOTRF should not be called.'
841 stop
842 RETURN

◆ pzpotrs()

subroutine pzpotrs ( character uplo,
integer n,
integer nrhs,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex(kind=kind(0.0d0)), dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 1193 of file mpi.f.

1195 IMPLICIT NONE
1196 CHARACTER UPLO
1197 INTEGER IA, IB, INFO, JA, JB, N, NRHS
1198 INTEGER DESCA( * ), DESCB( * )
1199c DOUBLE COMPLEX A( * ), B( * )
1200 COMPLEX(kind=kind(0.0D0)) :: A( * ), B( * )
1201 WRITE(*,*) 'Error. PZPOTRS should not be called.'
1202 stop
1203 RETURN

◆ pzscal()

subroutine pzscal ( integer n,
complex(kind=kind(0.0d0)) alpha,
complex(kind=kind(0.0d0)), dimension( * ) x,
integer ix,
integer jx,
integer, dimension( * ) descx,
integer incx )

Definition at line 965 of file mpi.f.

966 IMPLICIT NONE
967 INTEGER INCX, N, IX, JX
968C DOUBLE COMPLEX ALPHA
969C DOUBLE COMPLEX X( * )
970 COMPLEX(kind=kind(0.0D0)) :: ALPHA, X( * )
971 INTEGER DESCX( * )
972 WRITE(*,*) 'Error. PZSCAL should not be called.'
973 stop
974 RETURN

◆ pztrsm()

subroutine pztrsm ( character side,
character uplo,
character transa,
character diag,
integer m,
integer n,
complex(kind=kind(0.0d0)) alpha,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex(kind=kind(0.0d0)), dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb )

Definition at line 1481 of file mpi.f.

1483 IMPLICIT NONE
1484 CHARACTER SIDE, UPLO, TRANSA, DIAG
1485 INTEGER M, N, IA, JA, IB, JB
1486C DOUBLE COMPLEX ALPHA
1487 COMPLEX(kind=kind(0.0D0)) :: ALPHA
1488 INTEGER DESCA( * ), DESCB( * )
1489C DOUBLE COMPLEX A( * ), B( * )
1490 COMPLEX(kind=kind(0.0D0)) :: A( * ), B( * )
1491 WRITE(*,*) 'Error. PZTRSM should not be called.'
1492 stop
1493 RETURN

◆ pztrtrs()

subroutine pztrtrs ( character uplo,
character trans,
character diag,
integer n,
integer nrhs,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex(kind=kind(0.0d0)), dimension( * ) b,
integer ib,
integer jb,
integer, dimension( * ) descb,
integer info )

Definition at line 856 of file mpi.f.

858 IMPLICIT NONE
859 CHARACTER DIAG, TRANS, UPLO
860 INTEGER IA, IB, INFO, JA, JB, N, NRHS
861 INTEGER DESCA( * ), DESCB( * )
862C DOUBLE COMPLEX A( * ), B( * )
863 COMPLEX(kind=kind(0.0D0)) :: A( * ), B( * )
864 WRITE(*,*) 'Error. PZTRTRS should not be called.'
865 stop
866 RETURN

◆ pzunmqr()

subroutine pzunmqr ( character side,
character trans,
integer m,
integer n,
integer k,
complex(kind=kind(0.0d0)), dimension( * ) a,
integer ia,
integer ja,
integer, dimension( * ) desca,
complex(kind=kind(0.0d0)), dimension( * ) tau,
complex(kind=kind(0.0d0)), dimension( * ) c,
integer ic,
integer jc,
integer, dimension( * ) descc,
complex(kind=kind(0.0d0)), dimension( * ) work,
integer lwork,
integer info )

Definition at line 1535 of file mpi.f.

1538 IMPLICIT NONE
1539 CHARACTER SIDE, TRANS
1540 INTEGER IA, IC, INFO, JA, JC, K, LWORK, M, N
1541 INTEGER DESCA( * ), DESCC( * )
1542C DOUBLE COMPLEX A( * ), C( * ), TAU( * ), WORK( * )
1543 COMPLEX(kind=kind(0.0D0)) :: A( * ), C( * ), TAU( * ), WORK( * )
1544 WRITE(*,*) 'Error. PZUNMQR should not be called.'
1545 stop
1546 RETURN

◆ sgebr2d()

subroutine sgebr2d ( integer contxt,
character scope,
character top,
integer m,
integer n,
real, dimension(*) a,
integer lda )

Definition at line 1112 of file mpi.f.

1113 IMPLICIT NONE
1114 INTEGER CONTXT, M, N, LDA
1115 REAL A(*)
1116 CHARACTER SCOPE, TOP
1117 WRITE(*,*) 'Error. SGEBR2D should not be called.'
1118 stop
1119 RETURN

◆ sgebs2d()

subroutine sgebs2d ( integer contxt,
character scope,
character top,
integer m,
integer n,
real, dimension(*) a,
integer lda )

Definition at line 1071 of file mpi.f.

1072 IMPLICIT NONE
1073 INTEGER CONTXT, M, N, LDA
1074 REAL A(*)
1075 CHARACTER SCOPE, TOP
1076 WRITE(*,*) 'Error. SGEBS2D should not be called.'
1077 stop
1078 RETURN

◆ zgebr2d()

subroutine zgebr2d ( integer contxt,
character scope,
character top,
integer m,
integer n,
complex(kind=kind(0.0d0)), dimension(*) a,
integer lda )

Definition at line 1091 of file mpi.f.

1092 IMPLICIT NONE
1093 INTEGER CONTXT, M, N, LDA
1094C DOUBLE COMPLEX A(*)
1095 COMPLEX(kind=kind(0.0D0)) :: A(*)
1096 CHARACTER SCOPE, TOP
1097 WRITE(*,*) 'Error. ZGEBR2D should not be called.'
1098 stop
1099 RETURN

◆ zgebs2d()

subroutine zgebs2d ( integer contxt,
character scope,
character top,
integer m,
integer n,
complex(kind=kind(0.0d0)), dimension(*) a,
integer lda )

Definition at line 1050 of file mpi.f.

1051 IMPLICIT NONE
1052 INTEGER CONTXT, M, N, LDA
1053C DOUBLE COMPLEX A(*)
1054 COMPLEX(kind=kind(0.0D0)) :: A(*)
1055 CHARACTER SCOPE, TOP
1056 WRITE(*,*) 'Error. ZGEBS2D should not be called.'
1057 stop
1058 RETURN