schema: EconSchema
aspectRatio: 1.4
params:
- name: m
value: 30
min: 20
max: 40
round: 0.1
- name: p1
value: 0.5
min: 0.5
max: 3
round: 0.1
- name: p2
value: 0.5
min: 0.5
max: 3
round: 0.1
- name: a
value: 0.5
min: 0.01
max: 1
precision: 0.001
round: 0.01
calcs:
Dm2: ((1-params.a)*((params.m)/(params.p2)))
Dm22: ((1-params.a)*((params.m)/(95)))
Dm1: ((params.a)*((params.m)/(params.p1)))
Dm12: ((params.a)*((params.m)/(80)))
U1: (((calcs.Dm1)^(params.a))*((calcs.Dm2)^(1-params.a)))
TMS: (-(calcs.U1/(calcs.x2))^(1/params.a))
x22: ((calcs.U1)*(1-0.5)^(0.5)*(params.p1)^(0.5))/((p1)^(0.5)*(0.5)^(0.5))
x2: ((calcs.U1)*(1-0.5)^(0.5)*(params.p1)^(0.5))/((params.p2)^(0.5)*(0.5)^(0.5))
x11: (((calcs.U1)/((calcs.x2)^(1-0.5)))^(1/0.5))
RO: (-((0)*(params.p2)/(params.p1))+(params.m)/(params.p1))
RO2: (-((0)*(params.p1)/(params.p2))+(params.m)/(params.p2))
pr: (params.p2/params.p1)
layout:
ThreeGraphsPlusSidebarv:
topLeftGraph:
xAxis:
min: 0
max: 5
ticks: 4
yAxis:
min: 0
max: 100
ticks: 4
objects:
#Função de Demanda
- Curve:
fn: "((params.a)*((params.m)/(x)))"
ind: x
color: supply
min: 0
max: 10
lineStyle: solid
strokeWidth: 4
samplePoints: 250
- Line:
yIntercept: calcs.Dm1
color: "'#36a854'"
lineStyle: dashed
strokeWidth: 2.5
- Segment:
a: [params.p1, 0]
b: [params.p1, calcs.Dm1]
color: "'#36a854'"
lineStyle: dashed
strokeWidth: 2.5
- Segment:
a: [params.p1, 0]
b: [params.p1, 0]
bgcolor: "'#36a854'"
color: black
label:
text: params.p1.toFixed(2)
position: t
fontSize: 12
- Segment:
a: [calcs.Dm12, 90]
b: [calcs.Dm12, 90]
bgcolor: "'#fc7e0f'"
color: white
label:
text: "`X_{1}(p_{1})`"
position: l
fontSize: 12
- Segment:
a: [0, calcs.Dm1]
b: [0, calcs.Dm1]
bgcolor: "'#36a854'"
color: black
label:
text: calcs.Dm1.toFixed(0)
position: r
fontSize: 12
- Point:
coordinates: [params.p1, calcs.Dm1]
color: "'#36a854'"
r: 5
- Segment:
a: [5, 0]
b: [5, 0]
color: black
bgcolor: white
label:
text: \$
position: t
fontSize: 14
- Segment:
a: [0, 100]
b: [0, 100]
color: black
bgcolor: white
label:
text: x_{1}
position: r
fontSize: 14
topRightGraph:
xAxis:
min: 0
max: 100
ticks: 4
yAxis:
min: 0
max: 100
ticks: 4
objects:
#Curva de Indiferença
- Curve:
fn: "(((calcs.U1)/(x^(1-params.a)))^(1/params.a))"
ind: x
color: red
min: 0
max: 180
show: (params.a > 0.2)
lineStyle: solid
strokeWidth: 4
samplePoints: 250
- Curve:
fn: "(((calcs.U1)/((y)^(params.a)))^(1/(1-params.a)))"
ind: y
color: red
min: 0
max: 180
show: (params.a <= 0.2)
lineStyle: solid
strokeWidth: 4
samplePoints: 300
#Restrição Orçamentaria
- Curve:
fn: "(-((x)*(params.p2)/(params.p1))+(params.m)/(params.p1))"
ind: x
color: blue
strokeWidth: 4
samplePoints: 300
#Canva
- Point:
coordinates: [calcs.Dm2, calcs.Dm1]
color: green
r: 6
- Segment:
a: [calcs.Dm2, calcs.Dm1+10]
b: [calcs.Dm2, calcs.Dm1+10]
color: black
bgcolor: "'#FFCC90'"
label:
text: "`TMS=|-\\\\frac{p_{2}}{p_{1}}| =${calcs.pr.toFixed(2)}`"
position: l
- Segment:
a: [0, calcs.RO]
b: [0, calcs.RO]
color: black
bgcolor: "'#FFCC90'"
label:
text: \frac{m}{p_{1}}
position: r
fontSize: 15
- Segment:
a: [calcs.RO2, 0]
b: [calcs.RO2, 0]
color: black
bgcolor: "'#FFCC90'"
label:
text: \frac{m}{p_{2}}
position: t
fontSize: 15
- Segment:
a: [calcs.Dm2, 0]
b: [calcs.Dm2, calcs.Dm1]
color: green
lineStyle: dashed
- Segment:
a: [calcs.Dm2, calcs.Dm1]
b: [0, calcs.Dm1]
color: green
lineStyle: dashed
- Segment:
a: [0, calcs.Dm1]
b: [0, calcs.Dm1]
color: black
bgcolor: "'#36a854'"
label:
text: calcs.Dm1.toFixed(0)
position: r
fontSize: 15
- Segment:
a: [calcs.Dm2, 0]
b: [calcs.Dm2, 0]
color: black
bgcolor: "'#36a854'"
label:
text: calcs.Dm2.toFixed(0)
position: t
fontSize: 15
- Segment:
a: [0, 100]
b: [0, 100]
color: black
bgcolor: white
label:
text: x_{1}
position: r
fontSize: 15
- Segment:
a: [100, 0]
b: [100, 0]
color: black
bgcolor: white
label:
text: x_{2}
position: t
fontSize: 15
bottomRightGraph:
xAxis:
min: 0
max: 100
ticks: 4
yAxis:
min: 0
max: 5
ticks: 4
objects:
#Função de Demanda
- Curve:
fn: "((1-params.a)*((params.m)/(x)))"
ind: x
color: blue
min: 0
max: 100
lineStyle: solid
strokeWidth: 4
samplePoints: 250
- Line:
xIntercept: calcs.Dm2
color: "'#36a854'"
lineStyle: dashed
strokeWidth: 2.5
- Segment:
a: [0,params.p2]
b: [calcs.Dm2, params.p2]
color: "'#36a854'"
lineStyle: dashed
strokeWidth: 2.5
- Segment:
a: [100, calcs.Dm22+0.1]
b: [100, calcs.Dm22+0.1]
bgcolor: "'#1f77b4'"
color: white
label:
text: "`P_{2}(x_{2})`"
position: b
fontSize: 12
- Segment:
a: [0,params.p2]
b: [0, params.p2]
bgcolor: "'#36a854'"
color: black
label:
text: params.p2.toFixed(2)
position: r
fontSize: 12
- Segment:
a: [calcs.Dm2, 0]
b: [calcs.Dm2, 0]
color: black
bgcolor: "'#36a854'"
label:
text: calcs.Dm2.toFixed(0)
position: t
fontSize: 15
- Point:
coordinates: [calcs.Dm2, params.p2]
color: "'#36a854'"
r: 5
- Segment:
a: [0, 5]
b: [0, 5]
color: black
bgcolor: white
label:
text: \$
position: r
fontSize: 14
- Segment:
a: [100, 0]
b: [100, 0]
color: black
bgcolor: white
label:
text: x_{2}
position: t
fontSize: 14
sidebar:
controls:
- title: Decisão Ótima de Consumo e Funções de Demanda Marshallianas
sliders:
- param: m
label: Renda
digits: 3
- param: p1
label: p_{1}
digits: 3
- param: p2
label: p_{2}
digits: 3
- param: a
label: \alpha
digits: 3