@justinelliottcobb/amari-wasm 0.9.0 → 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/amari_wasm.d.ts CHANGED
@@ -1,5 +1,21 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
+ /**
4
+ * Convert Lorentz factor to velocity
5
+ */
6
+ export function gamma_to_velocity(gamma: number): number;
7
+ /**
8
+ * Convert velocity to Lorentz factor
9
+ */
10
+ export function velocity_to_gamma(velocity_magnitude: number): number;
11
+ /**
12
+ * Calculate light deflection angle for photon grazing massive object
13
+ */
14
+ export function light_deflection_angle(impact_parameter: number, mass: number): number;
15
+ /**
16
+ * Validate that this module loaded correctly
17
+ */
18
+ export function validate_relativistic_module(): boolean;
3
19
  /**
4
20
  * Initialize the WASM module
5
21
  */
@@ -21,6 +37,22 @@ export class BatchOperations {
21
37
  */
22
38
  static batchAdd(a_batch: Float64Array, b_batch: Float64Array): Float64Array;
23
39
  }
40
+ /**
41
+ * Batch network operations for performance
42
+ */
43
+ export class NetworkBatchOperations {
44
+ private constructor();
45
+ free(): void;
46
+ [Symbol.dispose](): void;
47
+ /**
48
+ * Fast geometric clustering using k-means in 3D space
49
+ */
50
+ static geometricKMeansClustering(positions: Float64Array, num_nodes: number, k: number, max_iterations: number): Uint32Array;
51
+ /**
52
+ * Compute all pairwise distances in a network
53
+ */
54
+ static computeAllPairwiseDistances(positions: Float64Array, num_nodes: number): Float64Array;
55
+ }
24
56
  /**
25
57
  * High-performance WASM operations with memory pooling
26
58
  */
@@ -29,60 +61,153 @@ export class PerformanceOperations {
29
61
  free(): void;
30
62
  [Symbol.dispose](): void;
31
63
  /**
32
- * Fast geometric product for hot paths with memory pooling
64
+ * Batch normalize vectors for efficiency
33
65
  */
34
- static fastGeometricProduct(lhs: Float64Array, rhs: Float64Array): Float64Array;
66
+ static batchNormalize(vectors: Float64Array, vector_size: number): Float64Array;
67
+ /**
68
+ * Optimized vector dot product
69
+ */
70
+ static vectorDotProduct(v1: Float64Array, v2: Float64Array): number;
35
71
  /**
36
72
  * Optimized vector operations for 3D space
37
73
  */
38
74
  static vectorCrossProduct(v1: Float64Array, v2: Float64Array): Float64Array;
39
75
  /**
40
- * Optimized vector dot product
76
+ * Fast geometric product for hot paths with memory pooling
41
77
  */
42
- static vectorDotProduct(v1: Float64Array, v2: Float64Array): number;
78
+ static fastGeometricProduct(lhs: Float64Array, rhs: Float64Array): Float64Array;
79
+ }
80
+ /**
81
+ * WASM wrapper for four-velocity
82
+ */
83
+ export class WasmFourVelocity {
84
+ private constructor();
85
+ free(): void;
86
+ [Symbol.dispose](): void;
43
87
  /**
44
- * Batch normalize vectors for efficiency
88
+ * Create four-velocity from 3-velocity components
45
89
  */
46
- static batchNormalize(vectors: Float64Array, vector_size: number): Float64Array;
90
+ static from_velocity(vx: number, vy: number, vz: number): WasmFourVelocity;
91
+ /**
92
+ * Check if normalized (u·u = c²)
93
+ */
94
+ is_normalized(): boolean;
95
+ /**
96
+ * Get as spacetime vector
97
+ */
98
+ as_spacetime_vector(): WasmSpacetimeVector;
99
+ /**
100
+ * Get spatial velocity magnitude
101
+ */
102
+ spatial_velocity_magnitude(): number;
103
+ /**
104
+ * Get Lorentz factor γ
105
+ */
106
+ gamma(): number;
107
+ /**
108
+ * Get rapidity
109
+ */
110
+ rapidity(): number;
111
+ /**
112
+ * Get string representation
113
+ */
114
+ to_string(): string;
47
115
  }
48
116
  /**
49
- * WASM wrapper for Multivector with TypedArray support
117
+ * WASM wrapper for geodesic integration
50
118
  */
