{ "cells": [ { "cell_type": "markdown", "id": "f50456d4-661b-4c27-a6bb-fa2b87ae21b6", "metadata": {}, "source": [ "# Outlook\n", "\n", "The code works pretty well. The iteration approach is quite fast and reliable.\n", "\n", "There are some outstanding items:\n", "\n", "* Look into the memory used by the K-D trees, see if it can be further optimized because some copies of data are being made and some of these copies can in theory at least be avoided\n", "* Resolve issues where the bounding polygon of a region is not simple (has self-intersection). This happens especially in the case of water at low temperatures. Such self-intersection does not happen in $T$, $\\rho$ coordinates, but does happen in other coordinate sets. The C++ method (https://libgeos.org/doxygen/MakeValid_8h_source.html) is exposed as ``Geometry.make_valid``. It has not been fully implemented into the flashing code.\n", "* Automate generation of the bounding polygons in C++. Currently the bounding polygon is generated in Python and passed into C++. To do so will require to implement the melting line models, and additional conversions might be required in [REFPROP-interop](https://github.com/ianhbell/REFPROP-interop)\n", "* See if there is a better way to define the bounding edges of the regions. Perhaps splines or something like that might be better, enabling a more efficient representation, not requiring as many points to remap into other coordinates more smoothly." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.8" } }, "nbformat": 4, "nbformat_minor": 5 }