Repository navigation
Expand file tree
/
Copy pathmath.pyf
More file actions
117 lines (109 loc) · 6.19 KB
/
Copy pathmath.pyf
File metadata and controls
117 lines (109 loc) · 6.19 KB
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
! -*- f90 -*-
! Note: the context of this file is case sensitive.
subroutine mc01td(dico,dp,p,stable,nz,dwork,iwarn,info) ! in :new:MC01TD.f
character :: dico
integer intent(in,out),check(dp>=0) :: dp
double precision intent(in),check(shape(p,0)==dp+1),dimension(dp+1),depend(dp) :: p
logical intent(out) :: stable
integer intent(out) :: nz
double precision intent(cache,hide),dimension(2*dp+2),depend(dp) :: dwork
integer intent(out) :: iwarn
integer intent(out) :: info
end subroutine mc01td
subroutine mb03rd(jobx,sort,n,pmax,a,lda,x,ldx,nblcks,blsize,wr,wi,tol,dwork,info) ! in MB03RD.f
character intent(in) :: jobx
character intent(in),required :: sort
integer intent(in),required,check(n>=0) :: n
double precision intent(in),required,check(pmax>=1.0) :: pmax
double precision intent(in,out,copy),dimension(lda,n),depend(n) :: a
integer intent(hide),check(lda>=max(1,n)) :: lda=shape(a,0)
double precision intent(in,out,copy),dimension(ldx,n),depend(n) :: x
integer intent(hide),check((*jobx == 'N' && ldx>=1) || (*jobx == 'U' && ldx >= max(1,n))) :: ldx=shape(x,0)
integer intent(out) :: nblcks
integer intent(out),dimension(n) :: blsize
double precision intent(out),dimension(n) :: wr
double precision intent(out),dimension(n) :: wi
double precision intent(in) :: tol
double precision intent(cache,hide),dimension(n) :: dwork
integer intent(out) :: info
end subroutine mb03rd
subroutine mb03vd(n,p,ilo,ihi,a,lda1,lda2,tau,ldtau,dwork,info) ! in MB03VD.f
integer intent(in),check(n>=0) :: n
integer intent(hide),depend(a),check(p>=1) :: p=shape(a,2)
integer intent(in),depend(n),check(1<=ilo && ilo<=max(1,n)) :: ilo
integer intent(in),depend(n,ilo),check(min(ilo,n)<=ihi && ihi<=n) :: ihi
double precision intent(in,out,copy),dimension(lda1,lda2,p) :: a
integer intent(hide),depend(a,n),check(lda1>=max(1,n)) :: lda1=shape(a,0)
integer intent(hide),depend(a,n),check(lda2>=max(1,n)) :: lda2=shape(a,1)
double precision intent(out),depend(n,p),dimension(max(1,n-1),p) :: tau
integer intent(hide),depend(tau) :: ldtau=shape(tau,0)
double precision intent(hide,cache),depend(n),dimension(n) :: dwork
integer intent(out) :: info
end subroutine mb03vd
subroutine mb03vy(n,p,ilo,ihi,a,lda1,lda2,tau,ldtau,dwork,ldwork,info) ! in MB03VY.f
integer intent(in),check(n>=0) :: n
integer intent(hide),depend(a),check(p>=1) :: p=shape(a,2)
integer intent(in),depend(n),check(1<=ilo && ilo<=max(1,n)) :: ilo
integer intent(in),depend(n,ilo),check(min(ilo,n)<=ihi && ihi<=n) :: ihi
double precision intent(in,out,copy),dimension(lda1,lda2,p) :: a
integer intent(hide),depend(a,n),check(lda1>=max(1,n)) :: lda1=shape(a,0)
integer intent(hide),depend(a,n),check(lda2>=max(1,n)) :: lda2=shape(a,1)
double precision intent(in),depend(n,p),dimension(ldtau,p) :: tau
integer intent(hide),depend(tau),check(ldtau>=max(1,n-1)) :: ldtau=shape(tau,0)
double precision intent(hide,cache),depend(ldwork),dimension(ldwork) :: dwork
integer intent(in),optional,check(ldwork>=max(1,n)) :: ldwork=max(1,n)
integer intent(out) :: info
end subroutine mb03vy
subroutine mb03wd(job,compz,n,p,ilo,ihi,iloz,ihiz,h,ldh1,ldh2,z,ldz1,ldz2,wr,wi,dwork,ldwork,info) ! in MB03WD.f
character intent(in) :: job
character intent(in) :: compz
integer intent(in),check(n>=0) :: n
integer intent(hide),depend(h),check(p>=1) :: p=shape(h,2)
integer intent(in),depend(n),check(1<=ilo && ilo<=max(1,n)) :: ilo
integer intent(in),depend(n,ilo),check(min(ilo,n)<=ihi && ihi<=n) :: ihi
integer intent(in),depend(ilo),check(1<=iloz & iloz<=ilo) :: iloz
integer intent(in),depend(n,ihi),check(ihi<=ihiz && ihiz<=n) :: ihiz
double precision intent(in,out,copy),dimension(ldh1,ldh2,p) :: h
integer intent(hide),depend(h,n),check(ldh1>=max(1,n)) :: ldh1=shape(h,0)
integer intent(hide),depend(h,n),check(ldh2>=max(1,n)) :: ldh2=shape(h,1)
double precision intent(in,out,copy),depend(p),dimension(ldz1,ldz2,p) :: z
integer intent(hide),depend(z) :: ldz1=shape(z,0)
integer intent(hide),depend(z) :: ldz2=shape(z,1)
double precision intent(out), dimension(n), depend(n) :: wr
double precision intent(out), dimension(n), depend(n) :: wi
double precision intent(hide,cache), dimension(ldwork) :: dwork
integer optional,check(ldwork>=ihi-ilo+p-1), depend(ihi,ilo,p) :: ldwork=max(1,ihi-ilo+p-1)
integer intent(out) :: info
end subroutine mb03wd
subroutine mb05md(balanc,n,delta,a,lda,v,ldv,y,ldy,valr,vali,iwork,dwork,ldwork,info) ! in MB05MD.f
character intent(in):: balanc
integer intent(in),check(n>=0) :: n
double precision intent(in):: delta
double precision intent(in,out,copy),dimension(lda,*) :: a
integer intent(hide),depend(a) :: lda=shape(a,0)
double precision intent(out),depend(n),dimension(n,n) :: v
integer, intent(hide),depend(v) :: ldv=shape(v,0)
double precision intent(out),depend(n),dimension(n,n) :: y
integer, intent(hide),depend(y) :: ldy=shape(y,0)
double precision intent(out),depend(n),dimension(n) :: valr
double precision intent(out),depend(n),dimension(n) :: vali
integer intent(cache,hide),depend(n),dimension(n) :: iwork
double precision intent(cache,hide),depend(n),dimension(4*n) :: dwork
integer intent(hide),depend(dwork) :: ldwork=shape(dwork,0)
integer intent(out) :: info
end subroutine mb05md
subroutine mb05nd(n,delta,a,lda,ex,ldex,exint,ldexin,tol,iwork,dwork,ldwork,info) ! in :mb05nd:MB05ND.f
integer required,check(n>=0):: n
double precision required:: delta
double precision intent(in),dimension(n,n),depend(n) :: a
integer intent(hide),check(shape(a,0)==lda),depend(a) :: lda=shape(a,0)
double precision intent(out,copy),dimension(n,n) :: ex
integer intent(hide),check(shape(ex,0)==ldex),depend(ex) :: ldex=shape(ex,0)
double precision intent(out,copy),dimension(n,n) :: exint
integer intent(hide),check(shape(exint,0)==ldexin),depend(exint) :: ldexin=shape(exint,0)
double precision required :: tol
integer intent(cache,hide),dimension(n),depend(n) :: iwork
double precision intent(cache,hide),dimension(max(2*n*n,1)),depend(n) :: dwork
integer intent(hide),depend(dwork):: ldwork=shape(dwork,0)
integer intent(out) :: info
end subroutine mb05nd