blob: 772adc006ec7d4d2cc1012645df2e963ff21c1cc [file] [log] [blame]
c---------------------------------------------------------------------
c---------------------------------------------------------------------
subroutine exact_solution(xi,eta,zeta,dtemp)
c---------------------------------------------------------------------
c---------------------------------------------------------------------
c---------------------------------------------------------------------
c this function returns the exact solution at point xi, eta, zeta
c---------------------------------------------------------------------
c include 'header.h'
implicit none
double precision tx1, tx2, tx3, ty1, ty2, ty3, tz1, tz2, tz3,
> dx1, dx2, dx3, dx4, dx5, dy1, dy2, dy3, dy4,
> dy5, dz1, dz2, dz3, dz4, dz5, dssp, dt,
> ce(5,13), dxmax, dymax, dzmax, xxcon1, xxcon2,
> xxcon3, xxcon4, xxcon5, dx1tx1, dx2tx1, dx3tx1,
> dx4tx1, dx5tx1, yycon1, yycon2, yycon3, yycon4,
> yycon5, dy1ty1, dy2ty1, dy3ty1, dy4ty1, dy5ty1,
> zzcon1, zzcon2, zzcon3, zzcon4, zzcon5, dz1tz1,
> dz2tz1, dz3tz1, dz4tz1, dz5tz1, dnxm1, dnym1,
> dnzm1, c1c2, c1c5, c3c4, c1345, conz1, c1, c2,
> c3, c4, c5, c4dssp, c5dssp, dtdssp, dttx1, bt,
> dttx2, dtty1, dtty2, dttz1, dttz2, c2dttx1,
> c2dtty1, c2dttz1, comz1, comz4, comz5, comz6,
> c3c4tx3, c3c4ty3, c3c4tz3, c2iv, con43, con16
common /constants/ tx1, tx2, tx3, ty1, ty2, ty3, tz1, tz2, tz3,
> dx1, dx2, dx3, dx4, dx5, dy1, dy2, dy3, dy4,
> dy5, dz1, dz2, dz3, dz4, dz5, dssp, dt,
> ce, dxmax, dymax, dzmax, xxcon1, xxcon2,
> xxcon3, xxcon4, xxcon5, dx1tx1, dx2tx1, dx3tx1,
> dx4tx1, dx5tx1, yycon1, yycon2, yycon3, yycon4,
> yycon5, dy1ty1, dy2ty1, dy3ty1, dy4ty1, dy5ty1,
> zzcon1, zzcon2, zzcon3, zzcon4, zzcon5, dz1tz1,
> dz2tz1, dz3tz1, dz4tz1, dz5tz1, dnxm1, dnym1,
> dnzm1, c1c2, c1c5, c3c4, c1345, conz1, c1, c2,
> c3, c4, c5, c4dssp, c5dssp, dtdssp, dttx1, bt,
> dttx2, dtty1, dtty2, dttz1, dttz2, c2dttx1,
> c2dtty1, c2dttz1, comz1, comz4, comz5, comz6,
> c3c4tx3, c3c4ty3, c3c4tz3, c2iv, con43, con16
double precision xi, eta, zeta
double precision dtemp(5)
integer m
do m = 1, 5
dtemp(m) = ce(m,1) +
> xi*(ce(m,2) + xi*(ce(m,5) + xi*(ce(m,8) + xi*ce(m,11)))) +
> eta*(ce(m,3) + eta*(ce(m,6) + eta*(ce(m,9) + eta*ce(m,12))))+
> zeta*(ce(m,4) + zeta*(ce(m,7) + zeta*(ce(m,10) +
> zeta*ce(m,13))))
end do
return
end