feat: add built-in array comparison
This commit is contained in:
@@ -18,6 +18,21 @@ test("192채널 기준 배열이 계약을 통과한다", async () => {
|
||||
assertEqual((await validateArrayDefinition(arrayDefinition)).length, 0, "array issues");
|
||||
});
|
||||
|
||||
test("192채널 Fermat spiral 비교 배열이 계약과 원형 aperture를 만족한다", async () => {
|
||||
const arrayDefinition = await loadJson("/assets/array-geometries/fermat-spiral-192.array.json");
|
||||
assertEqual(arrayDefinition.microphones.length, 192, "spiral microphone count");
|
||||
assertEqual((await validateArrayDefinition(arrayDefinition)).length, 0, "spiral array issues");
|
||||
const maximumRadius = Math.max(
|
||||
...arrayDefinition.microphones.map(({ position }) => Math.hypot(position[0], position[1])),
|
||||
);
|
||||
assert(maximumRadius <= 0.225001, `spiral aperture radius: ${maximumRadius}`);
|
||||
assertEqual(
|
||||
new Set(arrayDefinition.microphones.map(({ position }) => position.join(","))).size,
|
||||
192,
|
||||
"spiral positions are unique",
|
||||
);
|
||||
});
|
||||
|
||||
test("단일 tone 장면과 실험이 관계 검증을 통과한다", async () => {
|
||||
const [arrayDefinition, scene, experiment] = await Promise.all([
|
||||
loadJson("/assets/array-geometries/rectangular-16x12.array.json"),
|
||||
|
||||
Reference in New Issue
Block a user