all these changes

This commit is contained in:
Jake Kasper
2026-04-09 13:19:47 -05:00
parent e83a51a051
commit 65315f36d1
39102 changed files with 7932979 additions and 567 deletions

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
module.exports = [[-82.46337890625,23.059516273509303],[-82.353515625,23.120153621695614],[-82.36450195312499,23.074678175027337],[-82.19970703125,23.221154981846556],[-82.19970703125,23.089838367476705],[-82.28759765625,22.99379497224218],[-75.8551025390625,20.035289711352377],[-75.6683349609375,20.128155311797183],[-75.73974609375,20.122997556207757],[-75.6683349609375,20.030128899024707],[-75.80017089843749,20.040450354169483],[-76.0089111328125,20.226120295836992],[-76.0308837890625,19.926877111209265],[-75.7562255859375,20.014645445341365],[-80.46936035156249,22.070368801349257],[-80.34027099609375,22.2026634080092],[-80.35675048828125,22.12126604542578],[-80.43914794921875,22.271305748177635],[-80.38970947265625,22.021999432851782],[-80.55999755859375,22.118721619281263],[-80.54351806640625,22.0525504317147],[-75.87158203125,20.86907773201848],[-75.640869140625,20.571081893508193],[-76.640625,21.053744493156348],[-76.7724609375,20.56079574020845],[-76.278076171875,20.992214250886114],[-76.058349609375,20.50935458871459],[-76.365966796875,20.776659051878816],[-77.091064453125,19.932041306115536],[-79.87060546875,22.40087159030595],[-79.903564453125,22.31958944283391],[-80.079345703125,22.28909641872304],[-80.035400390625,22.004174972902003],[-79.4970703125,22.156883186860703],[-80.343017578125,21.309846141087192],[-79.4970703125,21.58593511478851],[-78.79394531249999,22.51255695405145],[-79.07958984375,21.922663209325922],[-78.782958984375,21.3303150734318],[-82.452392578125,23.976214626638292],[-82.6171875,23.68477416688374],[-82.056884765625,23.68477416688374],[-83.43017578125,22.6038688428957],[-83.001708984375,23.200960808078566],[-82.72705078125,22.92804166565176]];

15
frontend/node_modules/skmeans/test/multi.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
const skmeans = require("../main.js");
var data = [];
for(let i=0;i<2000;i++) {
var r = Math.random();
if(r>=0 && r<0.33) data.push([r,r*2]);
else if(r>=0.33 && r<0.66) data.push([r+4,2*(r+4)]);
else data.push([r+9,2*(r+9)]);
}
var res = skmeans(data,3,"kmrand");
console.log(res.it,res.centroids);
var res = skmeans(data,3,"kmpp");
console.log(res.it,res.centroids);

65
frontend/node_modules/skmeans/test/stats.js generated vendored Normal file
View File

@@ -0,0 +1,65 @@
const skmeans = require("../main.js");
const data1 = require("./data/well-separated.js");
const data2 = require("./data/random_pts.js");
const MAX = 1000;
function testCentroids(ks) {
ks.forEach(k=>{
k.forEach(v=>{
if(v==0) {
console.error(`Centroid on 0 ${k}`);
process.exit(1);
}
})
})
}
console.log("Simple data (k=3)");
var its = 0;
for(var i=0;i<MAX;i++) {
var res = skmeans(data1,3);
testCentroids(res.centroids);
its += res.it;
}
console.log("skmeans default\t\t=>",its/MAX);
var its = 0;
for(var i=0;i<MAX;i++) {
var res = skmeans(data1,3,"kmrand");
testCentroids(res.centroids);
its += res.it;
}
console.log("skmeans kmrand\t\t=>",its/MAX);
var its = 0;
for(var i=0;i<MAX;i++) {
var res = skmeans(data1,3,"kmpp");
testCentroids(res.centroids);
its += res.it;
}
console.log("skmeans kmpp\t\t=>",its/MAX);
console.log("Complex data (k=16)");
var its = 0;
for(var i=0;i<MAX;i++) {
var res = skmeans(data2,16);
testCentroids(res.centroids);
its += res.it;
}
console.log("skmeans default\t\t=>",its/MAX);
var its = 0;
for(var i=0;i<MAX;i++) {
var res = skmeans(data2,16,"kmrand");
testCentroids(res.centroids);
its += res.it;
}
console.log("skmeans kmrand\t\t=>",its/MAX);
var its = 0;
for(var i=0;i<MAX;i++) {
var res = skmeans(data2,16,"kmpp");
testCentroids(res.centroids);
its += res.it;
}
console.log("skmeans kmpp\t\t=>",its/MAX);

42
frontend/node_modules/skmeans/test/test.js generated vendored Normal file
View File

@@ -0,0 +1,42 @@
const skmeans = require("../main.js");
function testUni() {
var data = [];
for(let i=0;i<1000;i++) {
var r = Math.random();
if(r>=0 && r<0.33) data.push(r);
else if(r>=0.33 && r<0.66) data.push(r+4);
else data.push(r+9);
}
var its = 10000;
var ti = Date.now();
for(var i=0;i<its;i++) {
var res = skmeans(data,3);
}
var tf = Date.now();
console.log("Unidimensional",1000*its/(tf-ti) + " ops/sec");
}
function testMulti() {
var data = [];
for(let i=0;i<1000;i++) {
var r = Math.random();
if(r>=0 && r<0.33) data.push([r,r*2]);
else if(r>=0.33 && r<0.66) data.push([r+4,2*(r+4)]);
else data.push([r+9,2*(r+9)]);
}
var its = 10000;
var ti = Date.now();
for(var i=0;i<its;i++) {
var res = skmeans(data,3);
}
var tf = Date.now();
console.log("Multidimensional",1000*its/(tf-ti) + " ops/sec");
}
testUni();
testMulti();

23
frontend/node_modules/skmeans/test/test_rand.js generated vendored Normal file
View File

@@ -0,0 +1,23 @@
const skmeans = require("../main.js");
const data = require("./data/random_pts.js");
var method = process.argv[2] || null;
var res = skmeans(data,16,method);
console.error(res);
var out = data.map((d,i)=>{
return {
cluster: "CLUSTER_"+res.idxs[i],
x:d[0],
y:d[1]
}
});
res.centroids.forEach((k,i)=>{
out.push({
cluster: "K_"+i,
x:k[0],
y:k[1]
})
});
console.log(JSON.stringify(out,null,2));

23
frontend/node_modules/skmeans/test/test_ws.js generated vendored Normal file
View File

@@ -0,0 +1,23 @@
const skmeans = require("../main.js");
const data = require("./data/well-separated.js");
var method = process.argv[2] || null;
var res = skmeans(data,3,method);
console.error(res);
var out = data.map((d,i)=>{
return {
cluster: "CLUSTER_"+res.idxs[i],
x:d[0],
y:d[1]
}
});
res.centroids.forEach((k,i)=>{
out.push({
cluster: "K_"+i,
x:k[0],
y:k[1]
})
});
console.log(JSON.stringify(out,null,2));

15
frontend/node_modules/skmeans/test/uni.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
const skmeans = require("../main.js");
var data = [];
for(let i=0;i<2000;i++) {
var r = Math.random();
if(r>=0 && r<0.33) data.push(r);
else if(r>=0.33 && r<0.66) data.push(r+4);
else data.push(r+9);
}
var res = skmeans(data,3,[1,5,9]);
console.log(res.it,res.centroids);
var res = skmeans(data,3,"kmpp");
console.log(res.it,res.centroids);