51
- export class WasmMultivector {
119
+ export class WasmGeodesicIntegrator {
120
+ private constructor();
52
121
  free(): void;
53
122
  [Symbol.dispose](): void;
54
123
  /**
55
- * Create a new zero multivector
124
+ * Propagate particle through spacetime
56
125
  */
57
- constructor();
126
+ propagate_particle(particle: WasmRelativisticParticle, integration_time: number, time_step: number): Array<any>;
58
127
  /**
59
- * Create from a Float64Array of coefficients
128
+ * Create integrator with Schwarzschild metric
60
129
  */
61
- static fromCoefficients(coefficients: Float64Array): WasmMultivector;
130
+ static with_schwarzschild(metric: WasmSchwarzschildMetric): WasmGeodesicIntegrator;
131
+ }
132
+ /**
133
+ * WASM wrapper for GeometricNetwork
134
+ */
135
+ export class WasmGeometricNetwork {
136
+ free(): void;
137
+ [Symbol.dispose](): void;
62
138
  /**
63
- * Create a scalar multivector
139
+ * Get degree of a node
64
140
  */
65
- static scalar(value: number): WasmMultivector;
141
+ getDegree(node: number): number;
66
142
  /**
67
- * Create a basis vector (0-indexed)
143
+ * Get neighbors of a node
68
144
  */
69
- static basisVector(index: number): WasmMultivector;
145
+ getNeighbors(node: number): Uint32Array;
70
146
  /**
71
- * Get coefficients as a Float64Array
147
+ * Find shortest path between two nodes
148
+ * Returns the path as an array of node indices, or null if no path exists
72
149
  */
73
- getCoefficients(): Float64Array;
150
+ shortestPath(source: number, target: number): Uint32Array | undefined;
74
151
  /**
75
- * Get a specific coefficient
152
+ * Add a labeled node
76
153
  */
77
- getCoefficient(index: number): number;
154
+ addLabeledNode(x: number, y: number, z: number, label: string): number;
78
155
  /**
79
- * Set a specific coefficient
156
+ * Find communities using geometric clustering
80
157
  */
81
- setCoefficient(index: number, value: number): void;
158
+ findCommunities(num_communities: number): Uint32Array;
82
159
  /**
83
- * Geometric product
160
+ * Get node position as [x, y, z]
84
161
  */
85
- geometricProduct(other: WasmMultivector): WasmMultivector;
162
+ getNodePosition(node: number): Float64Array | undefined;
163
+ /**
164
+ * Compute geometric distance between two nodes
165
+ */
166
+ geometricDistance(node1: number, node2: number): number;
167
+ /**
168
+ * Add an undirected edge
169
+ */
170
+ addUndirectedEdge(a: number, b: number, weight: number): void;
171
+ /**
172
+ * Find shortest path with distance between two nodes
173
+ * Returns an object with path and distance, or null if no path exists
174
+ */
175
+ shortestPathWithDistance(source: number, target: number): any;
176
+ /**
177
+ * Compute geometric centrality for all nodes
178
+ */
179
+ computeGeometricCentrality(): Float64Array;
180
+ /**
181
+ * Create a new geometric network
182
+ */
183
+ constructor();
184
+ /**
185
+ * Add an edge between two nodes
186
+ */
187
+ addEdge(source: number, target: number, weight: number): void;
188
+ /**
189
+ * Add a node at the given position
190
+ */
191
+ addNode(x: number, y: number, z: number): number;
192
+ /**
193
+ * Get number of edges
194
+ */
195
+ numEdges(): number;
196
+ /**
197
+ * Get number of nodes
198
+ */
199
+ numNodes(): number;
200
+ }
201
+ /**
202
+ * WASM wrapper for Multivector with TypedArray support
203
+ */
204
+ export class WasmMultivector {
205
+ free(): void;
206
+ [Symbol.dispose](): void;
207
+ /**
208
+ * Create a basis vector (0-indexed)
209
+ */
210
+ static basisVector(index: number): WasmMultivector;
86
211
  /**
87
212
  * Inner product (dot product for vectors)
88
213
  */
@@ -96,45 +221,148 @@ export class WasmMultivector {
96
221
  */
97
222
  scalarProduct(other: WasmMultivector): number;
98
223
  /**
99
- * Reverse
224
+ * Get a specific coefficient
100
225
  */
101
- reverse(): WasmMultivector;
226
+ getCoefficient(index: number): number;
227
+ /**
228
+ * Set a specific coefficient
229
+ */
230
+ setCoefficient(index: number, value: number): void;
231
+ /**
232
+ * Get coefficients as a Float64Array
233
+ */
234
+ getCoefficients(): Float64Array;
102
235
  /**
103
236
  * Grade projection
104
237
  */
105
238
  gradeProjection(grade: number): WasmMultivector;
239
+ /**
240
+ * Create from a Float64Array of coefficients
241
+ */
242
+ static fromCoefficients(coefficients: Float64Array): WasmMultivector;
243
+ /**
244
+ * Geometric product
245
+ */
246
+ geometricProduct(other: WasmMultivector): WasmMultivector;
247
+ /**
248
+ * Add two multivectors
249
+ */
250
+ add(other: WasmMultivector): WasmMultivector;
106
251
  /**
107
252
  * Exponential (for bivectors to create rotors)
108
253
  */
109
254
  exp(): WasmMultivector;
110
255
  /**
111
- * Compute magnitude
256
+ * Create a new zero multivector
112
257
  */
113
- magnitude(): number;
258
+ constructor();
259
+ /**
260
+ * Subtract two multivectors
261
+ */
262
+ sub(other: WasmMultivector): WasmMultivector;
114
263
  /**
115
264
  * Compute norm (alias for magnitude, maintained for compatibility)
116
265
  */
117
266
  norm(): number;
118
267
  /**
119
- * Normalize
268
+ * Scale by a scalar
120
269
  */
121
- normalize(): WasmMultivector;
270
+ scale(scalar: number): WasmMultivector;
271
+ /**
272
+ * Create a scalar multivector
273
+ */
274
+ static scalar(value: number): WasmMultivector;
122
275
  /**
123
276
  * Compute inverse
124
277
  */
125
278
  inverse(): WasmMultivector;
126
279
  /**
127
- * Add two multivectors
280
+ * Reverse
128
281
  */
129
- add(other: WasmMultivector): WasmMultivector;
282
+ reverse(): WasmMultivector;
130
283
  /**
131
- * Subtract two multivectors
284
+ * Compute magnitude
132
285
  */
133
- sub(other: WasmMultivector): WasmMultivector;
286
+ magnitude(): number;
134
287
  /**
135
- * Scale by a scalar
288
+ * Normalize
136
289
  */
137
- scale(scalar: number): WasmMultivector;
290
+ normalize(): WasmMultivector;
291
+ }
292
+ /**
293
+ * Physical constants
294
+ */
295
+ export class WasmRelativisticConstants {
296
+ private constructor();
297
+ free(): void;
298
+ [Symbol.dispose](): void;
299
+ /**
300
+ * Earth mass (kg)
301
+ */
302
+ static readonly earth_mass: number;
303
+ /**
304
+ * Solar mass (kg)
305
+ */
306
+ static readonly solar_mass: number;
307
+ /**
308
+ * Speed of light in vacuum (m/s)
309
+ */
310
+ static readonly speed_of_light: number;
311
+ /**
312
+ * Gravitational constant (m³/kg·s²)
313
+ */
314
+ static readonly gravitational_constant: number;
315
+ }
316
+ /**
317
+ * WASM wrapper for relativistic particles
318
+ */
319
+ export class WasmRelativisticParticle {
320
+ free(): void;
321
+ [Symbol.dispose](): void;
322
+ /**
323
+ * Get 3D position components
324
+ */
325
+ position_3d(): Array<any>;
326
+ /**
327
+ * Get position as spacetime vector
328
+ */
329
+ position_4d(): WasmSpacetimeVector;
330
+ /**
331
+ * Create particle with specified energy
332
+ */
333
+ static with_energy(x: number, y: number, z: number, direction_x: number, direction_y: number, direction_z: number, kinetic_energy: number, mass: number, charge: number): WasmRelativisticParticle;
334
+ /**
335
+ * Get total energy
336
+ */
337
+ total_energy(): number;
338
+ /**
339
+ * Get four-velocity
340
+ */
341
+ four_velocity(): WasmFourVelocity;
342
+ /**
343
+ * Get kinetic energy
344
+ */
345
+ kinetic_energy(): number;
346
+ /**
347
+ * Get momentum magnitude
348
+ */
349
+ momentum_magnitude(): number;
350
+ /**
351
+ * Create a new relativistic particle
352
+ */
353
+ constructor(x: number, y: number, z: number, vx: number, vy: number, vz: number, spin: number, mass: number, charge: number);
354
+ /**
355
+ * Get rest mass
356
+ */
357
+ mass(): number;
358
+ /**
359
+ * Get electric charge
360
+ */
361
+ charge(): number;
362
+ /**
363
+ * Get string representation
364
+ */
365
+ to_string(): string;
138
366
  }
139
367
  /**
140
368
  * Rotor operations for WASM
@@ -160,49 +388,240 @@ export class WasmRotor {
160
388
  */
161
389
  inverse(): WasmRotor;
162
390
  }
391
+ /**
392
+ * WASM wrapper for Schwarzschild metric
393
+ */
394
+ export class WasmSchwarzschildMetric {
395
+ private constructor();
396
+ free(): void;
397
+ [Symbol.dispose](): void;
398
+ /**
399
+ * Check for singularity at given position
400
+ */
401
+ has_singularity(position: WasmSpacetimeVector): boolean;
402
+ /**
403
+ * Compute effective potential for circular orbits
404
+ */
405
+ effective_potential(r: number, angular_momentum: number): number;
406
+ /**
407
+ * Get Schwarzschild radius
408
+ */
409
+ schwarzschild_radius(): number;
410
+ /**
411
+ * Create Schwarzschild metric for the Sun
412
+ */
413
+ static sun(): WasmSchwarzschildMetric;
414
+ /**
415
+ * Get central mass
416
+ */
417
+ mass(): number;
418
+ /**
419
+ * Create Schwarzschild metric for Earth
420
+ */
421
+ static earth(): WasmSchwarzschildMetric;
422
+ /**
423
+ * Create Schwarzschild metric for custom mass
424
+ */
425
+ static from_mass(mass: number): WasmSchwarzschildMetric;
426
+ }
427
+ /**
428
+ * WASM wrapper for spacetime vectors
429
+ */
430
+ export class WasmSpacetimeVector {
431
+ free(): void;
432
+ [Symbol.dispose](): void;
433
+ /**
434
+ * Check if vector is timelike (massive particle)
435
+ */
436
+ is_timelike(): boolean;
437
+ /**
438
+ * Check if vector is spacelike
439
+ */
440
+ is_spacelike(): boolean;
441
+ /**
442
+ * Compute Minkowski norm squared
443
+ */
444
+ norm_squared(): number;
445
+ /**
446
+ * Compute Minkowski inner product with another spacetime vector
447
+ */
448
+ minkowski_dot(other: WasmSpacetimeVector): number;
449
+ /**
450
+ * Create a new spacetime vector with components (ct, x, y, z)
451
+ */
452
+ constructor(t: number, x: number, y: number, z: number);
453
+ /**
454
+ * Check if vector is null (lightlike)
455
+ */
456
+ is_null(): boolean;
457
+ /**
458
+ * Create a timelike vector
459
+ */
460
+ static timelike(t: number): WasmSpacetimeVector;
461
+ /**
462
+ * Create a spacelike vector
463
+ */
464
+ static spacelike(x: number, y: number, z: number): WasmSpacetimeVector;
465
+ /**
466
+ * Get string representation
467
+ */
468
+ to_string(): string;
469
+ /**
470
+ * Get temporal component
471
+ */
472
+ readonly t: number;
473
+ /**
474
+ * Get x component
475
+ */
476
+ readonly x: number;
477
+ /**
478
+ * Get y component
479
+ */
480
+ readonly y: number;
481
+ /**
482
+ * Get z component
483
+ */
484
+ readonly z: number;
485
+ }
486
+ /**
487
+ * Trajectory point for particle propagation
488
+ */
489
+ export class WasmTrajectoryPoint {
490
+ private constructor();
491
+ free(): void;
492
+ [Symbol.dispose](): void;
493
+ /**
494
+ * Get position
495
+ */
496
+ readonly position: WasmSpacetimeVector;
497
+ /**
498
+ * Time coordinate
499
+ */
500
+ time: number;
501
+ }
163
502
 
164
503
  export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
165
504
 
166
505
  export interface InitOutput {
167
506
  readonly memory: WebAssembly.Memory;
507
+ readonly __wbg_batchoperations_free: (a: number, b: number) => void;
508
+ readonly __wbg_get_wasmtrajectorypoint_time: (a: number) => number;
509
+ readonly __wbg_set_wasmtrajectorypoint_time: (a: number, b: number) => void;
510
+ readonly __wbg_wasmfourvelocity_free: (a: number, b: number) => void;
511
+ readonly __wbg_wasmgeodesicintegrator_free: (a: number, b: number) => void;
512
+ readonly __wbg_wasmgeometricnetwork_free: (a: number, b: number) => void;
168
513
  readonly __wbg_wasmmultivector_free: (a: number, b: number) => void;
169
- readonly wasmmultivector_new: () => number;
170
- readonly wasmmultivector_fromCoefficients: (a: number, b: number) => [number, number, number];
171
- readonly wasmmultivector_scalar: (a: number) => number;
514
+ readonly __wbg_wasmrelativisticparticle_free: (a: number, b: number) => void;
515
+ readonly __wbg_wasmschwarzschildmetric_free: (a: number, b: number) => void;
516
+ readonly __wbg_wasmtrajectorypoint_free: (a: number, b: number) => void;
517
+ readonly batchoperations_batchAdd: (a: number, b: number, c: number, d: number) => [number, number, number, number];
518
+ readonly batchoperations_batchGeometricProduct: (a: number, b: number, c: number, d: number) => [number, number, number, number];
519
+ readonly gamma_to_velocity: (a: number) => [number, number, number];
520
+ readonly init: () => void;
521
+ readonly light_deflection_angle: (a: number, b: number) => number;
522
+ readonly networkbatchoperations_computeAllPairwiseDistances: (a: number, b: number, c: number) => [number, number, number, number];
523
+ readonly networkbatchoperations_geometricKMeansClustering: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
524
+ readonly performanceoperations_batchNormalize: (a: number, b: number, c: number) => [number, number];
525
+ readonly performanceoperations_fastGeometricProduct: (a: number, b: number, c: number, d: number) => [number, number];
526
+ readonly performanceoperations_vectorCrossProduct: (a: number, b: number, c: number, d: number) => [number, number];
527
+ readonly performanceoperations_vectorDotProduct: (a: number, b: number, c: number, d: number) => number;
528
+ readonly validate_relativistic_module: () => number;
529
+ readonly velocity_to_gamma: (a: number) => [number, number, number];
530
+ readonly wasmfourvelocity_as_spacetime_vector: (a: number) => number;
531
+ readonly wasmfourvelocity_from_velocity: (a: number, b: number, c: number) => [number, number, number];
532
+ readonly wasmfourvelocity_gamma: (a: number) => number;
533
+ readonly wasmfourvelocity_is_normalized: (a: number) => number;
534
+ readonly wasmfourvelocity_rapidity: (a: number) => number;
535
+ readonly wasmfourvelocity_spatial_velocity_magnitude: (a: number) => number;
536
+ readonly wasmfourvelocity_to_string: (a: number) => [number, number];
537
+ readonly wasmgeodesicintegrator_propagate_particle: (a: number, b: number, c: number, d: number) => [number, number, number];
538
+ readonly wasmgeodesicintegrator_with_schwarzschild: (a: number) => number;
539
+ readonly wasmgeometricnetwork_addEdge: (a: number, b: number, c: number, d: number) => [number, number];
540
+ readonly wasmgeometricnetwork_addLabeledNode: (a: number, b: number, c: number, d: number, e: number, f: number) => number;
541
+ readonly wasmgeometricnetwork_addNode: (a: number, b: number, c: number, d: number) => number;
542
+ readonly wasmgeometricnetwork_addUndirectedEdge: (a: number, b: number, c: number, d: number) => [number, number];
543
+ readonly wasmgeometricnetwork_computeGeometricCentrality: (a: number) => [number, number, number, number];
544
+ readonly wasmgeometricnetwork_findCommunities: (a: number, b: number) => [number, number, number, number];
545
+ readonly wasmgeometricnetwork_geometricDistance: (a: number, b: number, c: number) => [number, number, number];
546
+ readonly wasmgeometricnetwork_getDegree: (a: number, b: number) => number;
547
+ readonly wasmgeometricnetwork_getNeighbors: (a: number, b: number) => [number, number];
548
+ readonly wasmgeometricnetwork_getNodePosition: (a: number, b: number) => [number, number];
549
+ readonly wasmgeometricnetwork_new: () => number;
550
+ readonly wasmgeometricnetwork_numEdges: (a: number) => number;
551
+ readonly wasmgeometricnetwork_numNodes: (a: number) => number;
552
+ readonly wasmgeometricnetwork_shortestPath: (a: number, b: number, c: number) => [number, number, number, number];
553
+ readonly wasmgeometricnetwork_shortestPathWithDistance: (a: number, b: number, c: number) => [number, number, number];
554
+ readonly wasmmultivector_add: (a: number, b: number) => number;
172
555
  readonly wasmmultivector_basisVector: (a: number) => [number, number, number];
173
- readonly wasmmultivector_getCoefficients: (a: number) => [number, number];
174
- readonly wasmmultivector_getCoefficient: (a: number, b: number) => number;
175
- readonly wasmmultivector_setCoefficient: (a: number, b: number, c: number) => void;
556
+ readonly wasmmultivector_exp: (a: number) => number;
557
+ readonly wasmmultivector_fromCoefficients: (a: number, b: number) => [number, number, number];
176
558
  readonly wasmmultivector_geometricProduct: (a: number, b: number) => number;
177
- readonly wasmmultivector_innerProduct: (a: number, b: number) => number;
178
- readonly wasmmultivector_outerProduct: (a: number, b: number) => number;
179
- readonly wasmmultivector_scalarProduct: (a: number, b: number) => number;
180
- readonly wasmmultivector_reverse: (a: number) => number;
559
+ readonly wasmmultivector_getCoefficient: (a: number, b: number) => number;
560
+ readonly wasmmultivector_getCoefficients: (a: number) => [number, number];
181
561
  readonly wasmmultivector_gradeProjection: (a: number, b: number) => number;
182
- readonly wasmmultivector_exp: (a: number) => number;
562
+ readonly wasmmultivector_innerProduct: (a: number, b: number) => number;
563
+ readonly wasmmultivector_inverse: (a: number) => [number, number, number];
183
564
  readonly wasmmultivector_magnitude: (a: number) => number;
565
+ readonly wasmmultivector_new: () => number;
184
566
  readonly wasmmultivector_normalize: (a: number) => [number, number, number];
185
- readonly wasmmultivector_inverse: (a: number) => [number, number, number];
186
- readonly wasmmultivector_add: (a: number, b: number) => number;
187
- readonly wasmmultivector_sub: (a: number, b: number) => number;
567
+ readonly wasmmultivector_outerProduct: (a: number, b: number) => number;
568
+ readonly wasmmultivector_reverse: (a: number) => number;
569
+ readonly wasmmultivector_scalar: (a: number) => number;
570
+ readonly wasmmultivector_scalarProduct: (a: number, b: number) => number;
188
571
  readonly wasmmultivector_scale: (a: number, b: number) => number;
189
- readonly __wbg_batchoperations_free: (a: number, b: number) => void;
190
- readonly batchoperations_batchGeometricProduct: (a: number, b: number, c: number, d: number) => [number, number, number, number];
191
- readonly batchoperations_batchAdd: (a: number, b: number, c: number, d: number) => [number, number, number, number];
192
- readonly wasmrotor_fromBivector: (a: number, b: number) => number;
572
+ readonly wasmmultivector_setCoefficient: (a: number, b: number, c: number) => void;
573
+ readonly wasmmultivector_sub: (a: number, b: number) => number;
574
+ readonly wasmrelativisticconstants_earth_mass: () => number;
575
+ readonly wasmrelativisticconstants_gravitational_constant: () => number;
576
+ readonly wasmrelativisticconstants_solar_mass: () => number;
577
+ readonly wasmrelativisticconstants_speed_of_light: () => number;
578
+ readonly wasmrelativisticparticle_charge: (a: number) => number;
579
+ readonly wasmrelativisticparticle_four_velocity: (a: number) => number;
580
+ readonly wasmrelativisticparticle_kinetic_energy: (a: number) => number;
581
+ readonly wasmrelativisticparticle_mass: (a: number) => number;
582
+ readonly wasmrelativisticparticle_momentum_magnitude: (a: number) => number;
583
+ readonly wasmrelativisticparticle_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number];
584
+ readonly wasmrelativisticparticle_position_3d: (a: number) => any;
585
+ readonly wasmrelativisticparticle_position_4d: (a: number) => number;
586
+ readonly wasmrelativisticparticle_to_string: (a: number) => [number, number];
587
+ readonly wasmrelativisticparticle_total_energy: (a: number) => number;
588
+ readonly wasmrelativisticparticle_with_energy: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number];
193
589
  readonly wasmrotor_apply: (a: number, b: number) => number;
