-
Notifications
You must be signed in to change notification settings - Fork 1
/
NEWS
1078 lines (949 loc) · 49.4 KB
/
NEWS
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
= New Features =
== 1.1 release == #release-1.1
=== Library ===
New stochastic process classes:
* ARMALikelihood
* ARMALikelihoodFactory
* UserDefinedStationaryCovarianceModel
* StationaryCovarianceModelFactory
* UserDefinedCovarianceModel
* CovarianceModelFactory
* NonStationaryCovarianceModel
* NonStationaryCovarianceModelFactory
* DickeyFullerTest
New bayesian updating classes:
* RandomWalkMetropolisHastings
* MCMC
* Sampler
* CalibrationStrategy
* PosteriorRandomVector
New distributions:
* AliMikhailHaqCopula
* AliMikhailHaqCopulaFactory
* Dirac
* DiracFactory
* FarlieGumbelMorgensternCopula
* FarlieGumbelMorgensternCopulaFactory
* FisherSnedecorFactory
* NegativeBinomialFactory
* ConditionalDistribution
* PosteriorDistribution
* RiceFactory
New classes:
* FunctionalBasisProcess
* Classifier
* MixtureClassifier
* ExpertMixture
* Mesh
* RestrictedEvaluationImplementation
* RestrictedGradientImplementation
* RestrictedHessianImplementation
==== API changes ====
* Changed the way the TrendFactory class uses the basis. It is now an argument of the build() method instead of a parameter of the constructor.
* Deprecated Distribution::getNumericalSample, RandomVector::getNumericalSample, TimeSeries::getNumericalSample, and TimeSeries::asNumericalSample (getSample)
* Deprecated Distribution::computeCharacteristicFunction(NumericalScalar x, Bool logScale) (computeCharacteristicFunction/computeLogCharacteristicFunction)
* Deprecated Distribution::computeGeneratingFunction(NumericalComplex z, Bool logScale) (computeGeneratingFunction/computeLogGeneratingFunction)
* Deprecated Distribution::computeCDF(x, Bool tail) (computeCDF/computeComplementaryCDF)
* Removed SVMKernel, SVMRegression classes
* Added samples accessors to MetaModelAlgorithm.
* Added AggregatedNumericalMathEvaluationImplementation::operator()(NumericalSample)
* Deprecated PlatformInfo::GetId.
* Added a draw() method to the NumericalMathFunction class.
* Changed the return type of the build() method for all the DistributionImplementationFactory related classes. Now, it returns a smart pointer on a DistributionImplementation rather than a C++ pointer. It closes the memory leak mentioned in ticket #545.
* Changed the return type of the getMarginal() method of the DistributionImplementation, RandomVectorImplementation and ProcessImplementation related classes. Now, it returns smart pointers instead of C++ pointers to avoid memory leak.
=== Python module ===
* DistributedPythonFunction: new python wrapper module, which allows to launch a function
to several nodes and cores in parallel
* PythonFunction: added simplified constructor for functions
* New matplotlib viewer as replacement for rpy2 & qt4 routines
* Added PythonRandomVector, PythonDistribution to overload Distribution & RandomVector objects
* Added NumericalSample, NumericalPoint, Description, Indice slicing
* Added automatic python conversion to BoolCollection
* Allowed use of wrapper data enums using their corresponding xml tags
=== Miscellaneous ===
* Added NumericalMathFunction::clearCache
* CMake: MinGW build support
* CMake: completed support for UseOpenTURNS.config
* Added quantile function on a user-provided grid.
* Added the SetColor() and GetColor() methods to the Log class.
* Added row and column extraction to the several matrices.
* Added the getInverse() method to the TrendTransform and InverseTrendTransform classes.
* Improved the generic implementation of the computeQuantile() method in the CopulaImplementation class.
* Improved the labeling of the Kendall plot in the VisualTest class.
* Improved the robustness of the BestModelBIC(), BestModelKolmogorov() and BestModelChiSquared() methods in the FittingTest class.
* Ship openturns on windows as a regular python module.
* R & R.rot as only runtime dependencies.
* Improved the pretty-printing of many classes.
* Added a constructor based on the Indices class to the Box class.
==== Bug fixes ====
* #403 (do not display the name if object is unamed)
* #424 (OT rc1.0 Ipython interactive mode: problem with "ctrl-c")
* #429 (OT r1.0 Creation of a NumericalSample with an np.array of dimension 1)
* #471 (The key 'BoxCox-RootEpsilon' is missing in the ResourceMap object)
* #473 (Bug with generic wrapper)
* #479 (Wrong output of getRealization() for the SpectralNormalProcess class when dimension>1)
* #480 (Wrong random generator for the NegativeBinomial class)
* #482 (Build failure with g++ 4.7)
* #487 (Wrong output of getRealization() for the Event class built from a domain and a random vector when dimension>1)
* #488 (The getConfidenceLength() method of the SimulationResult class does not take the given level into account)
* #495 (g++ 4.7 miscompiles OT)
* #496 (Missing name of DistributionFactories)
* #497 (Spurious changes introduced in Python docstrings (r1985))
* #504 (Bad size of testResult in HypothesisTest)
* #509 (I cannot install OT without admin rights)
* #510 (Cast trouble with DistributionCollection)
* #518 (DistributionCollection does not check indices)
* #537 (Downgrade of numpy version at the installation of openturns)
* #538 (Please remove CVS keywords from source files (2nd step))
* #541 (LogUniform, Burr distributions: incorrect std dev)
* #542 (Bad default constructor of TruncatedNormal distribution)
* #549 (OpenTURNSPythonFunction attributes can be inadvertendly redefined)
* #551 (The generic wrapper fails on Windows)
* #556 (OpenTURNSPythonFunction definition)
* #560 (Missing getWeights method in Mixture class)
* #561 (The Windows installer does not configure the env. var. appropriately.)
* #562 (wrong value returned in coupling_tools.get_value with specific parameters.)
* #572 (Various changes in distribution classes)
* #576 (DrawHistogram fails with a constant NumericalSample)
* #580 (ExpertMixture marginal problem)
* #581 (ExpertMixture Debug Message)
* #583 (Missing description when using NumericalMathFunction)
* #584 (ComposedDistribution description)
* #586 (The Pie graphics could be easily improved.)
* #587 (Cannot save a NumericalMathFunction if built from a NumericalMathEvaluationImplementation)
* #592 (View and Show)
== 1.0 release == #release-1.0
==== Library ====
Introducing stochastic processes modelling through these classes:
* TimeSeries
* TimeGrid
* ProcessSample
* SecondOrderModel
* TemporalFunction
* SpatialFunction
* DynamicalFunction
* ARMA
* ARMACoefficients
* ARMAState
* Process
* NormalProcess
* CompositeProcess
* TemporalNormalProcess
* SpectralNormalProcess
* WhiteNoise
* RandomWalk
* WhittleFactory
* Domain
* FilteringWindows
* RegularGrid
* WelchFactory
* WhittleFactory
* SpectralModel
* ExponentialModel
* CauchyModel
* UserDefinedSpectralModel
* SpectralModel
* CovarianceModel
* InverseBoxCoxTransform
* BoxCoxTransform
* BoxCoxFactory
* BoxCoxEvaluationImplementation
* InverseBoxCoxEvaluationImplementation
* ComplexMatrix
* TriangularComplexMatrix
* HermitianMatrix
* FFT
* KissFFT
* TrendTransform
New classes:
* Added the NegativeBinomial class.
* Added the MeixnerFactory class, in charge of building the orthonormal basis associated to the negative binomial distribution.
* Added the HaselgroveSequence class, which implements a new low discrepancy sequence based on irrational translations of the nD canonical torus.
* Added the RandomizedLHS, RandomizedQuasiMonteCarlo classes.
Enhancements:
* Added an history mechanism to all the NumericalMathFunction types. It is deactivated by default, and stores all the input and output values of a function when activated.
* Fixed callsNumbers being incorrecly incremented in ComputedNumericalMathEvaluationImplementation.
* Added getCacheHits, addCacheContent methods to NumericalMathFunction
* Improved the speed and accuracy of moments computation for the ZipfMandelbrot distribution.
* Added the getMarginal() methods to the UserDefined class.
* Added the MinCopula class.
* Improved the buildDefaultLevels() method of the Contour class. Now, the levels are based on quantiles of the value to be sliced.
* Improved the drawPDF() and drawCDF() methods of the CopulaImplementation class.
* Restored the ability to compute importance factors and mean point in event domain to the SimulationResult class, using the SimulationSensitivityAnalysis class.
* Improved the StandardDistributionPolynomialFactory class to take into account the NegativeBinomial special case using Meixner factory.
* Added methods to define color using the Hue, Saturation, Value color space to the Drawable class.
* Added the isDiagonal() method to the SymmetricMatrix class.
* Improved the use of ResourceMap throughout the library.
* The input sample of the projection strategy is stored in the physical space in all circumstances.
* Parallelized NumericalSample::computeKendallTau() method.
* Improved the FunctionalChaosRandomVector: it is now based on the polynomial meta model in the measure space instead of the input distribution based random vector. It provides the same output distribution for much cheaper realizations.
* Improved the performance of the RandomMixture class. Now, all the Normal atoms are merged into a unique atom, which greatly improve the performance in case of random mixture of many such atoms.
* Fixed bug in NumericalSample::exportToCSV method.
==== API changes ====
* deprecated Interval::isNumericallyInside(const NumericalPoint & point) in favor of numericallyContains(const NumericalPoint & point)
* removed deprecated class SobolIndicesResult.
* removed deprecated class SobolIndicesParameters.
* removed deprecated method CorrelationAnalysis::SobolIndices.
* Removed FunctionCache in favor of in/out History.
* Added 2 mandatory macros for wrappers: WRAPPER_BEGIN and WRAPPER_END.
=== Python module ===
* Added Matrix / Tensor / ComplexMatrix conversion from/to python sequence/list/ndarray
* Added typemaps to convert directly Indices and Description object from python sequences
* Added operators NumericalPoint::__div__, __rmul__; NumericalSample::operator==; Matrix::__rmul__.
* Fixed a memory leak in PythonNumericalMathEvaluationImplementation.
=== Miscellaneous ===
* Added patch for OSX build
* Updated the MuParser version. OpenTURNS is now based on MuParser version 2.0.0.
* Moved the Uncertainty/Algorithm/IsoProbabilisticTransformation folder into Uncertainty/Algorithm/Transformation folder, in order to prepare the development of the process transformations.
* Added colorization to make check and make installcheck outputs.
* Windows (un)installer can be run in quiet mode (e.g. openturns-setup-1.0.exe /S /D=C:\Program Files\OpenTURNS).
* Windows installer can avoid admin check (e.g. openturns-setup-1.0.exe /userlevel=[0|1]).
* The windows python example uses NumericalPythonMathFunction and can launch several external application in parallel.
==== Bug fixes ====
* #300 (openturns_preload makes it harder to bypass system libraries)
* #365 (LeastSquaresStrategy sample contructor)
* #366 (ProjectionStrategy's input sample gets erased)
* #369 (ndarray of dimension > 1 casts into NumericalPoint)
* #371 (Invalid DistributionImplementation::computeCDF dimension)
* #376 (Confidence intervals for LHS and QMC / RQMC implementation)
* #377 (Save a study crash after remove object)
* #378 (CMake always calls swig even if source files have not changed)
* #379 (Computation of the Cholesky factor)
* #380 (Ease customizing installation paths with CMake)
* #381 (Indices typemap)
* #382 (CorrelationMatrix::isPositiveDefinite crashes when matrix empty)
* #387 (cmake installs headers twice)
* #388 (Broken illegal argument detection in TimeSeries[i,j])
* #389 (Bug in ARMA prediction)
* #390 (Reorder tests launched by CMake to mimic Autotools)
* #398 (Cannot copy a TimeSeries in TUI)
* #399 (Wrong automatic cast of TimeSeries into NumericalSample in TUI)
* #400 (segmentation fault with TBB and GCC 4.6)
* #405 (missing headers in libopenturns-dev)
* #406 (Calcul quantiles empiriques)
* #407 (print fails with a gradient)
* #410 (Problem with getMarginal on a NumericalMathFunction)
* #414 (Fix compiler warnings)
* #417 (Minor bug in FFT)
* #418 (Problem in SpectralNormalProcess)
* #420 (File WrapperCommon_static.h forgotten during the installation (make install) ?)
* #421 (Problem when testing the wrapper template wrapper_calling_shell_command)
* #423 (OT rc1.0 Bug while creating a NumericalPoint with a numpy array)
* #425 (OT r1.0 Bug while creating a Matrix with a numpy matrix)
* #432 (TemporalNormalProcess bad dimension)
* #434 (Missing copyOnWrite() in TimeSeries.getValueAtIndex())
* #436 (Wrong results when using external code wrapper with openturns not linked to TBB and input provided in the command line)
* #445 (slow NumericalSample deepcopy)
* #464 (dimension not checked in NumericalSample)
* #465 (The ViewImage function makes a cmd.exe console appear (on Windows))
== 0.15 release == #release-0.15
=== Library ===
Sparse polynomial chaos expansion:
* LAR algorithm
* CorrectedLeaveOneOut cross-validation
* KFold cross-validation
New distributions:
* Burr
* InverseNormal
New classe:
* BlendedStep: proportional finite difference step
* DualLinearCombination NumericalMathFunctions classes
* CharlierFactory class, which provides orthonormal polynomials for the Poisson distribution.
* KrawtchoukFactory class, which provides orthonormal polynomials for the Binomial distribution.
Enhancements:
* Added the DrawKendallPlot() method to the VisualTest class.
* SensitivityAnalysis uses efficient Saltelli's algorith implementation without relying on R-sensitivity
==== Bug fixes ====
* #344
* #322
* #324
* #319
* #307
* #302
* #227
* #337
* #350
* #338
* #308
=== Python module ===
* Numpy arra type conversion
* Ability to pickle an OpenTURNSPythonFunction
==== Bug fixes ====
* #343
* #284
* Better handling of python exception in python NumericalMathFunction
== 0.14.0 release == #release-0.14.0
{{{
#!html
<h1 style="color: red">
WARNING: There is a bug regarding the iso-probabilistic transformation<br> affecting all the algorithms working in the standard space (FORM/SORM, chaos PCE, directional sampling),<br>
as a result the values provided can be biased in certain cases.
</h1>
}}}
=== Library ===
==== Enhancements ====
New distributions:
* Arcsine
* ArcsineFactory
* Bernoulli
* BernoulliFactory
* Burr
* BurrFactory
* Chi
* ChiFactory
* Dirichlet
* DirichletFactory
* FisherSnedecor
* InverseNormal
* InverseNormalFactory
* Multinomial
* MultinomialFactory
* NonCentralChiSquare
* Rice
* Trapezoidal
* TrapezoidalFactory
* ZipfMandelBrot
New differentation classes:
* FiniteDifferenceGradient
* FiniteDifferenceHessian
* FiniteDifferenceStep
* ProportionalStep
* ConstantStep
New low discrepancy sequences:
* InverseHaltonSequence
* FaureSequence
New classes:
* TBB
* TTY
* HyperbolicAnisotropicEnumerateFunction
Enhancement of existing classes:
* Wrappers library:
* IO performance
* Better error handling
* Massive parallelization support: tested up to 1k threads and 10e7 points
* Generic wrapper (no compilation required anymore)
* NumericalSample
* Use of TBB library for multithreading
* New imlementation allowing storage up to 8Gb
* Added clear() method to erase all content
* Added merge() method to merge two instances
* New accessors
* Pretty print for the following classes:
* Accessors to a composition of NumericalMathFunctions
* Aggregated functions
* FunctionalChaosAlgorithm allows for a multivariate model
* Automatic differentiation of analytical formulas
* Enhancement of distributions:
* Enhanced PDF/CDF drawing for discrete distributions
* Generic realization implementation for n-d distributions
* LogNormalFactory uses maximum likeliHood
* NormalCopulaFactory uses Kendall tau
* HistogramFactory based on Scott estimator
* Implementation of the RosenBlatt transformation
* Enhancement of graphs:
* Line width setting for StairCase and BarPlot
* CobWeb plot
* Copula fitting test (Kendall plot)
* Cloud from complex numbers
Methods:
* Added a constructor based on two input/output NumericalSamples to the NumericalMathFunction allowing to use the FunctionalChaos provided a sample.
* Added the getProjectionStrategy() method to FunctionalChaosAlgorithm allowing to retrieve the design experiment generated.
==== Miscellaneous ====
General:
* Compatibility with r-sensitivity > 1.3.1
* CMake compatibility
Moved classes:
* LeastSquares, QuadraticLeastSquares, LinearTaylor, QuadraticTaylor got moved to Base/MetaModel
==== Bug fixes ====
Fixes:
* Fixed Mixture distribution
=== Python module ===
==== Enhancements ====
* No more upcasting necessary for the following classes:
* Distribution
* HistoryStrategy
==== Bug fixes ====
* Less RAM required to build openturns thanks to new module dist
* Compatibility with swig 2
* Correct install on OSes that use a lib64 dir on x86_64 arch (rpm distros)
==== Miscellaneous ====
* Added some docstring to the main module
----
== 0.13.2 release == #release-0.13.2
=== Library ===
==== Enhancements ====
New classes:
* BootstrapExperiment
* ChebychevAlgorithm
* ConditionalRandomVector
* GaussProductExperiment
* GramSchmidtAlgorithm
* HaltonSequence
* OrthogonalUnivariatePolynomial
* OrthonormalizationAlgorithm
* Os
* StandardDistributionPolynomialFactory
Enhancement of existing classes:
* Pretty print for the following classes:
* NumericalSample
* Matrix
* UniVariatePolynomial
* New generic algorithm for the computeCovariance() and computeShiftedMoment() methods for the continuous distributions.
* Improved the CSV parser of the NumericalSample class. It can now cope with the various end of line conventions and any kind of blank characters in lines.
* Improved the CSV export by adding the description of the NumericalSample into the resulting file.
* The default constructor of a CovarianceMatrix now initializes it to the identity matrix.
* It is now possible to compute the tail quantile and tail CDF of any distribution.
Methods:
* Added the getStandardMoment() method that computes the raw moments of the standard version of the distribution for the following ones:
* Beta
* ChiSquare
* Exponential
* Laplace
* Logistic
* LogNormal
* Normal
* Rayleigh
* Student
* Triangular
* Uniform
* Weibull
* setAlphaBeta() method to set simultaneously the two parameters of a Weibull distribution.
* setParametersCollection() and getParametersCollection() for the Student distribution.
* Added a constructor based on a NumericalSample and the optional corresponding weights to the UserDefined distribution.
* Added two new methods for the computation of the bandwidth in the 1D case to the KernelSmoothing class, namely the computePluginBandwidth() and computeMixedBandwidth() methods.
* Added the getMoment() and getCenteredMoment() methods to the Distribution class, with a generic implementation.
* Added the setDistribution() method to the LHSExperiment class.
* Added the getRoots() and getNodesAndWeights() methods to the OrthogonalUniVariatePolynomial and OrthogonalProductPolynomialFactory classes.
* Added a constructor from two 1D NumericalSample to the cloud class.
* Added the PDF format as export formats to the Graph class.
* Added the computeSingularValues() method to the Matrix class.
* Added a fill() method to the Indices class, that aloows to fill an Indices object with the terms of an arithmetic progression.
* Added a constructor from a collection of String to the Description class.
* Added a getNumericalVolume() method to the Interval class. It computes the volume of the interval based on its numerical bounds, which gives a finite number even for infinite intervals.
* Added the printToLogDebug(), setWrapperError(), clearWrapperError(), getWrapperError() methods to the WrapperCommonFunctions class.
* Added the setError() function to the WrapperCommon class.
* Added the GetInstallationDirectory(), GetModuleDirectory(), CreateTemporaryDirectory(), DeleteTemporaryDirectory() methods to the Path class.
* Added the getReccurenceCoefficients() method to the OrthogonalUnivariatePolynomialFamily class to give access to the three term reccurence coefficients verified by an orthonormal family of univariate polynomials.
* Added a generate() method that also gives access to the weigths of the realizations to all the weighted experiements, namely:
* BootstrapExperiment
* FixedExperiment
* ImportanceSamplingExperiment
* LHSExperiment
* LowDiscrepancyExperiment
* MonteCarloExperiment
==== Miscellaneous ====
General:
* Added the ability to set the log severity through the environment variable OPENTURNS_LOG_SEVERITY.
* Deactivated the cache by default in the NumericalMathFunction class.
* Added a warning about the use of the default implementation of the gradient and hessian in the NumericalMathFunction class.
* Removed the exception declarations to all the methods.
Moved classes:
* LeastSquaresAlgorithm became PenalizedLeastSquaresAlgorithm, which allows to specify a general definite positive L2 penalization term to the least squares optimization problem.
* Removed the classes related to the inverse marginal transformation: they have been merged with the corresponding marginal transformation classes.
* Moved the BoundConstrainedAlgorithmImplementation::Result class into the BoundConstrainedAlgorithmImplementationResult class to ease the maintenance of the TUI.
==== Bug fixes ====
Fixes:
* Unregistered Weibull factory.
* Very bad performance of wrappers on analytical formulas.
* The computeCDF() method of the UserDefined distribution invert the meaning of the tail flag.
* Compilation options defined by OpenTURNS have errors.
* And many more little bugs or missing sanity tests that have been added along the lines...
=== Python module ===
==== Enhancements ====
* Any collection of objects can now be built from a sequence of such objects.
* Improved the compatibility between the OpenTURNS classes and the Python structures. The following classes can now be built from Python sequences:
* ConfidenceInterval
* Description
* Graph
* Histogram
* HistogramPair
* Indices
* Interval
* NumericalPoint
* NumericalPointWithDescription
* TestResult
* UniVariatePolynomial
* UserDefinedPair
* Improved the use of interface classes in place of implementation classes: it removes the need to explicitely cast an implementation class into an interface class.
* Split the module into 16 sub-modules, to allow for a fine grain loading of OpenTURNS.
==== Bug fixes ====
* 1Gb of RAM required to build openturns
==== Miscellaneous ====
* The ViewImage facility is now based on Qt4.
* The Show facility is now based on rpy2, with an improved stability.
=== Documentation ===
see [wiki:NewFeaturesDoc#January2010 here]
----
== 0.13.1 release == #release-0.13.1
=== Library ===
==== Enhancements ====
New classes:
* Added the LowDiscrepancyExperiment class to allow for the
generation of a sample from any distribution with independent
copula using low discrepancy sequences.
* Added pretty printing to C++ library.
* Added the ImportanceSamplingExperiment class, that allows to generate a sample according to a distribution and weights such that the weighted sample is representative of another distribution.
Enhancement of existing classes:
* TruncatedDistribution.
* Changed the constructor of the FunctionalChaosResult class in order to store the orthogonal basis instead of just the measure defining the dot product.
* QuasiMonteCarlo now uses sample generation.
* More accurate range computation in Gamma class.
* NumericalMathEvaluationImplementation
* Added a default description to the ProductPolynomialEvaluationImplementation class.
* Added debug logs to the DistributionImplementation class.
* Made minor enhancements to the RandomMixture class.
* Improvement of poutre.cxx in order to support multithreading.
* Added a switching strategy to the RandomMixture class for bandwidth selection.
* Improved the computeScalarQuantile() method of the DistributionImplementation class.
* Improved the project() and computeProbability() methods of the RandomMixture class.
* Adopted a more conventionnal representation of the class that will change the results when using non-centered kernels compared to the previous implementation for the KernelMixture class.
* Improved const correctness of the MatrixImplementation class.
* Improved const correctness of the SquareMatrix class.
* Improved const correctness of the SymmetricMatrix class.
* Improved the numerical stability of the computePDF() method for the Gamma class. It avoids NaNs for Gamma distributions with large k parameter.
* Improved the RandomMixture class performance and robustness.
* DistributionImplementation.
* Added the specification of input and output dimensions for the MethodBoundNumericalMathEvaluationImplementation class.
* Improved const usage in the NumericalSampleImplementation class.
* Added ResourceMap cast methods to integral and base types.
* Added streaming to WrapperFile class
* Add optional framework tag to XML DTD (for use with Salome).
* Started implementation of output filtering for libxml2.
* Changed some debug messages.
* Minor enhancement of the ComposedNumericalMathFunction class to improve the save/load mechanism.
* Enhanced the Curve class to allow the drawing of 1D sample or the drawing of a pair of 1D samples.
* Changed the default precision for the PDF and CDF computations in the RandomMixture class.
* Enhanced the Indices class: is is now persistent.
* Enhanced the WeightedExperiment class in order to add a non-uniform scalar weight to each realization of the generated sample.
* Enhanced the LeastSquaresStrategy class to use the non-uniformly weighted experiments.
* Enhanced the ProjectionStrategy class to prepare the development of the IntegrationStrategy class.
* Enhanced the ProjectionStrategyImplementation class to prepare the development of the IntegrationStrategy class.
* Enhanced the AdaptiveStrategy class to prepare the development of the IntegrationStrategy class.
* Enhanced the CleaningStrategy class to take into account the changes in the AdaptiveStrategy class.
* Enhanced the SequentialStrategy class to take into account the changes in the AdaptiveStrategy class.
* Enhanced the FixedStrategy class to take into account the changes in the AdaptiveStrategy class.
* Enhanced the FunctionalChaosAlgorithm class to take into account the changes in the AdaptiveStrategy class.
Methods:
* Added the computeRange() method to the NonCentralStudent class.
* Added an accessor to the enumerate function in the OrthogonalBasis, OrthogonalFunctionFactory and
OrthogonalProductPolynomialFactory classes.
* Added the computeCharacteristicFunction() method to the Gumbel class.
* Added the computeCharacteristicFunction() method to the LogNormal class.
* Added the computePDF(), computeCDF(), computeQuantile() methods based on a regular grid for the 1D case of the DistributionImplementation class.
* Added a setParametersCollection() method to the DistributionImplementation class.
* Added the computePDF(), computeCDF() and computeQuantile() methods based on a regular grid to the RandomMixture class.
* Added accessors to the reference bandwidth to the RandomMixture class.
* Added the getStandardDeviation(), getSkewness() and getKurtosis() methods to the KernelMixture class
* Added a flag to the computeCharacteristicFunction() method to perform the computation on a logarithmic scale to the ChiSquare, Exponential, Gamma, Geometric, KernelMixture, Laplace, Logistic, LogNormal, Mixture, Normal, RandomMixture, Rayleigh, Triangular, TruncatedNormal and Uniform classes.
* Changed the quantile computation of the Beta, ChiSquare, Epanechnikov, Exponential, Gamma, Geometric, Gumbel, Histogram, Laplace, Logistic, LogNormal, Poisson, RandomMixture, Rayleigh, Triangular, TruncatedDistribution, TruncatedNormal, Uniform and Weibull classes.
* Added a setParametersCollection method to the Beta, ChiSquare, ClaytonCopula, Exponential, FrankCopula, Gamma, Geometric, GumbelCopula, Gumbel, Laplace, Logistic, LogNormal, NonCentralStudent, Poisson, Rayleigh, Triangular, TruncatedNormal, Uniform and Weibull classes.
* Added a buildImplementation() method based on parameters to the BetaFactory, ChiSquareFactory, ClaytonCopulaFactory, ExponentialFactory, FrankCopulaFactory, GammaFactory, GeometricFactory, GumbelCopulaFactory, GumbelFactory, LaplaceFactory, LogisticFactory, LogNormalFactory, PoissonFactory, RayleighFactory, TriangularFactory, TruncatedNormalFactory, UniformFactory and WeibullFactory classes.
* Added a new buildImplementation() to the DistributionFactory and DistributionImplementationFactory classes. It allows to build the default representative instance of any distribution. All the distribution factories have been updated.
* Added a default constructor to the MultiNomial and Histogram classes.
* Added a setParametersCollection() method to the EllipticalDistribution class.
* Added a method to compute centered moments of any order on a component basis in the NumericalSample and NumericalSampleImplementation classes.
* Added the computation of arbitrary Sobol indices and total indices in the FunctionalChaosRandomVector class.
==== Miscellaneous ====
General:
* Added patch in order to support MS Windows platform (mingw).
* Defined the name of OpenTURNS home environment variable in OTconfig.h.
* Changed messages printed to log in wrapper substitution functions.
* Added an include file to allow the compilation of the Log class for windows.
* Cleaned TODO file.
* Checked multi-repos behavior.
* Checked repository is working
* Started refactoring of header files.
* Prepared the loading of const data from a configuration file.
* Removed the initialization during declaration of all the static const attributes.
* Started implementation of output filtering for libxml2.
* Changed some debug messages.
Moved classes:
* Removed SVMRegression from lib and python. Removed tests files too.
Renamed methods:
* Renamed the generateSample() method of the
LowDiscrepancySequence, LowDiscrepancySequenceImplementation and
SobolSequence classes in order to be more coherent with the
RandomGenerator class.
* Fixed a typo in the name of the sorting method of the NumericalSample class: sortAccordingAComponent() became sortAccordingToAComponent().
==== Bug fixes ====
Fixes:
* Fixed a bug in the computeRange() method of several distributions.
* Fixed a bug in the SequentialStrategy, it was not storing the index of the first vector.
* Fixed a bug in the PythonNumericalMathEvaluationImplementation class. This closes ticket #204.
* Fixed a bug in the ComputedNumericalMathEvaluationImplementation class. This closes ticket #205.
* Fixed bug #505650 from Debian.
* Fixed an overflow bug in the computeRange() method of the ChiSquared and Gamma distributions.
* Fixed a bug in the computeCharacteristicFunction() method of the KernelMixture class.
* Fixed an aliasing issue for bounded distributions in the the RandomMixture class.
* Fixed bug in t_Cache_std.cxx : double definition for TEMPLATE_CLASSNAMEINIT.
* Fixed bug in openturns_preload.c: look for the library libOT.so.0 in the standard paths, ${OPENTURNS_HOME}/lib/openturns and install path. Closes #211.
* Fixed bug in Path.cxx: Use env var OPENTURNS_HOME to find OpenTURNS standard paths. Closes #212.
* Correct compilation error that are not detected by linux distcheck.
* Fixed bug in ot_check_openturns.m4 macro. Closes #207.
* Fixed bug in WrapperMacros.h file. Closes #209.
* Fixed bug in wrapper substitution function when a regexp matched two similar lines in file. Closes #199.
* Fixed a bug in the drawPDF() method of the Distribution class, due to a change in the Box class. It closed ticket #208.
* Fixed a typo in the LogNormal class.
* Fixed a bug in the computeCovariance() method of the KernelMixture class.
* Fixed a typo in WrapperFile class.
* Fixed a bug in the computeCharacteristicFunction() method of the Gamma class.
* Fixed a bug in the computeSkewness() and computeKurtosis() methods of the KernelMixture class.
* Fixed a bug in the computeRange() method of the Laplace class.
* Fixed bug concerning DTD validation for wrapper description files.
* Fixed bug concerning wrapper templates that didn't link to OpenTURNS correclty.
* Fixed bug on wrapper description structure.
* Fixed minor cast warnings.
=== Python module ===
==== Enhancements ====
* Welcome message is now printed to stderr.
* Added new python modules common and wrapper (from base).
==== Bug fixes ====
* Fixed bug concerning openturns_viewer module, now called as
openturns.viewer.
* Fixed bug in base_all.i interface file.
* Added the missing SWIG files in base.i and uncertainty.i that prevented the FunctionalChaosAlgorithm and SVMRegression classes to be useable from the TUI.
==== Miscellaneous ====
=== External Modules ===
==== Enhancements ====
* Added curl support for URLs.
==== Bug fixes ====
* Fixed many bugs preventing from using the library and the python module from an external component.
=== Documentation ===
==== UseCase Guide ====
* Added a description on how to manage the welcome message of the TUI in the UseCase guide.
* Updated the UseCaseGuide in order to reflect the new functionalities.
==== Constribution Guide ====
* How to use version control system
* How to develop an external module
* Typos fixed
==== User Manual ====
* Updated the UserManual in order to reflect the new functionalities.
* Fixed various typos.
==== Examples Guide ====
* Updated the ExamplesGuide in order to reflect the new functionalities.
==== Bug fixes ====
* Fixed bug concerning doc directory (autotools crashed).
----
== 0.13.0 release == #release-0.13.0
=== Library ===
==== Enhancements ====
* Generic wrapper (compatible with Salome).
* Wrapper designer guide.
* Polynomial Chaos Expansion. WARNING! Due to a mistake, this feature is only available in the C++ library and not the TUI.
* Support Vector Regression. WARNING! Due to a mistake, this feature is only available in the C++ library and not the TUI.
* Sensitivity Analysis (Sobol indices).
=== GUI ===
The gui module is definitely removed. A new (and simplier) GUI will be proposed later.
----
== 0.12.3 release == #release-0.12.3
=== Library ===
==== Enhancements ====
New classes:
* LeastSquareAlgorithm
* StratifiedExperiment
* WeightedExperiment
* MonteCarloExperiment
* IndicatorNumericalMathEvaluationImplementation
* ProductNumericalMathEvaluationImplementation
* ProductNumericalMathFunction
* ProductNumericalMathGradientImplementation
* ProductNumericalMathHessianImplementation
* Generalized Laguerre orthonormal factory
* Orthonormal Jacobi factory
* LHSExperiment
* CleaningStrategy
* FixedExperiment: allow to reuse an existing sample into a factory of NumericalSample.
Enhancement of existing classes:
* WrapperFile
* WrapperData
* Distribution
* NumericalMathFunction
* NumericalMathFunctionImplementation
* HermiteFactory and LegendreFactory: from Orthogonal Polynomials to Orthonormal Polynomials & Product Polynomial Evaluation
* ProductPolynomialEvaluationImplementation
* UniVariatePolynomial
* HermiteFactory
* LaguerreFactory
* LegendreFactory
* JacobiFactory
* MonteCarloExperiment
* WeightedExperiment
* FunctionalChaosAlgorithm
* FunctionalChaosResult
* ProjectionStrategy
* ProjectionStrategyImplementation
* RegressionStrategy
* HermiteFactory
* JacobiFactory
* LaguerreFactory
* LegendreFactory
* OrthogonalFunctionFactory
* OrthogonalProductPolynomialFactory
* OrthogonalUniVariatePolynomialFactory
* UserDefined
* FunctionalChaosAlgorithm: now can handle any input distribution.
* performance of the LinearLeastSquares and QuadraticLeastSquares classes for the case of multidimensional output dimension.
* VisualTest
* EnumerateFunction
Methods:
* Add write method and validation to WrapperFile class.
* Add MethodBoundNumericalMathEvaluationImplementation class test.
* Missing method in OrthogonalFunctionFactory class.
* Add a constructor for linear combinations in NumericalMathFunction class.
* Add drawing capabilities to the UniVariatePolynomial class.
* Add a compaction mechanism for leading zeros in UniVariatePolynomial class.
* AdaptiveStrategy: accessor to the partial basis.
* Add missing getInputNumericalPointDimension() and getOutputNumericalPointDimension() methods in LinearCombinationGradientImplementation and LinearCombinationHessianImplementation classes.
==== Miscellaneous ====
Add skeletons for the very first classes of chaos expansion :
* UniVariatePolynomial
* ProductPolynomialEvaluationImplementation
* OrthogonalUniVariatePolynomialFactory
* Hermite
* Legendre
* EnumerateFunction
* OrthogonalProductPolynomialFactory
* OrthogonalFunctionFactory
* OrthogonalUniVariatePolynomialFamily
* OrthogonalBasis
* AdaptiveStrategyImplementation
* AdaptiveStrategy
* FixedStrategy
* SequentialStrategy
* ProjectionStrategyImplementation
* ProjectionStrategy
* RegressionStrategy
* FunctionalChaos
* FunctionalChaosResult
* LeastSquareAlgorithm
* LinearCombinationEvaluationImplementation
* LinearCombinationGradientImplementation
* LinearCombinationHessianImplementation
Reworked the Experiment class hierarchy.
Moved classes:
* Legendre to LegendreFactory
* Hermite to HermiteFactory
* LeastSquareAlgorithm to LeastSquaresAlgorithm
Removed unimplemented AggregatedNumericalMathFunction class.
Implementation:
* EnumerateFunction
* Hermite
* OrthogonalUniVariatePolynomialFactory
* UniVariatePolynomial
* Distribution in Orthogonal Univariate Polynomial Factory
* AdaptiveStrategy
* AdaptiveStrategyImplementation
* FixedStrategy
* FunctionalChaosAlgorithm
* FunctionalChaosResult
* ProjectionStrategy
* ProjectionStrategyImplementation
* RegressionStrategy
* SequentialStrategy
* SequentialStrategy
* OrthogonalUniVariatePolynomialFamily
* LinearCombinationEvaluationImplementation
* LinearCombinationGradientImplementation
* OrthogonalProductPolynomialFactory
Normalized the residual in LeastSquaresAlgorithm class.
Added const correctness in SymmetricTensor, Tensor and TensorImplementation classes.
Added verbosity control to the CleaningStrategy class.
Changed the computation of the computeKurtosisPerComponent() method of the NumericalSample class in order to be consistent with the getKurtosis() method of the Distribution class.
==== Bug fixes ====
Fixes:
* Fix bug in prerequisite detection.
* Fix minor bugs to support GCC 4.4 (from Debian Bug!#505650: FTBFS with GCC 4.4: missing #include).
* Fix typo in UniVariatePolynomial class.
* Fix typo in Hermite class.
* Fix typo in Legendre class.
* Fix typo in OrthogonalBasis class.
* Fix typo in OrthogonalFunctionFactory class.
* Fix typo in OrthogonalUniVariatePolynomialFactory class.
* Fix minor bug in UniVariatePolynomial class.
* Fix bugs in OrthogonalBasis/OrthogonalUniVariatePolynomialFactory class.
* Fix bug in LaguerreFactory class.
* Fix small bug in SequentialStrategy class.
* Fix bug in FunctionalChaosResult.cxx class.
* Fix typo in the computeKendallTau() method of the NumericalSample class. This closed ticket #161.
* Fix typo in Normal class. This closed ticket #164.
Rectified the recurrence in the orthonormal Laguerre Factory
=== Python module ===
==== Enhancements ====
New classes:
* all classes related to the FunctionalChaosAlgorithm class
==== Miscellaneous ====
Added the python test for the particular orthonormal polynomial factories
=== Documentation ===
==== Bug fixes ====
Fixes:
* Fix typo in the User Manual. This closes ticket #55.
=== Validation ===
==== Miscellaneous ====
Converted Maple binary files into Maple text files into validation directory.
----
== 0.12.2 release == #release-0.12.2
=== Library ===
==== Enhancements ====
New classes:
* SensitivityAnalysis : using R sensitivity package for Sobol indices computation. Might strongly evolve soon
* SklarCopula : allows to extract the copula of any multidimensional distribution
* StandardSpaceSimulation
* StandardSpaceImportanceSampling
* ClaytonCopulaFactory
* FrankCopulaFactory
* GumbelCopulaFactory
* RosenblattEvaluation
* InverseRosenblattTransformation
* XMLToolbox
Enhancement of existing classes:
* IndependentCopula
* QuadraticNumericalMathEvaluationImplementation
* StandardSpaceControlledImportanceSampling
* TruncatedNormal
* Classes related to matrices for constness consistency
* ContinuousDistribution
* Interval: added basic arithmetic and set union.
Dependencies:
* Removed dependency to rotRPackage for the Kolmogorov() method of the FittingTest class. It greatly improves both the performance and the generality of this method.
* Removed BOOST dependency.
* Removed Xerces-C XML dependency.
* Added libxml2 dependency.
Wrappers:
* Wrapper load time and NumericalMathFunction creation are now separated. A NumericalMathFunction can be created from a WrapperFile object.
* Add customize script to help writing new wrappers.
* Simplified wrapper writing through the usage of macros.
* Renewed wrapper templates.
* Multithreaded wrappers. The number of CPUs is computed at startup.
Methods:
* Add method adapter to NumericalMathFunction : one can use any object's method as a execute part of a NumericalMathFunction.
* Started to implement complementary CDF for all the distributions. It will allow to greatly improve the accuracy of the isoprobabilistic transformations.
* Added tail CDF computation for most of the distributions (ongoing work).
* Added Debye function to SpecFunc class.
* Added a method to solve linear systems with several right-hand sides to all the matrices classes.
* Added a simplified interface to build scalar functions in NumericalMathFunction class.
* Added methods related to the archimedean generator to the ClaytonCopula class.
* Enhanced LambertW evaluation in SpecFunc class.
* Added constructor based on Distribution and Interval to the TruncatedDistribution class.
* Enhanced DrawQQplot and DrawHenryLine methods in VisualTest class.
* Added methods for the computation of conditional pdf, conditional cdf and conditional quantile to the following classes:
* ClaytonCopula
* ComposedCopula
* ComposedDistribution
* FrankCopula
* GumbelCopula
* IndependentCopula
* NormalCopula
* Normal
* ArchimedeanCopula
* ContinuousDistribution
* Distribution
* DistributionImplementation
* Added verbosity control to the classes AbdoRackwitz, BoundConstrainedAlgorithm, BoundConstrainedAlgorithmImplementation, Cobyla, NearestPointAlgorithm, NearestPointAlgorithmImplementation, SQP, TNC.
* Added constructor based on String to the Description class.
* Added range computation and more consistent quantile coputation to the classes Beta, ComposedDistribution, Epanechnikov, Exponential, Gamma, Geometric, Gumbel, Histogram, KernelMixture, Logistic, LogNormal, Mixture, Normal, RandomMixture, Triangular, TruncatedDistribution, TruncatedNormal, Uniform, Weibull, CopulaImplementation, Distribution, DistributionImplementation, EllipticalDistribution.
* Enhanced quantile computation for the classes NormalCopula, Student, FrankCopula, ComposedDistribution, Gumbel, ComposedCopula, GumbelCopula, Normal, IndependentCopula and EllipticalDistribution.
==== Miscellaneous ====
Better logging facility.
Various improvements:
* Improved recompilation process.
* Improved the const correctness of many classes.
* Improved performance of LinearNumericalMathEvaluationImplementation, QuandraticNumericalMathEvaluationImplementation, SymmetricMatrix, StorageManager, XMLStorageManager, WrapperData and some utility classes
Build process:
* General cleaning in Uncertainty/Distribution (ongoing work).
* Removed useless files.
* Allow final user to compile the installed tests in a private directory.
* Reorganized the MetaModel directory: Taylor approximations and LeastSquares approximation have a separate folder.
* Renamed XXXFunction classes into XXXEvaluation classes in IsoProbabilisticTransformation hierarchy.
* Modified WrapperCommon class to suppress compiler warnings.
* Minor enhancement of WrapperObject class to suppress compiler warnings.
Wrappers:
* Add trace to optional functions in wrapper.
* Add <subst> tag to XML description files.
Other:
* Removed Kronecker product implementation as it is never used and should have been implemented another way.
* Removed the use of OT::DefaultName as an explicit default value for the name of all classes in Base and a significant part of Uncertainty. Ongoing work.
* Minor enhancement of DistFunc class.
* Reduced dependence to dcdflib library.
* Replaced Analytical::Result, FORM::Result and SORM::Result classes by AnalyticalResult, FORMResult and SORMResult classes.
==== Bug fixes ====
Fixes:
* Fixed a minor bug in KernelMixture class.
* Fixed a minor bug in Contour class.
* Fixed a minor bug in Mixture class.
* Fixed a bug in SQP class. This fix ticket #146, see trac for details.
* Fixed a bug in QuadraticLeastSquares class.
* Fixed a bug in LinearLeastSquares class.
* Fixed bugs in computeConditionalQuantile() and computeCinditionalCDF() methods of ComposedCopula class.
* Fixed a minor bug in the computeProbability() method of the ComposedCopula and the ComposedDistribution classes.
* Fixed a typo in the ComposedDistribution class.
* Fixed a bug in StandardSpaceImportanceSampling class.
* Fixed a bug in the LambertW method of SpecFunc class.
* Fixed bugs in solveLinearSystemRect() method of MatrixImplementation class.