Commit Graph

173 Commits

Author SHA1 Message Date
c8621ee5b7 [WIP] optimization refactoring 2021-05-25 21:11:57 +03:00
f84f7f8e45 Merge branch '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-core/src/commonMain/kotlin/space/kscience/kmath/expressions/DifferentiableExpression.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/FunctionOptimization.kt
#	kmath-stat/src/commonMain/kotlin/space/kscience/kmath/optimization/XYFit.kt
2021-05-25 17:00:02 +03:00
f2b7a08ad8 Remove second generic from DifferentiableExpression 2021-05-25 16:53:53 +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
18509f1259 Simpson integrator 2021-05-21 23:14:07 +03:00
15d874fb06 Remove MST.Symbolic
Replace it by Symbol
LogicAlgebra
2021-05-16 19:53:21 +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
feb5743f58 Change signature of one of integrate helpers 2021-05-13 11:10:59 +03:00
7b6361e59d [WIP] optimization refactor in process 2021-04-26 15:02:19 +03:00
257337f4fb [WIP] Refactor optimization 2021-04-25 22:34:59 +03:00
07e39a068d Use split interval for integration. 2021-04-18 19:43:03 +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
Iaroslav Postovalov
cf91da1a98
Add pi and e constants, some unrelated changes 2021-04-05 23:44:42 +07:00
a91d468b74 Refactor Algebra and ExpressionAlgebra. Introduce bindSymbolOrNull on the top level 2021-04-01 21:27:30 +03:00
c2bab5d138 Fix Samplers and distribution API 2021-04-01 18:18:54 +03:00
Iaroslav Postovalov
9574099f9b
Fix post-merge issues 2021-03-31 02:24:21 +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
aeceb4a337 Move dataset to core 2021-03-19 14:53:14 +03:00
88d0c19a74 Refactor structure features. Basic curve fitting 2021-03-19 11:07:27 +03:00
a3ca06a241 Remove StructureND identity #248 2021-03-16 21:43:29 +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
cceffa09e8 Bump dev version 2021-03-15 19:24:07 +03:00
71ed56c2b6 Move features to scopes 2021-03-15 16:46:12 +03:00
e01f90b5e0 add gradient example 2021-03-14 14:40:13 +03:00
5e6f65a181 WIP Matrix refactor 2021-03-13 18:19:10 +03:00
19d3998c3b WIP vector space refactor 2021-03-13 10:10:00 +03:00
9bc8e8fbf9 WIP vector space refactor 2021-03-12 22:52:18 +03:00
803f298d8b Make vector spaces great again 2021-03-11 11:28:10 +03:00
8ae8ebe871 Fully refactor algebra split ScaleOperations from Space. 2021-03-08 21:03:48 +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
9210bc9198
Merge branch 'dev' into feature/mp-samplers 2021-02-06 23:12:16 +07:00
Iaroslav Postovalov
70c0b614a3
Merge branch 'dev' into feature/quaternion
# Conflicts:
#	CHANGELOG.md
#	examples/src/main/kotlin/kscience/kmath/operations/ComplexDemo.kt
#	examples/src/main/kotlin/kscience/kmath/structures/ComplexND.kt
#	kmath-complex/src/commonMain/kotlin/kscience/kmath/complex/ComplexNDField.kt
#	kmath-core/src/commonMain/kotlin/kscience/kmath/structures/NDAlgebra.kt
#	kmath-core/src/commonTest/kotlin/kscience/kmath/structures/NDFieldTest.kt
2021-01-29 17:00:57 +07:00
2e52457b96 fix merge 2021-01-28 20:10:42 +03:00
45866b500f Merge remote-tracking branch 'origin/dev' into refactor/ndalgebra
# Conflicts:
#	CHANGELOG.md
#	examples/src/benchmarks/kotlin/kscience/kmath/benchmarks/LinearAlgebraBenchmark.kt
#	kmath-commons/src/main/kotlin/kscience/kmath/commons/linear/CMMatrix.kt
#	kmath-for-real/src/commonMain/kotlin/kscience/kmath/real/RealMatrix.kt
2021-01-28 20:07:43 +03:00
Iaroslav Postovalov
9342824c96
Merge branch 'dev' into feature/quaternion 2021-01-24 02:00:22 +07:00
Iaroslav Postovalov
624460c52d
Merge branch 'dev' into feature/mp-samplers
# Conflicts:
#	examples/src/main/kotlin/kscience/kmath/stat/DistributionBenchmark.kt
#	kmath-core/src/commonMain/kotlin/kscience/kmath/structures/Structure2D.kt
2021-01-24 01:55:32 +07:00
332c04b573 [WIP] Refactor NDStructures 2021-01-23 19:19:13 +03:00
061398b009 [WIP] Refactor NDStructures 2021-01-22 23:22:24 +03:00
Iaroslav Postovalov
a3cf13b678
Merge branch 'dev' into commandertvis/cm-decompositions
# Conflicts:
#	kmath-commons/src/main/kotlin/kscience/kmath/commons/linear/CMMatrix.kt
2021-01-21 18:43:03 +07:00
881b85a1d9 Add origin (optin) extension property to expose MatrixWrapper content 2021-01-20 15:32:55 +03:00
Iaroslav Postovalov
9748e0bfbe
Merge branch 'dev' into feature/quaternion
# Conflicts:
#	CHANGELOG.md
#	examples/src/main/kotlin/kscience/kmath/stat/DistributionBenchmark.kt
#	kmath-complex/src/commonMain/kotlin/kscience/kmath/complex/ComplexNDField.kt
#	kmath-core/src/commonMain/kotlin/kscience/kmath/operations/Complex.kt
#	kmath-core/src/commonTest/kotlin/kscience/kmath/structures/NDFieldTest.kt
2021-01-20 01:10:31 +07:00
Iaroslav Postovalov
57b1157650
Reformat, bring back the features of CMMatrix with the new API, add missing features in QRDecomposition in EjmlMatrix 2021-01-20 00:28:39 +07:00
4c256a9f14 Features refactoring. 2021-01-19 19:32:13 +03:00
ab32cd9561 Numeric operations are decoupled from Ring 2021-01-19 17:16:43 +03:00
b288704528 Optimize RealMatrix dot operation 2021-01-07 18:07:00 +03:00
Iaroslav Postovalov
acf9dd2b6a
Extract complex and quaternion systems to another module 2021-01-06 21:01:37 +07:00
Iaroslav Postovalov
5c54640e60
Merge branch 'dev' into mp-samplers
# Conflicts:
#	examples/src/main/kotlin/kscience/kmath/stat/DistributionDemo.kt
#	kmath-stat/src/jvmMain/kotlin/kscience/kmath/stat/distributions.kt
2020-12-12 17:11:09 +07:00
712df04170 Implemented #131 2020-12-01 21:21:56 +03:00
Iaroslav Postovalov
f18cd9ad40
Fix package names 2020-11-29 16:25:08 +07:00
Iaroslav Postovalov
33d23c8d28
Duplicate repositories declared in main build script, fix errors 2020-11-02 01:08:55 +07:00
Iaroslav Postovalov
d14e437659
Update DifferentiableExpression by providing second type argument representing the result of differentiation 2020-10-30 16:57:19 +07:00
6f31ddba30 Fix CM DerivativeStructureField constants 2020-10-29 19:50:45 +03:00
fbe1ab94a4 Change DifferentiableExpression API to use ordered symbol list instead of orders map. 2020-10-29 19:35:08 +03:00
dfa1bcaf01 prob renamed to stat 2020-10-28 09:16:21 +03:00
f8c3d1793c Fitting refactor 2020-10-28 09:08:37 +03:00
1c1580c8e6 Generification of autodiff and chi2 2020-10-27 17:57:49 +03:00
9a147d033e Another refactor of SimpleAutoDiff 2020-10-27 17:57:17 +03:00
4450c0fcc7 Fix orders in DerivativeStructures 2020-10-26 14:44:57 +03:00
30132964dd Separate object for fitting. Chi-squared 2020-10-26 10:01:30 +03:00
57781678e5 Cleanup 2020-10-25 19:46:22 +03:00
1fbe12149d Advanced configuration API for cm-optimization 2020-10-25 19:31:12 +03:00
d826dd9e83 Initial optimization implementation for CM 2020-10-24 20:33:19 +03:00
f7614da230 Refactoring 2020-10-22 11:27:08 +03:00
ae07652d9e Symbol identity is always a string 2020-10-21 11:38:28 +03:00
707ad21f77 New Expression API 2020-10-19 22:51:33 +03:00
e44423192d Tools version update 2020-10-13 20:34:17 +03:00
Iaroslav Postovalov
940fabfac2
Add more KDoc comments, fix grammar issue 2020-09-27 14:50:07 +07:00
Iaroslav
12b599fff2
Fix some packaging issues, add some KDoc comments, minor refactor 2020-09-23 21:15:54 +07:00
28190f9800 scientifik -> kscience 2020-09-20 22:39:27 +03:00
Iaroslav Postovalov
8ae9a071ef
Add more explicit public modifiers 2020-09-09 21:12:18 +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
Iaroslav
e64a6796ea
Fix division of Complex, minor reformat and rearrangement of NumberAlgebra, implement hyperbolic functions 2020-07-03 00:46:48 +07:00
Iaroslav
a71c02e9ed
Merge remote-tracking branch 'origin/dev' into adv-expr-improved-trigonometry
# Conflicts:
#	kmath-ast/README.md
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/AsmBuilder.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/buildName.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/classWriters.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/methodVisitors.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/specialization.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/RealBufferField.kt
2020-06-27 20:24:41 +07:00
Iaroslav
27605aee82
Merge remote-tracking branch 'origin/dev' into adv-expr 2020-06-27 19:56:00 +07:00
4b067f7a97 DoubleBuffer -> RealBuffer. Number algebra refactoring. 2020-06-27 12:19:43 +03:00
Commander Tvis
002de8d23a
Merge remote-tracking branch 'origin/dev' into adv-expr
# Conflicts:
#	examples/build.gradle.kts
2020-06-25 10:28:32 +07:00
668d13c9d1 Minor refactoring + domains 2020-06-23 20:03:45 +03:00
Iaroslav
f8f1814def
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-improved-trigonometry 2020-06-16 14:40:41 +07:00
96550922cd Removal of AsmExpression 2020-06-15 22:07:31 +03:00
Commander Tvis
76ad027460
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-improved-trigonomery
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/NumberAlgebra.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/OptionalOperations.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/ExtendedNDField.kt
2020-06-13 16:41:26 +07:00
5e92d85c46 Separate ast module 2020-06-12 10:40:59 +03:00
8f204d0e64 Merge branch 'dev' into adv-expr 2020-06-12 08:44:06 +03:00
Commander Tvis
757332e262
Merge remote-tracking branch 'mipt-npm/dev' into adv-expr-improved-trigonomery 2020-06-11 10:32:34 +07:00
Iaroslav
2e5c13aea9
Improve support of string-identified operations API, rework trigonometric operations algebra part: introduce inverse trigonometric operations, rename tg to tan 2020-06-10 02:05:13 +07:00
5dc07febe3 Expression simplification 2020-06-09 13:07:40 +03:00
048a1ceaed Moved probability distributions to commons-rng and to prob module 2020-05-22 21:24:20 +03:00
1a869ace0e Refactored Expression tree API 2020-05-15 16:10:19 +03:00