stk/ 0000755 0000000 0000000 00000000000 13156161544 006553 5 ustar stk/CITATION 0000644 0000000 0000000 00000001327 13156161544 007713 0 ustar --------------------------------------------------------------------
To cite this release of STK in publications use:
Julien Bect, Emmanuel Vazquez and others (2017).
STK: a Small (Matlab/Octave) Toolbox for Kriging. Release 2.5.
URL http://kriging.sourceforge.net
A BibTeX entry for LaTeX users is:
@misc{,
author = {Bect, Julien and Vazquez, Emmanuel and others},
title = {{STK}: a {S}mall ({M}atlab/{O}ctave) {T}oolbox
for {K}riging. {R}elease 2.5},
year = {2017},
url = {http://kriging.sourceforge.net}
}
We have invested a lot of time and effort in the development of STK.
Please cite it if you use it.
--------------------------------------------------------------------
stk/COPYING 0000644 0000000 0000000 00000104513 13156161544 007612 0 ustar GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc.
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
Copyright (C)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see .
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
Copyright (C)
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
.
stk/ChangeLog 0000644 0000000 0000000 00000740313 13156161544 010335 0 ustar 2017-09-12 Julien Bect
CODING_GUIDELINES: Add (and apply) CG#12 guideline
* admin/CODING_GUIDELINES: Document in CG#12 why it is better to
use "hold off" instead of "cla" when calling stk_plot1d in a loop.
* examples/02_design_of_experiments/stk_example_doe03.m: Apply CG#12.
* examples/02_design_of_experiments/stk_example_doe05.m: Apply CG#12.
CODING_GUIDELINES: Add CG#11 guideline
* admin/CODING_GUIDELINES: Document in CG#11 why horzcat and
vertcat must be called explicitely.
2017-09-11 Julien Bect
Workaround for get (0, 'Format') compatibility issue
* misc/text/stk_disp_getformat.m: New function to get 'Format' and
'FormatSpacing' properties in a Matlab/Octave comaptible way.
* misc/text/stk_disp_isloose.m: Rewrite using the new function.
* admin/octpkg/INDEX: Add new function to the INDEX.
* arrays/@stk_dataframe/disp.m: Use the new function.
* arrays/@stk_dataframe/stk_sprintf.m: Idem.
* arrays/@stk_factorialdesign/stk_factorialdesign.m: Itou.
2017-09-10 Julien Bect
Raise Octave version requirement to 3.6
* README.md: Indicate that STK is tested to work on "GNU Octave
3.6.2 or newer", which corresponds to the version currently
available in Debian old-old-stable, a.k.a. Wheezy.
* admin/CODING_GUIDELINES: Update coding guidelines.
* admin/build_tools/build_octpkg.m: Set octave depencency version
to 3.6.0 in the DESCRIPTION file.
* arrays/@stk_dataframe/stk_sprintf.m: Remove hacks.
* arrays/@stk_dataframe/subsasgn.m: Remove hacks.
* arrays/@stk_factorialdesign/subsasgn.m: Remove hacks.
* arrays/generic/stk_sprintf.m: Remove hacks.
* misc/error/stk_error.m: Remove hacks.
* misc/mole/quantile/quantile.m: Remove hacks.
* stk_init.m: Remove hacks.
* utils/stk_plot1d.m: Remove hacks.
* arrays/@stk_dataframe/isequal.m: Remove overloaded isequal
function, no longer needed.
* arrays/@stk_factorialdesign/isequal.m: Idem.
* core/@stk_kreq_qr/isequal.m: Idem.
* core/@stk_model_gpposterior/isequal.m: Idem.
* lm/@stk_lm_affine/isequal.m: Idem.
* lm/@stk_lm_constant/isequal.m: Idem.
* lm/@stk_lm_cubic/isequal.m: Idem.
* lm/@stk_lm_matrix/isequal.m: Idem.
* lm/@stk_lm_null/isequal.m: Idem.
* lm/@stk_lm_quadratic/isequal.m: Idem.
* misc/optim/@stk_optim_baseclass/isequal.m: Idem.
* misc/optim/@stk_optim_fmincon/isequal.m: Idem.
* misc/optim/@stk_optim_fminsearch/isequal.m: Idem.
* misc/optim/@stk_optim_octavesqp/isequal.m: Idem.
* misc/parallel/@stk_parallel_engine_none/isequal.m: Idem.
* misc/parallel/@stk_parallel_engine_parfor/isequal.m: Idem.
* admin/octpkg/INDEX: Update INDEX.
* admin/octpkg/patches/remove-buildmex.patch: Update patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Update patch.
* admin/octpkg/patches/stk-init-rmpath-cleanup.patch: Update patch.
2017-09-07 Julien Bect
stk_plot_shadedci.m: Use area instead of fill for old Octave/Matlab
* misc/plot/stk_plot_shadedci.m: Use area instead of fill for old
versions of Octave and Matlab.
2017-09-05 Julien Bect
stk_runtests.m: In Octave, check that __run_test_suite__ exists
* misc/test/stk_runtests.m: In Octave, check that
__run_test_suite__ exists before actually trying to call it.
2017-09-04 Julien Bect
stk_sampcrit_ei_eval.m: Remove deprecated calling forms
* sampling/stk_sampcrit_ei_eval.m: Remove deprecated calling forms.
Make halfpintl public, with an stk_ prefix
* sampling/private/halfpintl.m: Remove from private directory.
* sampling/stk_halfpintl.m: Renamed from halfpintl.m.
* admin/octpkg/INDEX: Expose stk_halfpintl in the INDEX.
* sampling/stk_sampcrit_akg_eval.m: Update.
* admin/octpkg/patches/comment-out-unit-tests-in-private-functions.patch: Remove.
* admin/octpkg/patches/series: Update.
Use Octave's native test function on Octave
* misc/test/stk_test.m: Use Octave's native test function on Octave.
* misc/test/stk_runtests.m: Similarly, use Octave's native
__run_test_suite__ function when running on Octave.
* admin/octpkg/patches/use-native-test-function.patch: Remove patch.
* admin/octpkg/patches/series: Remove patch.
* admin/octpkg/INDEX: Add stk_test to the INDEX.
2017-09-01 Julien Bect
Multiply/divide an stk_dataframe object by a scalar
* arrays/@stk_dataframe/mtimes.m: Implement a special case for the
multiplication of an stk_dataframe object by a numerical scalar.
* arrays/@stk_dataframe/mldivide.m: Idem for left division.
* arrays/@stk_dataframe/mrdivide.m: Idem for right division.
Overload left/right matrix division for stk_dataframe objects
* arrays/@stk_dataframe/mldivide.m: New function.
* arrays/@stk_dataframe/mrdivide.m: New function.
* admin/octpkg/INDEX: Add new functions to the INDEX.
stk_benchmark_predict.m: The boxplot function might be unavailable
* misc/benchmarks/stk_benchmark_predict.m: Wrap call to boxplot in
try-catch block, since the boxplot function might be unavailable.
@stk_sampcrit_ei/set.m: Remove unnecessary assert
* sampling/@stk_sampcrit_ei/set.m: Remove unnecessary assert,
since only scalar output models are supported in STK at this time.
Remove support for old-style .a structures
* arrays/@stk_dataframe/private/get_column_number.c: Remove
support for old-style .a structures.
* misc/dist/stk_gpquadform.m: Idem.
* arrays/@struct/double.m: Removed.
* arrays/@struct/stk_boundingbox.m: Removed.
* arrays/@struct/stk_length.m: Removed.
* admin/octpkg/INDEX: Update.
* arrays/@stk_dataframe/subsref.m: Remove unit tests.
* core/@stk_model_gpposterior/stk_predict.m: Idem.
* core/stk_predict.m: Idem.
* arrays/generic/stk_feval.m: Idem.
* covfcs/stk_expcov_aniso.m: Idem.
* covfcs/stk_gausscov_aniso.m: Idem.
* covfcs/stk_materncov32_aniso.m: Idem.
* covfcs/stk_sphcov_aniso.m: Idem.
* NEWS.md: Advertise.
2017-08-31 Julien Bect
stk_generate_samplepaths.m: Remove xtest for ticket #14
* utils/stk_generate_samplepaths.m: Remove xtest for ticket #14
since the problem as been solved, as expected, by the previous
commit.
Exact predictions at obs points for noiseless models (ticket #49)
* core/@stk_model_gpposterior/stk_predict.m: Ensure exact
prediction at observation points for noiseless models.
* core/stk_predict.m: Change xtest to test.
* sampling/@stk_sampcrit_eqi/feval.m: Fix EQI computation at the
points where the variance is zero.
Insert HTML version of AUTHORS.md in the documentation
* admin/build_tools/generate_htmldoc.m: Insert HTML version of
AUTHORS.md in the documentation.
INDEX: Add @stk_factorialdesign/ismember
* admin/octpkg/INDEX: INDEX: Add @stk_factorialdesign/ismember.
Convert AUTHORS to markdown.
* AUTHORS: Renamed to AUTHORS.md
* AUTHORS.md: Renamed from AUTHORS, and converted to md syntax.
* admin/find_nonstandard_characters.sh: Scan AUTHORS.md as well.
* admin/build_tools/build_octpkg.m: Update.
* README.md: Update.
* admin/RELEASE.md: Update.
NEWS.md: Write Matérn with an accent on the "e"
* NEWS.md: Write Matérn with an accent on the "e", since we are
already using UTF-8 in this file anyway (for the umlaut on the "u"
of Müller).
2017-08-30 Julien Bect
Overload ismember for stk_factorialdesign objects (ticket #29)
* arrays/@stk_factorialdesign/ismember.m: New function
2017-08-29 Julien Bect
stk_sampcrit_ehvi_eval.m: Avoid OOM errors (ticket #48)
* sampling/stk_sampcrit_ehvi_eval.m: Process batches of rectangles
to avoid OOM errors.
Adapt html doc generation to changes in generate_html (fix)
* admin/build_tools/get_allpurpose_html_options.m: Fix earlier
commit (a12753859a6a) with the same name.
generate_htmldoc.m: Use HTML version of NEWS.md (ticket #61)
* admin/build_tools/generate_htmldoc.m: Insert HTML version of
NEWS.md, produced by markdown, inside NEWS.html.
NEWS.md: Fix markdown formatting
* NEWS.md: Fix markdown formatting
2017-08-28 Julien Bect
Convert NEWS to markdown formatting (ticket #60)
* NEWS.md: Convert NEWS to markdown formatting and rename to NEWS.md.
* NEWS: Removed.
* admin/build_tools/build_octpkg.m: Rename NEWS to NEWS.md.
2017-08-26 Julien Bect
@stk_dataframe/ismember.m: Do not assume 'rows' (ticket #50)
* arrays/@stk_dataframe/ismember.m: Do not assume 'rows', in order
to have a behaviour that is consistent with that of the base
function on numerical matrices.
Remove isoctave function
* misc/mole/isoctave/isoctave.m: Deleted.
* stk_init.m: Use exist directly. Remove a few lines related to
the isoctave function.
* misc/mole/graphics_toolkit/graphics_toolkit.m: Use exist
directly.
* misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m: Use exist
directly.
* misc/options/stk_options_set.m: Use exist directly.
* misc/parallel/stk_parallel_start.m: Use exist directly.
* misc/test/stk_test.m: Use exist directly.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
* admin/octpkg/patches/stk-init-rmpath-cleanup.patch: Refresh patch.
* admin/octpkg/patches/use-native-test-function.patch: Refresh patch.
CG#10: Disable TeX interpreter for variable names
* admin/CODING_GUIDELINES: Introduce new coding guideline, CG#10,
recommending to disable the TeX interpreter for variable names.
* arrays/@stk_dataframe/plot.m: Follow CG#10.
* arrays/@stk_dataframe/plotmatrix.m: Follow CG#10.
* arrays/@stk_factorialdesign/private/plot_surfmeshcontour.m: Follow CG#10.
* arrays/@stk_hrect/axis.m: Follow CG#10.
2017-08-25 Julien Bect
Adapt html doc generation to changes in generate_html
* admin/build_tools/get_allpurpose_html_options.m: Adapt html doc
generation to changes in generate_html.
2017-07-25 Julien Bect
@stk_dataframe/bsxfun.m: Fix colnames/rownames selection
* arrays/@stk_dataframe/bsxfun.m: Fix colnames/rownames selection.
2017-07-24 Julien Bect
@stk_model_gpposterior/stk_predict_leaveoneout.m: Ensure var >= 0
* core/@stk_model_gpposterior/stk_predict_leaveoneout.m: Make sure
that variances will always be non-negative.
Benchmark virtual LOO-CV speedup
* misc/benchmarks/stk_benchmark_loocv.m: New benchmark script to
evaluate to speedup brought by the implementation of virtual LOO
cross validation.
Move some LOO-CV unit tests
* core/stk_predict_leaveoneout.m: Move unit tests for correctness
of virtual LOO-CV formulas to
@stk_model_gpposterior/stk_predict_leaveoneout.m.
* core/@stk_model_gpposterior/stk_predict_leaveoneout.m: Here.
Keep a copy of the original "direct" implementation of LOO-CV.
* core/@stk_model_gpposterior/stk_predict_leaveoneout_direct.m:
Internal function, which is simply a copy of our original,
"direct" implementation of LOO-CV. Can be used to check
correctness of virtual LOO formulas, and for benchmarking.
* admin/octpkg/INDEX: Hide internal function from the index.
2017-07-23 Rémi Stroh
stk_predict_leaveoneout.m: Use virtual Leave-One-Out formula (ticket #35)
* core\@stk_model_gpposterior\stk_predict_leaveoneout.m: Replace
the naive expression of the cross-validation, by the virtual
leave-one-out formula.
* core\stk_predict_leaveoneout.m: Add a test to check virtual
LOO formula.
2017-07-12 Julien Bect
stk_benchmark_predict.m: New function to benchmark stk_predict
* misc/benchmarks/stk_benchmark_predict.m: New function to
benchmark stk_predict.
stk_benchmark_.m: New function to help benchmark computation times
* misc/benchmarks/stk_benchmark_.m: New function to help benchmark
computation times.
2017-07-10 Julien Bect
stk_example_misc04.m: Work-around for Octave bug #49267.
* examples/03_miscellaneous/stk_example_misc04.m: Work-around for
Octave bug #49267.
New octpkg patch to comment out unit tests in private functions
* admin/octpkg/patches/comment-out-unit-tests-in-private-functions.patch:
New octpkg patch to comment out unit tests in private functions.
* admin/octpkg/patches/series: Add new test to the series.
2017-07-09 Julien Bect
stk_predict_leaveoneout.m: Update help text
* core/stk_predict_leaveoneout.m: Update help text.
Set release date based on hg date in the build process
* Makefile: Pass hg date to build_* functions.
* admin/build_tools/build_allpurpose.m: Use hg date.
* admin/build_tools/build_octpkg.m: Use hg date.
* admin/build_tools/copy_citation.m: Use hg date.
* admin/build_tools/copy_readme.m: Use hg date.
2017-07-05 Julien Bect
stk_sampcrit_akg_eval.m: Fix unit tests
* sampling/stk_sampcrit_akg_eval.m: Fix unit tests.
stk_dominatedhv_mex.c: Avoid "uninitialized variable" warnings
* misc/pareto/private/stk_dominatedhv_mex.c: Avoid "uninitialized
variable" compiler warnings.
CG#09: Use erfcinv when norminv fails (ticket #78)
* admin/CODING_GUIDELINES: Introduce new coding guideline, CG#09,
recommending to use erfcinv directly when norminv fails.
* sampling/@stk_sampcrit_eqi/set.m: Implement CG#09.
2017-07-04 Rémi Stroh
@stk_sampcrit_eqi\set.m: Change "norminv" by "erfcinv" (ticket #78)
* sampling\@stk_sampcrit_eqi\set.m: Replace the use of "norminv"
function, available only with the statistical toolbox, by an
expression using "erfcinv", a special basis function.
utils\stk_plot1d.m: Correct a bug
* utils\@stk_plot1d.m: Correct a bug, in the case where xt is empty.
utils/@stk_plot1d: sort data before plotting
* utils/@stk_plot1d: sort xt as increasing order before plotting.
The output vectors zt, zp and zsim are similarly modified before
their drawings.
arrays/@stk_dataframe: Overload 3 additional unitary test functions
* arrays/@stk_dataframe/isnan.m: New overloaded test function
* arrays/@stk_dataframe/isinf.m: Idem.
* arrays/@stk_dataframe/isfinite.m: Idem.
2017-07-03 Julien Bect
stk_param_estim.m: Do not use model.param as a starting point
* param/estim/stk_param_estim.m: Do not use model.param as a
starting point; if param0 is not provided, call stk_param_init.
Modify documentation accordingly; it wasn't up-to-date anyway.
2017-07-02 Julien Bect
@stk_model_gpposterior/stk_predict.m: Skip main loop when nt == 0
* core/@stk_model_gpposterior/stk_predict.m: Skip main loop when
nt == 0.
stk_predict_leaveoneout.m: nargout == 0 => create plots
* core/@stk_model_gpposterior/stk_predict_leaveoneout.m: Calling
stk_predict_leaveoneout with no output arguments now automatically
create two cross-validation diagnostics in two subplots:
prediction VS observations, left panel, and normalized +
residuals, right panel.
* core/stk_predict_leaveoneout.m: Do not change nargout when
calling overloaded method.
* examples/01_kriging_basics/stk_example_kb10.m: Advertise the new
syntax at the end of the script.
@stk_dataframe/stk_dataframe.m: Accept char colnames/rownames
* arrays/@stk_dataframe/stk_dataframe.m: Tolerate char arguments
instead of cells for column and row names in the special case
where the expected number of elements is one.
2017-07-01 Julien Bect
stk_plot_probdom2d.m: New function
* utils/stk_plot_probdom2d.m: New function to represent the
uncertainty about a 2D Pareto front. This function is currently
considered experimental and should not be expected to produce a
reliable representation of the uncertainty for difficult or
high-dimensional optimization problems.
* examples/03_miscellaneous/stk_example_misc04.m: Update the
example to use the new function.
* admin/octpkg/INDEX: Add the new function to the INDEX.
@stk_model_gpposterior/stk_generate_samplepaths.m: Overload base
* core/@stk_model_gpposterior/stk_generate_samplepaths.m: New
function, overload base STK function.
Remove all occurences of response_name
* core/stk_model.m: Do not mention response_name as an optional
field, since it isn't used anywhere in STK now.
* examples/03_miscellaneous/stk_example_misc04.m: No more
response_name.
Return a plain numerical array from stk_generate_samplepaths
* utils/stk_generate_samplepaths.m: Return a plain double
precision numerical array; no more data frames here.
* arrays/@stk_dataframe/stk_generate_samplepaths.m: Removed.
* examples/03_miscellaneous/stk_example_misc04.m: Updated.
* admin/octpkg/INDEX: Update the INDEX.
@stk_model_gpposterior/stk_model_gpposterior.m: Check xi
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Check the
number of columns of input argument xi.
Move important plotting functions to 'utils' directory
* misc/plot/stk_plot1d.m: Moved to 'utils' directory.
* misc/plot/stk_plot_histnormres.m: Idem.
* misc/plot/stk_plot_predvsobs.m: Idem.
* utils/stk_plot1d.m: Moved from 'misc/plot' directory.
* utils/stk_plot_histnormres.m: Idem.
* utils/stk_plot_predvsobs.m: Idem.
2017-06-29 Julien Bect
Add a new test case named 'truss3'
* examples/test_functions/stk_testcase_truss3.m: New function.
* examples/test_functions/stk_testfun_truss3_bb.m: New function.
* examples/test_functions/stk_testfun_truss3_vol.m: New function.
* admin/octpkg/INDEX: Add new functions to the INDEX.
stk_plot_predvsobs.m: Lowercase labels
* misc/plot/stk_plot_predvsobs.m: Lowercase labels.
2017-06-28 Julien Bect
Change mnemonic 'IncorrectArgument' to 'InvalidArgument'
* arrays/@stk_dataframe/cat.m: Change mnemonic 'IncorrectArgument'
to 'InvalidArgument', since both of them were used interchangeably.
* arrays/@stk_dataframe/find.m: Idem.
* arrays/@stk_factorialdesign/private/plot_surfmeshcontour.m: Idem.
* misc/dist/stk_gpquadform.m: Idem.
* misc/pareto/stk_dominatedhv.m: Idem.
* param/estim/stk_param_estim.m: Idem.
* param/estim/stk_param_init.m: Idem.
* sampling/stk_sampling_olhs.m: Idem.
* sampling/stk_sampling_sobol.m: Idem.
@stk_dataframe/bsxfun.m: Remove annoying warnings
* arrays/@stk_dataframe/bsxfun.m: Take the column names (or row
names) from the first argument in case of disagreement, as in R.
Remove the annoying warnings.
2017-06-27 Julien Bect
@stk_dataframe/set.m: Backout revision 29c5b2515988
* arrays/@stk_dataframe/set.m: *Do not* reject colnames and
rownames values with an insufficient number of elements.
@stk_dataframe/subsasgn.m: Add (currently failing) unit tests
* arrays/@stk_dataframe/subsasgn.m: Add (currently failing) unit
tests for the insertion of row/column names on data frames that
have none.
@stk_model_gpposterior/stk_model_gpposterior.m: Check 'prior_model' arg
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Check that
input argument 'prior_model' is a structure.
Logical-valued operators now return logical values on df as well
* arrays/@stk_dataframe/and.m: Return logical result.
* arrays/@stk_dataframe/eq.m: Idem.
* arrays/@stk_dataframe/ge.m: Idem.
* arrays/@stk_dataframe/gt.m: Idem.
* arrays/@stk_dataframe/le.m: Idem.
* arrays/@stk_dataframe/lt.m: Idem.
* arrays/@stk_dataframe/ne.m: Idem.
* arrays/@stk_dataframe/or.m: Idem.
* arrays/@stk_dataframe/xor.m: Idem.
* arrays/@stk_dataframe/not.m: New function.
* admin/octpkg/INDEX: Add new function to the INDEX.
2017-06-26 Rémi Stroh
stk_distrib_normal_crps.m: Make unit test deterministic (ticket #77)
* misc\distrib\stk_distrib_normal_crps.m: Replace the random
selection of data with fixed data.
stk_distrib_normal_crps.m: Change the final test (ticket #77)
* misc\distrib\stk_distrib_normal_crps.m: Modify the last test
to support compatibility with older versions of Matlab and
Octave.
2017-06-26 Julien Bect
@stk_dataframe/set.m: Check colnames and rownames values more strictly
* arrays/@stk_dataframe/set.m: Reject colnames and rownames values
with an insufficient number of elements.
@stk_dataframe/subsref.m: Fix empty indexing
* arrays/@stk_dataframe/subsref.m: Fix empty indexing.
@stk_dataframe/stk_dataframe.m: Fix typo
* arrays/@stk_dataframe/stk_dataframe.m: Fix typo.
2017-06-25 Julien Bect
@stk_dataframe/fieldnames.m: Add row names to the list
* arrays/@stk_dataframe/fieldnames.m: Add row names. Also, do not
include empty row or column names in the list.
2017-06-24 Julien Bect
stk_sampling_sobol.m: Fix help text
* sampling/stk_sampling_sobol.m: Fix help text.
build_octpkg.m: Add 'License:' in DESCRIPTION
* admin/build_tools/build_octpkg.m: Add 'License:' in DESCRIPTION.
* admin/build_tools/generate_htmldoc.m: Remove 'Read License" subst.
@stk_dataframe/stk_sprintf.m: Improve formatting for empty data frames
* arrays/@stk_dataframe/stk_sprintf.m: Improve formatting for
empty data frames. In particular, display column names or row
names if appropriate.
* arrays/@stk_dataframe/disp.m: Source formatting.
* arrays/generic/stk_sprintf.m: Fix help text. Source formatting.
2017-06-23 Julien Bect
stk_dataframe.m: Guess the size when the first input is empty
* arrays/@stk_dataframe/stk_dataframe.m: Deduce the number of
columns and rows from the length of colnames and rownames,
respectively, when the first input argument is empty. Note that
this patch changes the object generated by the default constructor.
2017-06-20 Julien Bect
stk_dominatedhv.m: Accept @stk_dataframe inputs
* misc/pareto/stk_dominatedhv.m: Tolerate any kind of input
argument that can be converted to a double precision matrix, in
particular @stk_dataframe objects.
2017-06-16 Julien Bect
Don't use ~ to ignore output arguments (see CG#07)
* admin/CODING_GUIDELINES: Improve CG#07
* sampling/stk_sampcrit_akg_eval.m: Apply CG#07
* sampling/stk_sampling_nesteddesign.m: Apply CG#07
* sampling/stk_sampling_nestedlhs.m: Apply CG#07
@stk_sampcrit_eqi/disp.m: Fix display bug
* sampling/@stk_sampcrit_eqi/disp.m: Fix display bug for the case
where point_batch_size is a function handle.
stk_sampcrit_eqi.m: Increase unit test tolerance (ticket #76)
* sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m: Increase the
numerical tolerance in two unit tests.
stk_sampcrit_eqi.m: Fix one unit test (ticket #76)
* sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m: Fix one unit
test; in Octave, str2func fails on phony function names.
2017-06-15 Julien Bect
stk_sampcrit_akg_eval.m: Improve numerical robustness
* sampling/stk_sampcrit_akg_eval.m: Mitigate the effect of small
inaccurate covariance values on the computation of the slopes.
halfpintl.m: Fix a bug affecting slope equality cases
* sampling/private/halfpintl.m: Fix a bug affecting slope equality
cases.
stk_plot_shadedci.m: Use area when fill fails (ticket #75)
* misc/plot/stk_plot_shadedci.m: fill does not accept a axis
handle argument in Matlab prior to R2016a. Use area as we were
doing before when fill fails.
2017-06-12 Julien Bect
stk_plot_shadedci.m: Use fill instead of area
* misc/plot/stk_plot_shadedci.m: Recent changes in Matlab R2017a
have altered the behaviour of area. Using fill is cleaner.
stk_plot_shadedci.m: Use three shaded areas
* misc/plot/stk_plot_shadedci.m: Use three shaded areas to
visualize three levels of pointwise confidence intervals at once.
2017-06-07 Julien Bect
Optimize for speed
* core/@stk_kreq_qr/get.m: Use a simple switch.
* core/@stk_model_gpposterior/stk_predict.m: Call get directly.
* sampling/@stk_sampcrit_akg/feval.m: Call get directly.
2017-06-06 Julien Bect
@stk_model_gpposterior/stk_predict.m: Improve error messages
* core/@stk_model_gpposterior/stk_predict.m: Improve the error
messages corresponding to the case where xt has an incorrect size.
2017-06-05 Julien Bect
@stk_dataframe/plotmatrix.m: Overload base function
* arrays/@stk_dataframe/plotmatrix.m: New function, overload base
function to enrich plotmatrix graphics with variable names when
possible.
* admin/octpkg/INDEX: Add the new function to the index.
Optimize for speed
* arrays/@stk_dataframe/set_data.m: New function, fast setter.
* admin/octpkg/INDEX: Add the new function to the index.
* arrays/@stk_dataframe/set.m: Use set_data.
* arrays/@stk_factorialdesign/set.m: Use set_data.
* arrays/@stk_hrect/stk_rescale.m: Optimize for speed.
* arrays/@stk_hrect/subsasgn.m: Optimize for speed.
* sampling/stk_sampling_randunif.m: Optimize for speed.
* sampling/stk_sampling_regulargrid.m: Optimize for speed.
2017-06-03 Julien Bect
Optimize a few functions for speed
* arrays/@stk_dataframe/stk_dataframe.m: Optimize
* arrays/@stk_factorialdesign/stk_factorialdesign.m: Optimize
* arrays/@stk_hrect/stk_rescale.m: Optimize
* sampling/stk_sampling_randunif.m: Optimize
* sampling/stk_sampling_regulargrid.m: Optimize
* admin/octpkg/patches/matlab-graphics-axis-Axes.patch: Update
Upcast objects from derived classes to stk_dataframe
* arrays/@stk_factorialdesign/stk_dataframe.m: New function.
* arrays/@stk_hrect/stk_dataframe.m: New function.
* admin/octpkg/INDEX: Add new functions to the index.
2017-05-29 Julien Bect
@stk_dataframe/find.m: Overload base function
* arrays/@stk_dataframe/find.m: Overload base function to support
calling find with an stk_dataframe as first input argument.
* admin/octpkg/INDEX: Add new function to the index.
stk_dataframe.m: Improve error messages
* arrays/@stk_dataframe/stk_dataframe.m: Improve error message
when either colnames or rownames has an incorrect number of
elements.
stk_sampcrit_akg_eval.m: Set zr_min to +Inf when zr_mean is empty
* sampling/stk_sampcrit_akg_eval.m: Set zr_min to +Inf when
zr_mean is empty.
stk_hrect.m: Preserve colmumns names for stk_dataframe inputs
* arrays/@stk_hrect/stk_hrect.m: Preserve colmumns names when the
input is an stk_dataframe object.
2017-05-28 Julien Bect
stk_factorialdesign.m: Accept stk_dataframe levels
* arrays/@stk_factorialdesign/stk_factorialdesign.m: Accept
one-variable stk_dataframe factors and preserve column names in
this case.
* arrays/@stk_factorialdesign/stk_boundingbox.m: Do not assume
that the cell array of levels is row-shaped.
* admin/octpkg/patches/matlab-graphics-axis-Axes.patch: Update
patch.
stk_predict: Remove old inaccessible display_waitbar stuff
* core/@stk_model_gpposterior/stk_predict.m: Remove old and
inaccessible display_waitbar stuff.
2017-05-27 Julien Bect
Implement the AKG criterion
* sampling/stk_sampcrit_akg_eval.m: New function, this is were the
actual computation of the AKG criterion happens.
* sampling/private/halfpintl.m: New private function that computes
the intersection of lower half-planes (equivalently, the lower
envelope of a set of lines) needed in the AKG.
* sampling/@stk_sampcrit_akg/stk_sampcrit_akg.m: New function.
* sampling/@stk_sampcrit_akg/feval.m: New function, does some
non-trivial preliminary work before calling stk_sampcrit_akg_eval.
* sampling/@stk_sampcrit_akg/disp.m: New function, copied from
other sampcrit classes with minor adaptations.
* sampling/@stk_sampcrit_akg/get.m: New function, this is the same
trivial getter as in other sampcrit classes.
* sampling/@stk_sampcrit_akg/set.m: New function, contains some
pre-computations that depend on the reference grid only.
* examples/02_design_of_experiments/stk_example_doe05.m: Use AKG
as a default, and propose EQI as an option.
* admin/octpkg/INDEX: Update index with new functions.
@stk_model_gpposterior/stk_make_kreq: new (internal) method
* core/@stk_model_gpposterior/stk_make_kreq.m: New method.
* core/@stk_model_gpposterior/stk_predict.m: Use the new method.
* admin/octpkg/INDEX: Update index with new function.
@stk_sampcrit_eqi: point_batch_size can also be a function
* sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m: Add unit tests.
* sampling/@stk_sampcrit_eqi/set.m: Accept functions and char for
the value of point_batch_size.
* sampling/@stk_sampcrit_eqi/feval.m: Compute point_batch_size.
Fix a spelling error (instanciated -> instantiated)
* sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m: Fix spelling error.
* sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m: Idem.
2017-05-25 Julien Bect
Massive overhaul of sampling criterion classes
* sampling/@stk_sampcrit_modelbased: Class removed
* sampling/@stk_sampcrit_modelbased/feval.m: Removed
* sampling/@stk_sampcrit_modelbased/get_input_data.m: Removed
* sampling/@stk_sampcrit_modelbased/get_model.m: Removed
* sampling/@stk_sampcrit_modelbased/get_output_data.m: Removed
* sampling/@stk_sampcrit_modelbased/set_model.m: Removed
* sampling/@stk_sampcrit_modelbased/stk_model_update.m: Removed
* sampling/@stk_sampcrit_modelbased/stk_sampcrit_modelbased.m: Removed
* sampling/@stk_sampcrit_singleobjoptim: Class removed
* sampling/@stk_sampcrit_singleobjoptim/get_bminimize.m: Removed
* sampling/@stk_sampcrit_singleobjoptim/get_goal.m: Removed
* sampling/@stk_sampcrit_singleobjoptim/set_goal.m: Removed
* sampling/@stk_sampcrit_singleobjoptim/stk_sampcrit_singleobjoptim.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim: Class removed
* sampling/@stk_sampcrit_thresholdbasedoptim/disp.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/get.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/get_threshold_mode.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/get_threshold_quantile_order.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/get_threshold_value.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/set.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/set_goal.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/set_model.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/set_threshold_mode.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/set_threshold_quantile_order.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/set_threshold_value.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_model_update.m: Removed
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_sampcrit_thresholdbasedoptim.m: Removed
* sampling/@stk_sampcrit_base: Class renamed to @stk_function
* sampling/@stk_sampcrit_base/stk_sampcrit_base.m: Moved to @stk_function, renamed, modified
* sampling/@stk_sampcrit_base/disp.m: : Moved to @stk_function and modified
* sampling/@stk_sampcrit_base/display.m: Idem.
* sampling/@stk_sampcrit_base/horzcat.m: Idem.
* sampling/@stk_sampcrit_base/subsasgn.m: Idem.
* sampling/@stk_sampcrit_base/subsref.m: Idem.
* sampling/@stk_sampcrit_base/vertcat.m: Idem.
* sampling/@stk_function: Replaces @stk_sampcrit_base
* sampling/@stk_function/stk_function.m: Moved from @stk_sampcrit_base, renamed, modified
* sampling/@stk_function/disp.m: Moved from @stk_sampcrit_base and modified
* sampling/@stk_function/display.m: Idem.
* sampling/@stk_function/horzcat.m: Idem.
* sampling/@stk_function/subsasgn.m: Idem.
* sampling/@stk_function/subsref.m: Idem.
* sampling/@stk_function/vertcat.m: Idem.
* sampling/@stk_function/feval.m: New method (error only)
* sampling/@stk_function/get.m: New method (error only)
* core/@struct/get_input_data.m: New method to support prior models defined as structures
* core/@struct/get_output_data.m: Idem.
* core/@struct/get_prior_model.m: Idem.
* core/@struct/private/assert_struct_is_model.m: Private function used by the last three
* sampling/@stk_sampcrit_ei: Complete class rewrite
* sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m: Entirely rewritten
* sampling/@stk_sampcrit_ei/msfeval.m: Moved to feval.m
* sampling/@stk_sampcrit_ei/feval.m: Moved from msfeval.m and modified
* sampling/@stk_sampcrit_ei/disp.m: Moved from thresholdbasedoptim and modified
* sampling/@stk_sampcrit_ei/get.m: New method (trivial getter)
* sampling/@stk_sampcrit_ei/set.m: New method (non-trivial setter)
* sampling/@stk_sampcrit_eqi: Complete class rewrite
* sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m: Entirely rewritten
* sampling/@stk_sampcrit_eqi/msfeval.m: Moved to feval.m
* sampling/@stk_sampcrit_eqi/feval.m: Moved from msfeval.m and modified
* sampling/@stk_sampcrit_eqi/disp.m: Moved from thresholdbasedoptim and modified
* sampling/@stk_sampcrit_eqi/get.m: New method (trivial getter)
* sampling/@stk_sampcrit_eqi/set.m: New method (non-trivial setter)
* examples/02_design_of_experiments/stk_example_doe05.m: Rewrite almost entirely
* admin/octpkg/INDEX: Update index
2017-05-16 Julien Bect
Fix object display problem (ticket #73)
* misc/text/stk_disp_isloose.m: New function, to query the
compact/loose display status in a Matlab/Octave compatible-way.
* core/@stk_model_gpposterior/disp.m: Use the new function.
* core/@stk_model_gpposterior/display.m: Idem.
* sampling/@stk_sampcrit_base/disp.m: Idem.
* sampling/@stk_sampcrit_base/display.m: Idem.
* sampling/@stk_sampcrit_thresholdbasedoptim/disp.m: Idem.
* admin/octpkg/INDEX: Add the new function to the index.
2017-05-13 Julien Bect
stk_sampcrit_ehvi_eval.m: Add help text
* sampling/stk_sampcrit_ehvi_eval.m: Add help text.
* sampling/stk_sampcrit_ei_eval.m: Minor change in help text.
* sampling/stk_sampcrit_emmi_eval.m: Minor change in help text.
2017-05-12 Julien Bect
stk_distrib_normal_ei.m: Recommend to use stk_sampcrit_ei_eval
* misc/distrib/stk_distrib_normal_ei.m: Recommend to use
stk_sampcrit_ei_eval instead.
2017-05-12 Rémi Stroh
Format help texts.
* sampling/stk_sampling_nesteddesign.m: Formatting help text to
follow the STK style.
* sampling/stk_sampling_nestedlhs.m: Idem.
2017-05-11 Julien Bect
Remove dominated solutions in MOO sampling criteria
* sampling/stk_sampcrit_ehvi_eval.m: Simply add a comment.
Dominated solutions were already removed by stk_dominatedhv.
* sampling/stk_sampcrit_emmi_eval.m: Remove dominated solutions
and duplicates, as in stk_dominatedhv.
stk_sampcrit_emmi_eval.m: Improve help text
* sampling/stk_sampcrit_emmi_eval.m: Improve help text.
stk_sampcrit_emmi_eval.m: Use capital variable names in help text
* sampling/stk_sampcrit_emmi_eval.m: Use capital variable names in
help text, as everywhere else in the toolbox.
stk_sampcrit_ei_eval.m: Warn about deprecated use
* sampling/stk_sampcrit_ei_eval.m: Add warnings about deprecated
syntaxes, that were introduced inadvertently in STK 2.4.0 and will
be removed in future releases. These warnings should remain as
long as we are in the 2.4.x series.
2017-05-09 Julien Bect
stk_sampcrit_ei_eval.m: Add help text
* sampling/stk_sampcrit_ei_eval.m: Add help text.
stk_param_estim.m: Improve error message (ticket #72)
* paramestim/stk_param_estim.m: Issue a better error message when
LNV0 is either NaN of infinite.
2017-05-08 Julien Bect
stk_sampcrit_ei_eval.m: Remove the 'goal' argument
* sampling/stk_sampcrit_ei_eval.m: Remove the 'goal' argument and
provide an implementation for *minimization* problems, which is
the usual convention for optimization problems and which is
consistent with the convention chosen for the EMMI and EHVI
criteria.
* examples/02_design_of_experiments/stk_example_doe03.m: Use the
new syntax without the 'goal' argument, using minus signs instead.
2017-05-06 Julien Bect
stk_sampcrit_ei_eval.m: New syntax
* sampling/stk_sampcrit_ei_eval.m: Adopt a syntax that is
consistent with the syntax of the EHVI and EMMI *_eval functions.
This function was accidentally released in STK 2.4.0 with two
other syntaxes, now marked as deprecated, that were never publicly
documented.
* examples/02_design_of_experiments/stk_example_doe03.m: Use the
new syntax. Also, fix the example which was showing a
minimization strategy while a comment in the source code indicated
maximization.
2017-05-05 Julien Bect
stk_distrib_normal_crps.m: Remove example from help text
* misc/distrib/stk_distrib_normal_crps.m: Remove example from help
text. The functions in misc/distrib are meant to be independent of
the rest of the toolbox, we should avoid using functions from
other parts of STK inside them.
2017-05-03 Rémi Stroh
stk_distrib_normal_crps.m: New function to compute the Gaussian CRPS
* misc/distrib/stk_distrib_normal_crps.m: New function to compute
the Continuous Ranked Probability Score in the case of a Gaussian
predictive density.
2017-04-27 Rémi Stroh
New functions to create nested designs.
* sampling/stk_sampling_nesteddesign.m: New function to create nested
designs.
* sampling/stk_sampling_nestedlhs.m: New function to create nested LHS.
2017-04-27 Julien Bect
vertcat.m: Preserve column names when some are missing (ticket #66)
* arrays/@stk_dataframe/vertcat.m: Preserve column names even if
some of them are missing.
vertcat.m: Do the concatenation earlier
* arrays/@stk_dataframe/vertcat.m: Do the concatenation earlier to
let the base vertcat function generate an error message if needed.
2017-04-26 Julien Bect
stk_model_fixlm.m: Better error message (ticket #69)
* core/stk_model_fixlm.m: Display a better error message when both
model.lm and model.order are present, but their values are not
compatible.
2017-04-19 Julien Bect
stk_generate_samplepaths.m: Do not set lognoisevariance to -inf
* utils/stk_generate_samplepaths.m: No need to set lognoisevariance
to -inf in the noiseless case.
Bring examples up to date with changes in stk_model_gpposterior
* examples/02_design_of_experiments/stk_example_doe03.m: Do not
modify directly the 'lognoisevariance' field of the prior.
* examples/02_design_of_experiments/stk_example_doe05.m: Do not
modify directly the 'param' field of the prior.
stk_sampcrit_thresholdbasedoptim.m: Fix input argument processing
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_sampcrit_thresholdbasedoptim.m:
Fix input argument processing.
Reorganize parameter-related functions
* param/classes: New directory, that will contain parameter
classes in the future. There are no parameter classes currently,
but this is the place where they will be.
* paramestim/private/stk_get_optimizable_parameters.m: Moved to param/classes.
* paramestim/private/stk_set_optimizable_parameters.m: Idem.
* param/classes/stk_get_optimizable_parameters.m: Moved from paramestim/private.
* param/classes/stk_set_optimizable_parameters.m: Idem.
* paramestim/stk_param_estim.m: Moved to param/estim.
* paramestim/stk_param_getdefaultbounds.m: Idem.
* paramestim/stk_param_gls.m: Idem.
* paramestim/stk_param_init.m: Idem.
* paramestim/stk_param_init_lnv.m: Idem.
* paramestim/stk_param_relik.m: Idem.
* param/estim/stk_param_estim.m: Moved from paramestim/.
* param/estim/stk_param_getdefaultbounds.m: Idem.
* param/estim/stk_param_gls.m: Idem.
* param/estim/stk_param_init.m: Idem.
* param/estim/stk_param_init_lnv.m: Idem.
* param/estim/stk_param_relik.m: Idem.
* stk_init.m: Update the path
2017-04-18 Julien Bect
Rewrite two private functions with try-catch blocks instead of tests
* paramestim/private/stk_get_optimizable_parameters.m: Use a
try-catch block instead of testing what the input is.
* paramestim/private/stk_set_optimizable_parameters.m: Idem.
Fix syntax errors
* paramestim/private/stk_get_optimizable_parameters.m: Fix syntax error.
* paramestim/private/stk_set_optimizable_parameters.m: Fix syntax error.
2017-04-16 Julien Bect
stk_pmisclass.m: Add help text
* utils/stk_pmisclass.m: Add help text.
stk_pmisclass.m: Handle K22 scalar negative or null
* utils/stk_pmisclass.m: Handle specifically, when K22 is scalar,
the case where K22 is negative or null.
2017-03-09 Julien Bect
wfg.c: Remove unused variables
* misc/pareto/private/wfg.c: Remove unused variables.
stk_example_doe04.m: Add help text
* examples/02_design_of_experiments/stk_example_doe04.m: Add help
text.
stk_param_getdefaultbounds.m: Add help text
* paramestim/stk_param_getdefaultbounds.m: Add help text.
2017-03-08 Julien Bect
@stk_dataframe/ismember.m: Fix a bug
* arrays/@stk_dataframe/ismember.m: Handle the case where A is an
stk_dataframe object and B is an stk_hrect object (or any
specialized stk_dataframe object that implements ismember).
stk_plot_histnormres.m: Ignore infinite normalized residuals
* misc/plot/stk_plot_histnormres.m: Ignore infinite normalized
residuals, with a warning.
2017-02-21 Julien Bect
stk_phipcrit.m: Fix a typo in the help text
* misc/design/stk_phipcrit.m: Fix a typo in the help text.
2017-02-10 Julien Bect
Use fminsearch for box-constrained problems as last recourse
* misc/optim/@stk_optim_fminsearch/stk_minimize_boxconstrained.m:
New function, which allows to use fminsearch for box-constrained
problems, a as last recourse for Matlab users that have neither
the Optimization toolbox nor MOSEK.
* admin/octpkg/INDEX: Add new function to the INDEX.
sqp_quadprog.m: Restore warning state if quadprog fails
* misc/optim/@stk_optim_octavesqp/private/sqp_quadprog.m: Restore
warning state if quadprog fails.
Provide better tools to check for optimizer availability (ticket #64)
* misc/optim/@stk_optim_baseclass: New abstract base class for all
optimizer object classes.
* misc/optim/@stk_optim_baseclass/stk_optim_baseclass.m: New
function, constructor of the new base class.
* misc/optim/@stk_optim_baseclass/isequal.m: Overload isequal
Octave 3.2.x compatibility, see CODING_GUIDELINES.
* misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m: Derive from
the new class.
* misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m: Idem.
* misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m: Itou.
* misc/optim/stk_optim_isavailable.m: New function, which tests if
a given optimization algorithm is available.
* misc/optim/@stk_optim_baseclass/stk_optim_isavailable.m:
Overload the generic function stk_optim_isavailable for the
abstract base class.
* misc/optim/stk_minimize_boxconstrained.m: Fix unit tests.
* misc/optim/stk_minimize_unconstrained.m: Fix unit tests.
* admin/octpkg/INDEX: Add new functions to the INDEX.
2017-02-07 Julien Bect
Oldest supported version of Octave is now 3.2.4
* admin/build_tools/build_octpkg.m: Modify supported version from
3.2.2 to 3.2.4 in DESCRIPTION, in accordance with README.md.
* NEWS: No need to advertise such a tiny change of version number.
stk_init.m: Use __octave_config_info__ instead of octave_config_info
* stk_init.m: Use __octave_config_info__ instead of
octave_config_info, which is now deprecated.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
* admin/octpkg/patches/stk-init-rmpath-cleanup.patch: New patch.
* admin/octpkg/patches/series: Insert new patch in the series.
Prevent errors in Matlab <=R2014a using try-end blocks (bis)
* arrays/@stk_factorialdesign/stk_factorialdesign.m: Add try-end block.
* admin/octpkg/patches/matlab-graphics-axis-Axes.patch: New patch
to remove Matlab related blocks from Octave package release.
* admin/octpkg/patches/series: Insert new patch in the series.
2017-02-06 Julien Bect
stk_dataframe.m: Prevent error in Matlab <=R2014a using a try-end block
* arrays/@stk_dataframe/stk_dataframe.m: Prevent superiorto() from
generating an error in Matlab <=R2014a using a try-end block.
2017-01-28 Julien Bect
stk_dominatedhv_mex.c: Remove unused variable
* misc/pareto/private/stk_dominatedhv_mex.c: Remove unused variable.
2017-01-27 Julien Bect
stk_init: Fix install_mole_function (again)
* stk_init: Fix install_mole_function (again).
stk_init.m: Set use_silent to zero in Octave
* stk_init.m: Set use_silent to zero in Octave.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
2017-01-25 Julien Bect
stk_init: Fix install_mole_function
* stk_init: Fix install_mole_function.
stk_init: Use mex without -silent when it is not supported
* stk_init: Use mex without -silent when it is not supported.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
Fix minor issues in C source code
* misc/distrib/private/stk_distrib_bivnorm0_cdf.c: Insert braces
to avoid "Missing braces around initializer" warning.
* misc/pareto/private/wfg.c: Remove unused variables.
2017-01-24 Julien Bect
@stk_dataframe/subsasgn.m: Octave 3.2.x repmat hack
* arrays/@stk_dataframe/subsasgn.m: Hack for a problem related to
repmat in Octave 3.2.x.
Do not use ismatrix.
* arrays/generic/stk_boundingbox.m: Do not use ismatrix.
* misc/pareto/stk_dominatedhv.m: Do not use ismatrix.
* admin/CODING_GUIDELINES: Explain why.
* misc/error/stk_assert_box.m: Refer to CODING_GUIDELINES.
stk_example_doe04.m: Do not use ~ to ignore unwanted outputs
* examples/02_design_of_experiments/stk_example_doe04.m: Do not
use ~ to ignore unwanted output arguments.
* admin/CODING_GUIDELINES: Explain why.
stk_plot1d.m: Ignore legend errors
* misc/plot/stk_plot1d.m: Ignore legend errors.
2017-01-23 Julien Bect
@stk_dataframe: Deprecate info field
* arrays/@stk_dataframe/stk_sprintf.m: Hide info field.
* arrays/@stk_factorialdesign/stk_sprintf.m: Hide info field.
* arrays/@stk_dataframe/stk_sprintf_info.m: Removed (was "internal").
* arrays/generic/stk_sprintf_info.m: Removed (was "internal").
* admin/octpkg/INDEX: Remove both functions from the index.
* core/@stk_model_gpposterior/stk_predict.m: Do not set info.
* sampling/stk_sampling_halton_rr2.m: Do not set info.
* sampling/stk_sampling_maximinlhs.m: Do not set info.
* sampling/stk_sampling_olhs.m: Do not set info.
* sampling/stk_sampling_randomlhs.m: Do not set info.
* sampling/stk_sampling_randunif.m: Do not set info.
* sampling/stk_sampling_regulargrid.m: Do not set info.
* sampling/stk_sampling_sobol.m: Do not set info.
* arrays/@stk_dataframe/isequal.m: Ignore info.
@stk_dataframe/subsref.m: Minor modif to make it work in Octave 3.2.4
* arrays/@stk_dataframe/subsref.m: Minor modification to make it
work in Octave 3.2.4 despite a but that allows subsref to modify
its input argument.
stk_feval.m: Use commas in cell arrays of function handles
* arrays/generic/stk_feval.m: Separate elements with commas when
creating cell arrays of function handles.
* admin/CODING_GUIDELINES: Explain why.
2017-01-22 Julien Bect
README.md: Raise minimal Octave version to 3.2.4
* README.md: Raise minimal Octave version to 3.2.4.
README.md: Rewrite C compiler requirement
* README.md: Rewrite C compiler requirement
stk_parallel_engine_parfor.m: Adapt to the 'new' PCT syntax
* misc/parallel/@stk_parallel_engine_parfor/stk_parallel_engine_parfor.m:
Adapt to the 'new' PCT syntax, since matlabpool has been removed.
Implement isequal to maintain compatiblity with Octave 3.2.x.
* arrays/@stk_dataframe/isequal.m: Handle any number of input
arguments.
* core/@stk_kreq_qr/isequal.m: Idem.
* arrays/@stk_factorialdesign/isequal.m: Implement isequal to
maintain compatibility with Octave 3.2.x.
* core/@stk_model_gpposterior/isequal.m: Idem.
* lm/@stk_lm_affine/isequal.m: Idem.
* lm/@stk_lm_constant/isequal.m: Idem.
* lm/@stk_lm_cubic/isequal.m: Idem.
* lm/@stk_lm_matrix/isequal.m: Idem.
* lm/@stk_lm_null/isequal.m: Idem.
* lm/@stk_lm_quadratic/isequal.m: Idem.
* misc/optim/@stk_optim_fmincon/isequal.m: Idem.
* misc/optim/@stk_optim_fminsearch/isequal.m: Idem.
* misc/optim/@stk_optim_octavesqp/isequal.m: Idem.
* misc/parallel/@stk_parallel_engine_none/isequal.m: Idem.
* misc/parallel/@stk_parallel_engine_parfor/isequal.m: Idem.
* arrays/@stk_dataframe/stk_dataframe.m: Fix unit test.
* admin/octpkg/INDEX: Add new functions to the INDEX.
2017-01-21 Julien Bect
stk_test_class.m: Standard unit tests for all STK classes
* misc/test/stk_test_class.m: New function, which performs a
series of standard unit tests that all STK classes should pass.
* admin/octpkg/INDEX: Add the new function to the INDEX.
* arrays/@stk_dataframe/stk_dataframe.m: Add unit test.
* arrays/@stk_factorialdesign/stk_factorialdesign.m: Add unit test.
* arrays/@stk_hrect/stk_hrect.m: Add unit test.
* core/@stk_kreq_qr/stk_kreq_qr.m: Add unit test.
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Add unit test.
* lm/@stk_lm_affine/stk_lm_affine.m: Add unit test.
* lm/@stk_lm_constant/stk_lm_constant.m: Add unit test.
* lm/@stk_lm_cubic/stk_lm_cubic.m: Add unit test.
* lm/@stk_lm_matrix/stk_lm_matrix.m: Add unit test.
* lm/@stk_lm_null/stk_lm_null.m: Add unit test.
* lm/@stk_lm_quadratic/stk_lm_quadratic.m: Add unit test.
* misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m: Add unit test.
* misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m: Add unit test.
* misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m: Add unit test.
* misc/parallel/@stk_parallel_engine_none/stk_parallel_engine_none.m: Add unit test.
* misc/parallel/@stk_parallel_engine_parfor/stk_parallel_engine_parfor.m: Add unit test.
2017-01-19 Julien Bect
stk_error.m: Catch unsupported use of -completenames
* misc/error/stk_error.m: Catch unsupported use of option
-completenames for dbstack in Octave 3.2.4.
2017-01-18 Julien Bect
@stk_dataframe/subsasgn.m:: Do not use isequalwithnans
* arrays/@stk_dataframe/subsasgn.m: Do not use isequalwithnans,
which is has been removed from Octave 4.2.0.
Add nargin checks for stk_lm_* functions
* lm/@stk_lm_affine/stk_lm_affine.m: Add nargin check and unit test.
* lm/@stk_lm_constant/stk_lm_constant.m: Idem.
* lm/@stk_lm_cubic/stk_lm_cubic.m: Idem.
* lm/@stk_lm_matrix/stk_lm_matrix.m: Idem.
* lm/@stk_lm_null/stk_lm_null.m: Idem.
* lm/@stk_lm_quadratic/stk_lm_quadratic.m: Idem.
* lm/stk_lm_polynomial.m: Idem.
Call @stk_dataframe/get instead of using dot indexing when possible
* arrays/@stk_hrect/stk_hrect.m: Call @stk_dataframe/get instead
of using dot indexing.
* arrays/@stk_hrect/subsasgn.m: Idem.
2017-01-15 Julien Bect
Makefile: Achieve reproducible builds without --sort=name
* Makefile: Achieve reproducible builds without using the option
--sort=name, which is only available is very recent versions of tar,
thanks to the recommendations of https://reproducible-builds.org/.
2017-01-14 Julien Bect
Makefile: Trigger build if hg id as changed
* Makefile: Trigger build if hg id as changed.
Makefile: Check if hg clone is clean before processing
* Makefile: Check if hg clone is clean before processing.
Makefile: Declare .PHONY targets
* Makefile: Declare .PHONY targets.
Makefile: Use timestamp files instead of directories as targets
* Makefile: Use timestamp files instead of directories as targets.
Makefile: Add "dist" rule expected by OF admins
* Makefile: Add "dist" rule to build packages only, as expected by
Octave Forge admins.
2017-01-14 Julien Bect
stk_init.m: Display GCC version warning only once (Matlab only)
* stk_init.m (stk_init__compile): Capture GCC version warnings.
(stk_init__build_mex): Display GCC version warning only once.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
2017-01-13 Julien Bect
README.md: Explain that there are two releases (closes ticket #62)
* README.md: Explain that there are two releases, and the specific
"quick start" procedure for each release.
2017-01-09 Julien Bect
README.md: Remove warning about STK not starting if GLPK is missing
* README.md: Remove useless warning about STK not starting is
Octave is configured without GLPK. I only met this case once, a
long time ago, with Octave 3.0 on some BD distro...
2017-01-07 Julien Bect
stk_example_kb09.m: Catch a legend-related bug (closes ticket #55)
* examples/01_kriging_basics/stk_example_kb09.m: Add a try/catch
block to catch a legend-related bug that shows up in Octave 4.0.x.
2017-01-04 Julien Bect
Provide help texts for stk_lm_* functions
* lm/@stk_lm_affine/stk_lm_affine.m: Add help text.
* lm/@stk_lm_constant/stk_lm_constant.m: Idem.
* lm/@stk_lm_cubic/stk_lm_cubic.m: Idem.
* lm/@stk_lm_matrix/stk_lm_matrix.m: Idem.
* lm/@stk_lm_null/stk_lm_null.m: Idem.
* lm/@stk_lm_quadratic/stk_lm_quadratic.m: Idem.
* lm/stk_lm_polynomial.m: Idem.
stk_dominatedhv.m: Remove dominated points before using WFG
* misc/pareto/stk_dominatedhv.m: Remove dominated points before
using WFG, since WFG assumes that there are no duplicated points.
2017-01-01 Julien Bect
stk_generate_samplepaths.m: Improve the documentation
* utils/stk_generate_samplepaths.m: Improve the documentation. In
particular, warn about the case of noisy observations.
stk_predict: Explain the Bayesian point of view
* core/stk_predict.m: Explain the Bayesian point of view.
Fix one-line help for overloaded STK functions
* arrays/@stk_dataframe/stk_conditioning.m: Fix one-line help.
* arrays/@stk_dataframe/stk_generate_samplepaths.m: Idem.
* arrays/@stk_hrect/stk_normalize.m: Idem.
* arrays/@stk_hrect/stk_rescale.m: Idem.
* core/@stk_model_gpposterior/stk_isnoisy.m: Idem.
* core/@stk_model_gpposterior/stk_predict.m: Idem.
* core/@stk_model_gpposterior/stk_predict_leaveoneout.m: Idem.
2016-12-29 Julien Bect
Polish new LOO cross-validation function
* core/@stk_model_gpposterior/stk_predict_leaveoneout.m: Return
residuals in a dataframe (instead of a structure).
* core/stk_predict_leaveoneout.m: Add doc and unit tests.
* examples/01_kriging_basics/stk_example_kb10.m: Update name of
normalized residual field (second column of the new dataframe).
* misc/plot/stk_plot_histnormres.m: Fix a tiny bug.
Fix one-line help for overloaded feval functions in lm
* lm/@stk_lm_affine/feval.m: Fix one-line help.
* lm/@stk_lm_constant/feval.m: Idem.
* lm/@stk_lm_cubic/feval.m: Idem.
* lm/@stk_lm_matrix/feval.m: Idem.
* lm/@stk_lm_null/feval.m: Idem.
* lm/@stk_lm_quadratic/feval.m: Idem.
2016-12-15 Julien Bect
stk_model_gpposterior.m: Estimate if param has NaNs (closes ticket #40)
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Estimate
parameters automatically if prior_model.param contains NaNs.
@stk_model_gpposterior/disp.m: Clarify display.
* core/@stk_model_gpposterior/disp.m: Clarify display.
@stk_model_gpposterior: Make all properties read-only.
* core/@stk_model_gpposterior/set.m: Make all properties
read-only. Provide meaningful hints in error messages.
* core/@stk_model_gpposterior/set_prior_model.m: Removed.
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Set
prior_model directly since set_prior_model no longer exists.
* admin/octpkg/INDEX: Update index.
@stk_model_gpposterior: Remove somes properties
* core/@stk_model_gpposterior/get_input_dim.m: Removed.
* core/@stk_model_gpposterior/get_output_dim.m: Removed.
* core/@stk_model_gpposterior/get_lognoisevariance.m: Removed.
* core/@stk_model_gpposterior/get_lognoisevariance.m: Removed.
* core/@stk_model_gpposterior/get_param.m: Removed.
* core/@stk_model_gpposterior/set_param.m: Removed.
* core/@stk_model_gpposterior/fieldnames.m: Remove properties.
* core/@stk_model_gpposterior/disp.m: Idem.
* core/@stk_model_gpposterior/get.m: Idem.
* core/@stk_model_gpposterior/set.m: Idem.
* core/@stk_model_gpposterior/subsref.m: Remove one unit test.
* admin/octpkg/INDEX: Update index.
README.md: Use numeric references
* README.md: Use numeric references instead of author-year.
README.md: Move sentence about M/O compatiblity to "Quick start"
* README.md: Move the sentence about Matlab/Octave compatiblity to
the "Quick start" section. Remove redundant sentence about the
meaning of STK.
README.md: Remove sentence about parallel computing
* README.md: Remove the sentence about parallel computing not
being supported in Octave, since there is actually very little
support, currently, for parallel computing in *both* Matlab and
Octave.
README.md: Remove redundant licence statement
* README.md: Remove redundant licence statement.
Makefile: download new icons for visual inspection of HTML doc
* Makefile: download new icons (news.png, homepage.png) for visual
inspection of OctaveForge HTML doc.
2016-12-14 Julien Bect
Convert README to Markdown format
* README: Renamed to README.md.
* README.md: Renamed from README.md and converted to Markdown.
Removed copyright notice.
* admin/build_tools/build_allpurpose.m: Rename README -> README.md.
* admin/build_tools/build_octpkg.m: Idem.
* admin/build_tools/copy_readme.m: Idem.
* admin/find_nonstandard_characters.sh: Process all *README* files.
* admin/fix_eol.sh: Idem.
2016-12-09 Julien Bect
Save M/O version info when compiling MEX-files (closes ticket #54)
* stk_init.m: Save Matlab/Octave version info in a text file with
the .info extension when compiling MEX-files.
* .hgignore: Ignore .info files.
* admin/octpkg/patches/remove-testprivatemex.patch: update patch.
* admin/octpkg/patches/remove-buildmex.patch: update patch.
* admin/build_tools/build_octpkg.m: Ignore *.info files.
2016-12-05 Julien Bect
@stk_dataframe: Overload openvar
* arrays/@stk_dataframe/openvar.m: Overload base function.
* misc/options/stk_options_set.m: Add option openvar_warndlg with
default value true.
* INDEX: Add @stk_dataframe/openvar to the index.
stk_lm_polynomial.m: Add nargin check (closes ticket #52)
* lm/stk_lm_polynomial.m: Add nargin check.
2016-12-04 Julien Bect
stk_optim_fmincon, stk_optim_fminsearch: improve option processing
* misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m: Improve
option processing.
* misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m: Idem.
* misc/optim/stk_minimize_boxconstrained.m: Add tests.
* misc/optim/stk_minimize_unconstrained.m: Add tests.
2016-12-02 Julien Bect
Do not call display on model structures (closes ticket #47)
* examples/01_kriging_basics/stk_example_kb01.m: Do not call
display on model structures.
* examples/01_kriging_basics/stk_example_kb01n.m: Idem.
* examples/01_kriging_basics/stk_example_kb02.m: Idem.
* examples/01_kriging_basics/stk_example_kb02n.m: Idem.
* examples/03_miscellaneous/stk_example_misc03.m: Idem:
* admin/CODING_GUIDELINES: Explain why.
2016-11-12 Julien Bect
New covariance functions: exponential + spherical
* covfcs/rbf/stk_rbf_exponential.m: New function ("exponential" RBF)
* covfcs/rbf/stk_rbf_spherical.m: New function ("spherical" RBF)
* covfcs/stk_expcov_aniso.m: New covariance function.
* covfcs/stk_expcov_iso.m: New covariance function.
* covfcs/stk_sphcov_aniso.m: New covariance function.
* covfcs/stk_sphcov_iso.m: New covariance function.
* core/stk_model.m: Support new covariance functions.
* paramestim/stk_param_init.m: Idem.
* paramestim/stk_param_getdefaultbounds.m: Idem.
* admin/octpkg/INDEX: Update index.
2016-11-11 Julien Bect
Rename stk_sf_* functions to stk_rbf_* and make them public
* misc/specfun/stk_sf_gausscorr.m: Moved to covfcs/rbf and renamed.
* misc/specfun/stk_sf_matern.m: Moved to covfcs/rbf and renamed.
* misc/specfun/stk_sf_matern32.m: Moved to covfcs/rbf and renamed.
* misc/spfun/stk_sf_matern52.m: Moved to covfcs/rbf and renamed.
* covfcs/rbf/stk_rbf_gauss.m: Renamed from stk_sf_gausscorr.
* covfcs/rbf/stk_rbf_matern.m: Renamed from stk_sf_matern.
* covfcs/rbf/stk_rbf_matern32.m: Renamed from stk_sf_matern32.
* covfcs/rbf/stk_rbf_matern52.m: Renamed from stk_sf_matern52.
* covfcs/rbf/stk_sf_gausscorr.m: Deprecated.
* covfcs/rbf/stk_sf_matern.m: Deprecated.
* covfcs/rbf/stk_sf_matern32.m: Deprecated.
* covfcs/rbf/stk_sf_matern52.m: Deprecated.
* covfcs/stk_gausscov_aniso.m: Use new function names.
* covfcs/stk_gausscov_iso.m: Use new function names.
* covfcs/stk_materncov32_aniso.m: Use new function names.
* covfcs/stk_materncov32_iso.m: Use new function names.
* covfcs/stk_materncov52_aniso.m: Use new function names.
* covfcs/stk_materncov52_iso.m: Use new function names.
* covfcs/stk_materncov_aniso.m: Use new function names.
* covfcs/stk_materncov_iso.m: Use new function names.
* misc/benchmarks/stk_benchmark_cov2.m: Use new function names.
* misc/options/stk_options_set.m: Rename options and ensure that
the old option names are still accepted (with a warning).
* misc/options/stk_options_get.m: Ensure that the old option names
are still accepted (with a warning).
* stk_init.m: Change path.
* admin/octpkg/INDEX: Update index.
2016-09-21 Julien Bect
Reduce the number of allocations in WFG
* misc/pareto/private/wfg.c: Reduce the number of allocations in WFG by
allocating large blocks of size n * allocated_size for xmin and xmax.
* misc/pareto/private/wfg.h: Add fields xmin_data and xmax_data to Rlist
structures.
* misc/pareto/private/stk_dominatedhv_mex.c: Change rule of thumb.
2016-09-20 Julien Bect
Fix two bugs in stk_dominatedhv.
* misc/pareto/private/wfg.c: Fix two bugs affecting the case where
the decomposition is returned.
* misc/pareto/stk_dominatedhv.m: Unit tests.
2016-07-21 Julien Bect
core/stk_model_fixlm.m: Fix error message
* core/stk_model_fixlm.m: Fix error message.
2016-07-21 Rémi Stroh
arrays/@stk_dataframe: Overload 25 additional unitary base functions (sin, exp...)
* arrays/@stk_dataframe/acos.m: New overloaded base function
* arrays/@stk_dataframe/acosd.m: Idem.
* arrays/@stk_dataframe/acosh.m: Idem.
* arrays/@stk_dataframe/asin.m: Idem.
* arrays/@stk_dataframe/asind.m: Idem.
* arrays/@stk_dataframe/asinh.m: Idem.
* arrays/@stk_dataframe/atan.m: Idem.
* arrays/@stk_dataframe/atand.m: Idem.
* arrays/@stk_dataframe/atanh.m: Idem.
* arrays/@stk_dataframe/cos.m: Idem.
* arrays/@stk_dataframe/cosd.m: Idem.
* arrays/@stk_dataframe/cosh.m: Idem.
* arrays/@stk_dataframe/exp.m: Idem.
* arrays/@stk_dataframe/expm1.m: Idem.
* arrays/@stk_dataframe/log.m: Idem.
* arrays/@stk_dataframe/log10.m: Idem.
* arrays/@stk_dataframe/log1p.m: Idem.
* arrays/@stk_dataframe/log2.m: Idem.
* arrays/@stk_dataframe/sin.m: Idem.
* arrays/@stk_dataframe/sind.m: Idem.
* arrays/@stk_dataframe/sinh.m: Idem.
* arrays/@stk_dataframe/sqrt.m: Idem.
* arrays/@stk_dataframe/tan.m: Idem.
* arrays/@stk_dataframe/tand.m: Idem.
* arrays/@stk_dataframe/tanh.m: Idem.
* admin/octpkg/INDEX: Add new functions to the INDEX
arrays/@stk_dataframe/logical.m: New overloaded base function
* arrays/@stk_dataframe/logical.m: New overloaded base function.
* admin/octpkg/INDEX: Add new function to the INDEX.
arrays/@stk_dataframe/bsxfun.m: Preserve row names if possible
* arrays/@stk_dataframe/bsxfun.m: Preserve row names if possible.
2016-06-23 Julien Bect
Linear model objects are no more considered as an experimental feature
* core/stk_model.m: Create objects with a .lm field as a default.
* core/stk_model_fixlm.m: New internal function that ensures
backward compatiblity for model structures with a .order field.
* core/stk_ortho_func.m: Indicate deprecation of .order. Call
stk_model_fixlm to ensure backward compatibility.
* admin/octpkg/INDEX: Show stk_lm_* functions in the INDEX.
* examples/01_kriging_basics/stk_example_kb03.m: Use model.lm
field instead of model.order.
* paramestim/stk_param_init.m: Use model.lm field instead of
model.order. Call stk_model_fixlm to ensure backward
compatibility.
* examples/01_kriging_basics/stk_example_kb06.m: Idem.
* examples/03_miscellaneous/stk_example_misc03.m: Idem.
* core/@stk_model_gpposterior/get.m: Fix unit tests.
* core/@stk_model_gpposterior/set.m: Fix unit tests.
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Fix unit tests.
* core/@stk_model_gpposterior/stk_predict.m: Fix unit tests.
* core/@stk_model_gpposterior/subsref.m: Fix unit tests.
* core/stk_make_matcov.m: Fix help and unit tests.
* core/stk_model_update.m: Fix unit tests.
* core/stk_predict.m: Fix unit tests.
* covfcs/stk_discretecov.m: Fix unit tests.
* paramestim/stk_param_gls.m: Fix unit tests.
* paramestim/stk_param_relik.m: Fix unit tests.
2016-06-22 Julien Bect
Indicate internal and deprecated functions more systematically
* admin/octpkg/INDEX: Indicate internal and deprecated functions
more systematically.
* arrays/@struct/double.m: Indicate deprecation (was already
mentioned in the INDEX file).
* arrays/@struct/stk_boundingbox.m: Idem.
* arrays/@struct/stk_length.m: Idem.
2016-05-29 Julien Bect
New function to get/set optimizable parameters.
* paramestim/private/stk_get_optimizable_parameters.m: New
function get the value of optimizable parameters.
* paramestim/private/stk_set_optimizable_parameters.m: New
function set the value of optimizable parameters.
* paramestim/stk_param_estim.m: Use the new functions wherever it
is appropriate.
* paramestim/stk_param_relik.m: Idem.
INDEX: Bring up to date
* admin/octpkg/INDEX: Bring up to date.
2016-05-27 Julien Bect
stk_benchmark_examples.m: new benchmark script
* misc/benchmarks/stk_benchmark_examples.m: new benchmark script,
which benchmarks all examples in the toolbox.
2016-05-26 Julien Bect
stk_example_doe05.m: Plot only once in a while
* examples/02_design_of_experiments/stk_example_doe05.m: Plot only
once in a while (default: PLOT_PERIOD = 10).
stk_example_doe05.m: Remove stopping condition based on EQI_max
* examples/02_design_of_experiments/stk_example_doe05.m: Remove
stopping condition based on EQI_max, which is never met anyway.
2016-05-07 Julien Bect
stk_isnoisy: new function to test for a noisy model
* core/stk_isnoisy.m: New function, which returns false for a
noiseless model and true otherwise. This is the base
implementation for (prior) model structures.
* core/@stk_model_gpposterior/set_prior_model.m: New function.
Overload stk_isnoisy for posterior model objects.
* admin/BACKWARD_COMPATIBILITY.md: Indicate that stk_noisy is the
preferred way of handling the "missing lognoisevariance" backward
compatibility issue.
* core/@stk_model_gpposterior/set_prior_model.m: Use stk_isnoisy.
* core/stk_make_matcov.m: Idem.
* core/stk_model.m: Idem.
* iago/crit/stk_optim_crit_EI.m: Idem.
* iago/crit/stk_optim_crit_SUR.m: Idem.
* iago/crit/stk_optim_crit_iago.m: Idem.
* paramestim/stk_param_estim.m: Idem.
* paramestim/stk_param_init.m: Idem.
* paramestim/stk_param_init_lnv.m: Idem.
* paramestim/stk_param_relik.m: Idem.
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_sampcrit_thresholdbasedoptim.m: Idem.
* utils/stk_generate_samplepaths.m: Idem.
2016-05-02 Julien Bect
stk_example_doe05.m: Reduce NB_ITER.
* examples/02_design_of_experiments/stk_example_doe05.m: Reduce
NB_ITER to make stk_runtests run faster.
stk_optim_octavesqp.m: Use a string for the 'optimizer' property
* misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m: Use a
string, instead of a handle, for the 'optimizer' property.
* misc/optim/@stk_optim_octavesqp/stk_minimize_boxconstrained.m:
Use feval to call the optimizer, since it is no longer a handle.
2016-04-27 Julien Bect
stk_sf_matern32.m, stk_sf_matern52.m: Bugfix for large h
* misc/specfun/stk_sf_matern32.m: Return 0 when h is large.
* misc/specfun/stk_sf_matern52.m: Idem.
2016-04-20 Julien Bect
Fix a bug in stk_example_doe05
* examples/02_design_of_experiments/stk_example_doe05.m: Pass a
value for tau2_new when evaluating the EQI criterion.
2016-03-15 Tom Assouline
Implement EQI criterion for noisy optimization
* sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m: New function.
* sampling/@stk_sampcrit_eqi/msfeval.m: New function.
* examples/02_design_of_experiments/stk_example_doe05.m: Example.
script
2016-03-15 Julien Bect
@stk_sampcrit_modelbased/feval.m: Pass additional args to msfeval
* sampling/@stk_sampcrit_modelbased/feval.m: Make it possible to
pass additional arguments to msfeval.
2016-03-15 Julien Bect
stk_testfun_twobumps.m: Change the sign of the test function
* examples/test_functions/stk_testfun_twobumps.m: Change the sign
of the test function (it looked more like "two hollows" than "two
bumps"...).
2016-03-08 Julien Bect
Make it possible to update heteroscedastic models
* core/@stk_model_gpposterior/set_lognoisevariance.m: Provide a
more informative error message when the size is wrong. Add unit
tests.
* core/@stk_model_gpposterior/stk_model_update.m: Handle the
heteroscedastic case thanks to a new input argument. Provide
informative error messages. Add unit tests.
* sampling/@stk_sampcrit_modelbased/stk_model_update.m: Pass the
additional input argument, unchaged.
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_model_update.m:
Idem.
2016-03-06 Julien Bect
Define and use three datasets based on TwoBumps
* examples/datasets/stk_dataset_twobumps.m: New function, which
defines three datasets based on TwoBumps.
* examples/01_kriging_basics/stk_example_kb01.m: Use dataset
'noiseless'. Move the noisy case to stk_example_kb01n.
* examples/01_kriging_basics/stk_example_kb01n.m: New example
script, which corresponds to the noisy case of the previous
version of stk_example_kb01.
* examples/01_kriging_basics/stk_example_kb02.m: Use dataset
'noiseless'. Move the noisy case to stk_example_kb02n.
* examples/01_kriging_basics/stk_example_kb02n.m: New example
script, which corresponds to the noisy case of the previous
version of stk_example_kb02.
* examples/01_kriging_basics/stk_example_kb04.m: This example no
longer exists (replaced by /stk_example_kb02n).
* examples/01_kriging_basics/stk_example_kb05.m: Use dataset
'noiseless'.
* examples/01_kriging_basics/stk_example_kb08.m: Idem.
* examples/01_kriging_basics/stk_example_kb05.m: Use dataset
'noisy2'.
* stk_init.m: Add examples/datasets to the path.
* admin/octpkg/INDEX: Update index.
Give a name (TwoBumps) to our oldest test function
* examples/test_functions/stk_testfun_twobumps.m: Our oldest test
function now as its own M-file and a name.
* examples/01_kriging_basics/stk_example_kb01.m: Use the newly
created stk_testfun_twobumps function.
* examples/01_kriging_basics/stk_example_kb05.m: Idem.
* examples/01_kriging_basics/stk_example_kb08.m: Idem.
* examples/01_kriging_basics/stk_example_kb09.m: Idem.
* admin/octpkg/INDEX: Add stk_testfun_twobumps. Make test
functions visible in the documentation.
2016-02-29 Julien Bect
Getters and setters for the @stk_model_gpposterior class
* core/@stk_model_gpposterior/get_prior_model.m: New getter.
* core/@stk_model_gpposterior/set_param.m: New setter.
* core/@stk_model_gpposterior/set_prior_model.m: New setter,
ensuring backward compatibility with partially defined prior model
structures (missing dim or lognoisevariance fields).
* core/@stk_model_gpposterior/set.m: Use setters when it is useful
for argument checking. Prevent modification of the kreq field.
* core/@stk_model_gpposterior/set_lognoisevariance.m: Add optional
`recompute` input argument.
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Re-organize
to avoid code duplication with set_prior_model.
* admin/octpkg/INDEX: Update index.
2016-02-26 Julien Bect
stk_kreq_qr.m: Add default constructor
* core/@stk_kreq_qr/stk_kreq_qr.m: Add a default constructor,
corresponding to the case where nargin == 0.
2016-02-24 Julien Bect
stk_sampling_sobol.m: Cite the NLopt toolbox in the documentation
* sampling/stk_sampling_sobol.m: Cite the NLopt toolbox in the
documentation.
2016-02-23 Julien Bect
stk_sampling_sobol.m: new function
* sampling/stk_sampling_sobol.m: New function to generate points
from a Sobol sequence.
* sampling/private/stk_sampling_sobol_mex.c: New MEX-file.
* admin/octpkg/INDEX: Add new function to the INDEX
* admin/octpkg/Makefile: Add new MEX-file to the Makefile.
* stk_init.m: Add new MEX-file to the build system.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
stk_param_relik.m: Introduce a 'simple_kriging' flag
* paramestim/stk_param_relik.m: Introduce a 'simple_kriging' flag
to clarify the meaning of the tests for q == 0.
Get rid of the half-baked @stk_ndf class
* iago/@stk_ndf/fieldnames.m: Deleted
* iago/@stk_ndf/get.m: Deleted
* iago/@stk_ndf/set.m: Deleted
* iago/@stk_ndf/stk_ndf.m: Deleted
* iago/@stk_ndf/stk_setnoisevariance.m: Deleted
* iago/@stk_ndf/stk_sprintf.m: Deleted
* iago/@stk_ndf/subsasgn.m: Deleted
* iago/@stk_ndf/vertcat.m: Deleted
* iago/DESIGN-NOTES.md: Remove all references to stk_ndf
* iago/stk_optim.m: Idem.
* iago/utils/stk_optim_addevals.m: Idem.
* iago/crit/stk_optim_crit_SUR.m: Idem.
* iago/crit/stk_optim_crit_iago.m: Idem.
stk_sampcrit_thresholdbasedoptim.m: Add unit tests
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_sampcrit_thresholdbasedoptim.m:
Add unit tests for various number of input arguments.
2016-02-23 Tom Assouline
stk_sampcrit_thresholdbasedoptim.m: Fix nargin check
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_sampcrit_thresholdbasedoptim.m:
Fix nargin check.
2016-02-18 Julien Bect
stk_predict_leaveoneout.m: Compute residuals outside the CV loop
* core/@stk_model_gpposterior/stk_predict_leaveoneout.m: Compute
residuals outside the cross-validation loop.
2016-02-17 Julien Bect
@stk_model_gpposterior: Make sure that lognoisevariance is a column
* core/@stk_model_gpposterior/set_lognoisevariance.m: Make sure
that prior_model.lognoisevariance is a column vector.
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Idem.
2016-02-17 Stefano Duhamel
stk_predict_leaveoneout.m: Bugfix for the heteroscedastic case (bug #43)
* core/@stk_model_gpposterior/stk_predict_leaveoneout.m: Delete
the lognoisevariance of the left-out point in the heteroscedastic
case (fixes bug #43).
2016-02-16 Stefano Duhamel
stk_predict_leaveoneout.m: Add a (currently failing) unit test
* core/stk_predict_leaveoneout.m: Add a (currently failing) unit test.
2016-02-16 Julien Bect
Get rid of iago/utils/get_lognoisevariance.m
* iago/utils/get_lognoisevariance.m: Deleted.
* iago/crit/stk_optim_crit_SUR.m: Do without it.
* iago/crit/stk_optim_crit_iago.m: Idem.
Get rid of noise_params_consistency
* iago/utils/noise_params_consistency.m: Deleted.
* iago/crit/stk_optim_crit_EI.m: Remove call to noise_params_consistency.
* iago/crit/stk_optim_crit_SUR.m: Idem.
* iago/crit/stk_optim_crit_iago.m: Idem.
* iago/utils/stk_optim_addevals.m: Idem.
Improve @stk_sampcrit_thresholdbasedoptim class
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_sampcrit_thresholdbasedoptim.m:
Add properties threshold_quantile_order (public) and
theshold_quantile_value (private). Streamline input arguments processing.
* sampling/@stk_sampcrit_thresholdbasedoptim/get_threshold_quantile_order.m:
Fast getter for new public property.
* sampling/@stk_sampcrit_thresholdbasedoptim/set_threshold_quantile_order.m:
Fast setter for new public property.
* sampling/@stk_sampcrit_thresholdbasedoptim/get_threshold_mode.m:
Rename output argument.
* sampling/@stk_sampcrit_thresholdbasedoptim/get_threshold_value.m:
Rename output argument.
* sampling/@stk_sampcrit_thresholdbasedoptim/set_threshold_mode.m:
Fix bug. Accept mixed-case variants of mode string.
* sampling/@stk_sampcrit_thresholdbasedoptim/set_threshold_value.m:
Fix bug. Implement quantile case.
* sampling/@stk_sampcrit_thresholdbasedoptim/disp.m:
Display new public property. Change display layout.
* sampling/@stk_sampcrit_thresholdbasedoptim/get.m:
Use direct access to properties whenever possible.
* sampling/@stk_sampcrit_thresholdbasedoptim/set.m:
Add new public property.
2016-02-15 Julien Bect
stk_param_relik.m: Add comments
* paramestim/stk_param_relik.m: Add comments.
First draft of a class hierarchy for sampling criteria
* sampling/@stk_sampcrit_base: New class
* sampling/@stk_sampcrit_base/disp.m: New function
* sampling/@stk_sampcrit_base/display.m: New function
* sampling/@stk_sampcrit_base/horzcat.m: New function
* sampling/@stk_sampcrit_base/stk_sampcrit_base.m: New function
* sampling/@stk_sampcrit_base/subsasgn.m: New function
* sampling/@stk_sampcrit_base/subsref.m: New function
* sampling/@stk_sampcrit_base/vertcat.m: New function
* sampling/@stk_sampcrit_modelbased: New class
* sampling/@stk_sampcrit_modelbased/feval.m: New function
* sampling/@stk_sampcrit_modelbased/get_input_data.m: New function
* sampling/@stk_sampcrit_modelbased/get_model.m: New function
* sampling/@stk_sampcrit_modelbased/get_output_data.m: New function
* sampling/@stk_sampcrit_modelbased/set_model.m: New function
* sampling/@stk_sampcrit_modelbased/stk_model_update.m: New function
* sampling/@stk_sampcrit_modelbased/stk_sampcrit_modelbased.m: New function
* sampling/@stk_sampcrit_singleobjoptim: New class
* sampling/@stk_sampcrit_singleobjoptim/get_bminimize.m: New function
* sampling/@stk_sampcrit_singleobjoptim/get_goal.m: New function
* sampling/@stk_sampcrit_singleobjoptim/set_goal.m: New function
* sampling/@stk_sampcrit_singleobjoptim/stk_sampcrit_singleobjoptim.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim: New class
* sampling/@stk_sampcrit_thresholdbasedoptim/disp.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/get.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/get_threshold_mode.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/get_threshold_value.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/set.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/set_goal.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/set_model.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/set_threshold_mode.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/set_threshold_value.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_model_update.m: New function
* sampling/@stk_sampcrit_thresholdbasedoptim/stk_sampcrit_thresholdbasedoptim.m: New function
* sampling/@stk_sampcrit_ei: New class
* sampling/@stk_sampcrit_ei/msfeval.m: New function
* sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m: New function
* sampling/stk_sampcrit_ehvi_eval.m: New function
* sampling/stk_sampcrit_ei_eval.m: New function
* sampling/stk_sampcrit_emmi_eval.m: New function
* examples/02_design_of_experiments/stk_example_doe03.m: Use a sampling criterion object
2016-02-11 Julien Bect
stk_lm_polynomial.m: Create polynomial LM object
* lm/stk_lm_polynomial.m: New function.
* core/stk_ortho_func.m: Use stk_lm_polynomial.
* paramestim/stk_param_init.m: Use stk_lm_polynomial.
* admin/octpkg/INDEX: Add new function to the index.
2016-02-10 Julien Bect
stk_make_matcov.m: Error message for NaN in covariance parameters
* core/stk_make_matcov.m: Issue an error message if covariance
parameters have not been estimated.
stk_error.m: Use complete names in the stack
* misc/error/stk_error.m: Use complete names in the stack, to
obtain better-looking error messages in Matlab.
2016-02-04 Julien Bect
Provide generic stk_minimize_* functions
* misc/optim/stk_minimize_boxconstrained.m: Generic
stk_minimize_boxconstrained function, which accepts a char array
as first input argument, and provides a generic documentation for
all stk_minimize_boxconstrained methods.
* misc/optim/stk_minimize_unconstrained.m: Same thing for
stk_minimize_unconstrained methods.
* admin/octpkg/INDEX: Add new functions to the index.
Workaround for Octave bug #46350 (closes ticket #32)
* admin/octpkg/patches/workaround-octave-bug-46350.patch: New
patch that comments some unit tests out.
* admin/octpkg/patches/series: Add new patch to the series.
stk_optimscript.m: Fix %!shared blocks
* iago/stk_optimscript.m: Fix %!shared blocks.
2016-02-02 Julien Bect
Add some basic support for LOO cross-validation
* core/@stk_model_gpposterior/stk_predict_leaveoneout.m: New
function that computes LOO predictions and residuals. Currently
implemented in a very basic manner (virtual-LOO formulas will be
implemented later).
* core/stk_predict_leaveoneout.m: Just a wrapper around the first
one (very inefficient as it is, since we create a "posterior" that
we don't really use... but we should).
* misc/plot/stk_plot_predvsobs.m: New graphical function, to
visualize predictions versus observations.
* misc/plot/stk_plot_histnormres.m: New graphical function, to the
distribution of normalized residuals.
* examples/01_kriging_basics/stk_example_kb10.m: Example script.
* stk_example_kb10.m: Add new functions to the index.
stk_testfun_borehole.m: New test function
* examples/test_functions/stk_testfun_borehole.m: New test
function (the "borehole model" response function, from Harper &
Gupta 1983).
* admin/octpkg/INDEX: Add new function to the index (hidden for
now, as the other stk_testfun_* functions, bug perhaps should we
change that ?).
@stk_model_gpposterior/disp.m: Fix a bug and improve layout
* core/@stk_model_gpposterior/disp.m: Fix a bug and (try to)
improve visual layout.
2016-01-28 Julien Bect
Rename the output argument in optimizer objects
* misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m: Rename the
output argument (optimizer object) to 'algo'.
* misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m: Idem.
* misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m: Idem.
2016-01-27 Julien Bect
Overhaul plotting functions
* misc/plot/stk_get_axis_arg.m: Rename to stk_plot_getaxisarg
* misc/plot/stk_plot_getaxisarg.m: Renamed from
stk_plot_getaxisarg, with some minor modifications along the way.
* admin/octpkg/INDEX: Update index following function rename.
* arrays/@stk_dataframe/plot.m: Rewrite to make use of
stk_plot_getaxisarg. Rename variable h to h_plot.
* arrays/@stk_factorialdesign/private/plot_surfmeshcontour.m:
Rewrite to make use of stk_plot_getaxisarg. Rename variable
h_axis to h_axes.
* arrays/@stk_hrect/axis.m: Rename variable h to h_axes.
* misc/plot/stk_figure.m: Rename variable h to h_fig.
* misc/plot/stk_labels.m: Add option axes handle input argument,
based on stk_plot_getaxisarg. Return vector of handles to label
objects.
* misc/plot/stk_plot1d.m: Rewrite to make use of
stk_plot_getaxisarg. Rename variable h to h_plot.
* misc/plot/stk_plot_shadedci.m: Rewrite to make use of
stk_plot_getaxisarg. Rename variable h to h_plot.
* misc/plot/stk_subplot.m: Rename variable h to h_axes.
* misc/plot/stk_xlabel.m: Simplify source code by removing the
possibility of having a vector of axes handles (why did I ever do
that ?). Fix the confusion between axes handle and label handle.
Rename output handle h to h_label.
* misc/plot/stk_ylabel.m: Idem.
* misc/plot/stk_zlabel.m: Idem.
@stk_factorialdesign: Return handles from all plot functions
* arrays/@stk_factorialdesign/surf.m: Return a handle.
* arrays/@stk_factorialdesign/contour.m: Return a handle.
* arrays/@stk_factorialdesign/mesh.m: Return a handle.
* arrays/@stk_factorialdesign/meshc.m: Return a handle.
* arrays/@stk_factorialdesign/meshz.m: Return a handle.
* arrays/@stk_factorialdesign/pcolor.m: Return a handle.
* arrays/@stk_factorialdesign/private/plot_surfmeshcontour.m:
Return a handle to the plot object just constructed. Also, fix
some bugs related to the optional axis handle argument.
2016-01-25 Julien Bect
stk_plot1d: Accept a handle as optional first argument
* misc/plot/stk_plot1d.m: Accept a handle as optional first
argument.
Remove stk_plot2d (had been deprecated for a while)
* misc/plot/stk_plot2d.m: Removed (deprecated since 2.2.0)
* admin/octpkg/INDEX: Remove stk_plot2d from the index
* arrays/@stk_factorialdesign/private/plot_surfmeshcontour.m:
Rearrange copyright information.
2016-01-22 Julien Bect
@stk_model_gpposterior: Preserve row and column names
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Preserver
row and column names in input/output data.
* core/@stk_model_gpposterior/stk_model_update.m: Idem.
* core/@stk_model_gpposterior/stk_predict.m: Use double() to
extract the numerical content of the 'output_data' field.
stk_optim_init.m: Fix the value of algo.model.dim
* iago/utils/stk_optim_init.m: Fix the value of algo.model.dim.
More work on stk_model_gpposterior properties
* core/@stk_model_gpposterior/get_input_data.m: Rename variable.
* core/@stk_model_gpposterior/get_output_data.m: Rename variable.
* core/@stk_model_gpposterior/fieldnames.m: New function.
* core/@stk_model_gpposterior/set.m: New function.
* core/@stk_model_gpposterior/subsasgn.m: New function.
* core/@stk_model_gpposterior/set_lognoisevariance.m: New function.
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Accept
prior model structure with missing 'dim' field.
Properties input_dim/output_dim for stk_model_gpposterior objects
* core/@stk_model_gpposterior/get.m: Add new properties
'input_dim', 'output_dim'. Make 'dim' an alias for 'input_dim'.
* core/@stk_model_gpposterior/get_dim.m: Rename to
get_input_dim.m.
* core/@stk_model_gpposterior/get_input_dim.m: Renamed from
get_dim.m.
* core/@stk_model_gpposterior/get_output_dim.m: New function that
returns the output dimension, currently always one.
* core/@stk_model_gpposterior/disp.m: Display the new
properties. Improve the overall display.
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Remove
field 'dim'.
* core/@stk_model_gpposterior/stk_predict.m: Read .dim directly
from the prior model structure.
2016-01-18 Julien Bect
New functions to update models with new observations
* core/@stk_model_gpposterior/stk_model_update.m: New function.
* core/stk_model_update.m: New function.
* admin/octpkg/INDEX: Add new functions to the index.
2016-01-16 Julien Bect
Speed stk_init.
* stk_init.m: Speed up by reducing the number of calls to addpath.
* misc/benchmarks/stk_benchmark_init.m: New benchmark script
2015-12-15 Julien Bect
stk_maxabscorr.m: Rewrite without using corr
* misc/design/stk_maxabscorr.m: Rewrite without using corr.
* stk_init.m (stk_init__config_mole): Remove corr
* misc/mole/corr/corr.m: Deleted
2015-12-09 Julien Bect
wfg.c: Fix a bug in Rlist_extend
* misc/pareto/private/wfg.c (Rlist_extend): Fix a bug
* misc/pareto/stk_dominatedhv.m: Add unit tests
2015-12-08 Julien Bect
wfg.c: Fix a bug in Rlist_inclhv4
* misc/pareto/private/wfg.c (Rlist_inclhv4): Fix a bug
* misc/pareto/stk_dominatedhv.m: Add unit tests
2015-12-03 Julien Bect
Display a legend in several "kriging basics" examples
* examples/01_kriging_basics/stk_example_kb01.m: Show legend
* examples/01_kriging_basics/stk_example_kb02.m: Show legend
* examples/01_kriging_basics/stk_example_kb04.m: Show legend
* examples/01_kriging_basics/stk_example_kb09.m: Show legend
@stk_model_gpposterior: A new class to represent posterior distributions
* core/@stk_model_gpposterior/stk_model_gpposterior.m: Class
constructor.
* core/stk_predict.m: Transfer a large part of the predicition
code to the method @stk_model_gpposterior/predict.m.
* core/@stk_model_gpposterior/stk_predict.m: Overload stk_predict.
* core/@stk_model_gpposterior/disp.m: Overload base function
* core/@stk_model_gpposterior/display.m: Overload base function
* core/@stk_model_gpposterior/get.m: Overload base function
* core/@stk_model_gpposterior/subsref.m: Overload base function
* core/@stk_model_gpposterior/vertcat.m: Overload base function
* core/@stk_model_gpposterior/horzcat.m: Overload base function
* core/@stk_model_gpposterior/get_dim.m: Fast getter
* core/@stk_model_gpposterior/get_input_data.m: Fast getter
* core/@stk_model_gpposterior/get_lognoisevariance.m: Fast getter
* core/@stk_model_gpposterior/get_output_data.m: Fast getter
* core/@stk_model_gpposterior/get_param.m: Fast getter
2015-11-29 Julien Bect
stk_isequal_tolrel.m: Bugfix and unit test.
* misc/test/stk_isequal_tolrel.m: Bugfix and unit test.
2015-11-27 Julien Bect
@stk_dataframe/stk_sprintf.m: Fix header
* arrays/@stk_dataframe/stk_sprintf.m: Fix header.
2015-11-25 Julien Bect
Improve display of size+type information
* arrays/generic/stk_sprintf_sizetype.m: Accept objects.
* arrays/@cell/stk_sprintf_sizetype.m: Removed.
Add minimalist display for stk_kreq objects
* core/@stk_kreq_qr/disp.m: Overload base function.
* core/@stk_kreq_qr/display.m: Overload base function.
2015-11-22 Julien Bect
stk_predict.m: Stop accepting row input vectors in the discrete case
* core/stk_predict.m: Stop accepting row input vectors in the case
of discrete models (stk_discretecov covariance function).
2015-11-20 Julien Bect
arrays/@stk_dataframe: Accept char and cell indices
* arrays/@stk_dataframe/subsasgn.m: Accept char and cell indices.
* arrays/@stk_dataframe/subsref.m: Accept char and cell indices.
* arrays/@stk_dataframe/private/process_cell_indices.m: Process
cell indices (cell arrays of row/column names).
* arrays/@stk_dataframe/private/process_char_indices.m: Process
char indices (row/column name).
* arrays/@stk_dataframe/private/names_errmsg.m: Error messages for
incorrect cell indices.
2015-11-19 Julien Bect
Compatibility with Matlab >= R2014b: graphics handles are objects
* arrays/@stk_dataframe/stk_dataframe.m: Enforce precedence over
the matlab.graphics.axis.Axes class.
* arrays/@stk_factorialdesign/stk_factorialdesign.m: Enforce
precedence over the matlab.graphics.axis.Axes class.
* arrays/@stk_dataframe/plot.m: Do not assume that graphics
handles are doubles.
* misc/plot/stk_plot_shadedci.m: Do not assume that graphics
handles are doubles.
stk_optim_fminsearch.m: Do not try to detect fminsearch
* misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m: Do not
try to detect at this point whether fminsearch is available.
2015-11-15 Julien Bect
stk_init.m: Remove STK's root from the path if needed
* stk_init.m (stk_init__pkg_unload): Remove STK's root from the
path if needed.
(stk_init__rmpath): Remove verbose comment.
* admin/octpkg/patches/prevent-PKG_DEL-loop.patch: New patch.
* admin/octpkg/patches/series: Add new patch to the series.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
stk_init.m: No need to remove other copies of STK from the path
* stk_init.m (stk_init__rmpath): No need to remove other copies of
STK from the search path. Even if several copies are on the path,
only the most recently installed is visible.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
Merge config/* functions into stk_init
* config/stk_config_addpath.m: Replaced by stk_init__addpath.
* config/stk_config_buildmex.m: Replaced by stk_init__build_mex.
* config/stk_config_clearpersistents.m: Replaced by
stk_init__clear_persistents.
* config/stk_config_getroot.m: Removed.
* config/stk_config_makeinfo.m: Replaced by stk_init__get_make_info.
* config/stk_config_mole.m: Replaced by stk_init__config_mole.
* config/stk_config_path.m: Replaced by stk_init__genpath.
* config/stk_config_rmpath.m: Replaced by stk_init__rmpath.
* config/stk_config_setup.m: Merged into stk_init__pk_load.
* config/stk_config_testprivatemex.m: Replaced by
stk_init__test_private_mex.
* stk_runtests.m: Use stk_init genpath.
* stk_init.m: Integrate config/* functions as subfunctions and
introduce a public interface that makes it easy to call them
separately if needed.
* admin/octpkg/post_install.m: Use stk_init prune_mole.
* admin/build.m: Edit comment.
* admin/build_tools/build_octpkg.m: Use stk_init get_make_info.
* admin/build_tools/get_public_mfile_list.m: Use stk_init genpath.
* admin/octpkg/patches/prevent-PKG_ADD-loop.patch: Refresh patch.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
* admin/octpkg/patches/use-native-test-function.patch: Refresh patch.
2015-11-14 Julien Bect
build_octpkg.m: Forced pop of quilt patches if an error occurs
* admin/build_tools/build_octpkg.m: Forced pop of quilt patches if
an error occurs.
2015-11-13 Julien Bect
stk_config_path.m: Do not include STK's root in the list
* config/stk_config_path.m: Do not include STK's root in the list.
* config/stk_config_addpath.m: Rephrase one-line help text.
* stk_init.m: Add STK's root to the path.
* admin/octpkg/patches/remove-testprivatemex.patch: Refresh patch.
* admin/octpkg/patches/prevent-PKG_ADD-loop.patch: Modify patch.
* admin/octpkg/patches/remove-buildmex.patch: Refresh patch.
2015-11-12 Julien Bect
stk_example_kb09.m: Show legend
* examples/01_kriging_basics/stk_example_kb09.m: Show legend.
stk_plot1d.m: Do not create a legend for conditional simulations
* misc/plot/stk_plot1d.m: Prevent the automatic creation of a
legend when the array of conditional simulations has column names,
since stk_plot1d already creates a global legend for all of its
graphical elements (the two are not compatible).
Include stk_runtests in the Octave package release
* admin/build_tools/build_octpkg.m: Do not ignore stk_runtests and
stk_tests when processing directories.
* admin/octpkg/INDEX: Add stk_runtests to the INDEX.
* admin/octpkg/patches/use-native-test-function.patch: Remove
stk_tests, and skrink stk_runtests to a simple wrapper around
__run_test_suite__.
* admin/octpkg/patches/series: Add new patch.
2015-11-11 Julien Bect
sqp_quadprog.m: Bypass unit test if quadprog is not available
* misc/optim/@stk_optim_octavesqp/private/sqp_quadprog.m: Bypass
unit test if quadprog is not available.
Use quilt patches instead of the STK_OCTAVE_PACKAGE variable
* .hgignore: Ignore quilt's .pc directory
* admin/build_tools/build_octpkg.m: Add .pc to the list of ignored
directories. Add a quilt push/pop pair around
process_directory. Remove STK_OCTAVE_PACKAGE stuff.
* admin/build_tools/get_public_mfile_list.m: Add root the list
returned by stk_config_path.
* config/stk_config_path.m: Remove STK_OCTAVE_PACKAGE stuff.
* stk_init.m: Remove STK_OCTAVE_PACKAGE stuff.
* admin/octpkg/patches/prevent-PKG_ADD-loop.patch: Patch for
stk_config_path to avoid PKG_ADD loop.
* admin/octpkg/patches/remove-buildmex.patch: Patch that removes
MEX-file building from stk_init (a Makefile is used instead in the
Octave package release). Removes stk_config_buildmex and
stk_config_makeinfo as well.
* admin/octpkg/patches/remove-testprivatemex.patch: Patch that
removes all the code related to testing if MEX-file in private
directories are detected (since MEX-files are no longer in private
directories in the Octave package release).
* admin/octpkg/patches/series: Ordered list of patches.
check_index_file.m: Fix a bug (column cell-arrays)
* admin/build_tools/check_index_file.m (parse_index_file): Make
sure that 'ignored' and 'indexed' are formatted as *column*
cell-arrays; otherwise, check_index_file fails on vertcat
operations.
2015-11-10 Julien Bect
Hide experimental IAGO implementation in the INDEX
* admin/octpkg/INDEX: hide experimental IAGO implementation
Ignore IAGO design notes when building Octave package
* iago/NOTES.temp: Renamed to DESIGN-NOTES.md
* iago/DESIGN-NOTES.md: Renamed from NOTES.temp and converted to md
* admin/build_tools/build_octpkg.m: Ignore DESIGN-NOTES.md
2015-11-06 Julien Bect
Makefile: Fix 'clean' target (tab instead of spaces)
* admin/octpkg/Makefile: Fix 'clean' target (tabs instead of
spaces)
2015-10-30 Julien Bect
Decrease unit test verbosity
* arrays/@stk_dataframe/double.m: decrease unit test verbosity.
* arrays/@stk_dataframe/sort.m: idem
* arrays/@stk_dataframe/subsasgn.m: idem
* arrays/@stk_factorialdesign/fieldnames.m: idem
* arrays/@stk_factorialdesign/stk_factorialdesign.m: idem
* arrays/@stk_hrect/horzcat.m: idem
* misc/text/stk_sprintf_colvect_scientific.m: idem
* paramestim/stk_param_gls.m: idem
Add a 'clean' target to the Octave package Makefile
* admin/octpkg/Makefile: Add a 'clean target'.
2015-10-22 Julien Bect
@stk_hrect/subsref.m: Return an stk_hrect object if possible
* arrays/@stk_hrect/subsref.m: Make sure that the returned value
is still an stk_hrect object when the number of rows (which is
two) is unchanged.
@stk_hrect/ismember.m: Optimize for speed
* arrays/@stk_hrect/ismember.m: Optimize for speed
@stk_hrect/ismember.m: Fix two bugs
* arrays/@stk_hrect/ismember.m: Fix a bug that prevented ismember
from working on more than one point at a time, and another bug
in the case where B is not an stk_hrect object (it was incorrectly
assumed to be an stk_dataframe in this case).
2015-10-11 Julien Bect
mole/matlab/file_in_path.m: Fix two bugs
* misc/mole/matlab/file_in_path.m: Fix two bugs.
2015-10-10 Julien Bect
stk_example_doe03.m: Use the appropriate flag for maximization
* examples/02_design_of_experiments/stk_example_doe03.m: Use the
appropriate flag for maximization. Also, use stk_plot1d for the
upper panel plot to display pointwise credible intervals.
2015-09-30 Julien Bect
Bring Octave's sqp inside STK.
* misc/optim/@stk_optim_octavesqp/private/sqp_quadprog.m: New
function based on Octave's sqp function, with minor modifications
to be usable under Matlab with quadprog instead of qp.
* misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m: Complete
rewrite. A 'qp_solver' option is added for the choice between 'qp',
which is Octave's core qp solver, and 'quadprog', which is
available from Mathworks' Optimization toolbox or from MOSEK.
* misc/optim/@stk_optim_octavesqp/stk_minimize_boxconstrained.m:
Make it possible to use either Octave's sqp or our sqp_quadprog (a
handle to the function to be used is stored in algo.sqp).
* misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m: Do not try to
check if fmincon is present or not (this can be done using
stk_optim_testmin_box).
* misc/optim/stk_optim_testmin_box.m: Simple test to check that a
given box-constrained optimizer actually works.
* misc/optim/stk_optim_testmin_unc.m: Simple test to check that a
given unconstrained optimizer actually works.
* misc/optim/stk_optim_hasfmincon.m: Deprecated function..
* misc/optim/stk_select_optimizer.m: Deprecated function.
* misc/options/stk_options_set.m: Rewrite optimizer selection
logic. Shorten some option names.
* paramestim/stk_param_estim.m: Use shortened option names.
* INDEX: Add new functions and classes.
* misc/optim/@stk_optim_octavesqp/private/sqp_quadprog_testf.m:
Used in sqp_quadprog unit tests.
* misc/optim/@stk_optim_octavesqp/private/sqp_quadprog_testg.m:
Used in sqp_quadprog unit tests.
2015-09-25 Julien Bect
stk_param_getdefaultbounds: Documentation needed
* paramestim/stk_param_getdefaultbounds.m: This function is not
marked as "STK internal" any more, since this is obviously the
right place to document how default bounds can be specified for
user-defined functions. Documentation needed.
stk_plot1d.m: Create a hidden legend and return a struct of handles
* misc/plot/stk_plot1d.m: Create a hidden legend, wich can be
displayed using lgend ('show'), and return a struct of handles to
make it possible to modify the plot more easily.
Don't use UTF-8 in m-files
* misc/design/stk_phipcrit.m: Müller -> Muller
* misc/dist/stk_filldist.m: Idem
* misc/dist/stk_filldist_exact.m: Idem
2015-09-25 Rémi Stroh
stk_param_getdefaultbounds: new feature to define default bounds
* paramestim/stk_param_getdefaultbounds.m: make it possible to
define default bounds on parameters for user-defined covariance
functions.
2015-09-21 Julien Bect
stk_plot_shadedci.m: Do not call set (h, opt{:}) when opt is empty
* misc/plot/stk_plot_shadedci.m: Do not call set (h, opt{:}) when
opt is empty (it makes Octave display all the settings of the
object with handle h, which was not intended).
2015-09-20 Julien Bect
stk_plot_shadedci.m: Accept a handle as first input argument.
* misc/plot/stk_plot_shadedci.m: Accept a handle to an axes object
as (optional) first input argument and accepts additional
key-value pairs as well.
stk_plot1d.m: Fill in DisplayName properties
* misc/plot/stk_plot1d.m: Fill in the DisplayName properties for
all the components of the plot, thus making it possible to create
a legend automatically using: legend ('show').
2015-09-19 Julien Bect
@stk_dataframe/plot.m: Return vector of handles
* arrays/@stk_dataframe/plot.m: Return vector of handles
stk_plot_shadedci.m: Delete invisible area object, return a handle
* misc/plot/stk_plot_shadedci.m: Delete invisible area object and
return a handle to the visible one.
2015-09-15 Julien Bect
README: Fix a typo
* README: Fix a typo
2015-09-13 Julien Bect
stk_param_init.m: Improve error message
* paramestim/stk_param_init.m: Improve error message for
unsupported covariance functions by reporting the original error
message.
2015-08-14 Julien Bect
stk_dominatedhv.m: Tolerate points that do not dominate the ref
* misc/pareto/stk_dominatedhv.m: Tolerate points that do not
dominate the reference point.
2015-08-13 Julien Bect
stk_dominatedhv can now return a decomposition in hyper-rectangles
* misc/pareto/private/wfg.c (Rlist_hv, Rlist_hv2, Rlist_inclhv)
(Rlist_inclhv2, Rlist_inclhv3, Rlist_inclhv4, Rlist_exclhv)
(wfg_compute_decomposition): For each original WFG function that
returns an hypervolume valume, provide a function that return the
corresponding decomposition as a collection of signed overlapping
hyper-rectangles (RLIST structure).
(Rlist_alloc, Rlist_extend, Rlist_free): Memory management for
RLIST structures.
* misc/pareto/private/wfg.h: Define RLIST structure and declare
some associated functions.
* misc/pareto/private/stk_dominatedhv_mex.c (compute_hv): Use
size_t instead of int for unsigned indices.
(compute_decomposition): New function, similar to compute_hv, but
return the decomposition instead of the hypervolume value.
(mexFunction): Use size_t instead of int for unsigned indices. Add
second input argument to select between computing the hypervolume
value and computing the decomposition.
* misc/pareto/stk_dominatedhv.m: Add optional input argument to
select whether the decomposition into overlapping hyper-rectangles
must be returned (instead of the hypervolume only). Add unit
tests.
stk_mex.h: Define bool type
* misc/include/stk_mex.h: Define bool type.
2015-08-05 Julien Bect
wfg.c (hv): Code simplification
* misc/pareto/private/wfg.c (hv): Factorize some code for the
cases n == 3 and n >= 4.
wfg.c (inclhv4): Put all declarations at the beginning
* misc/pareto/private/wfg.c (inclhv4): Put all variable
declarations at the beginning of the function (strict ANSI C).
2015-07-20 Julien Bect
Use size_t for computations on positive indices
* misc/dist/private/stk_dist_matrixx.c: Use size_t for
computations on positive indices, otherwise we can get very
unpleasant surprises (aka segfaults) as a consequence of negative
indices...
* misc/dist/private/stk_dist_matrixy.c: idem
* misc/dist/private/stk_dist_pairwise.c: idem
* misc/dist/private/stk_filldist_discr_mex.c: idem
* misc/dist/private/stk_gpquadform_matrixx.c: idem
* misc/dist/private/stk_gpquadform_matrixy.c: idem
* misc/dist/private/stk_gpquadform_pairwise.c: idem
* misc/dist/private/stk_mindist_mex.c: idem
2015-07-10 Julien Bect
Introduce optimizer objects.
* misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m: Constructor
for fmincon algorithm objects.
* misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m:
Constructor for fminsearch algorithm objects.
* misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m:
Constructor for Octave SQP algorithm objects.
* misc/optim/@stk_optim_fmincon/stk_minimize_boxconstrained.m:
Box-constrained optimization with fmincon.
* misc/optim/@stk_optim_octavesqp/stk_minimize_boxconstrained.m:
Box-constrained optimization with sqp.
* misc/optim/@stk_optim_octavesqp/stk_minimize_unconstrained.m:
Unconstrained optimization with sqp.
* misc/optim/@stk_optim_fminsearch/stk_minimize_unconstrained.m:
Unconstrained optimization with fminsearch.
* paramestim/stk_param_estim.m: Big cleanup thanks to the new
system of algorithm classes.
* misc/options/stk_options_set.m: Select default optimization
algorithms. This was previously done in stk_select_optimizer.
Also, remove the option 'optim_display_level' for stk_param_estim.
* config/stk_config_setup.m: Remove call to stk_select_optimizer.
* misc/optim/stk_select_optimizer.m: Deprecated.
* misc/optim/stk_optim_hasfmincon.m: Deprecated.
* config/stk_config_clearpersistents.m: Remove
stk_optim_hasfmincon and stk_select_optimizer from the list of
functions to be cleared. Add stk_optim_fmincon.
* admin/octpkg/INDEX: Remove stk_select_optimizer from the index.
2015-06-30 Julien Bect
build_octpkg.m: Fix the generated DESCRIPTION file
* admin/build_tools/build_octpkg.m: Add "Depends: octave (>=
3.2.2)" and "Autoload: no" to the generated DESCRIPTION file.
2015-06-25 Emmanuel Vazquez
@stk_kreq_qr/get.m: Fix a call to dot ()
* core/@stk_kreq_qr/get.m: Fix a call to dot () to make it work
when there is only one observation.
2015-06-25 Rémi Stroh
stk_param_estim.m: Fix a bug related to parameter objects.
* paramestim/stk_param_estim.m (provide_param0_value): Fix a bug
related to parameter objects. More precisely, use (:) indexing
systematically to access the vector of numerical parameters
corresponding to a given parameter object.
@stk_factorialdesign/stk_normalize.m: Add missing line continuation mark
* arrays/@stk_factorialdesign/stk_normalize.m: Add missing line
continuation mark.
2015-06-25 Julien Bect
stk_param_init.m: XXXX_param_init (undocumented feature)
* paramestim/stk_param_init.m: make it possible to define a
XXXX_param_init function that provides initial estimates for a
user-defined covariance function called XXXX (undocumented
feature).
2015-06-24 Julien Bect
stk_param_init.m: Removed unused variable.
* paramestim/stk_param_init.m: Removed unused variable.
stk_param_getdefaultbounds.m: Return [] for parameter classes
* paramestim/stk_param_getdefaultbounds.m: Return empty lower and
upper bounds for parameter classes that do not implement the
stk_param_getdefaultbounds.
2015-06-17 Julien Bect
wfg: Remove n from the global scope
* misc/pareto/private/wfg.c:: Remove n from the global scope. Add
new helper functions to encapsulate basic operations on fronts:
wfg_front_init, wfg_front_destroy, wfg_front_resize.
* misc/pareto/private/wfg.h: Declare the new functions.
* misc/pareto/private/stk_dominatedhv_mex.c: Use the new functions.
wfg.c: Pass pointers to FRONT structures
* misc/pareto/private/wfg.c: Pass pointers to FRONT structures.
2015-06-16 Julien Bect
check_index_file.m: Fix error handling.
* admin/build_tools/check_index_file.m: Fix error handling.
Use PKG_ADD/PKG_DEL directives in the Octave package.
* stk_init.m: Add PKG_ADD/PKG_DEL directives. Also, add an
optional input argument 'do_quit'; when it is true, stk_init
removes STK from the path.
* admin/build_tools/build_octpkg.m: No more PKG_ADD/PKG_DEL
files. They are replaced by corresponding directives in
stk_init.m, which is no longer renamed to PKG_ADD. Also, there are
now two STK_OCTAVE_PACKAGE variables to set (one in stk_init.m,
the other one in stk_config_rmpath.m).
* admin/build_tools/check_index_file.m: No need to warry about
PKG_ADD.m ad PKG_DEL.m anymore.
* admin/octpkg/post_install.m: Idem.
* admin/octpkg/INDEX: Add stk_init to the INDEX.
* config/stk_config_path.m: Do not look for PKG_ADD to detect
Octave package mode, since there no longer is a PKG_ADD
file. Instead, rely on a hard-coded STK_OCTAVE_PACKAGE variable,
which is modified at build time by build_octpkg (similarly to the
one in stk_init).
* config/stk_config_rmpath.m: Modify comment.
* config/stk_config_addpath.m: Modify comment.
* admin/octpkg/PKG_DEL.m: Removed. Instead, a PKD_DEL directive
has been inserted in stk_init.
2015-06-15 Julien Bect
Avoid unnecessary calls to stk_commonsize.
* misc/distrib/stk_distrib_bivnorm_cdf.m: Avoid unnecessary calls
to stk_commonsize.
* misc/distrib/stk_distrib_normal_cdf.m: Idem.
2015-06-12 Julien Bect
stk_commonsize.m: Avoid unnecessary calls to repmat.
* arrays/generic/stk_commonsize.m: Avoid unnecessary calls to
repmat.
2015-06-11 Julien Bect
stk_commonsize.m: Accept empty dimensions
* arrays/generic/stk_commonsize.m: Accept empty dimensions, under
the condition that all input arguments have the same empty
dimensions (in which case the result is empty).
2015-06-10 Julien Bect
@stk_dataframe/subsasgn.m: Preserve column names when deleting rows
* arrays/@stk_dataframe/subsasgn.m: Preserve column names when
deleting rows, even if the resulting array is empty.
2015-06-02 Julien Bect
wfg.c: Improve portability again
* misc/pareto/private/wfg.c: Improve portability again. Now all
variables are declared at the beginning of functions (as required
by the C89 standard). And some unused headers have been removed,
too.
2015-05-29 Julien Bect
stk_distrib_bivnorm_cdf.m: Bugfix
* misc/distrib/stk_distrib_bivnorm_cdf.m: Fix a bug in the case of
mixtures of singular and non-singular cases. Add unit test.
2015-05-28 Julien Bect
wfg.c: Remove C99-specific code (stdbool.h).
* misc/pareto/private/wfg.c: Remove C99-specific code (stdbool.h).
2015-05-27 Julien Bect
stk_pmisclass.m: Compute the probability of misclassification
* utils/stk_pmisclass.m: New function to compute the probability
of misclassification with respect to a given threshold (either the
current probability of misclassification or the expectation of the
future probability of misclassification).
* examples/02_design_of_experiments/stk_example_doe04.m: Example
script that demonstrates the use of stk_pmisclass ().
stk_dominatedhv.m: New function to compute dominated hypervolumes.
* misc/pareto/stk_dominatedhv.m: New function to compute
dominated hypervolumes, which uses WFG 1.10 internally
* misc/pareto/private/stk_dominatedhv_mex.c: MEX-file wrapper for WFG
* admin/octpkg/INDEX: Add new function to the index
* admin/octpkg/Makefile: Add new MEX-file to the Makefile
* config/stk_config_makeinfo.m:Add new MEX-file to the build list
Import WFG 1.10.
* misc/pareto/private/wfg.c: Main WFG source file, with minor changes
* misc/pareto/private/wfg.h: Main WFG header, with minor changes
* misc/pareto/private/wfg.README: WFG README + ChangeLog + Copyright
* admin/build_tools/build_octpkg.m: Ignore wfg.README.
Make it possible to have several source files for one MEX.
* config/stk_config_buildmex.m: Make it possible to have several
source files for one MEX.
* config/stk_config_makeinfo.m: Existing MEX-files do not have any
additional source file.
Move Pareto-related functions to misc/pareto.
* arrays/generic/private/stk_isdominated_mex.c: moved from
* misc/pareto/private/stk_isdominated_mex.c: moved to
* arrays/generic/private/stk_paretofind_mex.c: moved from
* misc/pareto/private/stk_paretofind_mex.c: moved to
* arrays/generic/stk_isdominated.m: moved from
* misc/pareto/stk_isdominated.m: moved to
* arrays/generic/stk_paretofind.m: moved from
* misc/pareto/stk_paretofind.m: moved to
* admin/octpkg/INDEX: Create a dedicated section in the index
* config/stk_config_makeinfo.m: Update make info
* config/stk_config_path.m: Add new directory to the path
2015-05-24 Julien Bect
Clear persistent variables in stk_init
* config/stk_config_clearpersistents.m: New function that unlocks
all possibly mlock-ed STK files and clears all STK functions that
contain persistent variables.
* stk_init.m: Call stk_config_clearpersistents.
* admin/RELEASE.md: Update release instructions.
2015-05-20 Julien Bect
@stk_dataframe/set.m: Fix stk_error calls (missing mnemonic)
* arrays/@stk_dataframe/set.m: Fix stk_error calls (missing mnemonic)
stk_param_estim.m: Make sure that lnv0 falls within the bounds
* paramestim/stk_param_estim.m (get_default_bounds_lnv): Make sure
that lnv0 falls within the bounds returned by get_default_bounds_lnv.
2015-05-19 Julien Bect
stk_optim_hasfmincon.m: Improve fmincon detection
* misc/optim/stk_optim_hasfmincon.m: Try to use fmincon to check
that it is there, instead of relying on the result of the exist
function (closes ticket #30).
2015-05-17 Julien Bect
admin/octpkg/Makefile: Use $(MKOCTFILE) if defined
* admin/octpkg/Makefile: Use $(MKOCTFILE) if defined
stk_runtests.m: Make sure that all Octave warnings are disabled
* misc/test/stk_runtests.m: Make sure that all Octave warnings are
disabled
Fix %!shared blocks in unit tests.
* arrays/@stk_hrect/stk_normalize.m: Fix unit test.
* arrays/generic/stk_feval.m: Fix unit test.
2015-04-22 Julien Bect
Improve indexing (subasgn/subsref) for stk_dataframe objects.
* arrays/@stk_dataframe/subsasgn.m: Preserve row names and column
names when it is possible (closes ticket #21).
* arrays/@stk_dataframe/subsref.m: Allow for several levels of
indexing in the case of ()-indexing.
stk_dataframe.m: Add help text
* arrays/@stk_dataframe/stk_dataframe.m: Add help text (closes
ticket #26).
2015-04-21 Julien Bect
stk_hrect.m: Add help text
* arrays/@stk_hrect/stk_hrect.m: Add help text (closes ticket #27).
2015-04-20 Julien Bect
stk_boundingbox.m: Add doc and overload for several classes (ticket #28)
* arrays/generic/stk_boundingbox.m: Add doc. Handle plain arrays only.
* arrays/@stk_dataframe/stk_boundingbox.m: Overload.
* arrays/@stk_factorialdesign/stk_boundingbox.m: Overload.
* arrays/@stk_hrect/stk_boundingbox.m: Overload.
* arrays/@struct/stk_boundingbox.m: Overload.
2015-04-05 Julien Bect
stk_feval.m: Update documentation.
* stk_feval.m: Update documentation.
2015-03-11 Julien Bect
stk_feval.m: Implement vectorized calls and use them by default.
* arrays/generic/stk_feval.m: Implement vectorized calls and use them by
default.
* paramestim/stk_param_relik.m: Fix unit test.
Fix progress indicator in stk_feval.
* arrays/generic/stk_feval.m: Restore the progress indicator.
* misc/text/stk_disp_progress.m: Fix progress message.
2015-03-04 Julien Bect
stk_distrib_normal_cdf.m: Fix the zero-variance case
* misc/distrib/stk_distrib_normal_cdf.m: Fix the zero-variance
case. Add unit tests.
Fix bugs in stk_distrib_*_ei functions.
* misc/distrib/stk_distrib_normal_ei.m: Fix bug (input argument
"minimize" was not properly taken into account).
* misc/distrib/stk_distrib_student_ei.m: Fix bug (input argument
"minimize" was not properly taken into account).
2015-02-21 Julien Bect
Optimize for speed
* misc/distrib/stk_distrib_normal_cdf.m: Optimize for speed
* covfcs/stk_gausscov_aniso.m: Optimize for speed
* covfcs/stk_materncov32_aniso.m: Optimize for speed
* covfcs/stk_materncov52_aniso.m: Optimize for speed
* covfcs/stk_materncov_aniso.m: Optimize for speed
2015-02-18 Julien Bect
stk_feval.m: Do not return an stk_dataframe object systematically
* arrays/generic/stk_feval.m: Return an stk_dataframe object only
if the input x itself is an stk_dataframe object.
Optimize for speed (and fix a tiny bug)
* arrays/@stk_dataframe/stk_dataframe.m: Optimize for speed
* arrays/@stk_dataframe/set.m: Optimize for speed (and fix a tiny bug)
* arrays/@stk_dataframe/horzcat.m: Optimize for speed
* arrays/@stk_dataframe/vertcat.m: Optimize for speed
* arrays/@stk_dataframe/subsref.m: Optimize for speed
* arrays/generic/stk_feval.m: Optimize for speed
2015-02-17 Julien Bect
Initialize model.param with NaNs.
* core/stk_model.m: Initialize model.param with NaNs.
* core/stk_predict.m: Fix unit tests.
* covfcs/stk_discretecov.m: Fix unit tests.
* covfcs/stk_gausscov_aniso.m: Fix unit tests.
* covfcs/stk_gausscov_iso.m: Fix unit tests.
* covfcs/stk_materncov32_aniso.m: Fix unit tests.
* covfcs/stk_materncov32_iso.m: Fix unit tests.
* covfcs/stk_materncov52_aniso.m: Fix unit tests.
* covfcs/stk_materncov52_iso.m: Fix unit tests.
* covfcs/stk_materncov_aniso.m: Fix unit tests.
* covfcs/stk_materncov_iso.m: Fix unit tests.
* utils/stk_conditioning.m: Fix unit tests.
* utils/stk_generate_samplepaths.m: Fix unit tests.
2015-02-11 Julien Bect
stk_feval.m: Accept any object that implement feval
* arrays/generic/stk_feval.m: Accept any object that implement
feval (not just strings and function handles).
2015-02-10 Julien Bect
stk_feval.m: Fix backward compatibility issues
* arrays/generic/stk_feval.m: Fix backward compatibility
issue. Old-style STK structures, where the data is contained in a
field named 'a', were not dealt with properly. Add unit test.
* core/stk_predict.m: Convert xi to double (same reason).
* paramestim/stk_param_estim.m: Convert zi to double (same reason).
* arrays/@struct/stk_length.m: New function.
2015-02-09 Julien Bect
stk_hrect.m: Provide default constructor
* arrays/@stk_hrect/stk_hrect.m: Provide default constructor
2015-02-04 Julien Bect
Overload uplus, uminus for stk_dataframe objects.
* arrays/@stk_dataframe/uminus.m: Overload uminus.
* arrays/@stk_dataframe/uplus.m: Overload uplus.
* arrays/@stk_factorialdesign/uminus.m: Overload uminus.
stk_feval.m: Accept multivariate outputs (closes #20)
* arrays/generic/stk_feval.m: Accept functions with multivariate
outputs (i.e., outputs with several columns). Improve the
construction of the output dataframe (column names). Add unit
tests.
stk_feval.m: Fix a bug related to column names
* arrays/generic/stk_feval.m: Fix a bug related to column names.
2015-02-03 Julien Bect
@stk_dataframe/apply, min, max: Return more than one output argument
* arrays/@stk_dataframe/apply.m: Return more than one output argument
* arrays/@stk_dataframe/max.m: Return more than one output argument
* arrays/@stk_dataframe/min.m: Return more than one output argument
stk_param_relik.m: Improve the computation of G = W' * K * W
* paramestim/stk_param_relik.m: Compute G = W' * K * W in such a
way that the result is always (?) symmetric.
2015-01-28 Julien Bect
stk_predict.m: Compute lambda_mu and RS only when necessary
* core/stk_predict.m: Compute lambda_mu and RS only when
necessary, depending on the number of output arguments. Add unit
tests.
stk_param_init.m: Handle the heteroscedastic case
* paramestim/stk_param_init.m: Handle the heteroscedastic case
with known variance properly. Error in the heteroscedastic case
with unknown variance. Add unit tests.
2015-01-27 Julien Bect
stk_param_init.m: Fix a bug.
* paramestim/stk_param_init.m (paraminit_): Fix a bug.
2015-01-25 Julien Bect
stk_dataframe.m: Make sure that the output is an stk_dataframe
* arrays/@stk_dataframe/stk_dataframe.m: Make sure that the output
is an stk_dataframe object. Add unit tests.
2015-01-24 Julien Bect
Overload a few base functions for stk_dataframe objects
* arrays/@stk_dataframe/sort.m: Overload base function
* arrays/@stk_dataframe/mtimes.m: Overload base function
2015-01-23 Julien Bect
stk_conditioning.m: Overload for stk_dataframe objects
* arrays/@stk_dataframe/stk_conditioning.m: Overload
stk_conditioning for stk_dataframe inputs. The output is an
stk_dataframe object if either LAMBDA or ZSIM is an stk_dataframe
object.
* utils/stk_conditioning.m: Do not convert the output into an
stk_dataframe object.
stk_generate_samplepaths.m: Overload for stk_dataframe objects
* arrays/@stk_dataframe/stk_generate_samplepaths.m: Overload
stk_generate_samplepaths for stk_dataframe inputs. The output is
always an stk_dataframe object.
* utils/stk_generate_samplepaths.m: Simplify the code using the
assumption that none of the inputs is an stk_dataframe object. The
output is an stk_dataframe object if and only if
model.response_name exists and is a non-empty string.
2015-01-21 Julien Bect
stk_feval.m: Various improvements.
* arrays/generic/stk_feval.m: Update documentation. Try to make
the code clearer. Use stk_disp_progress.
stk_disp_progress.m: Display a progress indicator.
* misc/text/stk_disp_progress.m: New function that displays a
textual progress indicator.
2015-01-21 Emmanuel Vazquez
stk_feval.m: Generalize to the case of a cell array of functions
* arrays/generic/stk_feval.m: Generalize to the case of a cell
array of functions (ticket #19 closed).
2015-01-08 Julien Bect
Improve conditional simulation examples.
* examples/01_kriging_basics/stk_example_kb05.m: Add documentation.
* examples/01_kriging_basics/stk_example_kb09.m: New example.
stk_generate_samplepaths.m: Fix conditioning on noisy observations
* utils/stk_generate_samplepaths.m: Fix conditioning on noisy
observations, which was not implemented properly until now.
stk_conditioning.m: Implement conditioning on noisy observations
* utils/stk_conditioning.m: Simulate sample paths conditioned on
noisy observations when the additional NOISE_SIM argument is
provided.
2015-01-07 Julien Bect
stk_generate_samplepaths.m: Do not simulate observation noise.
* utils/stk_generate_samplepaths.m: Do not add observation noise
to the generated sample paths. This is consistent with
stk_predict, which returns posterior variances for the unknown
function, not for future noisy observations.
2014-12-31 Julien Bect
Accept empty dim in sampling functions.
* sampling/stk_sampling_halton_rr2.m: Accept empty dim argument
when box is provided, in which case dim is guessed from the
dimension of box if provided, and defaults to one otherwise.
* sampling/stk_sampling_maximinlhs.m: Idem.
* sampling/stk_sampling_olhs.m: Idem.
* sampling/stk_sampling_randomlhs.m: Idem.
* sampling/stk_sampling_randunif.m: Idem.
* sampling/stk_sampling_regulargrid.m: Idem.
Use @stk_hrect objects wherever it is useful (work in progress).
* examples/01_kriging_basics/stk_example_kb03.m: Use @stk_hrect.
* examples/02_design_of_experiments/stk_example_doe03.m: Use @stk_hrect.
* misc/test/stk_is_lhs.m: Use @stk_hrect.
* paramestim/stk_param_init.m: Use @stk_hrect.
* sampling/stk_sampling_halton_rr2.m: Use @stk_hrect.
* sampling/stk_sampling_maximinlhs.m: Use @stk_hrect.
* sampling/stk_sampling_olhs.m: Use @stk_hrect.
* sampling/stk_sampling_randomlhs.m: Use @stk_hrect.
* sampling/stk_sampling_randunif.m: Use @stk_hrect.
* sampling/stk_sampling_regulargrid.m: Use @stk_hrect.
A few additional methods for the @stk_dataframe class.
* arrays/@stk_dataframe/diff.m: Overload base function.
* arrays/@stk_dataframe/ismember.m: Overload base function.
* arrays/@stk_dataframe/xlim.m: Overload base function.
* arrays/@stk_dataframe/ylim.m: Overload base function.
Overhaul stk_normalize and stk_rescale functions.
* arrays/@stk_dataframe/stk_normalize.m: Overhaul.
* arrays/@stk_dataframe/stk_rescale.m: Overhaul.
* arrays/@stk_factorialdesign/stk_normalize.m: Overhaul.
* arrays/@stk_factorialdesign/stk_rescale.m: Overhaul.
* arrays/generic/stk_normalize.m: Overhaul.
* arrays/generic/stk_rescale.m: Overhaul.
stk_boundingbox.m: New function to create bounding boxes.
* arrays/generic/stk_boundingbox.m: New function to create
bounding boxes as @stk_hrect object.
* admin/octpkg/INDEX: Add new functions to the index.
New @stk_hrect class to represent hyper-rectangles.
* arrays/@stk_hrect/stk_hrect.m: Constructor for the new
@stk_hrect class.
* arrays/@stk_hrect/axis.m: Overload base function.
* arrays/@stk_hrect/disp.m: Overload base function.
* arrays/@stk_hrect/display.m: Overload base function.
* arrays/@stk_hrect/get.m: Overload base function.
* arrays/@stk_hrect/horzcat.m: Overload base function.
* arrays/@stk_hrect/ismember.m: Overload base function.
* arrays/@stk_hrect/stk_normalize.m: Overload STK function.
* arrays/@stk_hrect/stk_rescale.m: Overload STK function
* arrays/@stk_hrect/subsasgn.m: Overload base function.
* arrays/@stk_hrect/subsref.m: Overload base function.
* arrays/@stk_hrect/vertcat.m: Overload base function.
* admin/octpkg/INDEX: Add new functions to the index.
Improve plot helper functions.
* misc/plot/stk_get_axis_arg.m: New function to help handling the
options axes argument that most plotting functions have.
* misc/plot/stk_xlabel.m: Use stk_get_axis_arg.
* misc/plot/stk_ylabel.m: Use stk_get_axis_arg.
* misc/plot/stk_zlabel.m: New function, similar to stk_xlabel and stk_ylabel.
* misc/options/stk_options_set.m: Add options for stk_zlabel.
2014-12-09 Julien Bect
stk_distrib_bivnorm_cdf: Compute bivariate normal probabilities.
* misc/distrib/stk_distrib_bivnorm_cdf.m: Compute bivariate normal
probabilities (with any means, standard deviations and
corrrelation coefficients). Supports broadcasting. Accurate
computation of [p, q] even when p or q is close to one.
* misc/distrib/private/stk_distrib_bivnorm0_cdf.c: C MEX-file for
the computation of standard bivariate probabilities (zero means,
unit variances).
* admin/octpkg/INDEX: Hide stk_distrib_bivnorm_cdf.m, currently
considered as an internal function.
* admin/octpkg/Makefile: Add __stk_distrib_bivnorm0_cdf__ to the
list of targets.
* config/stk_config_makeinfo.m: Add stk_distrib_bivnorm0_cdf.
2014-12-03 Julien Bect
stk_sampling_randunif.m: Fix input argument checking.
* sampling/stk_sampling_randunif.m: Fix input argument checking.
stk_sampling_randunif.m: Accept empty dim when box is provided.
* sampling/stk_sampling_randunif.m: Accept empty dim argument when
box is provided, in which case dim is guessed from the dimension
of box.
2014-11-20 Julien Bect
stk_param_estim.m: Provide a value for param0 if needed.
* paramestim/stk_param_estim.m: Provide a value for param0 if needed.
stk_param_estim.m: Empty is the same as not provided.
* paramestim/stk_param_estim.m: Empty is the same as not provided.
stk_param_estim.m: Simplify variable names.
* paramestim/stk_param_estim.m: Simplify variable names, param0lnv
-> lnv0, paramlnvopt -> lnvopt.
stk_param_estim.m: Always return something meaningful for lnv.
* paramestim/stk_param_estim.m: Always return something meaningful
for lnv: when the variance of the noise is not estimated, return
model.lognoisevariance. Update the function documentation
following this and earlier changes.
2014-11-08 Julien Bect
stk_param_estim.m: Estimate lnv if lognoisevariance is nan.
* paramestim/stk_param_init_lnv.m: New function that provides a
rough estimate of the variance of the noise for a given model.
* admin/octpkg/INDEX: Include stk_param_init_lnv.m.
* paramestim/stk_param_estim.m: Estimate the variance of the noise
if the lognoisevariance field is nan, using as a starting point
the value returned by stk_param_init_lnv.
* examples/01_kriging_basics/stk_example_kb04.m: Demonstrate how
it is possible to estimate the variance of the noise without
providing a initial guess for it.
2014-11-06 Julien Bect
Handle empty lognoisevariance field as if missing.
* core/stk_make_matcov.m: Handle empty lognoisevariance field as
if missing.
* core/stk_model.m: Idem.
* doc/dev/model.texi: Idem.
* paramestim/stk_param_estim.m: Idem.
* paramestim/stk_param_init.m: Idem.
* paramestim/stk_param_relik.m: Idem.
2014-11-03 Julien Bect
Add a 'pairwise' argument to stk_noisecov.
* covfcs/stk_noisecov.m: Add a 'pairwise' argument.
* core/stk_make_matcov.m: Use the new 'pairwise' argument.
2014-11-02 Julien Bect
stk_param_init.m: Change the behaviour regarding lnv.
* paramestim/stk_param_init.m: defaults to using the input value
of model.lognoisevariance if it is not nan, and estimating the
variance if it is nan. The meaning of the fifth argument, now
called DO_ESTIM_LNV, has also slightly changed: it is used to
force or prevent the estimation of the variance of the noise,
regardless of the value of model.lognoisevariance.
* examples/03_miscellaneous/stk_example_misc03.m: Display the two
models that have been used in this example.
* doc/dev/model.texi: update accordingly.
2014-10-26 Julien Bect
Make lognoisevariance a mandatory field in model structures.
* core/stk_model.m: Make lognoisevariance a mandatory field in
model structures, with default value -inf. For backward
compatibility, stk_discrete_cov models can still be created with
model structures that lack a lognoisevariance field.
* core/stk_make_matcov.m: For backward compatibility, a
lognoisevariance field with value -inf is added if absent.
* paramestim/stk_param_estim.m: idem.
* paramestim/stk_param_init.m: idem.
* paramestim/stk_param_relik.m: idem + remove NOISYOBS variable.
* covfcs/stk_discretecov.m: Modify unit test accordingly.
* doc/dev/model.texi: Record design notes and ideas about model
structures (not meant to be released as a user-level doc).
2014-10-09 Julien Bect
Add the Goldstein-Price test function.
* examples/test_functions/stk_testfun_goldsteinprice.m:
Goldstein-Price test function.
2014-09-29 Julien Bect
Polish stk_sprintf_colvect_* functions.
* misc/text/stk_sprintf_colvect_fixedpoint.m: Use round instead of
floor. Polish formatting.
* misc/text/stk_sprintf_colvect_scientific.m: Polish formatting.
2014-09-28 Julien Bect
@stk_dataframe/plot.m: Fix two problems.
* arrays/@stk_dataframe/plot.m: Fix two problems.
stk_config_rmpath.m: Use strrep instead of regexprep.
* config/stk_config_rmpath.m: Use strrep instead of regexprep for
compatiblity with Octave 3.2.x (see comments inside the file).
2014-09-27 Julien Bect
PKG_DEL.m: Use addpath instead of cd.
* admin/octpkg/PKG_DEL.m: Use addpath instead of cd.
stk_param_getdefaultbounds.m: Avoid -Inf in default bounds.
* paramestim/stk_param_getdefaultbounds.m: Avoid -Inf in default
bounds.
2014-09-25 Julien Bect
Fix a problem related to Octave 3.2.x when STK is used as a package.
* config/stk_config_path.m: Add private folder to the path in
Octave 3.2.x even when STK is used as a package.
Fix a problem with @stk_factorialdesign/fieldnames.m.
* arrays/@stk_factorialdesign/fieldnames.m: Concatenate cell
arrays of strings, but not a string with a cell array of strings
since the latter syntax is not supported in Octave 3.2.x.
Add @stk_factorialdesign/private to the path when using Octave 3.2.x.
* config/stk_config_path.m: Add @stk_factorialdesign/private to
the path when using Octave 3.2.x.
2014-09-22 Julien Bect
Robustify a private function.
* arrays/@stk_factorialdesign/private/plot_surfmeshcontour.m: Make
the function work with old versions of octave where, for some
plotting functions (e.g., pcolor in Octave 3.6.4) the full syntax
with axes handle and parameter/value pairs is not supported.
Make stk_config_rmpath work on Windows systems.
* config/stk_config_rmpath.m: Make stk_config_rmpath work on
Windows systems (pathsep must be used instead of ':' since ':' is
not the path separator for Windows...).
2014-09-20 Julien Bect
Provide a replacement for missing isrow.
* misc/mole/isrow/isrow.m: Replacement for isrow.
* config/stk_config_mole.m: Add our isrow function to the path if
necessary (e.g., Matlab R2007a).
Fix a tiny bug in stk_param_estim.
* paramestim/stk_param_estim.m: Use strcmpi instead of strcmp to
compare err.identifier to 'matlab:optimset:invalidparamname' on
line 167. I wonder if this line has ever worked properly... (only
affects old releases of Matlab, e.g.,R2007a).
Don't use ~ to ignore arguments.
* admin/build_tools/build_octpkg.m: Don't use ~ to ignore arguments.
* utils/stk_generate_samplepaths.m: Don't use ~ to ignore arguments.
2014-09-15 Julien Bect
stk_param_relik.m: Optimize the case of simple kriging.
* paramestim/stk_param_relik.m: Optimize the case of simple kriging.
2014-09-09 Paul Feliot
doc: Update help text for several functions.
* covfcs/stk_materncov32_aniso.m: Update help text.
* covfcs/stk_materncov32_iso.m: Update help text.
* covfcs/stk_materncov52_aniso.m: Update help text.
* covfcs/stk_materncov52_iso.m: Update help text.
* covfcs/stk_materncov_aniso.m: Update help text.
* covfcs/stk_materncov_iso.m: Update help text.
* paramestim/stk_param_init.m: Update help text.
2014-09-02 Julien Bect
Rename LICENSE to COPYING.
* LICENSE: Renamed to COPYING.
* COPYING: Formerly known as LICENSE.
* README: Update reference to LICENSE.
* admin/build_tools/build_forgedoc.m: No more need to rename.
* admin/build_tools/build_octpkg.m: No more need to rename.
* admin/find_nonstandard_characters.sh: Update reference to LICENSE.
* admin/fix_eol.sh: Update reference to LICENSE.
Rename WHATSNEW to NEWS.
* NEWS: Formerly known as WHATSNEW. This version is for release
2.1.1 (we still have to update it to 2.2.0). From now on, we will
always keep a version of this file in the default branch.
* admin/build_tools/build_forgedoc.m: No need to rename WHATSNEW
to NEWS anymore.
* admin/build_tools/build_octpkg.m: Same thing.
2014-08-20 Julien Bect
Add CITATION file.
* CITATION: Explain how to cite STK in publications.
2014-08-18 Julien Bect
Document stk_length.
* arrays/generic/stk_length.m: Add doc.
* arrays/@stk_dataframe/stk_length.m: Fix doc.
* admin/octave-pkg/INDEX: Un-hide stk_length.
2014-08-17 Julien Bect
Deprecate stk_plot2d.
* misc/plot/stk_plot2d.m: Deprecated.
* arrays/@stk_factorialdesign/contour.m: Overload base function.
* arrays/@stk_factorialdesign/mesh.m: Overload base function.
* arrays/@stk_factorialdesign/meshc.m: Overload base function.
* arrays/@stk_factorialdesign/meshz.m: Overload base function.
* arrays/@stk_factorialdesign/pcolor.m: Overload base function.
* arrays/@stk_factorialdesign/surf.m: Overload base function.
* arrays/@stk_factorialdesign/private/plot_surfmeshcontour.m:
Provide a common implementation for overloading surf/contour/...
* examples/01_kriging_basics/stk_example_kb03.m: Use contour and
pcolor.
* examples/03_miscellaneous/stk_example_misc04.m: Use pcolor.
* admin/octave-pkg/INDEX: Update with the new functions. Hide
stk_plot2d.
@stk_dataframe/plot.m: Hold on after the first plot.
* arrays/@stk_dataframe/plot.m: Hold on after the first plot, if
there are several (fixes a bug introduced yesterday).
2014-08-16 Julien Bect
@stk_dataframe/plot.m: Full rewrite again.
* arrays/@stk_dataframe/plot.m: Full rewrite again, to improve
even more compatibility with the base plot function. The case
where x is an stk_dataframe objects with two or more columns is
now handled in a way that is consistent with the base plot
function (i.e., if x has two columns, then we get two 1D plots).
2014-08-15 Julien Bect
stk_plot1d.m: Add missing documentation.
* misc/plot/stk_plot1d.m: Add doc.
@stk_dataframe/plot.m: Full rewrite.
* arrays/@stk_dataframe/plot.m: Full rewrite to improve
compatibility with the base plot function. Deprecate the case
where x is an stk_dataframe objects with two or more columns.
2014-08-14 Julien Bect
Add missing documentations.
* arrays/@stk_factorialdesign/ndgrid.m: Add doc.
* covfcs/stk_discretecov.m: Add doc.
2014-08-13 Julien Bect
Use "z" instead of "x" in all stk_distrib_* functions.
* misc/distrib/stk_distrib_normal_cdf.m: Use "z" instead of "x".
* misc/distrib/stk_distrib_normal_ei.m: Idem.
* misc/distrib/stk_distrib_normal_pdf.m: Idem.
* misc/distrib/stk_distrib_student_cdf.m: Idem.
* misc/distrib/stk_distrib_student_ei.m: Idem.
* misc/distrib/stk_distrib_student_pdf.m: Idem.
Provide a documentation for EI functions.
* misc/distrib/stk_distrib_normal_ei.m: Add doc.
* misc/distrib/stk_distrib_student_ei.m: Add doc.
2014-08-12 Julien Bect
Improve Octave packaging.
* admin/make_octave_package.m: Delete rename_mex.sed after
use. Rename test script.
* admin/MAKE_OCTAVE_PACKAGE.md: New doc file (in markdown).
* admin/octave-pkg/test_package.m: Renamed to
* admin/octave-pkg/pkg_install_stk_and_generate_doc.m: Renamed
from.
2014-08-10 Julien Bect
stk_example_misc04.m: Fix property name.
* examples/03_miscellaneous/stk_example_misc04.m: Fix property
name (YTickLabels --> YTickLabel).
stk_example_misc04.m: Fix for Octave compatiblity.
* examples/03_miscellaneous/stk_example_misc04.m: Fix for Octave
compatiblity (stairs does not accept stk_datafrm objects in
Octave).
2014-08-08 Julien Bect
Fix and improve stk_factorialdesign's accessors.
* arrays/@stk_factorialdesign/subsasgn.m: New function. Override
stk_dataframe's subsasgn to prevent illegal modifications of
stk_factorialdesign objects through ()-type indexing. Any such
modification results in an implicit cast to stk_dataframe.
* arrays/@stk_factorialdesign/get.m: Provide read-only access to
the underlying stk_dataframe object.
* arrays/@stk_factorialdesign/set.m: The result is implicitely
cast into an stk_dataframe object upon any modification that would
otherwise corrupt the internal structure of the
stk_factorialdesign object.
* arrays/@stk_factorialdesign/fieldnames.m: Add .stk_dataframe.
2014-08-07 Julien Bect
Simplify the display of stk_factorialdesign objects.
* arrays/@stk_factorialdesign/stk_sprintf.m: Simplify the display
of stk_factorialdesign objects by hiding the ".stk_dataframe"
level (i.e., .info is used as an aliad for .stk_dataframe.info).
* arrays/@stk_dataframe/stk_sprintf.m: Modified (tiny change).
Define list of field names for stk_factorialdesign objects.
* arrays/@stk_factorialdesign/fieldnames.m: Define list of field
names for stk_factorialdesign objects.
Fix list of field names for stk_dataframe objects.
* arrays/@stk_dataframe/private/reserved_field_names.m: Fix list
of field names for stk_dataframe objects.
* arrays/@stk_dataframe/fieldnames.m: Update unit test.
2014-07-31 Julien Bect
Modify the behaviour of vertcat/horzcat for stk_dataframe objects.
* arrays/@stk_dataframe/horzcat.m: Modified. The result is always
an stk_dataframe object, and has row names iff either one of the
two arguments doesn't have row names, or the row names of both
arguments agree.
* arrays/@stk_dataframe/vertcat.m: Similar changes.
Modify the behaviour of bsxfun for stk_dataframe objects.
* arrays/@stk_dataframe/bsxfun.m: Modified. The result is always
an stk_dataframe object, and has column names iff either one of
the two arguments doesn't have columns names or the columns names
of both arguments agree.
* arrays/@stk_factorialdesign/stk_factorialdesign.m: Modified unit
test.
* arrays/@stk_dataframe/abs.m: Overload abs for stk_dataframe
object. This allows to write abs (x) instead of abs (double (x))
or abs (x.data).
2014-07-24 Julien Bect
Accept invRho = 0 in anisotropic covariance functions.
* covfcs/stk_gausscov_aniso.m: Accept invRho = 0.
* covfcs/stk_materncov32_aniso.m: Idem.
* covfcs/stk_materncov52_aniso.m: Idem.
* covfcs/stk_materncov_aniso.m: Idem.
stk_sprintf_colvect_scientific.m: Fix a bug.
* misc/text/stk_sprintf_colvect_scientific.m: Fix a bu related to
rounding numbers such as 9.99e02 (which were displayed as 10e+02
instead of 1e+03).
* arrays/@stk_dataframe/stk_sprintf.m: Set default width to 8.
* misc/text/stk_sprintf_colvect.m: Idem.
* misc/text/stk_sprintf_colvect_fixedpoint.m: Idem.
2014-07-23 Julien Bect
stk_param_estim.m: Warn about constant-response data.
* paramestim/stk_param_estim.m: Warn about constant-response data.
2014-07-22 Julien Bect
stk_param_init.m: Warn about constant-response data.
* paramestim/stk_param_init.m: Warn about constant-response data.
stk_param_relik.m: Check symmetry of G = W' * K * W.
* paramestim/stk_param_relik.m: Check if G = W' * K * W and apply
a naive fix if it is not (+ emit a warning).
* config/stk_config_setup.m: Do not display the new warning.
* core/stk_cholcov.m: Only issue one warning if using epsi.
Improve the implementation of stk_dataframe objects display.
* arrays/@stk_dataframe/disp.m: Modified.
* arrays/@stk_dataframe/display.m: Modified.
* arrays/@stk_factorialdesign/stk_sprintf_levels.m: Modified.
* arrays/@stk_dataframe/stk_sprintf.m: New function.
* arrays/@stk_factorialdesign/stk_sprintf.m: New function.
* arrays/generic/stk_sprintf.m: New function.
* arrays/@stk_dataframe/stk_sprintf_data.m: Removed.
* arrays/@stk_factorialdesign/disp.m: Removed.
* arrays/generic/stk_sprintf_data.m: Removed.
Implement stk_sprintf_sizetype for cell arrays.
* arrays/@cell/stk_sprintf_sizetype.m: Implement
stk_sprintf_sizetype for cell arrays.
* arrays/@stk_dataframe/stk_sprintf_sizetype.m: Minor formatting
change in the output string (remove spaces).
* arrays/generic/stk_sprintf_sizetype.m: Idem.
2014-07-21 Julien Bect
stk_config_buildmex.m: Run silently when doing nothing.
* config/stk_config_buildmex.m: Run silently when doing nothing.
Remove page_screen_output (not needed anymore).
* misc/mole/matlab/page_screen_output.m: Deleted (not needed
anymore).
Stop bothering users at startup.
* stk_init.m: Stop bothering users at startup with information
that they can find in the README file anyway.
Don't display selected optimizers at startup.
* misc/optim/stk_select_optimizer.m: Don't display selected
optimizers when called without input arguments (typically, during
startup).
2014-07-20 Julien Bect
stk_config_setup.m: Call stk_parallel_engine_set.
* config/stk_config_setup.m: Call stk_parallel_engine_set.
Get rid of stk_parallel_haspct.
* misc/parallel/stk_parallel_haspct.m: Deleted.
* admin/octave-pkg/INDEX: Modified.
* misc/parallel/stk_parallel_start.m: Modified.
stk_config_setup.m: Don't bother checking if the PCT is installed.
* config/stk_config_setup.m: in Matlab, don't bother checking if
the PCT is installed.
2014-07-19 Julien Bect
New example script illustrating random Pareto fronts.
* examples/03_miscellaneous/stk_example_misc04.m: New script.
2014-07-18 Julien Bect
Add an option to control the verbosity fmincon/fminsearch.
* misc/options/stk_options_set.m: Add new option
'optim_display_level' with default value 'off'.
* paramestim/stk_param_estim.m: Use the new option.
* paramestim/stk_param_init.m: Don't display debugging info.
2014-07-14 Julien Bect
stk_plot1d.m: Improved flexibility in argument handling.
* misc/plot/stk_plot1d.m: Improved flexibility in the way input
arguments are handled.
2014-07-03 Julien Bect
Global options to control upper/lower bounds for param estim.
* misc/options/stk_options_set.m: Add new options.
* paramestim/stk_param_getdefaultbounds.m: Read global options.
stk_param_estim.m: Return an additional 'info' structure.
* paramestim/stk_param_estim.m: Return an additional 'info'
structure, which currently contains the criterion that has been
used, the criterion value at the optimum, and the bounds.
2014-07-02 Julien Bect