Commit Graph

209 Commits

Author SHA1 Message Date
Gleb Minaev
de53d032af 1. Prototyped Rational Functions
2. Added abstract interfaces for removing boilerplates
3. Changed or added default values in interfaces
4. Renamed non-operator `equals` to `equalsTo`, and made it infix
2022-03-14 14:14:24 +03:00
Gleb Minaev
93de1d5311 Added support for all polynomials. But standard utilities still are not fully implemented. 2022-03-13 03:44:16 +03:00
Gleb Minaev
571c6342dd Regenerated READMEs 2022-03-13 03:44:16 +03:00
Gleb Minaev
cab5958107 Added abstract rational functions 2022-03-13 03:44:16 +03:00
Gleb Minaev
191dd02e47 Restructured Polynomial 2022-03-13 03:44:15 +03:00
4575ab2b79
Update interpolation API to agree with other conventions. 2022-03-07 10:39:59 +03:00
Iaroslav Postovalov
7ceb0b69b8 Revert license removal and update copyright 2021-11-16 18:14:34 +07:00
Iaroslav Postovalov
7b50400de5 Provide specializations of AsmBuilder for Double, Long, Int 2021-11-16 14:03:12 +07:00
688382eed6 Shapeless ND and Buffer algebras 2021-10-17 12:42:35 +03:00
abae29bbed DoubleBuffer algebra refactoring 2021-10-02 18:54:45 +03:00
89eebbecb7 Fix EJML inversion issue 2021-09-21 21:24:27 +03:00
dfd6e0a949 Merge remote-tracking branch 'origin/dev' into feature/advanced-optimization
# Conflicts:
#	kmath-commons/src/main/kotlin/space/kscience/kmath/commons/optimization/CMOptimization.kt
#	kmath-commons/src/main/kotlin/space/kscience/kmath/commons/optimization/cmFit.kt
#	kmath-ejml/src/main/kotlin/space/kscience/kmath/ejml/_generated.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/FunctionOptimization.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/NoDerivFunctionOptimization.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/Optimization.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/XYFit.kt
2021-08-16 09:56:00 +03:00
aaa298616d QOW is working more or less 2021-08-16 09:55:03 +03:00
Iaroslav Postovalov
da27c2e494 Fix path to LICENSE in the notice 2021-08-08 12:27:16 +07:00
a020d1545c merge dev 2021-08-06 12:23:24 +03:00
Iaroslav Postovalov
afd5908784 Revise grammar of KDoc comments, refresh documentation files 2021-07-29 07:16:26 +07:00
Iaroslav Postovalov
b1998ed1a9 Replace public override with override 2021-07-19 03:12:41 +07:00
Iaroslav Postovalov
ef41c3f168 Build infrastructure changes 2021-07-17 16:40:34 +07:00
Iaroslav Postovalov
5d2eaaf68a Add contracts to some functions, fix multiple style issues 2021-07-13 00:38:30 +07:00
Iaroslav Postovalov
83fc4e28d8 Generate README, bump versions of Kotlin, Gradle, ND4J, ASM 2021-07-03 17:23:45 +07:00
Iaroslav Postovalov
4d6428a308 Update Jafama module documentation with some minor code amendments 2021-06-14 21:51:06 +07:00
Iaroslav Postovalov
7b736a7c81 Fix README.md again 2021-06-09 21:40:47 +07:00
95c0b2d3f0 [WIP] optimization with QOW 2021-06-08 14:27:45 +03:00
88e94a7fd9 [WIP] Optimization 2021-05-24 17:02:12 +03:00
3ec674c61b Merge branch 'dev' into feature/advanced-optimization
# Conflicts:
#	examples/src/main/kotlin/space/kscience/kmath/functions/integrate.kt
#	examples/src/main/kotlin/space/kscience/kmath/functions/matrixIntegration.kt
#	kmath-commons/src/main/kotlin/space/kscience/kmath/commons/integration/CMGaussRuleIntegrator.kt
#	kmath-commons/src/main/kotlin/space/kscience/kmath/commons/integration/CMIntegrator.kt
#	kmath-commons/src/main/kotlin/space/kscience/kmath/commons/optimization/CMOptimization.kt
#	kmath-commons/src/main/kotlin/space/kscience/kmath/commons/optimization/cmFit.kt
#	kmath-functions/src/commonMain/kotlin/space/kscience/kmath/integration/GaussIntegrator.kt
#	kmath-functions/src/commonMain/kotlin/space/kscience/kmath/integration/Integrand.kt
#	kmath-functions/src/commonMain/kotlin/space/kscience/kmath/integration/MultivariateIntegrand.kt
#	kmath-functions/src/commonMain/kotlin/space/kscience/kmath/integration/UnivariateIntegrand.kt
#	kmath-functions/src/commonTest/kotlin/space/kscience/kmath/integration/GaussIntegralTest.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/FunctionOptimization.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/NoDerivFunctionOptimization.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/Optimization.kt
2021-05-24 14:44:08 +03:00
12805712d3 Integrand toString 2021-05-24 14:30:51 +03:00
380c76fe40 Piecewise optimization 2021-05-23 20:01:07 +03:00
ec7a971df7 Separate double-based integrator for a Simpson rule 2021-05-22 20:17:52 +03:00
a24c8dcbce Simpson and spline integration 2021-05-22 20:08:49 +03:00
18509f1259 Simpson integrator 2021-05-21 23:14:07 +03:00
Iaroslav Postovalov
d7a4228f5f Add out variance to StructureND and some related types, make some unrelated changes 2021-05-20 19:57:55 +07:00
8a07140f7c Minor piecewise rework 2021-05-19 22:35:06 +03:00
0898285542 Removed Any restriction on polynomials 2021-05-19 12:58:01 +03:00
d45d44f96d Fix Interpolation 2021-05-17 21:55:32 +03:00
53a6d3543f [WIP] Interpolation fix 2021-05-17 16:53:12 +03:00
e6c6925209 Fix integration borders 2021-05-16 22:33:53 +03:00
d1e76175b7 Refactor integrator API. 2021-05-16 14:09:21 +03:00
6f39b38a72 Refactor integrator API. 2021-05-16 13:59:37 +03:00
6eb95f26eb Additional piecewise extension 2021-05-14 12:11:37 +03:00
feb5743f58 Change signature of one of integrate helpers 2021-05-13 11:10:59 +03:00
6d78bb8d91 0.3.0-dev-8. Readme update 2021-05-08 14:36:37 +03:00
Iaroslav Postovalov
591b408729
MST rendering: support infix division, use arcsin instead sin^-1 form for inverse trigonometric functions 2021-05-04 17:22:09 +07:00
Iaroslav Postovalov
598b2e1587
Rewrite EJML module by dropping ejml-simple abstraction level; multiple build script changes 2021-04-30 19:48:12 +07:00
257337f4fb [WIP] Refactor optimization 2021-04-25 22:34:59 +03:00
Iaroslav Postovalov
0a0d0af94a
Configure copyright scoping 2021-04-21 19:46:02 +07:00
Iaroslav Postovalov
b6a57dbfd0
MST compilation to WebAssembly with Binaryen, reorganize internal JS bindings, tests refactor 2021-04-21 19:17:57 +07:00
fd4108b74f fix segmented integral 2021-04-19 11:26:06 +03:00
07e39a068d Use split interval for integration. 2021-04-18 19:43:03 +03:00
6c215abf13 Fix BigInt benchmark. 2021-04-17 10:08:04 +03:00
299592ed25 Update readme 2021-04-16 19:44:51 +03:00
ef1200aad0 Update integration API 2021-04-16 16:39:27 +03:00
65a8d8f581 Field element integration 2021-04-16 15:50:33 +03:00
Iaroslav Postovalov
e9c31b7827
Merge branch 'master' into dev
# Conflicts:
#	README.md
#	build.gradle.kts
#	examples/src/main/kotlin/space/kscience/kmath/stat/DistributionBenchmark.kt
#	examples/src/main/kotlin/space/kscience/kmath/structures/ParallelRealNDField.kt
#	kmath-ast/README.md
#	kmath-ast/build.gradle.kts
#	kmath-ast/src/commonMain/kotlin/space/kscience/kmath/ast/MstExpression.kt
#	kmath-complex/README.md
#	kmath-complex/build.gradle.kts
#	kmath-complex/src/commonMain/kotlin/space/kscience/kmath/complex/ComplexNDField.kt
#	kmath-core/README.md
#	kmath-core/build.gradle.kts
#	kmath-core/src/commonMain/kotlin/space/kscience/kmath/expressions/MST.kt
#	kmath-core/src/commonMain/kotlin/space/kscience/kmath/expressions/MstAlgebra.kt
#	kmath-core/src/commonMain/kotlin/space/kscience/kmath/nd/RealNDField.kt
#	kmath-core/src/commonMain/kotlin/space/kscience/kmath/structures/RealBufferField.kt
#	kmath-coroutines/build.gradle.kts
#	kmath-coroutines/src/commonMain/kotlin/space/kscience/kmath/chains/BlockingRealChain.kt
#	kmath-coroutines/src/jvmMain/kotlin/space/kscience/kmath/structures/LazyNDStructure.kt
#	kmath-dimensions/src/commonTest/kotlin/kscience/dimensions/DMatrixContextTest.kt
#	kmath-for-real/README.md
#	kmath-functions/README.md
#	kmath-functions/src/commonMain/kotlin/space/kscience/kmath/interpolation/Interpolator.kt
#	kmath-functions/src/commonMain/kotlin/space/kscience/kmath/interpolation/LoessInterpolator.kt
#	kmath-functions/src/commonMain/kotlin/space/kscience/kmath/interpolation/XYPointSet.kt
#	kmath-geometry/build.gradle.kts
#	kmath-nd4j/README.md
#	kmath-nd4j/build.gradle.kts
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/distributions/FactorizedDistribution.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/stat/Distribution.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/stat/Fitting.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/stat/OptimizationProblem.kt
#	kmath-stat/src/jvmMain/kotlin/space/kscience/kmath/stat/distributions.kt
#	kmath-viktor/src/main/kotlin/space/kscience/kmath/viktor/ViktorNDStructure.kt
2021-04-16 18:02:44 +07:00
ba3c9b6d45 BigIntBenchmarks. cleanup 2021-04-16 09:47:30 +03:00
Iaroslav Postovalov
41b7349a43
Setup copyright headers, add references to third-party files, update LICENSE 2021-04-16 00:15:00 +07:00
19ec6a57a4 Gauss-Legendre working test 2021-04-15 19:39:46 +03:00
93bc371622 WIP Integrator tests 2021-04-15 09:53:29 +03:00
e2ceb64d36 Fix errors and migrations 2021-04-14 23:26:21 +03:00
6cea5742e8 Blocking statistics. Move MST to core 2021-04-14 12:40:26 +03:00
Iaroslav Postovalov
9ee506b1d2
Some experiments with MST rendering 2021-03-31 16:12:07 +07:00
Iaroslav Postovalov
f26cad6d18
Merge branch 'dev' into feature/mp-samplers
# Conflicts:
#	examples/src/main/kotlin/space/kscience/kmath/commons/fit/fitWithAutoDiff.kt
#	examples/src/main/kotlin/space/kscience/kmath/stat/DistributionBenchmark.kt
#	examples/src/main/kotlin/space/kscience/kmath/stat/DistributionDemo.kt
#	kmath-commons/src/test/kotlin/space/kscience/kmath/commons/optimization/OptimizeTest.kt
#	kmath-core/src/commonMain/kotlin/space/kscience/kmath/structures/Buffer.kt
#	kmath-coroutines/src/commonMain/kotlin/kscience/kmath/chains/BlockingRealChain.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/SamplerAlgebra.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/stat/Distribution.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/stat/RandomChain.kt
#	kmath-stat/src/jvmMain/kotlin/space/kscience/kmath/stat/distributions.kt
2021-03-31 01:48:26 +07:00
cd05ca6e95 Initial Optimization API 2021-03-24 16:36:06 +03:00
e216fd50f5 Merge remote-tracking branch 'origin/dev' into dev
# Conflicts:
#	build.gradle.kts
#	kmath-core/src/commonMain/kotlin/space/kscience/kmath/misc/XYPointSet.kt
#	kmath-ejml/src/main/kotlin/space/kscience/kmath/ejml/EjmlLinearSpace.kt
2021-03-24 13:33:08 +03:00
Iaroslav Postovalov
7579a35f8e
Merge branch 'dev' into commandertvis/doc 2021-03-23 19:48:16 +07:00
Iaroslav Postovalov
4d160b81b9
Improve KDoc comments for kmath-functions 2021-03-23 19:48:12 +07:00
Iaroslav Postovalov
1b01654667
Improve Dokka configuration 2021-03-22 20:41:18 +07:00
Iaroslav Postovalov
67aa173927
Some documentation updates 2021-03-22 16:11:54 +07:00
aeceb4a337 Move dataset to core 2021-03-19 14:53:14 +03:00
248d42c4e0 Remove MutableBufferND 2021-03-16 22:46:22 +03:00
206e4cbcf6 Real -> Double 2021-03-16 21:17:26 +03:00
05f742452d Structure naming change 2021-03-16 20:56:20 +03:00
105b84b87c minor cosmetics 2021-03-16 20:44:03 +03:00
874875c13a API for integration 2021-03-16 15:05:44 +03:00
b2df860381 Merge branch 'dev' into feature/integration 2021-03-16 09:47:40 +03:00
acfdd187a4 Bump readme 2021-03-15 20:17:04 +03:00
179a07e034 Bump readme 2021-03-15 19:41:37 +03:00
52a942dbe2 integrand 2021-03-12 19:29:06 +03:00
522f39cef3 replace Space by Group 2021-03-10 22:09:19 +03:00
6a5ca2a115 Code review. 2021-03-10 18:02:04 +03:00
8ae8ebe871 Fully refactor algebra split ScaleOperations from Space. 2021-03-08 21:03:48 +03:00
dd5ef4810f Gradle plugin 0.8.0 2021-02-21 16:13:40 +03:00
209e17cd42 Merge histograms 2021-02-19 10:52:56 +03:00
8485d28872 Change package name to space.kscience 2021-02-18 11:17:28 +03:00
Iaroslav Postovalov
d69a04bb6e
Merge branch 'dev' into feature/mp-samplers 2021-02-12 20:58:03 +07:00
Iaroslav Postovalov
0e42cc9f5c
Update README 2021-02-11 23:35:45 +07:00
Iaroslav Postovalov
9210bc9198
Merge branch 'dev' into feature/mp-samplers 2021-02-06 23:12:16 +07:00
28240954b0 Documentation update. API generated 2021-01-30 20:23:15 +03:00
85927c9f6b Documentation update. 2021-01-30 20:12:14 +03:00
061398b009 [WIP] Refactor NDStructures 2021-01-22 23:22:24 +03:00
Iaroslav Postovalov
3c602e859d
Merge branch 'dev' into mp-samplers
# Conflicts:
#	examples/src/main/kotlin/kscience/kmath/commons/prob/DistributionBenchmark.kt
#	examples/src/main/kotlin/kscience/kmath/commons/prob/DistributionDemo.kt
#	kmath-commons/src/main/kotlin/kscience/kmath/commons/expressions/DiffExpression.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/distributions/NormalDistribution.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/internal/InternalErf.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/internal/InternalGamma.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/internal/InternalUtils.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/AhrensDieterExponentialSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/AhrensDieterMarsagliaTsangGammaSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/AliasMethodDiscreteSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/BoxMullerNormalizedGaussianSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/GaussianSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/KempSmallMeanPoissonSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/LargeMeanPoissonSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/MarsagliaNormalizedGaussianSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/NormalizedGaussianSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/PoissonSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/SmallMeanPoissonSampler.kt
#	kmath-stat/src/commonMain/kotlin/kscience/kmath/stat/samplers/ZigguratNormalizedGaussianSampler.kt
#	kmath-stat/src/jvmMain/kotlin/kscience/kmath/stat/distributions.kt
2020-11-02 01:16:29 +07:00
1c1580c8e6 Generification of autodiff and chi2 2020-10-27 17:57:49 +03:00
Iaroslav Postovalov
612f6f0082
Refactor, remove unused files, remove BasicSampler 2020-10-16 16:49:47 +07:00
28190f9800 scientifik -> kscience 2020-09-20 22:39:27 +03:00
5032523bbf Merge remote-tracking branch 'origin/dev' into dev
# Conflicts:
#	build.gradle.kts
#	examples/src/main/kotlin/scientifik/kmath/linear/LinearAlgebraBenchmark.kt
#	kmath-ast/build.gradle.kts
#	kmath-ast/src/commonMain/kotlin/scientifik/kmath/ast/MstAlgebra.kt
#	kmath-commons/build.gradle.kts
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/misc/AutoDiff.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/Complex.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/Buffers.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/FlaggedBuffer.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/IntBuffer.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/RealBuffer.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/ShortBuffer.kt
#	kmath-for-real/build.gradle.kts
#	kmath-functions/build.gradle.kts
#	kmath-memory/build.gradle.kts
#	kmath-prob/build.gradle.kts
2020-09-20 21:59:10 +03:00
Iaroslav
5eaeb82a0f
Make one-liners not one-liners, add newlines at EOFs, optimize imports and Kotlin extension configurations 2020-09-20 16:36:48 +07:00
Iaroslav Postovalov
8b171ac3a3
Update changelog 2020-09-12 09:22:26 +07:00
Iaroslav Postovalov
2b15d69f11
Enable functions module and unmark Polynomial inline 2020-09-10 15:22:01 +07:00
Iaroslav Postovalov
fc5ec8fed7
Drop koma support, add more explicit visibility modifiers 2020-09-09 22:31:54 +07:00
Iaroslav Postovalov
f567f73d19
Specify explicit API visbility, minor refactoring (error handling, etc.) 2020-09-09 11:28:54 +07:00
Iaroslav Postovalov
6b79e79d21
Update tools and Kotlin, specify public explicitly, minor contracts refactor 2020-09-09 09:55:26 +07:00
Iaroslav
5e4522bb06
Upgrade build tools plugin to dev version; file reformat; change dependencies' versions; specify visibility explicitly at certain places (core, especially), make some interfaces fun 2020-09-08 16:40:47 +07:00
Iaroslav Postovalov
40888f66d6
Replace opt-in annotations with useExperimentalAnnotation for modules 2020-08-22 16:49:21 +07:00
Iaroslav
1d18832aa6
Provide contracts for many functions, make inline several functions, replace <algebra>.run { and with(<algebra>> { with <algebra> {, add newlines at EOFs, specify operator modifier explicitly at many places, reformat files, replace if (...) error guards with require and check 2020-08-22 02:42:59 +07:00
e00a66ca42 Fix linear interpolator const 2020-02-13 16:21:41 +03:00
068b90e7ab Add different ways to provide data for XY interpolator 2020-02-12 22:26:25 +03:00
73f40105c4 Interpolation API 2020-02-12 21:57:21 +03:00
d56b4148be Generalized linear interpolation 2020-01-12 20:51:16 +03:00
396b31d106 Linear interpolation 2020-01-12 10:49:42 +03:00
8662935dbe Merge branch 'master' into dev 2020-01-12 10:02:28 +03:00