Skip to content

Commit f02b954

Browse files
Merge pull request #265 from bessagroup/pr/1.4.8
Pr/1.4.8
2 parents 30e76f3 + 03485e6 commit f02b954

File tree

114 files changed

+5160
-1205
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

114 files changed

+5160
-1205
lines changed

Diff for: .flake8

+1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ extend-exclude =
1919
tests
2020
.git
2121
studies
22+
examples
2223

2324
# <<< UPDATE ACCORDING WITH YOUR PYTHON PROJECT
2425

Diff for: .github/workflows/pr_to_main.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
strategy:
2525
matrix:
2626
os: [ubuntu-latest, windows-latest, macos-latest]
27-
version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
27+
version: ["3.8", "3.9", "3.10", "3.11"]
2828
runs-on: ${{ matrix.os }}
2929
steps:
3030
- name: Checkout
@@ -54,15 +54,15 @@ jobs:
5454
- name: Install all dependencies
5555
run: |
5656
python -m pip install --upgrade pip
57-
pip install -r docs/requirements.txt
57+
pip install -r requirements_dev.txt
5858
- name: Build documentation
5959
run: |
6060
sphinx-build -b html ./docs/source ./docs/build/html
6161
build-package:
6262
strategy:
6363
matrix:
6464
os: [ubuntu-latest, windows-latest, macos-latest]
65-
version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
65+
version: ["3.8", "3.9", "3.10", "3.11"]
6666
runs-on: ${{ matrix.os }}
6767
steps:
6868
- name: Checkout

Diff for: .github/workflows/pr_to_pr.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ jobs:
6565
run: python -m pip install -U sphinx
6666
- name: Install Sphinx requirements
6767
run: |
68-
pip install -r docs/requirements.txt
68+
pip install -r requirements_dev.txt
6969
- name: Build documentation
7070
run: |
7171
sphinx-build -b html ./docs/source ./docs/build/html

Diff for: .github/workflows/push_to_main.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
strategy:
2525
matrix:
2626
os: [ubuntu-latest, windows-latest, macos-latest]
27-
version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
27+
version: ["3.8", "3.9", "3.10", "3.11"]
2828
runs-on: ${{ matrix.os }}
2929
steps:
3030
- name: Checkout
@@ -45,7 +45,7 @@ jobs:
4545
strategy:
4646
matrix:
4747
os: [ubuntu-latest, windows-latest, macos-latest]
48-
version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
48+
version: ["3.8", "3.9", "3.10", "3.11"]
4949
runs-on: ${{ matrix.os }}
5050
steps:
5151
- name: Checkout

Diff for: .gitignore

