{ From user Lonnie, Model Pricing_model at Wed, Mar 22, 2006 9:02 AM} Softwareversion 3.1.1 { System Variables with non-default values: } Samplesize := 2 Windows := 2 Usetable := 0 Typechecking := 1 Checking := 1 Graphwindows := 5 Showhier := 1 Saveoptions := 2 Savevalues := 0 Editor := 0 Publishoneval := 1 Webhelper := -1 Allwarnings := 0 { Non-default Time SysVar value: } Time := Sequence( 1, Number_of_iterations, 1 ) Title Time: Time Description Time: Dynamic simulation periods are specified in Time's ~~ definition. This is usually a list of numbers or labels, typically in~~ some unit of time (days, weeks, months, etc.). Use the ÒDynamic()Ó ~~ function in your variables to perform dynamic simulation. Attribute Reference Attribute Date_bough Attribute Notes Attribute Additional Attribute New_attribute Askattribute Reference,Function,Yes Askattribute Notes,Function,Yes Askattribute New_attribute,Function,Yes Askattribute Reference,Module,Yes Askattribute Notes,Module,Yes Askattribute Value,Variable,Yes Askattribute Reference,Variable,Yes Askattribute Notes,Variable,Yes Model Pricing_model Title: Pricing Model Description: The purpose of this model is to determine the amount of ~~ revenue needed on a monthly basis from each subscriber of a service t~~ o just meet the weighted average cost of capital of the firm from the~~ service release date to the end of the Study Horizon. In other word~~ s, it calculates the monthly unit revenue rate required from each sub~~ scriber of a service to give a return on investment at the end of the~~ Study Horizon that is equal to the weighted average cost of capital ~~ of the firm. This problem is trivial when the net cash flow, as well~~ as the number of subscribers, is constant over time. The solution i~~ s merely Net_Cash_Flow/Subscribers. However, in the general case whe~~ re the number of subscribers and the net cash flow is time variant an~~ d the time value of money is worth consideration, an iterative method~~ must be employed that begins with an initial estimate and converges ~~ on a solution by the successive addition of residual errors.~ ~ As a test case, this model depicts a scenario in which a service is r~~ olled out to a marketplace that generates a perpituity revenue from e~~ ach subscriber (e.g., a cable TV operator charges each subscriber ~$3~~ 0.00/Subscriber/Month regardless of how many customers are in the sys~~ tem). The service penetration ramps up over the Roll Out Time in an ~~ s-curve fashion until 99% of the Rollout Penetration is achieved. Su~~ bsequently, the number of subscribers grows exponentially until the e~~ xpected Final Penetration is reached at the end of the Study Horizon.~~ ~ ~ The Expenses are modeled with an initial investment at Month=0 and a ~~ perpituity throughout the life of the model. For simplicity's sake, ~~ the expenses as a perpituity are intended to include all costs of ser~~ vices sold, tax, and any other cash expenses.~ ~ The required revenue rate is determined by an iterative process. The~~ initial required revenue rate is assumed to be zero. Thus, the requ~~ ired revenue rate determined by the first iteration represents the fi~~ rst estimate of how much revenue is required from each subscriber on ~~ a monthly basis to meet the expected ROI over the Study Horizon. How~~ ever, this estimate may be too high or too low to meet the ROI. Ther~~ efore, this value added to the original estimate is cycled back throu~~ gh the model to calculate the error of the previous estimate. Of cou~~ rse, this error estimate also has an error associated with it. Again~~ the error is cycled back through with each successive iteration unti~~ l the error is considerably small. This successive addition of initi~~ al estimate and residual error eventually converges on the Revenue Ra~~ te that gives the expected ROI. The number of iterations required mu~~ st be determined by trial and error~ ~ The solution method is to calculate the present worth of the cash flo~~ ws over the Study Horizon for each iteration. The present worth is c~~ onverted into an equivalent period perpituity. The perpituity, repre~~ senting the constant amount of revenue needed each month to meet the ~~ expected ROI, is divided by the number of subscribers to determine th~~ e monthly unit required revenue rate. However, this result is hyperb~~ olic in shape because the number of Subscribers (the denominator) is ~~ increasing with each month against the equivalent period perpituity (~~ the numerator). The correct solutiuon, then, is represented by the w~~ eighted average (the centroid) of this curve. The weighted average d~~ etermined after the first iteration represents the initial required r~~ evenue rate estimate. Each successive weighted average represents th~~ e residual error of each iteration.~ ~ A final note: The index representing time in the model is named "Mont~~ h." The System Variable "Time" is used as the index for the iteratio~~ ns. Author: Robert D. Brown, III~ Director of Business Systems Modeling~ Integrated Product Development~ 11450 Technology Circle~ Duluth, GA 30097-1504~ 678.473.8515~ 678.473.2100 fax~ rob.brown@antec.com Date: Tue, Mar 24, 1998 10:21 AM Saveauthor: Lonnie Savedate: Wed, Mar 22, 2006 9:02 AM Defaultsize: 48,24 Diagstate: 1,79,56,606,391,17 Windstate: 1,72,82 Fileinfo: 0,Model Pricing_model,2,2,0,0,W:\Analytica\ExecDebug\Exampl~~ e Models\Business Examples\Subscriber Pricing Model.ana Pagesetup: (00030000004800480000000002480300FFF2FFF40256030C034505280~~ 3FC00020000004800480000000002D802280001000000640000000100030303000000~~ 01270F000100010000000000000000000000006008001901900000000000000000000~~ 000000000000100000000000000000000000000000000) Module Model_details Title: Model Details Description: The purpose of this model is to determine the amount of ~~ revenue needed on a monthly basis from each subscriber of a service t~~ o just meet the weighted average cost of capital of the firm from the~~ service release date to the end of the Study Horizon. In other word~~ s, it calculates the monthly unit revenue rate required from each sub~~ scriber of a service to give a return on investment at the end of the~~ Study Horizon that is equal to the weighted average cost of capital ~~ of the firm. Author: Robert D. Brown, III~ Director of Business Systems Modeling~ Integrated Product Development~ 11450 Technology Circle~ Duluth, GA 30097-1504~ 678.473.8515~ 678.473.2100 fax~ rob.brown@antec.com Date: Tue, Apr 14, 1998 5:15 PM Defaultsize: 48,24 Nodelocation: 456,200,0 Nodesize: 62,36 Diagstate: 1,140,47,428,234,17 Module Service_penetration Title: Service Penetration Author: rbrown Date: Mon, Jul 6, 1998 1:03 PM Defaultsize: 48,24 Nodelocation: 72,88,0 Nodesize: 44,20 Diagstate: 1,120,130,340,294,17 Variable Subscribers Title: Subscribers Description: The actual fraction of the market size that adopt the se~~ rvice. The cumulative distribution in time is represented by an s-cu~~ rve that reaches 99% of the Rollout Penetration by the end of the Rol~~ lout Time. The distribution then grows exponentially until the end o~~ f the study horizon. Definition: ((Rollout_penetration*Market_size)*S_curve1(0.01,Month,Ro~~ llout_time))*((1+Growthrate_after_ro)^(Month-Rollout_time)) Nodelocation: 224,88,0 Nodesize: 44,20 Windstate: 1,59,103 Valuestate: 1,8,44,814,570,1,MIDM Aliases: Alias Subscribers2 Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:2~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:1~ Showkey:1~ Xminimum:0~ Xmaximum:60~ Yminimum:0~ Ymaximum:60~ Zminimum:0.05~ Zmaximum:0.4~ Xintervals:12~ Yintervals:4~ Includexzero:0~ Includeyzero:0~ Includezzero:0~ Statsselect:[1,1,1,1,1,0,0,0]~ Probindex:[0.05,0.25,0.5,0.75,0.95]~ Reformval: [Month, Final_penetration ] Decision Rollout_time Title: Rollout Time Units: Months Description: Input the amount of time that takes the Subscriber distr~~ ibution to reach 99% of the Rollout Penetration. Definition: Choice(Self,0) Nodelocation: 88,88,0 Nodesize: 44,20 Windstate: 1,280,290 Aliases: Formnode Rollout1 Domain: [12,18,24,30] Decision Rollout_penetration Title: Rollout Penetration Units: % Market Size Description: Input the expected market penetration of the service at ~~ the Rollout Time. Definition: Choice(Self,0) Nodelocation: 88,152,0 Nodesize: 44,20 Windstate: 1,182,281 Aliases: Formnode Potential_penetrati1 Numberformat: 1,%,4,0,0,0 Domain: [0.15,0.2,0.25] Decision Market_size Title: Market Size Units: Potential Subscribers Description: Input the maximum potential service subscribers. Definition: 50K Nodelocation: 88,32,0 Nodesize: 44,20 Windstate: 1,76,53 Valuestate: 1,232,242,416,303,0,MIDM Aliases: Formnode Serving_area1 Domain: [50K] Variable Growthrate_after_ro Title: Growth Rate After Rollout Units: % Description: Calculates the compound annual growth rate of the subscr~~ iber distribution from the time Rollout Penetration is achieved to th~~ e Final Penetration at the Study Horizon. Definition: ((Final_penetration/Rollout_penetration)^(1/(Study_horizo~~ n-Rollout_time)))-1 Nodelocation: 224,152,0 Nodesize: 44,24 Windstate: 1,201,96 Valuestate: 1,8,44,814,570,0,MIDM Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:2~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:0~ Showkey:1~ Xminimum:12~ Xmaximum:30~ Yminimum:0~ Ymaximum:0.04~ Zminimum:0.15~ Zmaximum:0.4~ Xintervals:3~ Yintervals:4~ Includexzero:0~ Includeyzero:0~ Includezzero:0~ Statsselect:[1, 1, 1, 1, 1, 0, 0, 0]~ Probindex:[5%, 25%, 50%, 75%, 95%]~ Reformval: [Rollout_time, Final_penetration ] Numberformat: 1,%,4,1,0,0 Decision Final_penetration Title: Final Penetration Units: % Market Size Description: Input the expected market penetration at the Study Horiz~~ on. Definition: Choice(Self,0) Nodelocation: 88,216,0 Nodesize: 44,20 Windstate: 1,200,210 Aliases: Formnode Final_penetration1 Numberformat: 1,%,4,0,0,0 Domain: [0.15,0.2,0.3,0.4] Close Service_penetration Module Revenue_module Title: Revenue Module Author: rbrown Date: Mon, Jul 6, 1998 1:03 PM Defaultsize: 48,24 Nodelocation: 184,40,0 Nodesize: 44,20 Diagstate: 1,264,274,445,310,17 Variable Required_monthly_rev Title: Required Monthly Revenue Units: $/Month Description: Calculates the equivalent amount of perpetuity revenue ~~ needed for each month in the model to meet the weighted average cost ~~ of capital. Definition: (-Annuity_prsnt_amoun1(Pw_fcf,Equiv_perd_int_rate1(Wacc1,~~ 12),Study_horizon)) Nodelocation: 96,232,0 Nodesize: 44,24 Windstate: 1,157,283 Valuestate: 1,9,44,814,570,0,MIDM Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:2~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:1~ Showkey:1~ Xminimum:3000~ Xmaximum:4600~ Yminimum:0~ Ymaximum:1~ Zminimum:1~ Zmaximum:1~ Xintervals:8~ Yintervals:4~ Includexzero:0~ Includeyzero:0~ Includezzero:0~ Statsselect:[1, 1, 1, 1, 1, 0, 0, 0]~ Probindex:[5%, 25%, 50%, 75%, 95%]~ Reformval: [Market_size, Rollout_penetration ] Numberformat: 1,D,4,2,0,1 Variable Wavg_reqd_rev_rate Title: Wtd Avg Required Monthly Revenue Rate Units: $/Sub/Month Description: The output of this calculation represents the weighted a~~ verage (the centroid) of the previous node. The weighted average det~~ ermined after the first iteration represents the initial required rev~~ enue rate estimate. Each successive weighted average represents the ~~ residual error of each iteration. Definition: (Sum((Month*Mo_reqd_rev_rate),Month)/Sum(Month,Month)) Nodelocation: 96,48,1 Nodesize: 48,32 Windstate: 1,76,121 Valuestate: 1,9,56,814,570,0,MIDM Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:2~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:1~ Showkey:1~ Xminimum:0~ Xmaximum:20~ Yminimum:-2~ Ymaximum:0.01~ Zminimum:1~ Zmaximum:1~ Xintervals:3~ Yintervals:5~ Includexzero:0~ Includeyzero:0~ Includezzero:0~ Statsselect:[1, 1, 1, 1, 1, 0, 0, 0]~ Probindex:[5%, 25%, 50%, 75%, 95%]~ Reformval: [Final_penetration, Time ] Variable Revenue_rate Title: Revenue Rate Units: $/Subscriber Description: The unit revenue rate charged per subscriber. The outpu~~ t of this calculation represents a convergence in the stable value th~~ at gives the necessary return on investment that meets the weighted a~~ verage cost of capital.~ ~ Dynamic(0,(Self[Time-1]+Wavg_reqd_rev_rate[Time-1])) Definition: Dynamic(0,(Self[Time-1]+Wavg_reqd_rev_rate[Time-1])) Nodelocation: 216,48 Nodesize: 44,20 Nodeinfo: 1,1,1,1,1,1,0,,0, Windstate: 1,76,50 Valuestate: 1,175,122,479,414,0,MIDM Nodecolor: -26215,-13105,-1 Objective Revenue_rate2 Title: Revenue Rate Units: $/Subscriber Description: The unit revenue rate charged per subscriber that meets ~~ the weighted cost of capital at the study horizon. Definition: Revenue_rate[Time=Number_of_iterations] Nodelocation: 320,48 Nodesize: 44,20 Nodeinfo: 1,1,1,1,1,1,0,,1, Valuestate: 1,8,44,814,570,1,MIDM Aliases: Formnode Revenue_rate1 Nodecolor: -1,1,1 Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:2~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:1~ Showkey:1~ Xminimum:0~ Xmaximum:0.3~ Yminimum:25.2~ Ymaximum:27~ Zminimum:1~ Zmaximum:1~ Xintervals:10~ Yintervals:10~ Includexzero:0~ Includeyzero:0~ Includezzero:0~ Statsselect:[1, 1, 1, 1, 1, 0, 0, 0]~ Probindex:[5%, 25%, 50%, 75%, 95%]~ Reformval: [Rollout_time, Final_penetration ] Variable Revenue Title: Revenue Units: $ Description: The revenue generated from from paying subscribers. Definition: Revenue_rate*Subscribers Nodelocation: 216,104 Nodesize: 44,20 Valuestate: 1,136,146,416,303,1,MIDM Reformval: [Month, Final_penetration ] Variable Mo_reqd_rev_rate Title: Monthly Required Revenue Rate Units: $/Month Description: Calculates the required revenue from each subscriber eac~~ h month to meet the weighted average cost of capital at the Study Hor~~ izon.~ ~ This value is not a constant. Although Required_monthly_rev remains ~~ constant, Subscribers changes with time. The shape of the curve is h~~ yperbolic in each iteration. Definition: Required_monthly_rev/Subscribers Nodelocation: 96,160,0 Nodesize: 44,24 Valuestate: 1,296,306,416,303,1,MIDM Reformval: [Time, Undefined ] Alias Subscribers2 Title: Subscribers Definition: 1 Nodelocation: 216,160,0 Nodesize: 44,20 Original: Subscribers Close Revenue_module Module System_functions Title: System Functions Author: rbrown Date: Mon, Jul 6, 1998 1:03 PM Defaultsize: 48,24 Nodelocation: 72,160,0 Nodesize: 44,20 Nodeinfo: 1,0,0,1,1,1,0,,0, Diagstate: 1,161,280,435,186,17 Function Annuity_prsnt_amoun1(P,i,N) Title: Annuity from a Present Amount Description: The annuity from a present amount is the period amount w~~ hich can be withdrawn for a definite period of time from a present su~~ m of money at a given rate of interest each compounding period.~ ~ P = the present amount~ i = the period interest rate~ N = the period at which the present amount is depleted Definition: P*(i*(1+i)^N)/(((1+i)^N)-1) Nodelocation: 240,80,0 Nodesize: 44,24 Windstate: 1,136,146 Paramnames: P,i,N Function Equiv_perd_int_rate1(APR, N) Title: Equivalent Period Interest Rate Description: Calculates the period interest rate of the yearly compou~~ nding interest rate.~ APR = Annual percentage rate~ N = Number of compounding periods in a year Definition: ((1+APR)^(1/N))-1 Nodelocation: 144,80,0 Nodesize: 44,24 Windstate: 1,124,116 Paramnames: APR,N Decision Study_horizon Title: Study Horizon Units: Months Description: Enter the total amount of time the study lasts. Definition: 60 Nodelocation: 144,24 Nodesize: 44,20 Nodeinfo: 1,0,0,1,1,1,0,,0, Aliases: Formnode Study_horizon2 Index Month Title: Month Definition: Sequence( 0, Study_horizon, 1 ) Nodelocation: 240,24,0 Nodesize: 44,20 Decision Number_of_iterations Title: Number of Iterations Description: Enter number of iterations Definition: 15 Nodelocation: 48,24 Nodesize: 44,20 Nodeinfo: 1,1,0,1,1,1,0,,0, Aliases: Formnode Number_of_iteration1 Library Func_lib Title: Function Library Author: Robert Brown Date: Wed, Oct 16, 1996 4:29 PM Saveauthor: rbrown Savedate: Wed, Jun 3, 1998 4:03 PM Defaultsize: 48,24 Nodelocation: 336,24,0 Nodesize: 44,20 Nodeinfo: 1,1,0,1,1,1,0,,0, Diagstate: 1,61,62,390,168,17 Nodecolor: 1,-1,-1 Pagesetup: (00030000004800480000000002D80228FFE1FFE202F90246034705280~~ 3FC00020000004800480000000002D802280001000000640000000100030303000000~~ 01270F00010001000000000000000000000000600800190190000000000000000000~~ 0000000000000000000000000000000000000000000000) Module Financial_functions Title: Financial Functions Author: rbrown Date: Tue, Dec 23, 1997 2:17 PM Defaultsize: 48,24 Nodelocation: 184,48,0 Nodesize: 44,20 Diagstate: 1,527,20,473,315,17 Function Future_worth(P, i, N) Title: Future Worth of a Present Amount Description: The sum at the end of a specific period of time that a ~~ present amount will accumulate to at given rate of interest each comp~~ ounding period.~ ~ P = present amount~ i = period interest rate~ N = the period at the end of the compounding sequence Definition: P*(1+i)^N Nodelocation: 64,40 Nodesize: 44,24 Paramnames: P,i,N Function Present_worth(F, i, N) Title: Present Worth of a Future Amount Description: The amount of money at the start of a specific period of~~ time which will accumulate to a known sum at the end of that period ~~ at a given rate of interest each compounding period.~ ~ F = the future amount~ i= the period interest rate~ N = the period at which the future amount occurs Definition: F/(1+i)^N Nodelocation: 168,40,1 Nodesize: 44,24 Paramnames: F,i,N Function Annual_depreciation(P,S,N) Title: Annual Depreciation Units: $ Description: Calculates the annual straight line depreciation value o~~ f a purchase. P is the acquisition cost. S is the salvage cost. N ~~ is the taxation interval for considering the depreciation. Definition: (P-S)/N Nodelocation: 168,176,0 Nodesize: 44,24 Paramnames: P,S,N Function Period_remaining_bal(L,i,m,N) Title: Period Remaining Balance Units: $ Description: Returns the period N remaining balance due on a loan L o~~ btained at N=0. The loan has a life of m periods paid back at a peri~~ od interest rate of i. Definition: L*((1+i)^N-((1+i)^N-1)/(1-(1+i)^(-m))) Nodelocation: 272,176,0 Nodesize: 44,24 Paramnames: L,i,m,N Function Equiv_perd_int_rate(APR, N) Title: Equivalent Period Interest Rate Description: Calculates the period interest rate of the yearly compou~~ nding interest rate.~ APR = Annual percentage rate~ N = Number of compounding periods in a year Definition: ((1+APR)^(1/N))-1 Nodelocation: 64,176,0 Nodesize: 44,24 Paramnames: APR,N Function Annuity_future_worth(A,i,N) Title: Future Worth of an Annuity Description: The future worth of an annuity for a given period of tim~~ e is the sum at the end of that period of the future worths of all pa~~ yments at a given rate of interest each compounding period.~ ~ A = the amount of the annuity~ i = the period interest rate~ N = the period at the end of the compounding Definition: (A*(1+i)^N-1)/i Nodelocation: 272,40,1 Nodesize: 44,24 Paramnames: A,i,N Function Annuity_presnt_worth(A,i,N) Title: Present Worth of an Annuity Description: The present worth of an annuity for a given period of ti~~ me is the sum at the start of that period of the present worths of ea~~ ch payment in the series, at a given rate of interest each compoundin~~ g period. Definition: A*((1+i)^N-1)/(i*(1+i)^N) Nodelocation: 376,40,0 Nodesize: 44,24 Paramnames: A,i,N Function Annuity_prsnt_amount(P,i,N) Title: Annuity from a Present Amount Description: The annuity from a present amount is the period amount w~~ hich can be withdrawn for a definite period of time from a present su~~ m of money at a given rate of interest each compounding period.~ ~ P = the present amount~ i = the period interest rate~ N = the period at which the present amount is depleted Definition: P*i*(1+i)^N/((1+i)^N-1) Nodelocation: 272,104,0 Nodesize: 44,24 Paramnames: P,i,N Function Future_wrth_lin_grad(G,i,N) Title: Future Worth of a Linear Gradient Description: The future worth of a linear gradient is the future wort~~ h at the end of the period of the changing portion of an arithmetic p~~ rogression for a given period of time at a given rate of interest eac~~ h componding period.~ ~ G = the amount of the arithmetic gradient~ i = the period interest rate~ N = the period at the end of the compounding Definition: (G/i)*(((1+i)^N-1)/i-N) Nodelocation: 64,104,0 Nodesize: 44,24 Windstate: 1,120,130 Paramnames: G,i,N Function Presnt_wrth_lin_grad(G,i,N) Title: Present Worth of a Linear Gradient Description: The present worth of a linear gradient is the present wo~~ rth at the start of the period of the changing portion of an arithmet~~ ic progression for a given period of time at a given rate of interest~~ each compounding period.~ ~ G = the amount of the arithmetic gradient~ i = the period interest rate~ N = the period when the compounding ends Definition: (G/i)*((((1+i)^N-1)/(i*(1+i)^N))-N/(1+i)^N) Nodelocation: 168,104,1 Nodesize: 44,24 Windstate: 1,136,146 Paramnames: G,i,N Function Linear_grad_annuity(G,i,N) Title: Annuity for a Linear Gradient Description: The annuity for a linear gradient is the annuity over th~~ e total period equivalent to the changing portion of an arithmetic pr~~ ogression for a given period of time at a given rate of interest each~~ compounding period.~ ~ G = the amount of the arithmetic gradient~ i= the period interest rate~ N = the period when the compounding ends Definition: G*(1/i-N/((1+i)^N-1)) Nodelocation: 376,104,0 Nodesize: 44,24 Windstate: 1,152,162 Paramnames: G,i,N Module Mortgage_bond Title: Mortgage Bond Author: rbrown Date: Tue, Dec 23, 1997 2:17 PM Defaultsize: 48,24 Nodelocation: 224,240,0 Nodesize: 44,20 Diagstate: 1,136,146,456,343,17 Decision Face_value Title: Face Value of Bond Units: $ Definition: 1000 Nodelocation: 184,24 Nodesize: 44,20 Decision Sale_value Title: Sale Value of Bond Units: $ Definition: 900 Nodelocation: 48,88 Nodesize: 44,20 Decision Interest_rate Title: Bond Interest Rate Units: % Definition: .08 Nodelocation: 184,152 Nodesize: 44,20 Valuestate: 1,120,130,416,303,0,MIDM Numberformat: 1,%,4,2,0,0 Decision Bond_life Title: Bond Life Definition: 10 Nodelocation: 312,88 Nodesize: 44,20 Variable Bond_cash_flow Title: Bond Cash Flow Units: $ Definition: Bond_cash_flows(Period,Sale_value,Face_value,Bond_life,In~~ terest_rate,Bonds_sold) Nodelocation: 184,88 Nodesize: 44,20 Windstate: 1,40,50 Valuestate: 1,232,242,416,303,1,MIDM Index Period Title: Period Definition: Sequence(1,Bond_life,1) Nodelocation: 48,24 Nodesize: 44,20 Valuestate: 1,200,210,416,303,0,MIDM Function Bond_cash_flows(N,SVB,FVB,M,i,x) Title: Mortgage Bond Cash Flows Units: $ Description: Calculates the cash flows for a mortgage bond.~ ~ N = the period sequence~ SVB = sale value of the bond~ FVB = face value of the bond~ M = life of the bond~ i = interest rate of the bond~ x = number of bonds sold Definition: If N=1 Then x*(SVB-i*FVB) Else If N=M Then -x*FVB*(1+i) E~~ lse -x*i*FVB Nodelocation: 72,152 Nodesize: 44,24 Windstate: 1,133,119 Paramnames: N,SVB,FVB,M,i,x Decision Bonds_sold Title: Number of Bonds Sold Definition: 1000 Nodelocation: 312,32 Nodesize: 44,20 Variable Present_value_of_bon Title: Present Value of Bond Cash Flow Definition: Cumulate(Bond_cash_flow/(1+Discount_rate)^(Period-1),Peri~~ od) Nodelocation: 312,152 Nodesize: 44,24 Valuestate: 1,152,162,416,303,0,MIDM Constant Discount_rate Title: Discount Rate Definition: .10 Nodelocation: 312,216 Nodesize: 44,20 Close Mortgage_bond Function Wacc(Rt, Ri, Rf, Rcs, Beta, Debt, Equity) Title: Weighted Average Cost of Capital Description: Calculates the annual nominal (adjusted for inflation) w~~ eighted average cost of capital of an investment. ~ ~ Rt = Corporate tax rate~ Ri = Interest rate on debt~ Rf = Risk free bond rate~ Rcs = Historical return on common stock~ Beta = Equity beta~ Debt = Outstanding leverage~ Equity = Market value of equity Definition: ((1-Rt)*Ri*Debt+(Rf+(Beta*Rcs))*Equity)/(Debt+Equity) Nodelocation: 376,176,0 Nodesize: 44,24 Windstate: 1,223,162 Paramnames: Rt,Ri,Rf,Rcs,Beta,Debt,Equity Reference: Higgins, R. _Analysis for Financial Management_. Irwin/Mc~~ Graw-Hill: 1998. pp. 269-298. Notes: Rf has typically been 6.4% on government long-term bonds~ ~ Rcs has typically been7% (1926-1995) Additional: This function should only be used when an investment is a~~ "carbon copy" of an existing asset.~ ~ If the rate stated for the risk free bond excludes inflation, the inf~~ lation premium should be included in the calculation.~ ~ The risk free bond rate was 6.4% by Oct. 1995.~ ~ The historical return on common stock (1926-1995) was 7% Close Financial_functions Module Math_functions Title: Math Functions Description: Library of Rob Brown's math functions. Note that none of~~ these are used in this.~ ~ [LDC] Eliminated several unused functions that are redundant with fun~~ ctions present in Analytica 3.x. Author: rbrown Date: Tue, Dec 23, 1997 2:17 PM Defaultsize: 48,24 Nodelocation: 64,48 Nodesize: 44,20 Diagstate: 1,368,6,344,231,17 Function Sgrowth(y0,g,t) Title: Sgrowth Description: S growth function of time; y0 is initial displacement va~~ lue at t=0; g is exponential growth rate; t is the instantaneous time~~ . This function asymptotically approaches a maximum amplitude. Definition: 1/(1+(1/y0-1)*exp(-g*t)) Nodelocation: 48,24 Nodesize: 44,20 Paramnames: y0,g,t Function Learn_curve_unit(Cost_for_first_unit,Learning_rate:Numeric;N~~ umber_of_units:ArrayType) Title: Learning Curve: Unit Units: $ Description: Calculates the descending cost per unit as a function of~~ the number of units produced.~ ~ Cost_for_first_unit: The total cost of the first unit produced ~ Learning_rate: The learning curve rate, expressed as a whole number~ Number_of_units: A sequence of values (stepsize=1) starting with the ~~ first unit ending with the total quanity of units produced. Definition: Cost_for_first_unit*Number_of_units^(Logten(Learning_rate~~ /100)/Logten(2)) Nodelocation: 160,24 Nodesize: 44,20 Windstate: 1,133,216 Paramnames: Cost_for_first_unit,Learning_rate,Number_of_units Function Learn_curve_unit_avg(Cost_for_first_unit,Learning_rate:Numer~~ ic;Number_of_units:ArrayType) Title: Learning Curve: Cumulative Average Cost per Unit Units: $ Description: Calculates the descending cumulative average cost per u~~ nit as a function of the number of units produced.~ ~ Cost_for_first_unit: The total cost of the first unit produced ~ Learning_rate: The learning curve rate, expressed as a whole number~ Number_of_units: A sequence of values (stepsize=1) starting with the ~~ first unit ending with the total quanity of units produced. Definition: Cumulate(Cost_for_first_unit*Number_of_units^(Logten(Lear~~ ning_rate/100)/Logten(2)),Number_of_units)/Number_of_units Nodelocation: 160,104 Nodesize: 44,40 Windstate: 1,133,317 Paramnames: Cost_for_first_unit,Learning_rate,Number_of_units Function Learn_curve_time(Time_for_first_unit,Learning_rate:Numeric;N~~ umber_of_units:ArrayType) Title: Learning Curve: Time Units: minutes Description: Calculates the descending cost in time per unit as a fun~~ ction of the number of units produced.~ ~ Time_for_first_unit: The total cost in time of the first unit produce~~ d ~ Learning_rate: The learning curve rate, expressed as a whole number~ Number_of_units: A sequence of values (stepsize=1) starting with the ~~ first unit ending with the total quanity of units produced. Definition: Time_for_first_unit*Number_of_units^(Logten(Learning_rate~~ /100)/Logten(2)) Nodelocation: 272,24 Nodesize: 44,20 Paramnames: Time_for_first_unit,Learning_rate,Number_of_units Function Learn_curve_time_avg(Time_for_first_unit,Learning_rate:Numer~~ ic;Number_of_units:ArrayType) Title: Learning Curve: Cumulative Average Cycle Time Units: $ Description: Calculates the descending cumulative average cost in tim~~ e per unit as a function of the number of units produced.~ ~ Time_for_first_unit: The total cost in time of the first unit produce~~ d ~ Learning_rate: The learning curve rate, expressed as a whole number~ Number_of_units: A sequence of values (stepsize=1) starting with the ~~ first unit ending with the total quanity of units produced. Definition: Cumulate(Time_for_first_unit*Number_of_units^(Logten(Lear~~ ning_rate/100)/Logten(2)),Number_of_units)/Number_of_units Nodelocation: 272,104 Nodesize: 44,40 Paramnames: Time_for_first_unit,Learning_rate,Number_of_units Function S_curve(Yo, T, Tp) Title: S Curve Description: The S Curve is a function that asymptotically appraoches~~ a maximum amplitude of 1. Yo is the intial value at time T=1. T is~~ the time index. Tp is the time to 1-Yo penetration. If the S Curve~~ is used to approximate a service roll-out, let Yo=1%. Then Tp is the~~ time to 99% service penetration. Definition: 1/(1+(Yo/(1-Yo))^(2*T/Tp-1)) Nodelocation: 56,104,0 Nodesize: 44,20 Windstate: 1,56,66 Paramnames: Yo,T,Tp Close Math_functions Close Func_lib Function S_curve1(Yo, T, Tp) Title: S Curve Description: The S Curve is a function that asymptotically appraoches~~ a maximum amplitude of 1. Yo is the intial value at time T=1. T is~~ the time index. Tp is the time to 1-Yo penetration. If the S Curve~~ is used to approximate a service roll-out, let Yo=1%. Then Tp is the~~ time to 99% service penetration. Definition: 1/(1+(Yo/(1-Yo))^(2*T/Tp-1)) Nodelocation: 48,80,0 Nodesize: 44,20 Paramnames: Yo,T,Tp Close System_functions Module Pro_forma_module Title: Pro Forma Module Author: rbrown Date: Mon, Jul 6, 1998 1:03 PM Defaultsize: 48,24 Nodelocation: 296,88,0 Nodesize: 44,20 Diagstate: 1,122,50,478,445,17 Variable Pw_fcf Title: Present Worth of Free Cash Flow Units: $ Description: Calculates the present worth of the cash flow given the ~~ weighted average cost of capital at the Study Horizon. Definition: Npv(Equiv_perd_int_rate1(Wacc1,12), Free_cash_flow, Month~~ )*(1+Equiv_perd_int_rate1(Wacc1,12)) Nodelocation: 280,360,0 Nodesize: 44,24 Windstate: 1,100,164 Valuestate: 1,8,44,814,570,0,MIDM Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:2~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:1~ Showkey:1~ Xminimum:0~ Xmaximum:1~ Yminimum:-180K~ Ymaximum:-120K~ Zminimum:1~ Zmaximum:1~ Xintervals:5~ Yintervals:4~ Includexzero:0~ Includeyzero:0~ Includezzero:0~ Statsselect:[1, 1, 1, 1, 1, 0, 0, 0]~ Probindex:[5%, 25%, 50%, 75%, 95%]~ Reformval: [Final_penetration, Rollout_penetration ] Decision Wacc1 Title: Weighted Average Cost of Capital Units: %/Year Definition: Choice(Self,3) Nodelocation: 159,358,1 Nodesize: 48,32 Windstate: 1,216,226 Aliases: Formnode Discount_rate2 Numberformat: 1,%,4,0,0,0 Domain: [0.08,0.1,0.12,0.14,0.16,0.18,0.2,0.22,0.24,0.26,0.28] Reference: Cable Plus Objective Free_cash_flow1 Title: Free Cash Flow Units: $ Description: The Free Cash Flow after the last iteration. Definition: Free_cash_flow[Time=Number_of_iterations] Nodelocation: 392,288 Nodesize: 44,20 Nodeinfo: 1,1,1,1,1,1,0,,1, Valuestate: 1,8,44,814,570,1,MIDM Aliases: Formnode Cash_flow2 Nodecolor: -1,1,1 Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:1~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:1~ Showkey:1~ Xminimum:0~ Xmaximum:60~ Yminimum:-200K~ Ymaximum:200K~ Zminimum:1~ Zmaximum:1~ Xintervals:0~ Yintervals:10~ Includexzero:0~ Includeyzero:0~ Includezzero:0~ Statsselect:[1, 1, 1, 1, 1, 0, 0, 0]~ Probindex:[5%, 25%, 50%, 75%, 95%]~ Reformval: [Month, Rollout_time ] Variable Interest Title: Interest Units: $ Description: Interest payment in each period Definition: -Ipmt( Equiv_perd_int_rate1( Interest_rate1, 12 ), Month,~~ 60, Capital_requirement ) Nodelocation: 56,168 Nodesize: 44,20 Windstate: 1,188,343 Variable Depreciation Title: Depreciation Definition: (Capital_requirement/60) Nodelocation: 164,231 Nodesize: 44,20 Variable Principal Title: Principal Units: $ Description: Principal payment in each period Definition: -Ppmt( Equiv_perd_int_rate1( Interest_rate1, 12 ), Month,~~ 60, Capital_requirement ) Nodelocation: 160,288 Nodesize: 44,20 Constant Tax_rate Title: Tax Rate Definition: .38 Nodelocation: 284,39 Nodesize: 44,20 Aliases: Formnode Tax_rate1 Variable Tax_provision Title: Tax Provision Units: $ Definition: Tax_rate*Operating_profit Nodelocation: 284,95 Nodesize: 44,20 Valuestate: 1,8,44,814,570,0,MIDM Reformval: [Month, Time ] Variable Gross_profit Title: Gross Profit Definition: Revenue-Expenses Nodelocation: 164,103 Nodesize: 44,20 Reformval: [Month, Time ] Constant Capital_requirement Title: Capital Requirement Units: $ Definition: 1000000 Nodelocation: 56,288 Nodesize: 44,20 Aliases: Formnode Capital_requirement1 Variable Operating_profit Title: Operating Profit Units: $ Definition: Gross_profit-Interest-Depreciation Nodelocation: 164,167 Nodesize: 44,20 Reformval: [Month, Time ] Variable Nopat Title: Net Operating Profit After Tax Units: $ Definition: Operating_profit-Tax_provision Nodelocation: 284,167 Nodesize: 44,24 Variable Operating_cash_flow Title: Operating Cash Flow Definition: Nopat+Depreciation Nodelocation: 284,231 Nodesize: 44,20 Variable Free_cash_flow Title: Free Cash Flow Units: $ Definition: (Operating_cash_flow-Principal) Nodelocation: 280,288 Nodesize: 44,20 Valuestate: 1,8,44,814,570,0,MIDM Reformval: [Month, Time ] Constant Interest_rate1 Title: Interest Rate Units: %/Year Definition: 8% Nodelocation: 56,104,0 Nodesize: 44,20 Aliases: Formnode Interest_rate2 Close Pro_forma_module Module Expense_module Title: Expense Module Author: rbrown Date: Mon, Jul 6, 1998 1:03 PM Defaultsize: 48,24 Nodelocation: 188,137,0 Nodesize: 44,20 Diagstate: 1,1,4,293,183,17 Variable Expenses Title: Expenses Units: $ Definition: Expense_rate*Subscribers Nodelocation: 120,96 Nodesize: 44,20 Windstate: 1,310,122 Valuestate: 1,8,44,814,570,1,MIDM Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:2~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:1~ Showkey:1~ Xminimum:0~ Xmaximum:60~ Yminimum:0~ Ymaximum:300K~ Zminimum:12~ Zmaximum:30~ Xintervals:12~ Yintervals:10~ Includexzero:0~ Includeyzero:1~ Includezzero:0~ Statsselect:[1, 1, 1, 1, 1, 0, 0, 0]~ Probindex:[5%, 25%, 50%, 75%, 95%]~ Reformval: [Month, Rollout_time ] Variable Expense_rate Title: Expense Rate Units: $/Subscriber Definition: 20/S_curve1(0.01,Month,Rollout_time) Nodelocation: 120,40 Nodesize: 44,20 Valuestate: 1,8,44,814,570,1,MIDM Graphsetup: Graphtool:0~ Distresol:10~ Diststeps:1~ Cdfresol:5~ Cdfsteps:1~ Symbolsize:6~ Linestyle:5~ Frame:1~ Grid:3~ Ticks:1~ Mesh:1~ Scales:1~ Rotation:45~ Tilt:0~ Depth:70~ Frameauto:1~ Showkey:1~ Xminimum:0~ Xmaximum:60~ Yminimum:0~ Ymaximum:2000~ Zminimum:12~ Zmaximum:30~ Xintervals:12~ Yintervals:10~ Includexzero:0~ Includeyzero:0~ Includezzero:0~ Statsselect:[1, 1, 1, 1, 1, 0, 0, 0]~ Probindex:[5%, 25%, 50%, 75%, 95%]~ Reformval: [Month, Rollout_time ] Close Expense_module Close Model_details Decision Please_read Title: Please Read Description: The purpose of this model is to determine the amount of ~~ revenue needed on a monthly basis from each subscriber of a service t~~ o just meet the weighted average cost of capital of the firm from the~~ service release date to the end of the Study Horizon. In other word~~ s, it calculates the monthly unit revenue rate required from each sub~~ scriber of a service to give a return on investment at the end of the~~ Study Horizon that is equal to the weighted average cost of capital ~~ of the firm. This problem is trivial when the net cash flow, as well~~ as the number of subscribers, is constant over time and the time val~~ ue of money is disregarded. The solution is merely Net_Cash_Flow/Sub~~ scribers. However, in the general case where the number of subscribe~~ rs and the net cash flow is time variant and the time value of money ~~ is worth consideration, an iterative method must be employed that beg~~ ins with an initial estimate and converges on a solution by the succe~~ ssive addition of residual errors.~ ~ As a test case, this model depicts a scenario in which a service is r~~ olled out to a marketplace that generates a perpetuity revenue from e~~ ach subscriber (e.g., a cable TV operator charges each subscriber ~$3~~ 0.00/Subscriber/Month regardless of how many customers are in the sys~~ tem). The service penetration ramps up over the Roll Out Time in an ~~ s-curve fashion until 99% of the Rollout Penetration is achieved. Su~~ bsequently, the number of subscribers grows exponentially until the e~~ xpected Final Penetration is reached at the end of the Study Horizon.~~ ~ ~ The Expenses are modeled with an initial investment at Month=0 and a ~~ perpetuity throughout the life of the model. For simplicity's sake, ~~ the expenses as a perpetuity are intended to include all costs of ser~~ vices sold, tax, and any other cash expenses.~ ~ The required revenue rate is determined by an iterative process. The~~ initial required revenue rate is assumed to be zero. Thus, the requ~~ ired revenue rate determined by the first iteration represents the fi~~ rst estimate of how much revenue is required from each subscriber on ~~ a monthly basis to meet the expected ROI over the Study Horizon. How~~ ever, this estimate may be too high or too low to meet the ROI. Ther~~ efore, this value added to the original estimate is cycled back throu~~ gh the model to calculate the error of the previous estimate. Of cou~~ rse, this error estimate also has an error associated with it. Again~~ the error is cycled back through with each successive iteration unti~~ l the error is considerably small. This successive addition of initi~~ al estimate and residual error eventually converges on the Revenue Ra~~ te that gives the expected ROI. The number of iterations required mu~~ st be determined by trial and error~ ~ The solution method is to calculate the present worth of the cash flo~~ ws over the Study Horizon for each iteration. The present worth is c~~ onverted into an equivalent period perpetuity. The perpetuity, repre~~ senting the constant amount of revenue needed each month to meet the ~~ expected ROI, is divided by the number of subscribers to determine th~~ e monthly unit required revenue rate. However, this result is hyperb~~ olic in shape because the number of Subscribers (the denominator) is ~~ increasing with each month against the equivalent period perpetuity (~~ the numerator). The correct solutiuon, then, is represented by the w~~ eighted average (the centroid) of this curve. The weighted average d~~ etermined after the first iteration represents the initial required r~~ evenue rate estimate. Each successive weighted average represents th~~ e residual error of each iteration.~ ~ A final note: The index representing time in the model is named "Mont~~ h." The System Variable "Time" is used as the index for the iteratio~~ ns. Definition: 0 Nodelocation: 456,112,1 Nodesize: 48,24 Nodeinfo: 1,1,1,1,1,1,1,,0, Windstate: 1,8,44 Nodecolor: -1,32766,1 Nodefont: Arial, 13 Formnode Rollout1 Title: Rollout Definition: 0 Nodelocation: 184,74 Nodesize: 176,14 Original: Rollout_time Formnode Potential_penetrati1 Title: Potential Penetration Definition: 0 Nodelocation: 184,129 Nodesize: 176,14 Original: Rollout_penetration Formnode Serving_area1 Title: Serving Area Definition: 0 Nodelocation: 184,101 Nodesize: 176,14 Original: Market_size Formnode Final_penetration1 Title: Final Penetration Definition: 0 Nodelocation: 184,157 Nodesize: 176,14 Original: Final_penetration Formnode Discount_rate2 Title: Discount Rate Definition: 0 Nodelocation: 184,264,1 Nodesize: 176,16 Original: Wacc1 Formnode Study_horizon2 Title: Study Horizon Definition: 0 Nodelocation: 184,20 Nodesize: 176,14 Original: Study_horizon Formnode Number_of_iteration1 Title: Number of Iterations Definition: 0 Nodelocation: 184,47 Nodesize: 176,14 Original: Number_of_iterations Formnode Revenue_rate1 Title: Revenue Rate Definition: 1 Nodelocation: 185,321 Nodesize: 176,14 Nodecolor: -1,1,1 Original: Revenue_rate2 Formnode Cash_flow2 Title: Cash Flow Definition: 1 Nodelocation: 185,294 Nodesize: 176,14 Nodecolor: -1,1,1 Original: Free_cash_flow1 Formnode Capital_requirement1 Title: Capital Requirement Definition: 0 Nodelocation: 184,239 Nodesize: 176,14 Original: Capital_requirement Formnode Interest_rate2 Title: Interest Rate Definition: 0 Nodelocation: 184,212 Nodesize: 176,14 Original: Interest_rate1 Formnode Tax_rate1 Title: Tax Rate Definition: 0 Nodelocation: 184,185 Nodesize: 176,14 Original: Tax_rate Close Pricing_model