| c--------------------------------------------------------------------- |
| c--------------------------------------------------------------------- |
| |
| subroutine exact( i, j, k, u000ijk ) |
| |
| c--------------------------------------------------------------------- |
| c--------------------------------------------------------------------- |
| |
| c--------------------------------------------------------------------- |
| c |
| c compute the exact solution at (i,j,k) |
| c |
| c--------------------------------------------------------------------- |
| |
| implicit none |
| |
| include 'applu.incl' |
| |
| c--------------------------------------------------------------------- |
| c input parameters |
| c--------------------------------------------------------------------- |
| integer i, j, k |
| double precision u000ijk(*) |
| |
| c--------------------------------------------------------------------- |
| c local variables |
| c--------------------------------------------------------------------- |
| integer m |
| double precision xi, eta, zeta |
| |
| xi = ( dble ( i - 1 ) ) / ( nx0 - 1 ) |
| eta = ( dble ( j - 1 ) ) / ( ny0 - 1 ) |
| zeta = ( dble ( k - 1 ) ) / ( nz - 1 ) |
| |
| |
| do m = 1, 5 |
| u000ijk(m) = ce(m,1) |
| > + (ce(m,2) |
| > + (ce(m,5) |
| > + (ce(m,8) |
| > + ce(m,11) * xi) * xi) * xi) * xi |
| > + (ce(m,3) |
| > + (ce(m,6) |
| > + (ce(m,9) |
| > + ce(m,12) * eta) * eta) * eta) * eta |
| > + (ce(m,4) |
| > + (ce(m,7) |
| > + (ce(m,10) |
| > + ce(m,13) * zeta) * zeta) * zeta) * zeta |
| end do |
| |
| return |
| end |