-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathindex.ts
31 lines (25 loc) · 1.21 KB
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import * as modelCollection from './lib/model-collection';
import * as defaultDynamicModels from './lib/dynamic';
import * as defaultObservationModels from './lib/observation';
function camelToDash(str: string) {
if (str === str.toLowerCase()) {
return str;
}
return str.replaceAll(/[A-Z]/g, m => '-' + m.toLowerCase());
}
Object.keys(defaultDynamicModels).forEach((k: string) => {
modelCollection.registerDynamic(camelToDash(k), defaultDynamicModels[k]);
});
Object.keys(defaultObservationModels).forEach((k: string) => {
modelCollection.registerObservation(camelToDash(k), defaultObservationModels[k]);
});
export * from './lib/model-collection';
export * from './lib/dynamic';
export * from './lib/observation';
export {default as KalmanFilter} from './lib/kalman-filter';
export {default as getCovariance} from './lib/utils/get-covariance';
export {default as State} from './lib/state';
export {default as checkCovariance} from './lib/utils/check-covariance';
export {default as correlationToCovariance} from './lib/utils/correlation-to-covariance';
export {default as covarianceToCorrelation} from './lib/utils/covariance-to-correlation';
export {default as projectObservation} from './lib/utils/project-observation';