PaddleScience 1.2.0 Release Notes
PaddleScience 1.2.0 is now available with multiple feature updates, documentation, code optimizations and bug fixes. This update brings numerous enhancements that improve overall performance and usability. Some of the key updates include:
Examples
- Add **ShockWave**, **Bubble**, **DeepCFD**, **DeepONet**, **IDE**, **FPDE**, **HeatPINN**, **Nowcasting(inference only)**, **TopOpt**, **Biharmonic2D**, **PhyLSTM**, **CFD-GCN**, **Deep-Spatial-Temporal**, **DU_CNN**, **PIRBN** and **XPINNS**, in total **15** examples and their corresponding network structures.
Module
- Add network structure including **AMGNet**, **DeepONet**, **DeepPhyLSTM**, **UNetEx**, refactor GAN for tidy and better readability code.
- Add **Siren** activation function.
- Add `create_graph` and retain_graph options for jacobian and hessian for saving memory in which creating reverse graph is unnecessary.
- Add `compute_sdf_derivatives` option to compute discrete derivative of SDF when it is used in given equations.
- Add **MeshAirfoilDataset**, **MeshCylinderDataset**, **NPZDataset**, **IterableNPZDataset** in dataset. Graph data is preliminarily supported with **PGLBox** and adapted `default_collate_fn`.
- Change all equations from python closure style to sympy style with **symbolic computation** supported in `ppsci/utils/symbolic.py`.
- Add `ppsci.experimental` and `ppsci.probability` module for supporting API call for mathematical usage.
- Add `ppsci.loss.mtl` module for **Multi-Task Learning algorithms**, **PCGrad** and **AGDA** is included preliminarily.
- Split original `L2Rel` into `L2Rel` and `MeanL2Rel`, the former is computed along entire dataset(more commonly usage), while the latter is computed element-wisely for certain usage.
- Add `run_check_mesh` for checking whether `ppsci.geometry.Mesh` module works properly.
Improvements
- Support **running code with hydra configuration** for better experimental management. For details, see [user guide - hydra](https://paddlescience-docs.readthedocs.io/zh/release-1.2/zh/user_guide/#11-yaml-hydra) and [hydra intro](https://hydra.cc/docs/intro/).
- `Solver.predict` can return `np.ndarray` data instead of `Tensor` data by setting `return_numpy=True`.
- Numerous type-hints and annotations were added for better development&reading experience.
Document and bug fix
- **Completely new home page** with full example list and all important information: https://paddlescience-docs.readthedocs.io/zh/release-1.2/.
- **Training/evaluation script are provided with pretrained model** at the beginning of document of each example for quick experience and reproduction.
- Correct almost all typos in code, such as `visulzie` --> `visualize`.
**We recommend upgrading paddlescience to version 1.2.0 or the develop branch.**
New Contributors
* Liyulingyue made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/386
* GreatV made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/388
* jjyaoao made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/391
* AndPuQing made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/387
* enkilee made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/400
* jiamingkong made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/397
* ccsuzzh made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/401
* mrcangye made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/406
* sanbuphy made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/411
* ruoyunbai made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/416
* cxxly made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/481
* liaoxin2 made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/478
* yangguohao made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/523
* MayYouBeProsperous made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/537
* NKNaN made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/541
* xusuyong made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/575
* lknt made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/580
* Gxinhu made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/560
* zbt78 made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/624
* DrownFish19 made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/211
* zlynna made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/566
* DrRyanHuang made their first contribution in https://github.com/PaddlePaddle/PaddleScience/pull/627
**Full Changelog**: https://github.com/PaddlePaddle/PaddleScience/compare/v1.1.0...v1.2.0