conf

This module contains all the configuration of the iamax project, under the form of module-level constant variables written in upper case.

Note

Some of the variables below are accessible via os.environ. Their modification should be done prior to module import to have an effect. An example with REFLECTED_RIGHTS follows.

>>> import os
>>> os.environ['REFLECTED_RIGHTS'] = '1'
>>> import iamax as im
>>> im.core.MSystem().are_rights_reflected
True

iamax.conf.VERBOSE :int

Integer-coerced string environment variable telling whether processing must produce detailed logging information. Set to '0' by default.

iamax.conf.COORDS_DELIM :str = @

Delimiter to be used when automatically creating name of aggregation-resulting quantities. Initially set to '@'.

iamax.conf.F2ARGS_DELIM :str = |

Delimiter to be used in XLSX-specified trees to separate processors’ names from their instantiation argument. Initially set to '|'.

iamax.conf.BASE_YEAR :Const.int(value=2010, kind=None) = 2010

Modeling exercise’s base year, involved here and there as default value. Initially set to 2010.

iamax.conf.DETAILED_TRAMGS :int

Integer-coerced string environment variable specifying whether trade margins are provided disaggregated by users at instantiation. To '1' by default.

iamax.conf.DETAILED_STAXES :int

Integer-coerced string environment variable specifying whether sales taxes are provided disaggregated by users at instantiation. To '0' by default.

iamax.conf.DETAILED_XCISES :int

Integer-coerced string environment variable specifying whether excises are provided disaggregated by users at instantiation. To '0' by default.

iamax.conf.EXOGENOUS_MRENTS :int

Integer-coerced string environment variable specifying whether market rents are provided by users at instantiation. To '1' by default.

iamax.conf.REFLECTED_RIGHTS :int

Integer-coerced string environment variable telling whether property and disposal rights are explicitly parameterizing how public and private income circulate in the economy. Set to '0' by default.

iamax.conf.RELATIVE_CTAXES :int

Integer-coerced string environment variable telling whether contributive taxes are provided as (margin) rates by users at instantiation. To '0' by default.

iamax.conf.RELATIVE_OCOSTS :int

Integer-coerced string environment variable telling whether “other” costs are provided as (margin) rates by users at instantiation. To '0' by default.

iamax.conf.RELATIVE_TRAMGS :int

Integer-coerced string environment variable specifying whether trade margins are provided as (markup) rates by users at instantiation. To '0' by default.

Attention

Following the YAGNI principle, having not DETAILED_TRAMGS and RELATIVE_TRAMGS is currently not implemented. Such combination will raise a NotImplementedError at runtime.

Note

Setting this constant to '1' has unexplored consequences on implicit entities.

iamax.conf.RELATIVE_STAXES :int

Integer-coerced string environment variable specifying whether sales taxes are provided as (markup) rates by users at instantiation. To '0' by default.

Attention

Following the YAGNI principle, having not DETAILED_STAXES and RELATIVE_STAXES is currently not implemented. Such combination will raise a NotImplementedError at runtime.

Note

Setting this constant to '1' has unexplored consequences on implicit entities.

iamax.conf.RELATIVE_MRENTS :int

Integer-coerced string environment variable telling whether market rents are provided as (margin) rates by users at instantiation. To '0' by default.

Attention

Having not EXOGENOUS_MRENTS and RELATIVE_MRENTS is not possible Such combination will raise a RuntimeError at runtime.

iamax.conf.RELATIVE_SPCMGS :int

Integer-coerced string environment variable telling whether specific margins are provided as (markup) rates by users at instantiation. To '0' by default.

iamax.conf.AUTODIFFED_HESSIAN :int

Integer-coerced string environment variable specifying whether objective function’s hessian is to be forcefully obtained from direct automatic differentiation in lieu of being potentially so from the linearization of the localized jacobian. Set to '0' by default.

iamax.conf.AUTODIFFED_JACOBIAN :int

Integer-coerced string environment variable specifying whether objective function’s jacobian is to be forcefully obtained from direct automatic differentiation in lieu of being potentially so from the linearization of the localized primitive. Set to '0' by default.

iamax.conf.AVERAGED_LOSSES :int

Integer-coerced string environment variable specifying whether the losses constitutive of the objective function’s are averaged instead of being summed. Set to '0' by default.

iamax.conf.COMPILED_ARCOMPONENTS :int

Integer-coerced string environment variable specifying whether each residual component is to be compiled independently. Set to '0' by default.

iamax.conf.ENABLED_DENSIFICATION :int

Integer-coerced string environment variable specifying whether arrays densification is enabled. Set to '1' by default.

iamax.conf.ENABLED_SERIALIZATION :int

Integer-coerced string environment variable specifying whether non-functional objects persistent caching is enabled. Set to '0' by default.

