Releases: bessagroup/f3dasm
v1.4.5
This pull request will update the main
code to version 1.4.5
Major updates
Domain
and Parameter
classes
- All
Parameter
classes are now private. The suggested way to add parameters to a Domain will be with the publicadd_float
,add_int
,add_category
andadd_constant
methods. - Change the behaviour of the public
Domain.add
method to require the type and arguments of the (private) parameter to construct, instead of requiring the private Parameter object
ExperimentData
class
- Added a method that extracts all
ExperimentSample
objects or a selection ofExperimentSample
objects from anExperimentData
object - Removed the
.filename
attribute inExperimentData
: the name of the stored objects are hardcoded - Refactored the
.path
attribute to the.project_dir
attribute. When storing theExperimentData
object with the.store()
method, a subdirectory (/experiment_data/
) will be created and the input data, output data, domain and jobs will be stored there.
Optimizer
class
- Added functionality to select different strategies to determine the initial points (
$x_0$ ) before optimization.
_Data
class
- Decoupled the headers of the
_Data
class to a separate private_Columns
class. This makes it more flexible for future development on the generalization of different back-ends (currently pandas) for_Data
- Removed dependency of
Domain
to_Data
class
Storing output data
- Output that is stored to disk will no longer have the
path_
prefix before the parameter. This information is stored within the_Columns
object - The
ExperimentSample.output_data
will, if applicable, load the output parameters from disk automatically - The attribute
ExperimentSample.output_data_with_references
will give you the paths of the references - Added backwards compatibility for
ExperimentSample.output_data_loaded
(will redirect toExperimentSample.output_data
Documentation
- Made private methods of public objects visible in sphinx documentation API
Bessa Group Coding Guidelines
- Restored the original .flake8 file of the BRG coding guidelines; the maximum linewidth is now 79 instead of 119.
Miscellaneous
- Represent all private attributes and methods with an underscore (
_
).
Closed issues
Full Changelog: v1.4.4...v1.4.5
v1.4.4
Bugfixes and enhancement featured by @BernardoFerreira
What's Changed
- Make DataGenerator.run method private by @mpvanderschelling in #197
- Change the default behaviour of the logger so that it doesn't display messages by @mpvanderschelling in #196
- Mpvanderschelling/issue189 by @mpvanderschelling in #199
- ExperimentData.store documentation is not correct by @mpvanderschelling in #203
- Handle similar bounds on add_float to make a constant parameter by @mpvanderschelling in #198
- Get a way to extract input and output data from ExperimentData by @mpvanderschelling in #200
- Fixes #194 by @mpvanderschelling in #204
- Pr/1.4.4 by @mpvanderschelling in #210
Important Note: this release has been recreated to support read-the-docs documentation building.
Now the (static) documentation of this release will be available even when a newer release comes uit
Full Changelog: v1.4.3...v1.4.4
v1.4.3
This release will have the following additional features:
- Changed source directory structure to have a user API and
_src
folder - Added
.path
attribute toExperimentData
to enable relative paths in disk-stored objects - Bugfix at RandomSearch optimizer
Release that will be used in the following two student projects:
- ENGN2350 Data-Driven Design and Analysis of Structures and Materials 2023/2024
- TI3165TU Project Capstone Applied AI Project 2023/2024
What's Changed
- Numeric categorical parameters by @GuillaumeBroggi in #135
- Output-data by @mpvanderschelling in #136
- restructured ExperimentData.from_yaml by @mpvanderschelling in #137
- New-way-of-locking by @mpvanderschelling in #138
- Pr/1.3 by @mpvanderschelling in #139
- Pr/1.3.1 by @mpvanderschelling in #140
- add overwrite run method to function by @mpvanderschelling in #141
- Changed design to ExperimentSample by @mpvanderschelling in #142
- Changed_github_workflows by @mpvanderschelling in #156
- Link in getting started CONTRIBUTING.md is not working by @mpvanderschelling in #157
- Mpvanderschelling/issue69 by @mpvanderschelling in #158
- 147-add-an-empty-machine-learning-stub-to-documentation by @mpvanderschelling in #162
- Fixes #145 by @mpvanderschelling in #161
- add add operator to ExperimentData #163 by @mpvanderschelling in #164
- Add_optimizer_to_experimentdata by @mpvanderschelling in #166
- Mpvanderschelling/issue159 by @mpvanderschelling in #160
- Api-for-importing by @mpvanderschelling in #170
- Remove directory change in abaqus simulator by @mpvanderschelling in #175
- Documentation-update by @mpvanderschelling in #176
- New-sampling-way by @mpvanderschelling in #177
- Optimizer-api by @mpvanderschelling in #178
- Final-update-documentation by @mpvanderschelling in #179
- Pr/1.4 by @mpvanderschelling in #180
- removed ISSUE_TEMPLATE by @mpvanderschelling in #181
- add gh pages push workflow by @mpvanderschelling in #182
- gh pages token by @mpvanderschelling in #183
- bugfixes by @mpvanderschelling in #184
- Pr/1.4.3 by @mpvanderschelling in #185
New Contributors
- @GuillaumeBroggi made their first contribution in #135
Full Changelog: v1.2.0...v1.4.3
v1.2.0
- Heavily reduced the number of features and moved it to complementary libraries (
f3dasm_simulate
,f3dasm_optimize
) - Added support for Python 3.7
- Big changes on the documentation side
v1.1.0
This release covers the following major changes
- Moved the
JobQueue
object as a private attribute in the newExperimentData
class - Added parallelization decorators
- Added hydra
to_yaml
methods to base classes
Old version of F3DASM: development branch
This release is the "development" code developed until 2020 before Martin took over the main responsibilities of the f3dasm project
The purpose of this release is to make sure that the original code is not lost, and users may download this legacy code to reproduce their experiments.
Old version of f3dasm: master branch
This release is the "master branch" code developed until 2020 before Martin took over the main responsibilities of the f3dasm project
The purpose of this release is to make sure that the original code is not lost, and users may download this legacy code to reproduce their experiments.