You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The example Live Scripts no longer require an open project. Paths to shipped
files are built by a new helper, examples/helper/pinnToolboxRoot.m, which
derives the toolbox root from its own location, so the examples run from a clone,
from an installed .mltbx and in MATLAB Online alike. Replaces currentProject().RootFolder in priklad_kyvadlo / example_pendulum and priklad_teplo_2d / example_heat_2d.
priklad_teplo_2d / example_heat_2d write the README GIF only when it is
missing (refreshGif), and fall back to tempdir when the target folder is not
writable (installed toolbox). getframe output is never byte-identical, so the
previous unconditional write produced a spurious binary diff on every run.
priklad_kyvadlo / example_pendulum no longer instruct users to overwrite the
committed examples/data/kyvadlo.mat: record to any file outside the repository and
point dataFile at it.
Data generators are now functions with an optional output path — generate_kyvadlo_data(file) and generate_kyvadlo_data_simscape(file) write where
told; called without an argument they ask via uiputfile. As scripts they polluted
the caller's workspace and silently overwrote the committed data.
generate_kyvadlo_data.m moved from examples/data/ to examples/helper/, so it is
callable by name from anywhere and examples/data/ holds data only.
Fixed
priklad_konvekce.m printed its curriculum phases without line breaks. The fprintf format string had lost the backslash of %%\n, so it printed a literal "n"
and ran the phases together on one line; the defect was present in 1.0.0. The Live
Editor strips one backslash directly after %% on every save (doubling it only delays
the loss by one round), so both the Czech example and its English mirror now use %% \n with a space, which is stable.
Math in the English mirrors normalised to the same backslash convention as the Czech
originals (\\pi, \\nu, \\,), and two thin spaces lost to an earlier Live Editor
round-trip restored in example_burgers.m and example_heat_2d.m.
**example_neural_ode.m returned error "Error using extractBinaryBroadcastData>iGetData (line 108)
Data must be of type double, single, or logical, or a gpuArray object of these types."
The code now corresponds to the Czech original and the example runs correctly.
Project and tooling
examples/helper added to the project path, which now mirrors ToolboxMatlabPath
in tools/packageToolbox.m exactly.
setupProject.m is authoritative for the full folder, file and path lists (it
previously documented and restored only the repository root, so re-creating a lost .prj would have yielded a project that cannot run the examples); tools/ is
registered with the project as well.
The project file registry now matches the repository. Only 35 of 111 committed
files were project members — addFolderIncludingChildFiles registers what exists at
the time of the call, so everything added after the project was created stayed out
(all of +PINN/+tools, most of +PINN/+utils, ten examples, most of examples/en,
ten tests, all of tools/, every top-level file). setupProject.m now also registers
the committed top-level files and prunes entries whose file no longer exists.
setupProject.m is excluded from the packaged .mltbx — the repository root is on
the installed path, so an installed user calling it would have created a MATLAB
project in their current folder.
tools/runAllExamples.m resolves the example folder via pinnToolboxRoot() and runs
without an open project.
New tests/test_ExamplePaths.m.
Documentation
The Helmholtz example no longer calls its problem "stiff". A stationary
Helmholtz BVP has no time scales, so it cannot be stiff in the usual sense; what is
ill-conditioned is the PINN optimisation, and Wang et al. 2021 (paper 05) attribute
the stiffness to the gradient flow of training rather than to the PDE. Relabelled in
the Czech example, the English mirror, both tutorials and both tuning guides.
Czech prose brought in line with doc/Slovnik_terminologie.md. Glossary
violations replaced (multi-output, pipeline, rejection sampling, runaway λ, defaulty, papery, appka, dle), the Czech tuning guide moved off lab jargon
onto the agreed terms, and the whole corpus switched to consistent vykání (formal
address), including the Trainer App README and the Simulink script comments.
Czech typography unified: en dash rather than a hyphen in prose and in ranges,
non-breaking space before % and units, 1D/2D without a hyphen. Each convention
is now a binding rule in §4 of the glossary — including the decision to keep the decimal point in prose, because the text quotes the very numbers MATLAB prints
into the %[output:...] blocks a few lines below, and a comma would desync the two.
README carries an Open in MATLAB Online badge, so the repository can be opened
and run from a browser without a local installation.