Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save sienki-jenki/37c90971c43a6a3248d97a23d20a822e to your computer and use it in GitHub Desktop.
Save sienki-jenki/37c90971c43a6a3248d97a23d20a822e to your computer and use it in GitHub Desktop.
function calculateEnergy() {
for (let i = 0; i < zmienne[1].length; i++) {
let sum = 0;
let kineticEnergy = 0;
let potentialEnergy = 0;
for (let x = 0; x < zmienne[1][i].length / 4; x++) {
kineticEnergy += (1 / 2) * (Math.pow(zmienne[1][i][x * 4 + 2], 2) + Math.pow(zmienne[1][i][x * 4 + 1 + 2], 2));
potentialEnergy += (1 / 2) * (Math.pow(zmienne[1][i][x * 4], 2) + Math.pow(zmienne[1][i][x * 4 + 1], 2));
}
let tempArr = [];
let clearArr = [];
for (let a = 0; a < zmienne[1][i].length / 4; a++) {
for (let b = 0; b < zmienne[1][i].length / 4; b++) {
if (a === b) {
continue;
}
// to fix
let distance = Math.sqrt(Math.pow(zmienne[1][i][a * 4] - zmienne[1][i][b * 4], 2) + Math.pow(zmienne[1][i][a * 4 + 1] - zmienne[1][i][b * 4 + 1], 2));
tempArr = [...tempArr, distance.toFixed(6)];
}
}
clearArr = [...new Set(tempArr)];
for (let c = 0; c < clearArr.length; c++) {
potentialEnergy += 1 / clearArr[c];
}
sum = kineticEnergy + potentialEnergy;
let obj = {
x: zmienne[0][i],
y: sum,
};
energyResults = [...energyResults, obj];
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment