Function

Functions of a EUROMOD tax-benefit policy.

Description

example

F = Function(Policy) create a class array with the functions modelled in a Policy.

This class contains functions implemented in a specific tax- benefit policy. 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 Policy class.

This class stores classes of type Extension and Parameter.

This class is the superclass of the FunctionInSystem class.

Examples

collapse all

Function loads all the functions configured in a Policy by default.

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

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

Display a specific function in the Policy.

F(end)  
1×1 Function with properties:

           comment: "MC_EE  step 4: share of hours worked in compensation (based on external statistics and/or assumptions)"
        extensions: [0×1 Extension]
                ID: "743c8700-7db3-4711-a203-e74f7a1d61b4"
              name: "BenCalc"
             order: "27"
        parameters: [11×1 Parameter]
            parent: [1×1 Policy]
             polID: "be1bc6a2-e29f-4750-b6a7-44c061aae718"
           private: "no"
        spineOrder: "8.27"
    

Input Arguments

collapse all

A specific policy from the Policy 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 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 Policy 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

Output Arguments

collapse all

A class array with the Policy default functions.

References

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

Extended Capabilities

Introduced in R2023a