45 subroutine dpotrf(uplo, n, a, lda, info)
46 use,
intrinsic :: iso_fortran_env
48 character(1),
intent(in) :: uplo
49 integer,
intent(in) :: n
50 real(real64),
intent(inout) :: a
51 integer,
intent(in) :: lda
52 integer,
intent(out) :: info
55 subroutine zpotrf(uplo, n, a, lda, info)
56 use,
intrinsic :: iso_fortran_env
58 character(1),
intent(in) :: uplo
59 integer,
intent(in) :: n
60 complex(real64),
intent(inout) :: a
61 integer,
intent(in) :: lda
62 integer,
intent(out) :: info
72 subroutine dsygv(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, info)
73 use,
intrinsic :: iso_fortran_env
75 character(1),
intent(in) :: jobz, uplo
76 integer,
intent(in) :: itype, n, lda, ldb, lwork
77 real(real64),
intent(inout) :: a, b
78 real(real64),
intent(out) :: w, work
79 integer,
intent(out) :: info
89 subroutine zhegv(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, rwork, info)
90 use,
intrinsic :: iso_fortran_env
92 character(1),
intent(in) :: jobz, uplo
93 integer,
intent(in) :: n, itype, lda, ldb, lwork
94 complex(real64),
intent(inout) :: a, b
95 real(real64),
intent(out) :: w, rwork
96 complex(real64),
intent(out) :: work
97 integer,
intent(out) :: info
118 subroutine dgeev(jobvl, jobvr, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, work, lwork, rwork, info)
119 use,
intrinsic :: iso_fortran_env
121 character(1),
intent(in) :: jobvl, jobvr
122 integer,
intent(in) :: n, lda, ldvl, ldvr, lwork
123 real(real64),
intent(inout) :: a
124 real(real64),
intent(out) :: wr, wi, vl, vr
125 real(real64),
intent(out) :: rwork
126 real(real64),
intent(out) :: work
127 integer,
intent(out) :: info
130 subroutine zgeev(jobvl, jobvr, n, a, lda, w, vl, ldvl, vr, ldvr, work, lwork, rwork, info)
131 use,
intrinsic :: iso_fortran_env
133 character(1),
intent(in) :: jobvl, jobvr
134 integer,
intent(in) :: n, lda, ldvl, ldvr, lwork
135 complex(real64),
intent(inout) :: a
136 complex(real64),
intent(out) :: w, vl, vr
137 real(real64),
intent(out) :: rwork
138 complex(real64),
intent(out) :: work
139 integer,
intent(out) :: info
144 subroutine dgesvx(fact, trans, n, nrhs, a, lda, af, ldaf, ipiv, equed, r, &
145 c, b, ldb, x, ldx, rcond, ferr, berr, work, iwork, info)
146 use,
intrinsic :: iso_fortran_env
148 character(1),
intent(in) :: fact, trans
149 integer,
intent(in) :: n, nrhs, lda, ldaf, ldb, ldx
150 real(real64),
intent(inout) :: a, af, r, c, b
151 integer,
intent(inout) :: ipiv
152 real(real64),
intent(out) :: x, ferr, berr, work
153 real(real64),
intent(out) :: rcond
154 character(1),
intent(inout) :: equed
155 integer,
intent(out) :: iwork
156 integer,
intent(out) :: info
157 end subroutine dgesvx
159 subroutine zgesvx (fact, trans, n, nrhs, a, lda, af, ldaf, ipiv, equed, r, &
160 c, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
161 use,
intrinsic :: iso_fortran_env
163 character(1),
intent(in) :: fact, trans
164 integer,
intent(in) :: n, nrhs, lda, ldaf, ldb, ldx
165 complex(real64),
intent(inout) :: a, af, b
166 real(real64),
intent(inout) :: r, c
167 integer,
intent(inout) :: ipiv
168 real(real64),
intent(out) :: ferr, berr
169 real(real64),
intent(out) :: rcond
170 complex(real64),
intent(out) :: x, work
171 character(1),
intent(inout) :: equed
172 real(real64),
intent(out) :: rwork
173 integer,
intent(out) :: info
174 end subroutine zgesvx
180 subroutine dsyev(jobz, uplo, n, a, lda, w, work, lwork, info)
181 use,
intrinsic :: iso_fortran_env
183 character(1),
intent(in) :: jobz, uplo
184 integer,
intent(in) :: n, lda, lwork
185 real(real64),
intent(inout) :: a
186 real(real64),
intent(out) :: w, work
187 integer,
intent(out) :: info
194 subroutine zheev(jobz, uplo, n, a, lda, w, work, lwork, rwork, info)
195 use,
intrinsic :: iso_fortran_env
197 character(1),
intent(in) :: jobz, uplo
198 integer,
intent(in) :: n, lda, lwork
199 complex(real64),
intent(inout) :: a
200 real(real64),
intent(out) :: w, rwork
201 complex(real64),
intent(out) :: work
202 integer,
intent(out) :: info
207 subroutine dsyevx(jobz, range, uplo, n, a, lda, &
208 vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)
209 use,
intrinsic :: iso_fortran_env
211 integer,
intent(in) :: n, lda, il, iu, ldz, lwork
212 character(1),
intent(in) :: jobz, range, uplo
213 integer,
intent(out) :: m, iwork, ifail, info
214 real(real64),
intent(in) :: vl, vu, abstol
215 real(real64),
intent(inout) :: a
216 real(real64),
intent(out) :: w, z, work
219 subroutine zheevx(jobz, range, uplo, n, a, lda, &
220 vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)
221 use,
intrinsic :: iso_fortran_env
223 integer,
intent(in) :: n, lda, il, iu, ldz, lwork
224 character(1),
intent(in) :: jobz, range, uplo
225 integer,
intent(out) :: m, iwork, ifail, info
226 real(real64),
intent(in) :: vl, vu, abstol
227 real(real64),
intent(out) :: w
228 complex(real64),
intent(inout) :: a
229 complex(real64),
intent(out) :: z, work
238 subroutine dgeqrf(m, n, a, lda, tau, work, lwork, info)
239 use,
intrinsic :: iso_fortran_env
241 integer,
intent(in) :: lda, lwork, m, n
242 real(real64),
intent(inout) :: a
243 real(real64),
intent(out) :: tau, work
244 integer,
intent(out) :: info
245 end subroutine dgeqrf
247 subroutine zgeqrf(m, n, a, lda, tau, work, lwork, info)
248 use,
intrinsic :: iso_fortran_env
250 integer,
intent(in) :: lda, lwork, m, n
251 complex(real64),
intent(inout) :: a
252 complex(real64),
intent(out) :: tau, work
253 integer,
intent(out) :: info
254 end subroutine zgeqrf
267 subroutine dorgqr(m, n, k, a, lda, tau, work, lwork, info)
268 use,
intrinsic :: iso_fortran_env
270 integer,
intent(in) :: k, lda, lwork, m, n
271 real(real64),
intent(in) :: tau
272 real(real64),
intent(inout) :: a
273 real(real64),
intent(out) :: work
274 integer,
intent(out) :: info
275 end subroutine dorgqr
277 subroutine zungqr(m, n, k, a, lda, tau, work, lwork, info)
278 use,
intrinsic :: iso_fortran_env
280 integer,
intent(in) :: k, lda, lwork, m, n
281 complex(real64),
intent(in) :: tau
282 complex(real64),
intent(inout) :: a
283 complex(real64),
intent(out) :: work
284 integer,
intent(out) :: info
285 end subroutine zungqr
295 subroutine dsygvx(itype, jobz, range, uplo, n, a, lda, b, ldb, vl, vu, il, iu, abstol, &
296 m, w, z, ldz, work, lwork, iwork, ifail, info)
297 use,
intrinsic :: iso_fortran_env
300 integer,
intent(in) :: itype
301 character(len=1),
intent(in) :: jobz
302 character(len=1),
intent(in) :: range
303 character(len=1),
intent(in) :: uplo
304 integer,
intent(in) :: n
305 real(real64),
intent(inout) :: a
306 integer,
intent(in) :: lda
307 real(real64),
intent(inout) :: b
308 integer,
intent(in) :: ldb
309 real(real64),
intent(in) :: vl
310 real(real64),
intent(in) :: vu
311 integer,
intent(in) :: il
312 integer,
intent(in) :: iu
313 real(real64),
intent(in) :: abstol
314 integer,
intent(out) :: m
315 real(real64),
intent(out) :: w
316 real(real64),
intent(out) :: z
317 integer,
intent(in) :: ldz
318 real(real64),
intent(out) :: work
319 integer,
intent(in) :: lwork
320 integer,
intent(out) :: iwork
321 integer,
intent(out) :: ifail
322 integer,
intent(out) :: info
323 end subroutine dsygvx
333 subroutine zhegvx(itype, jobz, range, uplo, n, a, lda, b, ldb, vl, vu, il, iu, abstol, &
334 m, w, z, ldz, work, lwork, rwork, iwork, ifail, info)
335 use,
intrinsic :: iso_fortran_env
338 integer,
intent(in) :: itype
339 character(len=1),
intent(in) :: jobz
340 character(len=1),
intent(in) :: range
341 character(len=1),
intent(in) :: uplo
342 integer,
intent(in) :: n
343 complex(real64),
intent(inout) :: a
344 integer,
intent(in) :: lda
345 complex(real64),
intent(inout) :: b
346 integer,
intent(in) :: ldb
347 real(real64),
intent(in) :: vl
348 real(real64),
intent(in) :: vu
349 integer,
intent(in) :: il
350 integer,
intent(in) :: iu
351 real(real64),
intent(in) :: abstol
352 integer,
intent(out) :: m
353 real(real64),
intent(out) :: w
354 complex(real64),
intent(out) :: z
355 integer,
intent(in) :: ldz
356 complex(real64),
intent(out) :: work
357 integer,
intent(in) :: lwork
358 real(real64),
intent(out) :: rwork
359 integer,
intent(out) :: iwork
360 integer,
intent(out) :: ifail
361 integer,
intent(out) :: info
362 end subroutine zhegvx
366 subroutine dgelss(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, info)
367 use,
intrinsic :: iso_fortran_env
369 integer,
intent(in) :: m
370 integer,
intent(in) :: n
371 integer,
intent(in) :: nrhs
372 real(real64),
intent(inout) :: a
373 integer,
intent(in) :: lda
374 real(real64),
intent(inout) :: b
375 integer,
intent(in) :: ldb
376 real(real64),
intent(out) :: s
377 real(real64),
intent(in) :: rcond
378 integer,
intent(out) :: rank
379 real(real64),
intent(out) :: work
380 integer,
intent(in) :: lwork
381 integer,
intent(out) :: info
382 end subroutine dgelss
384 subroutine zgelss(m, n, nrhs, a, lda, b, ldb, s, rcond, rank, work, lwork, rwork, info)
385 use,
intrinsic :: iso_fortran_env
387 integer,
intent(in) :: m
388 integer,
intent(in) :: n
389 integer,
intent(in) :: nrhs
390 complex(real64),
intent(inout) :: a
391 integer,
intent(in) :: lda
392 complex(real64),
intent(inout) :: b
393 integer,
intent(in) :: ldb
394 real(real64),
intent(out) :: s
395 real(real64),
intent(in) :: rcond
396 integer,
intent(out) :: rank
397 complex(real64),
intent(out) :: work
398 integer,
intent(in) :: lwork
399 real(real64),
intent(out) :: rwork
400 integer,
intent(out) :: info
401 end subroutine zgelss
405 subroutine dgetrf (m, n, a, lda, ipiv, info)
406 use,
intrinsic :: iso_fortran_env
408 integer,
intent(in) :: m, n, lda
409 real(real64),
intent(inout) :: a
410 integer,
intent(out) :: ipiv
411 integer,
intent(out) :: info
412 end subroutine dgetrf
414 subroutine zgetrf (m, n, a, lda, ipiv, info)
415 use,
intrinsic :: iso_fortran_env
417 integer,
intent(in) :: m, n, lda
418 complex(real64),
intent(inout) :: a
419 integer,
intent(out) :: ipiv
420 integer,
intent(out) :: info
421 end subroutine zgetrf
425 subroutine dgetri(n, a, lda, ipiv, work, lwork, info)
426 use,
intrinsic :: iso_fortran_env
428 integer,
intent(in) :: n, lda, lwork
429 real(real64),
intent(inout) :: a
430 integer,
intent(in) :: ipiv
431 real(real64),
intent(out) :: work
432 integer,
intent(out) :: info
433 end subroutine dgetri
435 subroutine zgetri(n, a, lda, ipiv, work, lwork, info)
436 use,
intrinsic :: iso_fortran_env
438 integer,
intent(in) :: n, lda, lwork
439 complex(real64),
intent(inout) :: a
440 integer,
intent(in) :: ipiv
441 complex(real64),
intent(out) :: work
442 integer,
intent(out) :: info
443 end subroutine zgetri
447 subroutine dsytrf(uplo, n, a, lda, ipiv, work, lwork, info)
448 use,
intrinsic :: iso_fortran_env
450 character(1),
intent(in) :: uplo
451 integer,
intent(in) :: n, lda, lwork
452 real(real64),
intent(inout) :: a
453 integer,
intent(out) :: ipiv
454 real(real64),
intent(out) :: work
455 integer,
intent(out) :: info
456 end subroutine dsytrf
458 subroutine zsytrf(uplo, n, a, lda, ipiv, work, lwork, info)
459 use,
intrinsic :: iso_fortran_env
461 character(1),
intent(in) :: uplo
462 integer,
intent(in) :: n, lda, lwork
463 complex(real64),
intent(inout) :: a
464 integer,
intent(out) :: ipiv
465 complex(real64),
intent(out) :: work
466 integer,
intent(out) :: info
467 end subroutine zsytrf
471 subroutine dsytri (uplo, n, a, lda, ipiv, work, info)
472 use,
intrinsic :: iso_fortran_env
474 character(1),
intent(in) :: uplo
475 integer,
intent(in) :: n, lda
476 real(real64),
intent(inout) :: a
477 integer,
intent(in) :: ipiv
478 real(real64),
intent(out) :: work
479 integer,
intent(out) :: info
480 end subroutine dsytri
482 subroutine zsytri (uplo, n, a, lda, ipiv, work, info)
483 use,
intrinsic :: iso_fortran_env
485 character(1),
intent(in) :: uplo
486 integer,
intent(in) :: n, lda
487 complex(real64),
intent(inout) :: a
488 integer,
intent(in) :: ipiv
489 complex(real64),
intent(out) :: work
490 integer,
intent(out) :: info
491 end subroutine zsytri
Computes for an complex nonsymmetric matrix A, the eigenvalues and, optionally, the left and/or righ...
Computes a QR factorization of a real matrix A:
Computes all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix A.
Computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-def...
Computes selected eigenvalues, and optionally, eigenvectors of a complex generalized Hermitian-defini...
Generates an real matrix Q with orthonormal columns, which is defined as the first N columns of a pr...
computes the Cholesky factorization of a real symmetric positive definite matrix A.
Computes all eigenvalues and, optionally, eigenvectors of a real symmetric matrix A.
Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-defini...
Computes selected eigenvalues, and optionally, eigenvectors of a real generalized symmetric-definite ...
This module contains interfaces for LAPACK routines.