schema: EconSchema
aspectRatio: 1.3
params:
- name: g
value: 15
min: 0
max: 35
round: 0.1
- name: r
value: 5
min: 0
max: 9.9
round: 0.1
- name: t
value: 0.25
min: 0.1
max: 0.3
round: 0.01
calcs:
inv: ((10-(2.525*(params.r))))
inv2: ((10-(2.525*(5))))
PointIS: (((15+10+params.g)/(2.525)-((params.r)*(1-0.75*(1-(params.t)))/(2.525))))
Yeq: ((15+10+params.g)/(1-0.75*(1-(params.t)))-(2.525*(params.r))/(1-0.75*(1-(params.t))))
Yeqf: ((15+10+15)/(1-0.75*(1-(params.t)))-(2.525*(5))/(1-0.75*(1-(params.t))))
Yeq2: ((15+10+params.g)/(1-0.75*(1-(params.t)))-(2.525*(0))/(1-0.75*(1-(params.t))))
Da: ((15+0.75*(1-(params.t))(140)+calcs.inv+params.g))
layout:
TwoVerticalGraphsPlusSidebar:
topGraph:
xAxis:
min: 0
max: 140
ticks: 4
yAxis:
min: 0
max: 140
ticks: 4
objects:
#Cruz Keynesiana
- Line:
slope: 1
strokeWidth: 2
color: grey
- AngleMarker:
measure: 45
strokeWidth: 2
r: 20
#Despesa Agregada
- Curve:
fn: "(15+0.75*(1-(params.t))(x)+calcs.inv+params.g)"
ind: x
color: blue
min: 0
max: 200
strokeWidth: 4
samplePoints: 100
#Despesa Agregada Fixa
- Curve:
fn: "(15+0.75*(1-(params.t))(x)+calcs.inv2+15)"
ind: x
color: blue
min: 0
max: 200
show: (calcs.Yeqf != calcs.Yeq)
strokeWidth: 2
samplePoints: 100
#Canva
- Point:
coordinates: [calcs.Yeq, calcs.Yeq]
color: black
r: 5
- Point:
coordinates: [calcs.Yeqf, calcs.Yeqf]
color: black
r: 5
- Segment:
a: [calcs.Yeqf, 0]
b: [calcs.Yeqf, calcs.Yeqf]
color: green
show: (calcs.Yeqf != calcs.Yeq)
lineStyle: dotted
strokeWidth: 2
- Segment:
a: [0, calcs.Yeqf]
b: [calcs.Yeqf, calcs.Yeqf]
color: green
show: (calcs.Yeqf != calcs.Yeq)
lineStyle: dotted
strokeWidth: 2
- Segment:
a: [calcs.Yeq, 0]
b: [calcs.Yeq, calcs.Yeq]
color: green
lineStyle: dotted
strokeWidth: 2
- Segment:
a: [0, calcs.Yeq]
b: [calcs.Yeq, calcs.Yeq]
color: green
lineStyle: dotted
strokeWidth: 2
- Segment:
a: [1, calcs.Yeqf]
b: [-1, calcs.Yeqf]
color: black
bgcolor: "'#36a854'"
show: (calcs.Yeqf != calcs.Yeq)
label:
text: "`(\\\\$)\\\\ ${calcs.Yeqf.toFixed(1)}`"
position: r
- Segment:
a: [calcs.Yeqf, 0]
b: [calcs.Yeqf, 0]
color: black
bgcolor: "'#36a854'"
show: (calcs.Yeqf != calcs.Yeq)
label:
text: "`(\\\\$)\\\\ ${calcs.Yeqf.toFixed(1)}`"
position: t
- Segment:
a: [1, calcs.Yeq]
b: [-1, calcs.Yeq]
color: black
bgcolor: "'#36a854'"
label:
text: "`(\\\\$)\\\\ ${calcs.Yeq.toFixed(1)}`"
position: r
- Segment:
a: [calcs.Yeq, 1]
b: [calcs.Yeq, -1]
color: black
bgcolor: "'#36a854'"
label:
text: "`(\\\\$)\\\\ ${calcs.Yeq.toFixed(1)}`"
position: t
- Segment:
a: [135, 0]
b: [135, 0]
color: black
bgcolor: white
label:
text: Y_{renda}
position: l
- Segment:
a: [1, 135]
b: [1, 135]
color: black
bgcolor: white
label:
text: Y_{d}
position: r
- Segment:
a: [140, calcs.Da]
b: [140, calcs.Da]
color: white
bgcolor: "'#2177b5'"
show: (calcs.Yeqf != calcs.Yeq)
label:
text: Y_{d}'
position: l
- Segment:
a: [140, calcs.Yeqf+45]
b: [140, calcs.Yeqf+45]
color: white
bgcolor: "'#2177b5'"
label:
text: Y_{d}
position: l
- Area:
fn1: "x"
fn2: "(15+0.75*(1-(params.t))(x)+calcs.inv2+15)"
fill: green
opacity: 0.4
show: (calcs.Yeq>calcs.Yeqf)
min: calcs.Yeqf
max: calcs.Yeq
- Area:
fn1: "(15+0.75*(1-(params.t))(x)+calcs.inv+params.g)"
fn2: "x"
fill: red
opacity: 0.4
show: (calcs.Yeqf > calcs.Yeq)
min: calcs.Yeq
max: calcs.Yeqf
bottomGraph:
xAxis:
min: 0
max: 140
ticks: 4
yAxis:
min: 0
max: 15
ticks: 4
objects:
#Curva IS
- Curve:
fn: "(((15+10+params.g)/(2.525)-((x)*(1-0.75*(1-params.t))/(2.525))))"
ind: x
color: blue
min: 0
max: 200
strokeWidth: 4
samplePoints: 100
#Curva IS fixa
- Curve:
fn: "(((15+10+15)/(2.525)-((x)*(1-0.75*(1-(params.t)))/(2.525))))"
ind: x
color: blue
min: 0
max: 200
strokeWidth: 2
samplePoints: 100
#Canva
- Point:
coordinates: [calcs.Yeq, params.r]
color: black
r: 5
- Point:
coordinates: [calcs.Yeqf, 5]
color: black
r: 5
- Line:
yIntercept: params.r
color: supply
lineStyle: solid
strokeWidth: 3.5
- Segment:
a: [calcs.Yeq, 0]
b: [calcs.Yeq, calcs.Yeq]
color: green
lineStyle: dotted
strokeWidth: 2
- Segment:
a: [calcs.Yeqf, 0]
b: [calcs.Yeqf, calcs.Yeqf]
color: green
lineStyle: dotted
strokeWidth: 2
show: (calcs.Yeqf != calcs.Yeq)
- Segment:
a: [calcs.Yeqf, 0]
b: [calcs.Yeqf, calcs.Yeqf]
color: green
lineStyle: dotted
strokeWidth: 2
- Segment:
a: [calcs.Yeqf, 0]
b: [calcs.Yeqf, 0]
color: black
bgcolor: "'#36a854'"
label:
text: "`(\\\\$)\\\\ ${calcs.Yeqf.toFixed(1)}`"
position: t
- Segment:
a: [calcs.Yeq, 0]
b: [calcs.Yeq ,0]
color: black
bgcolor: "'#36a854'"
label:
text: "`(\\\\$)\\\\ ${calcs.Yeq.toFixed(1)}`"
position: t
- Segment:
a: [1, params.r]
b: [-1 ,params.r]
color: black
bgcolor: "'#fc7e0f'"
label:
text: "`${params.r.toFixed(1)}\\\\%`"
position: r
- Segment:
a: [135, params.r]
b: [135 ,params.r]
color: white
bgcolor: "'#fc7e0f'"
label:
text: MP
position: l
- Segment:
a: [calcs.Yeq2, 0.7]
b: [calcs.Yeq2, 0.7]
color: white
bgcolor: "'#2177b5'"
show: (calcs.Yeq != calcs.Yeqf)
label:
text: IS'
position: bl
- Segment:
a: [calcs.Yeqf+25, 0.7]
b: [calcs.Yeqf+25, 0.7]
color: white
bgcolor: "'#2177b5'"
label:
text: IS
position: bl
- Segment:
a: [0, 15]
b: [0.5, 15]
label:
text: (r)
position: r
- Segment:
a: [135, 0]
b: [135, 0]
label:
text: Y_{eq}
position: l
sidebar:
controls:
- title: Modelo IS-MP
sliders:
- param: g
label: G
digits: 4
- param: r
label: r
digits: 4
- param: t
label: t
digits: 4
divs:
- html:
- html: '`A curva IS é: $$\\color{${colors.black}}{r(Y) = \\frac{c_{0}+a_{0}+G}{a_{1}}-\\frac{Y_{Eq}[1-c_{1}(1-t)]}{a_{1}}}$$ $$\\color{${colors.black}}{\\Longleftrightarrow}$$ $$\\color{${colors.black}}{r(Y) = \\frac{15+10+${params.g.toFixed(0)}}{1.525}-\\frac{Y_{Eq}[1-0.75(1-${params.t.toFixed(2)})]}{1.525}}$$ $$\\color{${colors.black}}{\\Longleftrightarrow}$$ $$\\color{${colors.black}}{r(${calcs.Yeq.toFixed(0)})=${params.r.toFixed(2)}\\ \\\%}$$`'
- html:
- html: '`A curva MP é: $$r=\\overline{r}$$ $$\\Longleftrightarrow$$ $$r=${params.r.toFixed(2)}\\%$$ `'