36 SUBROUTINE func_slope(IDN,FAC,NPC,PLD,STIFFMIN,STIFFMAX,STIFFINI,STIFFAVG)
45#include "implicit_f.inc"
50 my_real pld(*),fac,stiffmin,stiffmax,stiffini,stiffavg
52 INTENT(IN) :: npc,pld,idn
53 INTENT(OUT) :: stiffmax,stiffini,stiffavg
57 INTEGER I,J,K,ID,NP1,NP2,K1,PN1,PN2,COUNT
71 dx = pld(j+2) - pld(j)
72 dy = pld(j+3) - pld(j+1)
74 stiffmax =
max(stiffmax,dydx)
75 stiffmin =
min(stiffmin,dydx)
76 stiffavg = stiffavg + dydx
77 IF(pld(j+2)== zero )
THEN
78 dx = pld(j+2) - pld(j)
79 dy = pld(j+3) - pld(j+1)
80 stiffini =
max(stiffini, fac*dy/dx)
81 ELSEIF(pld(j) == zero)
THEN
82 dx = pld(j+2) - pld(j)
83 dy = pld(j+3) - pld(j+1)
84 stiffini =
max(stiffini, fac*dy/dx)
85 ELSEIF(pld(pn1) >= zero)
THEN
86 dx = pld(pn1+2) - pld(pn1 )
87 dy = pld(pn1+3) - pld(pn1 + 1)
88 stiffini =
max(stiffini, fac*dy/dx)
91 stiffavg = stiffavg / count
102 SUBROUTINE unify_x(IDN1,IDN2,NPC,PLD,NPOINT,LEN1,LEN2,XUNI,NPTNEW)
111#include "implicit_f.inc"
115 INTEGER IDN1,IDN2,IDN,NPOINT,LEN1,LEN2,
118 . pld(*),xuni(npoint)
120 INTENT(IN) :: npc,pld
124 INTEGER I,J,K,ID,NP1,NP2,K1,PN1,PN2
135 IF(i == 2*len1 .AND. j == 2*len2 )
THEN
138 IF ((ec < et.AND.i<2*len1) .OR. j >= 2*len2)
THEN
141 ec = pld(npc(idn1)+ i )
142 ELSEIF ((ec > et.AND.j<2*len2) .OR. i >= 2*len1)
THEN
145 et = pld(npc(idn2)+ j )
146 ELSEIF (ec == et)
THEN
150 ec = pld(npc(idn1)+ i )
151 et = pld(npc(idn2)+ j )
subroutine unify_x(idn1, idn2, npc, pld, npoint, len1, len2, xuni, nptnew)
subroutine func_slope(idn, fac, npc, pld, stiffmin, stiffmax, stiffini, stiffavg)