Metadata-Version: 2.1
Name: iamax
Version: 0.0.0.post2
Summary: IAM-AX in Python
Author: Laurent Faucheux
Author-email: lf@lo10.eu
License: Closed
Project-URL: Documentation, https://lo10.eu/static/rtd.iamax/index.html
Keywords: Climate,Climate Policy,Development Pathways,Economics,Energy,Energy Efficiency,Engineering,Environment,General Equilibrium,Hybrid Modelling,Long-run Scenarios,Sustainability,Sustainable Development,Technical change
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering
Classifier: License :: CeCILL-B Free Software License Agreement (CECILL-B)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE.html
Requires-Dist: anytree (==2.12.1)
Requires-Dist: attrs (==23.2.0)
Requires-Dist: art (==6.3)
Requires-Dist: cloudpickle (==3.0.0)
Requires-Dist: dill (==0.3.7)
Requires-Dist: funcy (==2.0)
Requires-Dist: importlib-resources (==6.5.2)
Requires-Dist: jax (==0.7.1)
Requires-Dist: jaxlib (==0.7.1)
Requires-Dist: jaxtyping (==0.3.0)
Requires-Dist: joblib (==1.3.2)
Requires-Dist: networkx (==3.4.2)
Requires-Dist: numexpr (==2.14.1)
Requires-Dist: numpy (==1.26.4)
Requires-Dist: openpyxl (==3.1.5)
Requires-Dist: pandas (==2.1.4)
Requires-Dist: protobuf (==5.26.1)
Requires-Dist: python-calamine (==0.6.2)
Requires-Dist: pyyed (==1.5.0)
Requires-Dist: scipy (==1.15.3)
Requires-Dist: sparsejac (==0.2.0)
Requires-Dist: sympy (==1.14.0)
Requires-Dist: tabulate (==0.9.0)
Requires-Dist: unidecode (==1.3.8)
Requires-Dist: xlrd (==2.0.1)
Requires-Dist: xmltodict (==0.13.0)
Requires-Dist: pywin32 (==311) ; platform_system == "Windows"

.. image:: https://lo10.fr/static/rtd.iamax/_images/_license.svg
   :alt: License
.. image:: https://lo10.fr/static/rtd.iamax/_images/_coverage.svg
   :alt: Coverage
.. image:: https://lo10.fr/static/rtd.iamax/_images/_pylint.svg
   :alt: Lint Score
   
   
IAM-AX is a `metamodel <https://bit.ly/3Zb4iGs>`_ for designing, generating, inspecting and running computable general-equilibrium models. It generates the code of integrated or non-integrated CGE models from *i)* structured socio-economic, technical or physical data and *ii)* standalone analytical equations written in Python, in a form close to what one would expect from a rigorous analytical model description.

Sewn on `ImaCLIM <https://bit.ly/3xgBH7r>`_ — **IM**\ pact **A**\ ssessment of **CLIM**\ ate policies — whether in static or recursive settings, IAM-AX is not merely another implementation environment for applied general-equilibrium modelling. Its ambition is to define a common architecture for building, reading, testing, comparing, executing and maintaining models.

IAM-AX is also a response to the social role of models. Complex applied models often inform public reasoning, policy assessment and long-term scenarios, yet their complexity can make them difficult to inspect, scrutinize or transmit. This opacity is usually not intentional; it is the cumulative effect of accumulated code, implicit conventions, technical debt and fragmented workflows. IAM-AX addresses this risk by making the constitutive elements of a modelling exercise easier to expose, inspect, criticize, compare, reproduce and understand.

This is why IAM-AX seeks to push modelling transparency as far as possible. Its purpose is to prevent the elements of a modelling exercise — data, unknowns, behavioural assumptions, functional interactions, generated equations, numerical resolution and results — from being scattered across opaque code, tacit practices or undocumented conventions. By bringing these elements back to a level of explicitness and simplicity that makes opacity difficult to sustain, IAM-AX directly addresses the black-box syndrome often associated with complex applied models.

This ambition matters all the more in a context of widespread distrust toward technical and scientific discourse. IAM-AX treats readability, traceability and communicability not as optional documentation tasks, but as core design constraints. In doing so, it attempts to make modelling work more open to review, transmission and contestation.

In that sense, IAM-AX is both a model reader and a model generator. Like a reader able to interpret many discs written in the same format, IAM-AX can interpret many models as long as they follow its common grammar. It then generates explicit, readable Python code corresponding to the model it has interpreted. A model is no longer only a bespoke codebase. It becomes an object that can be read, inspected, compared and maintained according to shared rules.

The documentation is available `online <https://lo10.eu/static/rtd.iamax/index.html>`_.

..
   https://livesphinx.herokuapp.com/
