Modeling Depreciation
To model depreciation, two inputs are required:
- a schedule of spend to be depreciated
- a depreciation schedule
For this example, the index time is 10 year series with
Constant startYear = 2008
Time := Sequence (startYear, startYear + 9,1)
Example depreciation schedule is a 5yr MACRS depreciation schedule entered as a variable:
Table(time)(.2, .32, .192, .1152, .1152, .0576, 0, 0, 0, 0)
SpendOverTime
is a variable indexed by time with the capital spend amounts as desired:
Table(time)(0, 0, 111, 0, 0, 0, 0, 0, 0, 0)
Create a user defined function:
Function_Depreciation, Parameters: (SpendOverTime, DepreciationSchedule), Definition: index depr_years = copyindex(time); var deprStartyr := time; sum(if time - depr_years + 1 < 1 then 0 else slice(SpendOverTime, time, Depr_years - startYear + 1)*slice(depreciationSchedule, time, time - depr_years + 1), depr_years)
Then create a depreciation test variable to check the result
Variable: DepreciationTest
definition: function_Depreciation(spendOverTime, DepreciationSchedule)
Using Dynamic
The following model models Amortization (same concept as depreciation) using Dynamic, which an approach slightly different from the above description: Fixed Amortization Schedule.ana
The model requires Analytica 4.2 or better to use. (Nothing here requires 4.2 -- it is just that some 4.2 features were used for convenience).
See Also
Comments
Enable comment auto-refresher