add numerical recipes library

This commit is contained in:
2025-09-12 18:55:25 +09:00
parent d4dff245bd
commit 2c75620ec9
1344 changed files with 63869 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
#include <math.h>
#define ALEN(a,b,c,d) sqrt(((b)-(a))*((b)-(a))+((d)-(c))*((d)-(c)))
float trncst(float x[], float y[], int iorder[], int ncity, int n[])
{
float xx[7],yy[7],de;
int j,ii;
n[4]=1 + (n[3] % ncity);
n[5]=1 + ((n[1]+ncity-2) % ncity);
n[6]=1 + (n[2] % ncity);
for (j=1;j<=6;j++) {
ii=iorder[n[j]];
xx[j]=x[ii];
yy[j]=y[ii];
}
de = -ALEN(xx[2],xx[6],yy[2],yy[6]);
de -= ALEN(xx[1],xx[5],yy[1],yy[5]);
de -= ALEN(xx[3],xx[4],yy[3],yy[4]);
de += ALEN(xx[1],xx[3],yy[1],yy[3]);
de += ALEN(xx[2],xx[4],yy[2],yy[4]);
de += ALEN(xx[5],xx[6],yy[5],yy[6]);
return de;
}
#undef ALEN