194
590
  readonly wasmrotor_compose: (a: number, b: number) => number;
195
- readonly performanceoperations_fastGeometricProduct: (a: number, b: number, c: number, d: number) => [number, number];
196
- readonly performanceoperations_vectorCrossProduct: (a: number, b: number, c: number, d: number) => [number, number];
197
- readonly performanceoperations_vectorDotProduct: (a: number, b: number, c: number, d: number) => number;
198
- readonly performanceoperations_batchNormalize: (a: number, b: number, c: number) => [number, number];
199
- readonly init: () => void;
591
+ readonly wasmrotor_fromBivector: (a: number, b: number) => number;
592
+ readonly wasmschwarzschildmetric_earth: () => number;
593
+ readonly wasmschwarzschildmetric_effective_potential: (a: number, b: number, c: number) => number;
594
+ readonly wasmschwarzschildmetric_from_mass: (a: number) => number;
595
+ readonly wasmschwarzschildmetric_has_singularity: (a: number, b: number) => number;
596
+ readonly wasmschwarzschildmetric_mass: (a: number) => number;
597
+ readonly wasmschwarzschildmetric_schwarzschild_radius: (a: number) => number;
598
+ readonly wasmschwarzschildmetric_sun: () => number;
599
+ readonly wasmspacetimevector_is_null: (a: number) => number;
600
+ readonly wasmspacetimevector_is_spacelike: (a: number) => number;
601
+ readonly wasmspacetimevector_is_timelike: (a: number) => number;
602
+ readonly wasmspacetimevector_minkowski_dot: (a: number, b: number) => number;
603
+ readonly wasmspacetimevector_new: (a: number, b: number, c: number, d: number) => number;
604
+ readonly wasmspacetimevector_norm_squared: (a: number) => number;
605
+ readonly wasmspacetimevector_spacelike: (a: number, b: number, c: number) => number;
606
+ readonly wasmspacetimevector_timelike: (a: number) => number;
607
+ readonly wasmspacetimevector_to_string: (a: number) => [number, number];
608
+ readonly wasmspacetimevector_x: (a: number) => number;
609
+ readonly wasmspacetimevector_y: (a: number) => number;
610
+ readonly wasmspacetimevector_z: (a: number) => number;
200
611
  readonly wasmmultivector_norm: (a: number) => number;
612
+ readonly wasmspacetimevector_t: (a: number) => number;
613
+ readonly wasmtrajectorypoint_position: (a: number) => number;
614
+ readonly __wbg_networkbatchoperations_free: (a: number, b: number) => void;
201
615
  readonly __wbg_performanceoperations_free: (a: number, b: number) => void;
616
+ readonly __wbg_wasmrelativisticconstants_free: (a: number, b: number) => void;
617
+ readonly __wbg_wasmspacetimevector_free: (a: number, b: number) => void;
202
618
  readonly wasmrotor_inverse: (a: number) => number;
203
619
  readonly __wbg_wasmrotor_free: (a: number, b: number) => void;
204
- readonly __wbindgen_export_0: WebAssembly.Table;
620
+ readonly __wbindgen_exn_store: (a: number) => void;
621
+ readonly __externref_table_alloc: () => number;
622
+ readonly __wbindgen_export_2: WebAssembly.Table;
205
623
  readonly __wbindgen_malloc: (a: number, b: number) => number;
624
+ readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
206
625
  readonly __externref_table_dealloc: (a: number) => void;
207
626
  readonly __wbindgen_free: (a: number, b: number, c: number) => void;
208
627
  readonly __wbindgen_start: () => void;