6subroutine mixerifc(mtype,n,v,dv,nwork,work)
10integer,
intent(in) :: mtype,n
11real(8),
intent(inout) :: v(n)
12real(8),
intent(out) :: dv
13integer,
intent(inout) :: nwork
14real(8),
intent(inout) :: work(*)
37 work(4*n+1),work((4+
mixsdb)*n+1),work((4+2*
mixsdb)*n+1),dv)
40 write(*,
'("Error(mixerifc): mtype not defined : ",I8)') mtype
49integer,
intent(in) :: mtype
50character(*),
intent(out) :: mixdescr
53 mixdescr=
'Linear mixing'
55 mixdescr=
'Adaptive linear mixing'
57 mixdescr=
'Broyden mixing, J. Phys. A: Math. Gen. 17, L317 (1984)'
60 write(*,
'("Error(getmixdata): mixtype not defined : ",I8)') mtype
pure subroutine mixadapt(iscl, beta0, betamax, n, nu, mu, beta, f, d)
subroutine mixbroyden(iscl, n, msd, alpha, w0, nu, mu, f, df, u, a, d)
subroutine mixerifc(mtype, n, v, dv, nwork, work)
subroutine getmixdata(mtype, mixdescr)
pure subroutine mixlinear(iscl, beta, n, nu, mu, d)
real(8), dimension(2) broydpm
real(8), dimension(2) amixpm