Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
c464f96
(deprecation) add plaid version in infos of Dataset and ProblemDefini…
xroynard Sep 16, 2025
f9317c1
temp
fabiencasenave Sep 23, 2025
e5c5834
save
casenave Sep 23, 2025
3129bc7
temp
casenave Sep 24, 2025
abdcb0e
temp
casenave Sep 24, 2025
f2265ee
continue implementation
casenave Sep 24, 2025
9473bae
add data
casenave Sep 24, 2025
899032b
continue
casenave Sep 24, 2025
8db24fd
continue
casenave Sep 24, 2025
ec13b83
merge
casenave Sep 24, 2025
2a615b7
continue
casenave Sep 25, 2025
11c9667
continue
casenave Sep 25, 2025
ea12770
continue
casenave Sep 25, 2025
447c8d1
continue
casenave Sep 25, 2025
49f5df4
continue
casenave Sep 25, 2025
389d79b
feat(features.py/global) improve docstrings
casenave Sep 25, 2025
51548a7
solve conflict
casenave Sep 25, 2025
84b6667
(sample) add loading of old sample and timeseries files + deprecation…
xroynard Sep 26, 2025
a71a7c2
Merge branch 'main' into globals
fabiencasenave Sep 26, 2025
a779cd4
fix(sample.py) coverage
fabiencasenave Sep 26, 2025
2c1a040
cov and rename delegate -> delegate_methods
fabiencasenave Sep 26, 2025
88a2012
add old_time_series
fabiencasenave Sep 26, 2025
18bfd53
formatting
fabiencasenave Sep 26, 2025
a2d46a7
Merge branch 'globals' into add_plaid_version_to_infos
xroynard Sep 26, 2025
3a6a238
(version) improve version handling in Dataset and ProblemDefinition +…
xroynard Sep 26, 2025
4919c4a
(deprecation) fix old ProblemDefinition file loading
xroynard Sep 26, 2025
f385d0c
Merge branch 'main' into globals
casenave Sep 26, 2025
8e5f092
start
fabiencasenave Sep 26, 2025
d7377ba
feat(links/paths) remove links/paths and CGNS linking capacities
fabiencasenave Sep 26, 2025
ad47c5c
start work
casenave Sep 26, 2025
99e25ba
continue
casenave Sep 26, 2025
38ae46d
continue
casenave Sep 27, 2025
0b4e58c
continue
casenave Sep 27, 2025
7fae9ea
continue
casenave Sep 27, 2025
f6c7cb5
continue
casenave Sep 27, 2025
e0fe06a
continue
casenave Sep 27, 2025
e97b15d
drop split support for the Hugging Face bridge
casenave Sep 27, 2025
55089c2
continue
casenave Sep 27, 2025
fa0dd31
continue
casenave Sep 28, 2025
d83b7b1
continue
casenave Sep 28, 2025
7d3eedc
wip
fabiencasenave Sep 29, 2025
d86611c
wip
fabiencasenave Sep 29, 2025
0d59d1c
continue
casenave Sep 29, 2025
a674132
continue
casenave Sep 30, 2025
ce46757
Merge branch 'hf_splits' into add_plaid_version_to_infos
xroynard Sep 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 2 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,10 @@ tests/post/*.yaml
tests/problem_definition/*.csv
examples/**/*.png
tests/problem_definition/split.csv

# Heavy data
*.cgns
!notebooks/ex_rotor37_pv.cgns
!tests/post/**/*.cgns

# Byte-compiled / optimized / DLL files
__pycache__/
Expand Down Expand Up @@ -59,10 +60,6 @@ report.xml

# VisualStudioCode
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
*.code-workspace
**/.vscode
*-jvsc-*.ipynb
Expand Down
9 changes: 7 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Added

- (docs) explain release process in Contributing page

### Changed

- (sample) Restructuring of the Sample class to store a global (tensor of arbitrary order) at a given time step: replaces scalar and time_series. All Sample data are now stored in CGNS trees.

### Fixes

- (docs) explain release process in Contributing page

### Changed


### Removed

- (sample) time_series support, now handle directly globals at time steps.


## [0.1.9] - 2025-09-24

Expand Down
1 change: 0 additions & 1 deletion docs/source/core_concepts/dataset.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@ ids = dataset.get_sample_ids()

