FunctionInSystem

Functions in a EUROMOD system-policy.

Description

example

F = FunctionInSystem(PolicyInSystem) create a class array with the functions implemented in a policy at the system level.

This class contains the functions implemented in a specific EUROMOD policy-system. The class elements can be accessed by indexing the class array with an integer, or a string value of any class property (e.g. name, ID, order, etc.).

This class is stored in the property functions of the PolicyInSystem class.

This class stores classes of type ParameterInSystem and Extension.

This class inherits methods and properties from the superclass Function.

Examples

collapse all

FunctionInSystem loads all the functions configured in a Policy at the system level by default.

mod = euromod("C:\EUROMOD_RELEASES_I6.0+");
F=FunctionInSystem(mod.countries("AT").systems(end).policies(8));
F  
27×1 FunctionInSystem array:

     1: DefConst | on  | ESTAT data: unemployment, pre-COVID input data
     2: DefConst | on  | ESTAT data: unemployment, post-COVID input data
     3: DefConst | on  | ESTAT data: MC for employees & self-employed, pre-COVID input data
     4: DefConst | on  | ESTAT data: MC for employees & self-employed, post-COVID input data
     5: Elig     | on  | eligibility conditions - transition from non-employed to employed
     6: BenCalc  | on  | random allocation (based on ESTAT data) - transition non-employed to employed
     7: Elig     | on  | eligibility conditions - transition from employed to unemployed
     8: BenCalc  | on  | random allocation (based on ESTAT data) - transition employed to unemployed for employees
     9: Elig     | on  | eligibility conditions - transition from self-employed to unemployed
    10: BenCalc  | on  | random allocation - transition from self-employed to unemployed
    11: Elig     | on  | eligibility conditions - yem_a
    12: ArithOp  | on  | define yem_a
    13: Elig     | on  | eligibility conditions - lhw_a
    14: ArithOp  | on  | define lhw_a
    15: BenCalc  | on  | set yemmy_a
    16: Elig     | on  | step 1: eligibility conditions: MC for self-employed
    17: BenCalc  | on  | step 2: random allocation (based on Eurostat statistics)
    18: Elig     | on  | selected in step 2 -> eligible for step 3
    19: BenCalc  | on  | step 3a: random allocation of months in compensation scheme (based on external statistics and/or assumptions)
    20: ArithOp  | on  | step 3b: months out of compensation scheme (based on step 3a)
    21: Elig     | on  | MC_EE step 1: eligibility conditions: MC for employees
    22: BenCalc  | on  | MC_EE  step 2: random allocation (based on ESTAT statistics)
    23: Elig     | on  | MC_EE selected in step 2 -> eligible for step 3
    24: BenCalc  | on  | MC_EE step 3a: random allocation of months in MC (based on ESTAT statistics)
    25: ArithOp  | on  | MC_EE step 3b: months out of compensation scheme (based on step 3a)
    26: Elig     | on  | MC_EE  selected in step 3 -> eligible for step 4
    27: BenCalc  | on  | MC_EE  step 4: share of hours worked in compensation (based on external statistics and/or assumptions)
       
       
    

Display a specific function in the PolicyInSystem.

F(end)  
1×1 FunctionInSystem with properties:

         funID: "743c8700-7db3-4711-a203-e74f7a1d61b4"
        Switch: "on"
         sysID: "064cf5eb-73bd-4fae-a421-ed9781e418c9"
       comment: "MC_EE  step 4: share of hours worked in compensation (based on external statistics and/or assumptions)"
    extensions: [0×1 Extension]
            ID: "064cf5eb-73bd-4fae-a421-ed9781e418c9743c8700-7db3-4711-a203-e74f7a1d61b4"
          name: "BenCalc"
         order: "27"
    parameters: [11×1 ParameterInSystem]
        parent: [1×1 PolicyInSystem]
         polID: "be1bc6a2-e29f-4750-b6a7-44c061aae718"
       private: "no"
    spineOrder: "8.27"
    

Input Arguments

collapse all

A specific policy from the PolicyInSystem class array.

Data Types: class

Properties

collapse all

Returns the comment about the function.

Example: F(end).comment

Returns the Extension class array with extensions switches.

Example: F(end).extensions

Returns the identifier number of the function at the Country level.

Example: F(end).funID

Returns the function identifier number.

Example: F(end).ID

Returns the name of the function.

Example: F(end).name

Returns the order of the function.

Example: F(end).order

Returns the Parameter class array with function parameters.

Example: F(end).parameters

Returns the specific PolicyInSystem class.

Example: F(end).parent

Returns the identifier number of the policy.

Example: F(end).polID

Returns the access type of the function.

Example: F(end).private

Returns the spine order of the function.

Example: F(end).spineOrder

Returns the identifier number of the System.

Example: F(end).sysID

Returns the Extension switch action.

Example: F(end).Switch

Output Arguments

collapse all

A class array with the PolicyInSystem default functions. These are the functions configured in a specific System.

References

[1] Documentation EUROMOD - Tax-benefit microsimulation model for the European Union.

Extended Capabilities

Introduced in R2023a