#include <stdio.h>

void FORMJB3(double BBP[], double CCP[], double AJF[][2], double *DAJ, double XT[], double YT[]) { double AJ[2][2]; AJ[0][0] = -0.25 * XT[1]; AJ[0][1] = 0.0; AJ[1][0] = 0.25 * (XT[1] - 2.0 * XT[2]); AJ[1][1] = -0.5 * YT[2]; *DAJ = AJ[0][0] * AJ[1][1]; AJF[0][0] = AJ[1][1] / *DAJ; AJF[0][1] = 0.0; AJF[1][0] = -AJ[1][0] / *DAJ; AJF[1][1] = AJ[0][0] / *DAJ; BBP[0] = 0.25 * AJF[0][0]; BBP[1] = -0.25 * AJF[0][0]; BBP[2] = 0.0; BBP[3] = 0.0; CCP[0] = 0.25 * (AJF[1][0] + AJF[1][1]); CCP[1] = 0.25 * (-AJF[1][0] + AJF[1][1]); CCP[2] = -0.5 * AJF[1][1]; CCP[3] = 0.0; }

int main() { double BBP[4], CCP[4], AJF[2][2], DAJ, XT[4], YT[4]; // initialize BBP, CCP, AJF, XT, and YT with appropriate values FORMJB3(BBP, CCP, AJF, &DAJ, XT, YT); // print out the results printf("BBP: %lf %lf %lf %lf\n", BBP[0], BBP[1], BBP[2], BBP[3]); printf("CCP: %lf %lf %lf %lf\n", CCP[0], CCP[1], CCP[2], CCP[3]); printf("AJF: %lf %lf\n%lf %lf\n", AJF[0][0], AJF[0][1], AJF[1][0], AJF[1][1]); printf("DAJ: %lf\n", DAJ); return 0; }

FORTRAN Subroutine to C Function Conversion: FORMJB3

原文地址: https://www.cveoy.top/t/topic/opQW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录