/* nag_elliptic_integral_rj (s21bdc) Example Program. * * Copyright 1990 Numerical Algorithms Group. * * Mark 2 revised, 1992. */ #include #include #include #include #include int main(int argc, char *argv[]) { FILE *fpout; Integer exit_status = 0; double r, rj, x, y, z; Integer ix, iy, iz; NagError fail; INIT_FAIL(fail); /* Check for command-line IO options */ fpout = nag_example_file_io(argc, argv, "-results", NULL); fprintf(fpout, "nag_elliptic_integral_rj (s21bdc) Example Program Results\n"); fprintf(fpout, " x y z r nag_elliptic_integral_rj\n"); for (ix = 1; ix <= 3; ix++) { x = ix*0.5; for (iy = ix; iy <= 3; iy++) { y = iy*0.5; for (iz = iy; iz <= 3; iz++) { z = iz*0.5; r = 2.0; /* nag_elliptic_integral_rj (s21bdc). * Symmetrised elliptic integral of 3rd kind R_J(xyzr) */ rj = nag_elliptic_integral_rj(x, y, z, r, &fail); if (fail.code != NE_NOERROR) { fprintf(fpout, "Error from " "nag_elliptic_integral_rj (s21bdc).\n%s\n", fail.message); exit_status = 1; goto END; } fprintf(fpout, " %7.2f%7.2f%7.2f%7.2f%12.4f\n", x, y, z, r, rj); } } } END: if (fpout != stdout) fclose(fpout); return exit_status; }