75 IMPLICIT DOUBLE PRECISION (
a-h,o-
z)
113 od=100.d0*abs(btens(ip,iq))
114 IF((od+abs(stret(ip)).NE.abs(stret(ip))).AND. &
115 (od+abs(stret(iq)).NE.abs(stret(iq))))
THEN
116 hd=stret(iq)-stret(ip)
120 IF(abs(hd)+od.EQ.abs(hd))
THEN
123 theta=0.5d0*hd/btens(ip,iq)
124 t=1.d0/(abs(theta)+
sqrt(1.d0+theta**2))
125 IF(theta.LT.0.d0) t=-t
130 c=1.d0/
sqrt(1.d0+t**2)
134 stret(ip)=stret(ip)-h
135 stret(iq)=stret(iq)+h
141 h=btens(
min(ir,iq),
max(ir,iq))
142 btens(
min(ir,ip),
max(ir,ip))=
g-
s*(h+
g*tau)
143 btens(
min(ir,iq),
max(ir,iq))=h+
s*(
g-h*tau)
150 princ(ir,ip)=
g-
s*(h+
g*tau)
151 princ(ir,iq)=h+
s*(
g-h*tau)
163 100
FORMAT(
' Jacobi iteration unable to converge')
Tfloat sum() const
Return the sum of all the pixel values in an image.
int dimension() const
Get the dimension of the mesh.
Vector_n max(const Array_n_const &v1, const Array_n_const &v2)
void int int int REAL REAL REAL * z
subroutine jacobi(btens, stret, princ)
Vector_n min(const Array_n_const &v1, const Array_n_const &v2)