Vraag & Aanbod

Gegeven:

We werken met de volgende lineaire functies:

\[Q_{demand}(P) = 100 - 2P, \qquad Q_{supply}(P) = 20 + 3P.\]

Deel A — Basisfuncties (4 punten)

- Definieer in Python een vraagfunctie en een aanbodfunctie volgens bovenstaande formules. Zorg dat negatieve hoeveelheden worden afgekapt op nul.

- Schrijf een functie find_equilibrium(p_min, p_max, step) die het evenwicht bepaalt door:

\[\min_{P} \; \big| Q_{demand}(P) - Q_{supply}(P) \big|\]

te berekenen over het interval:

\[P \in [p_{min}, p_{max}]\]

met stapgrootte step.

De functie retourneert een viertal:

\[\hspace{12pt}\left(P^*, \; Q_{demand}(P^*), \; Q_{supply}(P^*), \; \Delta \right), \qquad \Delta = \big| Q_{demand}(P^*) - Q_{supply}(P^*) \big|.\]

Deel B — Evenwicht (2 punten)

Bepaal het evenwicht door de functie aan te roepen met:

\[(p_{\min}, p_{\max}, step) = (0, \; 100, \; 0.5).\]

Rapporteer de waarden van P* en Q*, waarbij geldt:

\[Q^* = \frac{Q_{demand}(P^*) + Q_{supply}(P^*)}{2}.\]

Deel C — Evenwicht mét belasting (4 punten)

De overheid legt een specifieke belasting op van:

\[t = 2\]

per eenheid. Producenten ontvangen dan netto:

\[P_{\text{netto}} = P - t\]

en het aanbod verandert naar:

\[Q_{supply}^{t}(P) = 20 + 3(P - t).\]

- Definieer een aangepaste aanbodfunctie volgens bovenstaande formule.

- Definieer een aangepaste find_equilibrium_tax(p_min, p_max, step) functie.

- Bereken de totale belastingopbrengst (R) door gebruik te maken find_equilibrium_tax met

\[(p_{\min}, p_{\max}, step) = (0, \; 100, \; 0.5).\] \[R = t \times Q_t^*\]

Rapporteer de waarden van P* en Qt* en R.