+6-1
Original file line numberDiff line numberDiff line change
@@ -126,4 +126,9 @@ notebooks/tutorials/Data/
126126
# Exclude obj files in tests folder
127127
!tests/*/*.obj
128128

129-
*.lock
129+
*.lock
130+
131+
# Exclude sphinx gallery files
132+
docs/source/auto_examples/
133+
docs/source/gen_modules/
134+
docs/source/sg_execution_times.rst

Diff for: README.md

+29-5
Original file line numberDiff line numberDiff line change
@@ -13,22 +13,46 @@ f3dasm
1313
| [**Installation**](https://f3dasm.readthedocs.io/en/latest/rst_doc_files/general/gettingstarted.html)
1414
| [**GitHub**](https://github.com/bessagroup/f3dasm)
1515
| [**PyPI**](https://pypi.org/project/f3dasm/)
16-
| [**Practical sessions**](https://github.com/mpvanderschelling/f3dasm_teach)
1716

1817
## Summary
1918

20-
Welcome to `f3dasm`, a Python package for data-driven design and analysis of structures and materials.
19+
Welcome to `f3dasm`, a **f**ramework for **d**ata-**d**riven **d**esign and **a**nalysis of **s**tructures and **m**aterials.
2120

21+
`f3dasm` introduces a general and user-friendly data-driven Python package for researchers and practitioners working on design and analysis of materials and structures. Some of the key features include:
22+
23+
- **Modular design**
24+
- The framework introduces flexible interfaces, allowing users to easily integrate their own models and algorithms.
25+
26+
- **Automatic data management**
27+
- The framework automatically manages I/O processes, saving you time and effort implementing these common procedures.
28+
29+
- **Easy parallelization**
30+
- The framework manages parallelization of experiments, and is compatible with both local and high-performance cluster computing.
31+
32+
- **Built-in defaults**
33+
- The framework includes a collection of benchmark functions, optimization algorithms and sampling strategies to get you started right away!
34+
35+
- **Hydra integration**
36+
- The framework is supports the [hydra](https://hydra.cc/) configuration manager, to easily manage and run experiments.
37+
38+
## Getting started
39+
40+
The best way to get started is to follow the [installation instructions](https://f3dasm.readthedocs.io/en/latest/rst_doc_files/general/gettingstarted.html).
41+
42+
## Illustrative benchmarks
43+
44+
This package includes a collection of illustrative benchmark studies that demonstrate the capabilities of the framework. These studies are available in the `/studies` folder, and include the following studies:
45+
46+
- Benchmarking optimization algorithms against well-known benchmark functions
47+
- 'Fragile Becomes Supercompressible' ([Bessa et al. (2019)](https://onlinelibrary.wiley.com/doi/full/10.1002/adma.201904845))
2248

2349
## Authorship
2450

2551
* Current created and developer: [M.P. van der Schelling](https://github.com/mpvanderschelling/) ([email protected])
2652

2753
The Bessa research group at TU Delft is small... At the moment, we have limited availability to help future users/developers adapting the code to new problems, but we will do our best to help!
2854

29-
## Getting started
3055

31-
The best way to get started is to follow the [installation instructions](https://f3dasm.readthedocs.io/en/latest/rst_doc_files/general/gettingstarted.html).
3256

3357
## Referencing
3458

@@ -48,7 +72,7 @@ If you find any **issues, bugs or problems** with this template, please use the
4872

4973
## License
5074

51-
Copyright 2023, Martin van der Schelling
75+
Copyright 2024, Martin van der Schelling
5276

5377
All rights reserved.
5478

Diff for: VERSION

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.4.71
1+
1.4.8

Diff for: docs/Makefile

+2-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ help:
4444

4545
clean:
4646
-rm -rf $(BUILDDIR)/*
47-
47+
-rm -rf $(SOURCEDIR)/auto_examples/*
48+
-rm -rf $(SOURCEDIR)/gen_modules/*
4849
html:
4950
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(SOURCEDIR) $(BUILDDIR)/html
5051
@echo

Diff for: docs/requirements.txt

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@ sphinx
22
sphinx_rtd_theme
33
sphinxcontrib-bibtex
44
sphinx_autodoc_typehints
5-
sphinx-tabs==3.4.4
5+
sphinx-tabs==3.4.4
6+
sphinx-gallery

Diff for: docs/source/conf.py

+17-4
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
import os
88
import sys
99

10+
from sphinx_gallery.sorting import FileNameSortKey
11+
1012
# -- Search path for extensions and modules -----------------------------------
1113
# If extensions or Python modules are in a different directory than this file,
1214
# then add these directories to sys.path so that Sphinx can search for them
@@ -24,9 +26,9 @@
2426

2527
project = 'f3dasm'
2628
author = 'Martin van der Schelling'
27-
copyright = '2022, Martin van der Schelling'
28-
version = '1.4.71'
29-
release = '1.4.71'
29+
copyright = '2024, Martin van der Schelling'
30+
version = '1.4.8'
31+
release = '1.4.8'
3032

3133

3234
# -- General configuration ----------------------------------------------------
@@ -43,7 +45,18 @@
4345
'sphinx.ext.intersphinx',
4446
'sphinx.ext.viewcode',
4547
'sphinx_autodoc_typehints',
46-
'sphinx_tabs.tabs']
48+
'sphinx_tabs.tabs',
49+
'sphinx_gallery.gen_gallery',]
50+
51+
sphinx_gallery_conf = {
52+
'examples_dirs': ['../../examples'], # path to your example scripts
53+
'gallery_dirs': ['auto_examples'],
54+
'reference_url': {'sphinx_gallery': None, },
55+
'backreferences_dir': 'gen_modules/backreferences',
56+
'doc_module': ('f3dasm',),
57+
"filename_pattern": r"/*\.py",
58+
"within_subsection_order": FileNameSortKey,
59+
}
4760

4861
# Source: https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-source_suffix
4962
source_suffix = {'.rst': 'restructuredtext', }

Diff for: docs/source/img/reaction-braking-stopping.png

104 KB
Loading

Diff for: docs/source/index.rst

+5-65
Original file line numberDiff line numberDiff line change
@@ -7,76 +7,16 @@ f3dasm
77
======
88

99
.. toctree::
10-
:maxdepth: 3
11-
:caption: General
10+
:maxdepth: 1
1211
:hidden:
13-
:glob:
1412

15-
rst_doc_files/general/gettingstarted
1613
rst_doc_files/general/overview
14+
rst_doc_files/general/installation
15+
rst_doc_files/defaults
16+
auto_examples/index
17+
API reference <_autosummary/f3dasm>
1718

1819
.. toctree::
19-
:maxdepth: 2
20-
:caption: Design of Experiments
2120
:hidden:
22-
:glob:
23-
24-
rst_doc_files/classes/design/domain
25-
rst_doc_files/classes/sampling/sampling
26-
27-
.. toctree::
28-
:maxdepth: 2
29-
:caption: Data
30-
:hidden:
31-
:glob:
32-
33-
rst_doc_files/classes/design/experimentdata
34-
rst_doc_files/classes/design/experimentsample
35-
36-
.. toctree::
37-
:maxdepth: 2
38-
:caption: Data Generation
39-
:hidden:
40-
:glob:
41-
42-
rst_doc_files/classes/datageneration/datagenerator
43-
rst_doc_files/classes/datageneration/functions
44-
rst_doc_files/classes/datageneration/f3dasm-simulate
45-
46-
47-
.. toctree::
48-
:maxdepth: 2
49-
:caption: Machine Learning
50-
:hidden:
51-
:glob:
52-
53-
rst_doc_files/classes/machinelearning/machinelearning
54-
55-
.. toctree::
56-
:maxdepth: 2
57-
:caption: Optimization
58-
:hidden:
59-
:glob:
60-
61-
rst_doc_files/classes/optimization/optimizers
62-
rst_doc_files/classes/optimization/f3dasm-optimize
63-
64-
.. toctree::
65-
:maxdepth: 2
66-
:caption: Data-driven process
67-
:hidden:
68-
:glob:
69-
70-
rst_doc_files/classes/workflow/workflow
71-
rst_doc_files/classes/workflow/hydra
72-
rst_doc_files/classes/workflow/cluster
73-
74-
.. toctree::
75-
:name: apitoc
76-
:caption: API
77-
:hidden:
78-
79-
rst_doc_files/reference/index.rst
80-
Code <_autosummary/f3dasm>
8121

8222
.. include:: readme.rst

0 commit comments

Comments
 (0)