iamax.conf.ENABLED_VECTORIZATION :int

Integer-coerced string environment variable specifying whether library’s methods vectorization is enabled. Set to '0' by default.

iamax.conf.JITTED_DERIVATIVES :int

Integer-coerced string environment variable specifying whether objective functions’ derivatives are to be jitted as well. Set to '1' by default.

iamax.conf.JITTED_OBJECTIVE :int

Integer-coerced string environment variable specifying whether the objective function is to be jitted as well. Set to '1' by default.

iamax.conf.LIFTED_DAG :int

Integer-coerced string environment variable specifying whether to perform symbolic lifting on the computation graph. Set to '0' by default.

iamax.conf.LOSSES_EXPONENT :float

Double-coerced string environment variable specifying the power used for distance calculation. Set to '2.' by default (euclidean).

iamax.conf.LOSSES_FACTOR :float

Double-coerced string environment variable specifying the factor used for distance calculation. Set to '1.' by default.

iamax.conf.CSCALINGF_LOGBASE :float

Double-coerced string environment variable specifying the calibration’s scaling-factors’ logarithmic base. Set to '2' by default.

iamax.conf.ENABLED_SCALING :int

Integer-coerced string environment variable specifying whether decision arrays scaling is enabled. Set to '1' by default.

iamax.conf.NONLINEAR_DECISION :int

Integer-coerced string environment variable specifying whether decision arrays undergo a non-linear transformation. Set to '0' by default.

iamax.conf.REGRESSED_IGUESS :int

Integer-coerced string environment variable specifying whether resolutions that follow calibration should be initiated at the previous year’s solution instead of calibration’s. Set to '1' by default.

iamax.conf.REGRESSED_SCALING :int

Integer-coerced string environment variable specifying whether resolutions that follow calibration should be performed with scaling factors derived from the previous year’s solution instead of calibration’s. Set to '1' by default.

iamax.conf.AGGREGATED_CONSTRAINTS :int

Integer-coerced string environment variable specifying whether constraints, if any, are to be aggregated. To '1' by default.

iamax.conf.BROADEST_SYSTEM :int

Integer-coerced string environment variable specifying whether the broadest possible system is to be considered. Otherwise, the set of variables subject to computation is restricted to the optimization graph. To '1' by default.

iamax.conf.COMPLEX_VALUED_UNDERLIERS :int

Integer-coerced string environment variable specifying whether prices and associated quantities are extended from the real line to the complex plane. To '1' by default.

iamax.conf.UNCLUSTERED_USER_METHODS :int

Integer-coerced string environment variable specifying whether user defined methods are to be clustered at the topological sort step . To '1' by default.

iamax.conf.HOISTED_CONSTANT_INDEXERS :int

Integer-coerced string environment variable specifying whether constant indexers are to be hoisted into parameters. To '1' by default.

iamax.conf.OMITTED_INEQ_CONSTRAINTS :int

Integer-coerced string environment variable specifying whether inequality constraints included in the objective as penalty terms can be omitted. Set to '0' by default.

iamax.conf.TIME_UNBASED_DATA_HASHES :int

Integer-coerced string environment variable specifying whether tables’ hashes must not internalize modification date/time-related information. To '0' by default. ⚠️ Only change this setting if you know what you are doing.

iamax.conf.CUNK_0D_SYM :str = ?(t=0)

Symbol to be used within XLSX-specified tables to tell the calibration solver where its unknowns are located within the data space. Set initially to '?(t=0)'.

iamax.conf.RUNK_0D_SYM :str = ?(t=t')

Symbol to be used within XLSX-specified tables to tell the resolution solver where its unknowns are located within the data space for \(t = t' > 0\). Set initially to "?(t=t')".

iamax.conf.RUNK_1D_SYM :str = ?(t>0)

Symbol to be used within XLSX-specified tables to tell the resolution solver where its unknowns are located within the data space for \(t > 0\). Conceptually includes RUNK_0D_SYM. Set initially to '?(t>0)'.

iamax.conf.XUNK_IG_CNAME :str

CUNK_0D_SYM, RUNK_0D_SYM or RUNK_1D_SYM argument format suffix to be used when wishing to provide the solver with initial guesses. Set initially to '§'.

iamax.conf.XUNK_SF_CNAME :str

CUNK_0D_SYM, RUNK_0D_SYM or RUNK_1D_SYM argument format suffix to be used when wishing to provide the solver with scaling factors. Set initially to '@'.

iamax.conf.UNIV_SYM :str = *

Symbol to be used as universal selector within the label space. Set initially to '*'.

iamax.conf.NULL_SYM :str = ...

Symbol to be used as null selector within the label space. Set initially to '...'.