summaryrefslogtreecommitdiff
path: root/test-chill/test-cases/examples/chill/swim.c
diff options
context:
space:
mode:
authorDerick Huth <derickhuth@gmail.com>2015-09-24 12:22:41 -0600
committerDerick Huth <derickhuth@gmail.com>2015-09-24 12:22:41 -0600
commit4631ad76927d433da5d55c3c373a1dfd0f74c9d4 (patch)
treef8dcba88576ec95e403f0c14efd80e970f30a260 /test-chill/test-cases/examples/chill/swim.c
parent6eb2b89896da66a77d0dcdf2d72b98c122826949 (diff)
parent0cff3f9a3c4ccd434900162ebef4bd814850f481 (diff)
downloadchill-4631ad76927d433da5d55c3c373a1dfd0f74c9d4.tar.gz
chill-4631ad76927d433da5d55c3c373a1dfd0f74c9d4.tar.bz2
chill-4631ad76927d433da5d55c3c373a1dfd0f74c9d4.zip
Merge pull request #7 from dhuth/master
V0.2.1
Diffstat (limited to 'test-chill/test-cases/examples/chill/swim.c')
-rw-r--r--test-chill/test-cases/examples/chill/swim.c159
1 files changed, 0 insertions, 159 deletions
diff --git a/test-chill/test-cases/examples/chill/swim.c b/test-chill/test-cases/examples/chill/swim.c
deleted file mode 100644
index a21ef24..0000000
--- a/test-chill/test-cases/examples/chill/swim.c
+++ /dev/null
@@ -1,159 +0,0 @@
-#define M 100
-#define N 100
-#define N3 10
-
-int main() {
-
- int DX;
- int DY;
- int FSDX;
- int FSDY;
- int TDT;
- int TDTS8;
- int TDTSDX;
- int TDTSDY;
- int t, i, j;
- double CU[M + 1][N + 1];
- double CV[M + 1][N + 1];
- double Z[M + 1][N + 1];
- double H[M + 1][N + 1];
- double P[M + 1][N + 1];
- double U[M + 1][N + 1];
- double V[M + 1][N + 1];
- double UNEW[M + 1][N + 1];
- double UOLD[M + 1][N + 1];
- double PNEW[M + 1][N + 1];
- double POLD[M + 1][N + 1];
- double VNEW[M + 1][N + 1];
- double VOLD[M + 1][N + 1];
- double ALPHA;
-
- for (t = 0; t < N3; t++) {
-
- FSDX = 4 / DX;
- FSDY = 4 / DY;
-
- for (i = 0; i < M; i++) {
- for (j = 0; j < N; j++) {
- CU[i + 1][j] = (double) 0.5 * (P[i + 1][j] + P[i][j])
- * U[i + 1][j];
- CV[i][j + 1] = (double) 0.5 * (P[i][j + 1] + P[i][j])
- * V[i][j + 1];
- Z[i + 1][j + 1] =
- (FSDX * (V[i + 1][j + 1] - V[i][j + 1])
- - FSDY * (U[i + 1][j + 1] - U[i + 1][j]))
- / (P[i][j] + P[i + 1][j] + P[i + 1][j + 1]
- + P[i][j + 1]);
- H[i][j] = P[i][j]
- + (double) 0.25
- * (U[i + 1][j] * U[i + 1][j] + U[i][j] * U[i][j]
- + V[i][j + 1] * V[i][j + 1]
- + V[i][j] * V[i][j]);
- }
- }
-
- for (j = 0; j < N; j++) {
- // CU[0][j] = CU[M+1][j];
- CU[0][j] = CU[M][j];
- CV[M][j + 1] = CV[0][j + 1];
- Z[0][j + 1] = Z[M][j + 1];
- H[M][j] = H[0][j];
- }
-
- for (i = 0; i < M; i++) {
- CU[i + 1][N] = CU[i + 1][0];
- CV[i][0] = CV[i][N];
- Z[i + 1][0] = Z[i + 1][N];
- H[i][N] = H[i][0];
- }
-
- CU[0][N] = CU[M][0];
- CV[M][0] = CV[0][N];
- Z[0][0] = Z[M][N];
- H[M][N] = H[0][0];
-
- TDTS8 = TDT / 8;
- TDTSDX = TDT / DX;
- TDTSDY = TDT / DY;
-
- for (i = 0; i < M; i++) {
- for (j = 0; j < N; j++) {
- UNEW[i + 1][j] = UOLD[i + 1][j]
- + TDTS8 * (Z[i + 1][j + 1] + Z[i + 1][j])
- * (CV[i + 1][j + 1] + CV[i][j + 1] + CV[i][j]
- + CV[i + 1][j])
- - TDTSDX * (H[i + 1][j] - H[i][j]);
- VNEW[i][j + 1] = VOLD[i][j + 1]
- - TDTS8 * (Z[i + 1][j + 1] + Z[i][j + 1])
- * (CU[i + 1][j + 1] + CU[i][j + 1] + CU[i][j]
- + CU[i + 1][j])
- - TDTSDY * (H[i][j + 1] - H[i][j]);
- PNEW[i][j] = POLD[i][j] - TDTSDX * (CU[i + 1][j] - CU[i][j])
- - TDTSDY * (CV[i][j + 1] - CV[i][j]);
- }
- }
- for (j = 0; j < N; j++) {
- UNEW[0][j] = UNEW[M][j];
- VNEW[M][j + 1] = VNEW[0][j + 1];
- PNEW[M][j] = PNEW[0][j];
- }
-
- for (i = 0; i < M; i++) {
- UNEW[i + 1][N] = UNEW[i + 1][0];
- VNEW[i][0] = VNEW[i][N];
- PNEW[i][N] = PNEW[i][0];
- }
-
- UNEW[0][N] = UNEW[M][0];
- VNEW[M][0] = VNEW[0][N];
- PNEW[M][N] = PNEW[0][0];
- // time = time + DT;
-
- for (i = 0; i < M; i++) {
- for (j = 0; j < N; j++) {
- UOLD[i][j] = U[i][j]
- + ALPHA
- * (UNEW[i][j] - (double) 2 * U[i][j]
- + UOLD[i][j]);
- VOLD[i][j] = V[i][j]
- + ALPHA
- * (VNEW[i][j] - (double) 2 * V[i][j]
- + VOLD[i][j]);
- POLD[i][j] = P[i][j]
- + ALPHA
- * (PNEW[i][j] - (double) 2 * P[i][j]
- + POLD[i][j]);
- U[i][j] = UNEW[i][j];
- V[i][j] = VNEW[i][j];
- P[i][j] = PNEW[i][j];
- }
- }
-
- for (j = 0; j < N; j++) {
- UOLD[M][j] = UOLD[0][j];
- VOLD[M][j] = VOLD[0][j];
- POLD[M][j] = POLD[0][j];
- U[M][j] = U[0][j];
- V[M][j] = V[0][j];
- P[M][j] = P[0][j];
- }
-
- for (i = 0; i < M; i++) {
- UOLD[i][N] = UOLD[i][0];
- VOLD[i][N] = VOLD[i][0];
- POLD[i][N] = POLD[i][0];
- U[i][N] = U[i][0];
- V[i][N] = V[i][0];
- P[i][N] = P[i][0];
- }
-
- UOLD[M][N] = UOLD[0][0];
- VOLD[M][N] = VOLD[0][0];
- POLD[M][N] = POLD[0][0];
- U[M][N] = U[0][0];
- V[M][N] = V[0][0];
- P[M][N] = P[0][0];
-
- }
- return 0;
-}