OGSTools: A Python package for OpenGeoSys
Résumé fourni par la source
OGSTools 0.8.2 Release Notes Python 3.12-3.14 OGS 6.5.8 3rd of September 2026 Breaking changes API breaking changes ogs6py: BHE flow_and_temperature_control types were renamed/consolidated to match OGS 6.5.8.dev (e.g. FixedPowerConstantFlow and the various curve-based variants are replaced by InflowTemperature, Power, BuildingPower), and flow_rate must now be supplied for every type (as a string, e.g. referencing an OGS parameter by name). (!455) Changes (non API-breaking) Bugfixes fixed sorting in Meshes.from_files (if domain_key was not in the beginning, it didn't sort correctly) (!465) allow values for group based parameters in Project.parameters (allows to set vectorial or anisotropic group values. Previously, only allowed scalars) (!465) fixed Project.process_variables.add_bc and Project.process_variables.add_st to allow all different kinds of types. Previously, some checks caused unintentional errors. (!471) fixed MeshSeries.probe with linear interpolation and cell_data yielding nan at the mesh boundary as cell centers are used for interpolation. Now used nearest neighbor as a fallback. (!473) fixed reading .xdmf data where some data field are only present in the first timestep. Now they will also be read for later timesteps. (!473) fixed Model.plot_constraints unintentionally deleting meshes from the Model as a side effect; it now operates on a copy. (!463) fixed plot.contourf raising unexpected keyword argument 'mask'. (!467) fixed the data aspect ratio in plot.contourf when xlim/ylim are given. (!470) fixed the error message raised by StorageBase._pre_save to reference the correct overwrite argument. (!479) relaxed datatype validation for point coordinates and MaterialIDs so float32/int32/uint32 variants are also accepted, not just the exact reference dtype. (!475) ot.mesh.difference no longer drops the spatial_unit attribute of the resulting mesh. (!468) storage paths/filenames may now contain ~. (!461) Features plot added xlim and ylim as arguments for contourf (!465) improved Meshes.plot (!465) fixed line ordering by trying to sort by cell adjacency (!465) contourf: corner elements were missing if none of their points were in the selected x- or y-limits; now they are checked explicitly. (!482) Meshes Meshes.from_mesh supports quadratic mesh (!465) Meshes now support output_names, saved/restored via Meshes.save()/from_file()/from_folder() and used by Meshes.plot and Model.plot_constraints for labeling (!484) mesh filepath is now attached to the mesh upon reading (with ot.mesh.read) (!465) added ogstools.mesh.utils.pv_set_attr helper, replacing direct use of the deprecated pyvista.set_new_attribute (!474) node_reordering (and the NodeReordering CLI call it wraps) gained a log parameter to control/silence its log output (!488) Project BuildTree.populate_tree now can handle dicts as the element text (in this case the key and value pairs will create corresponding subelements) (!472) Added deactivate_subdomain to Project.process_variables (!472) Variable data_name of a Variable is now also looked for in the attributes of a mesh (e.g. points) or MeshSeries (e.g. timevalues) (!487) functions of nested Variables are now stored internally as a list (instead of nested lambdas), which allows retrospectively modifying arguments and parameters (!487) arguments of these stored functions can be strings which represent the names of data inside a mesh or MeshSeries, to allow for Variables depending on different input data (!487) output_name can now explicitly be an empty string (!487) Infrastructure added a make link_check command, running lychee, to check for broken links in the docs (!465) CI no longer pins a specific Python version, just 3.x. (!480) gallery hash checks now exclude plots whose figures embed computational metrics (e.g. solver time), since those vary between runs; pre-commit no longer reformats paper.md, and codespell now also skips *.svg/*.html. (!321) Documentation added CONTRIBUTING.md and linked it from README.md, the docs nav, and the docs site; split developer and maintainer guides; fixed install instructions per the JOSS review. (!480) fixed broken weblinks in documentation (!465) submitted the OGSTools paper to the Journal of Open Source Software (paper/paper.md, paper/paper.bib); added a graphical abstract linked from README.md. (!321) New Examples new Meshes example (Selke) (!465) Updated Examples reworked simple simulation example, added missing print()/plt.show() calls across gallery examples, and other example polish from the JOSS paper review. (!480) BHE example additionally shows how to access temperatures via the Components_BHE structure. (!480) quickstart examples now plot_convergence behaviour as a heatmap of the relative error per iteration/timestep (sim.log.plot_convergence(metric="dx_x")) instead of clock time per solver phase. (!321) Tests added end-to-end example-Project test coverage and shared property-type-registry tests for materiallib. (!464) Beta testing features materiallib YAML schema tightened: a property entry must now be a single mapping (lists of entries are no longer accepted), the type key is required, and unsupported keys are rejected. Property parameters are validated against a shared type registry. (!464) materiallib YAML schema: materials must now group their properties under top-level domains (medium/phase/component) instead of a flat properties block. Bundled example materials were migrated accordingly. (!451) JOSS paper OGSTools paper draft submitted to the Journal of Open Source Software (paper/paper.md, paper/paper.bib) (!321)