1#include "applu_share.h" 2#include "applu_macros.h" 3 4#define ue_1jk(m) ue_1jk[m-1] 5#define ue_nx0jk(m) ue_nx0jk[m-1] 6#define ue_i1k(m) ue_i1k[m-1] 7#define ue_iny0k(m) ue_iny0k[m-1] 8#define ue_ij1(m) ue_ij1[m-1] 9#define ue_ijnz(m) ue_ijnz[m-1] 10 11void setiv() { 12 13//c--------------------------------------------------------------------- 14//c 15//c set the initial values of independent variables based on tri-linear 16//c interpolation of boundary values in the computational space. 17//c 18//c--------------------------------------------------------------------- 19 20//c--------------------------------------------------------------------- 21//c local variables 22//c--------------------------------------------------------------------- 23 int i, j, k, m; 24 int iglob, jglob; 25 double xi, eta, zeta; 26 double pxi, peta, pzeta; 27 double ue_1jk[5],ue_nx0jk[5],ue_i1k[5], 28 ue_iny0k[5],ue_ij1[5],ue_ijnz[5]; 29 int one = 1; 30 31 for ( k = 2; k <= nz - 1; k++) { 32 zeta = ( (double) (k-1) ) / (nz-1); 33 for ( j = 1; j <= ny; j++) { 34 jglob = jpt + j; 35 if (jglob != 1 && jglob != ny0) { 36 eta = ( (double) (jglob-1) ) / (ny0-1); 37 for ( i = 1; i <= nx; i++) { 38 iglob = ipt + i; 39 if (iglob != 1 && iglob != nx0) { 40 xi = ( (double) (iglob-1) ) / (nx0-1); 41 exact(one,jglob,k,ue_1jk); 42 exact(nx0,jglob,k,ue_nx0jk); 43 exact(iglob,one,k,ue_i1k); 44 exact(iglob,ny0,k,ue_iny0k); 45 exact(iglob,jglob,one,ue_ij1); 46 exact(iglob,jglob,nz,ue_ijnz); 47 for ( m = 1; m <= 5; m++) { 48 pxi = (1.0 - xi ) * ue_1jk(m) + xi * ue_nx0jk(m); 49 peta = (1.0 - eta ) * ue_i1k(m) + eta * ue_iny0k(m); 50 pzeta = (1.0 - zeta) * ue_ij1(m) + zeta * ue_ijnz(m); 51 52 u( m, i, j, k ) = pxi + peta + pzeta 53 - pxi * peta - peta * pzeta - pzeta * pxi 54 + pxi * peta * pzeta; 55 56 } 57 } 58 } 59 } 60 } 61 } 62 63// for ( k = 1; k <= nz; k++) { 64// for ( j = -1; j <= ny+2; j++) { 65// for ( i = -1; i <= nx+2; i++) { 66// for ( m = 1; m <= 5; m++) { 67// u( m, i, j, k ) = (double) (id*100 + m); 68// } 69// } 70// } 71// } 72 73 return; 74} 75 76