```python
dataset.get_scalar_names(ids=None)
dataset.get_time_series_names(ids=None)
dataset.get_field_names(ids=None, zone_name=None, base_name=None)

# Structured, hashable descriptors of features (recommended)
Expand Down
4 changes: 1 addition & 3 deletions docs/source/core_concepts/feature_identifiers.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ title: Feature identifiers

Feature identifiers are a concise, unambiguous way to point to any feature in PLAID. They replace legacy name-only APIs (now deprecated) and make it possible to uniquely address features across time steps, bases, zones and locations.

- A feature is one of: scalar, time_series, field, nodes.
- A feature is one of: scalar, field, nodes.
- A FeatureIdentifier is a small dictionary that encodes the feature type and, when relevant, its context (e.g., base, zone, location, time).

Why this matters:
Expand All @@ -19,7 +19,6 @@ Why this matters:
FeatureIdentifier is a `dict[str, str | float]` with a mandatory `type` key. Depending on the feature type, other keys are required or optional:

- scalar: `{"type": "scalar", "name": <str>}`
- time_series: `{"type": "time_series", "name": <str>}`
- field: `{"type": "field", "name": <str>, "base_name": <str>, "zone_name": <str>, "location": <str>, "time": <float>}`
- `location` must be one of: `Vertex`, `EdgeCenter`, `FaceCenter`, `CellCenter`.
- `base_name`, `zone_name`, `location`, `time` are optional if default value mechanics apply (see {doc}`defaults`).
Expand All @@ -37,7 +36,6 @@ Minimal identifiers:
from plaid.types import FeatureIdentifier

fid_scalar = FeatureIdentifier({"type": "scalar", "name": "Re"})
fid_ts = FeatureIdentifier({"type": "time_series", "name": "load_curve"})

fid_field = FeatureIdentifier({
"type": "field",
Expand Down
5 changes: 2 additions & 3 deletions docs/source/core_concepts/sample.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ title: Sample

{py:class}`~plaid.containers.sample.Sample` represents one observation. It contains {doc}`feature_identifiers` among (all optional):
- scalars: name → value
- time series: name → (time_sequence, values)
- meshes containing:
- nodes: mesh node coordinates, that can be located:
- in different bases
Expand All @@ -17,8 +16,8 @@ title: Sample
- in different locations in each base/zone among: `Vertex`, `EdgeCenter`, `FaceCenter`, or `CellCenter`

Key APIs include:
- Feature accessors: {py:meth}`~plaid.containers.sample.Sample.get_scalar`, {py:meth}`~plaid.containers.sample.Sample.get_time_series`, {py:meth}`~plaid.containers.sample.Sample.get_field`, {py:meth}`~plaid.containers.sample.Sample.get_nodes`
- Feature updates: {py:meth}`~plaid.containers.sample.Sample.add_scalar`, {py:meth}`~plaid.containers.sample.Sample.add_time_series`, {py:meth}`~plaid.containers.sample.Sample.add_field`, {py:meth}`~plaid.containers.sample.Sample.set_nodes`, and high-level identifier-based updates
- Feature accessors: {py:meth}`~plaid.containers.sample.Sample.get_scalar`, {py:meth}`~plaid.containers.sample.Sample.get_field`, {py:meth}`~plaid.containers.sample.Sample.get_nodes`
- Feature updates: {py:meth}`~plaid.containers.sample.Sample.add_scalar`, {py:meth}`~plaid.containers.sample.Sample.add_field`, {py:meth}`~plaid.containers.sample.Sample.set_nodes`, and high-level identifier-based updates
- Discovery: {py:meth}`~plaid.containers.sample.Sample.get_all_features_identifiers()` or {py:meth}`~plaid.containers.sample.Sample.get_all_features_identifiers_by_type()` to list all available features with their context

See also: {doc}`../notebooks` for hands-on examples.
2 changes: 2 additions & 0 deletions environment.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
name: plaid-dev
channels:
- conda-forge
- nodefaults
channel_priority: strict
dependencies:
- python=3.11
Expand All @@ -16,6 +17,7 @@ dependencies:
- datasets >=3.0
- numpy
- matplotlib-base
- optree
#---# data validation
- pydantic
##### DEV/TESTS/EXAMPLES #####
Expand Down
Loading
Loading