equilibria-mcp-server 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/CHANGELOG.md +142 -0
  2. package/LICENSE +21 -0
  3. package/README.md +240 -0
  4. package/dist/builders/YAMLBuilder.d.ts +77 -0
  5. package/dist/builders/YAMLBuilder.d.ts.map +1 -0
  6. package/dist/builders/YAMLBuilder.js +251 -0
  7. package/dist/builders/YAMLBuilder.js.map +1 -0
  8. package/dist/economics/constants.d.ts +39 -0
  9. package/dist/economics/constants.d.ts.map +1 -0
  10. package/dist/economics/constants.js +46 -0
  11. package/dist/economics/constants.js.map +1 -0
  12. package/dist/economics/formulas.d.ts +19 -0
  13. package/dist/economics/formulas.d.ts.map +1 -0
  14. package/dist/economics/formulas.js +260 -0
  15. package/dist/economics/formulas.js.map +1 -0
  16. package/dist/economics/index.d.ts +9 -0
  17. package/dist/economics/index.d.ts.map +1 -0
  18. package/dist/economics/index.js +9 -0
  19. package/dist/economics/index.js.map +1 -0
  20. package/dist/economics/validators.d.ts +18 -0
  21. package/dist/economics/validators.d.ts.map +1 -0
  22. package/dist/economics/validators.js +111 -0
  23. package/dist/economics/validators.js.map +1 -0
  24. package/dist/errors/index.d.ts +172 -0
  25. package/dist/errors/index.d.ts.map +1 -0
  26. package/dist/errors/index.js +313 -0
  27. package/dist/errors/index.js.map +1 -0
  28. package/dist/formatters/index.d.ts +8 -0
  29. package/dist/formatters/index.d.ts.map +1 -0
  30. package/dist/formatters/index.js +8 -0
  31. package/dist/formatters/index.js.map +1 -0
  32. package/dist/formatters/redux.d.ts +15 -0
  33. package/dist/formatters/redux.d.ts.map +1 -0
  34. package/dist/formatters/redux.js +35 -0
  35. package/dist/formatters/redux.js.map +1 -0
  36. package/dist/formatters/yaml.d.ts +18 -0
  37. package/dist/formatters/yaml.d.ts.map +1 -0
  38. package/dist/formatters/yaml.js +40 -0
  39. package/dist/formatters/yaml.js.map +1 -0
  40. package/dist/index.d.ts +11 -0
  41. package/dist/index.d.ts.map +1 -0
  42. package/dist/index.js +19 -0
  43. package/dist/index.js.map +1 -0
  44. package/dist/server.d.ts +14 -0
  45. package/dist/server.d.ts.map +1 -0
  46. package/dist/server.js +86 -0
  47. package/dist/server.js.map +1 -0
  48. package/dist/templates/advancedMicro.d.ts +8 -0
  49. package/dist/templates/advancedMicro.d.ts.map +1 -0
  50. package/dist/templates/advancedMicro.js +834 -0
  51. package/dist/templates/advancedMicro.js.map +1 -0
  52. package/dist/templates/consumer.d.ts +12 -0
  53. package/dist/templates/consumer.d.ts.map +1 -0
  54. package/dist/templates/consumer.js +1978 -0
  55. package/dist/templates/consumer.js.map +1 -0
  56. package/dist/templates/elasticity.d.ts +8 -0
  57. package/dist/templates/elasticity.d.ts.map +1 -0
  58. package/dist/templates/elasticity.js +500 -0
  59. package/dist/templates/elasticity.js.map +1 -0
  60. package/dist/templates/externalities.d.ts +11 -0
  61. package/dist/templates/externalities.d.ts.map +1 -0
  62. package/dist/templates/externalities.js +997 -0
  63. package/dist/templates/externalities.js.map +1 -0
  64. package/dist/templates/financeBehavioral.d.ts +8 -0
  65. package/dist/templates/financeBehavioral.d.ts.map +1 -0
  66. package/dist/templates/financeBehavioral.js +860 -0
  67. package/dist/templates/financeBehavioral.js.map +1 -0
  68. package/dist/templates/growth.d.ts +8 -0
  69. package/dist/templates/growth.d.ts.map +1 -0
  70. package/dist/templates/growth.js +740 -0
  71. package/dist/templates/growth.js.map +1 -0
  72. package/dist/templates/index.d.ts +31 -0
  73. package/dist/templates/index.d.ts.map +1 -0
  74. package/dist/templates/index.js +91 -0
  75. package/dist/templates/index.js.map +1 -0
  76. package/dist/templates/inequality.d.ts +8 -0
  77. package/dist/templates/inequality.d.ts.map +1 -0
  78. package/dist/templates/inequality.js +562 -0
  79. package/dist/templates/inequality.js.map +1 -0
  80. package/dist/templates/intertemporalMacro.d.ts +8 -0
  81. package/dist/templates/intertemporalMacro.d.ts.map +1 -0
  82. package/dist/templates/intertemporalMacro.js +550 -0
  83. package/dist/templates/intertemporalMacro.js.map +1 -0
  84. package/dist/templates/isLM.d.ts +8 -0
  85. package/dist/templates/isLM.d.ts.map +1 -0
  86. package/dist/templates/isLM.js +747 -0
  87. package/dist/templates/isLM.js.map +1 -0
  88. package/dist/templates/macro.d.ts +8 -0
  89. package/dist/templates/macro.d.ts.map +1 -0
  90. package/dist/templates/macro.js +600 -0
  91. package/dist/templates/macro.js.map +1 -0
  92. package/dist/templates/marketStructures.d.ts +11 -0
  93. package/dist/templates/marketStructures.d.ts.map +1 -0
  94. package/dist/templates/marketStructures.js +1135 -0
  95. package/dist/templates/marketStructures.js.map +1 -0
  96. package/dist/templates/newKeynesian.d.ts +8 -0
  97. package/dist/templates/newKeynesian.d.ts.map +1 -0
  98. package/dist/templates/newKeynesian.js +633 -0
  99. package/dist/templates/newKeynesian.js.map +1 -0
  100. package/dist/templates/oligopoly.d.ts +11 -0
  101. package/dist/templates/oligopoly.d.ts.map +1 -0
  102. package/dist/templates/oligopoly.js +1113 -0
  103. package/dist/templates/oligopoly.js.map +1 -0
  104. package/dist/templates/ppf.d.ts +8 -0
  105. package/dist/templates/ppf.d.ts.map +1 -0
  106. package/dist/templates/ppf.js +439 -0
  107. package/dist/templates/ppf.js.map +1 -0
  108. package/dist/templates/producer.d.ts +11 -0
  109. package/dist/templates/producer.d.ts.map +1 -0
  110. package/dist/templates/producer.js +979 -0
  111. package/dist/templates/producer.js.map +1 -0
  112. package/dist/templates/production.d.ts +8 -0
  113. package/dist/templates/production.d.ts.map +1 -0
  114. package/dist/templates/production.js +574 -0
  115. package/dist/templates/production.js.map +1 -0
  116. package/dist/templates/supplyDemand.d.ts +8 -0
  117. package/dist/templates/supplyDemand.d.ts.map +1 -0
  118. package/dist/templates/supplyDemand.js +1282 -0
  119. package/dist/templates/supplyDemand.js.map +1 -0
  120. package/dist/templates/tradeGrowth.d.ts +8 -0
  121. package/dist/templates/tradeGrowth.d.ts.map +1 -0
  122. package/dist/templates/tradeGrowth.js +637 -0
  123. package/dist/templates/tradeGrowth.js.map +1 -0
  124. package/dist/tools/index.d.ts +25 -0
  125. package/dist/tools/index.d.ts.map +1 -0
  126. package/dist/tools/index.js +54 -0
  127. package/dist/tools/index.js.map +1 -0
  128. package/dist/tools/models.d.ts +8 -0
  129. package/dist/tools/models.d.ts.map +1 -0
  130. package/dist/tools/models.js +828 -0
  131. package/dist/tools/models.js.map +1 -0
  132. package/dist/tools/output.d.ts +8 -0
  133. package/dist/tools/output.d.ts.map +1 -0
  134. package/dist/tools/output.js +236 -0
  135. package/dist/tools/output.js.map +1 -0
  136. package/dist/tools/templates.d.ts +8 -0
  137. package/dist/tools/templates.d.ts.map +1 -0
  138. package/dist/tools/templates.js +247 -0
  139. package/dist/tools/templates.js.map +1 -0
  140. package/dist/tools/validation.d.ts +8 -0
  141. package/dist/tools/validation.d.ts.map +1 -0
  142. package/dist/tools/validation.js +181 -0
  143. package/dist/tools/validation.js.map +1 -0
  144. package/dist/types/index.d.ts +187 -0
  145. package/dist/types/index.d.ts.map +1 -0
  146. package/dist/types/index.js +7 -0
  147. package/dist/types/index.js.map +1 -0
  148. package/dist/utils/cache.d.ts +99 -0
  149. package/dist/utils/cache.d.ts.map +1 -0
  150. package/dist/utils/cache.js +192 -0
  151. package/dist/utils/cache.js.map +1 -0
  152. package/dist/utils/index.d.ts +8 -0
  153. package/dist/utils/index.d.ts.map +1 -0
  154. package/dist/utils/index.js +8 -0
  155. package/dist/utils/index.js.map +1 -0
  156. package/dist/utils/logger.d.ts +128 -0
  157. package/dist/utils/logger.d.ts.map +1 -0
  158. package/dist/utils/logger.js +251 -0
  159. package/dist/utils/logger.js.map +1 -0
  160. package/dist/validation/index.d.ts +42 -0
  161. package/dist/validation/index.d.ts.map +1 -0
  162. package/dist/validation/index.js +282 -0
  163. package/dist/validation/index.js.map +1 -0
  164. package/package.json +73 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"producer.js","sourceRoot":"","sources":["../../src/templates/producer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Production and Cost Templates
3
+ *
4
+ * Templates for production functions and cost curves.
5
+ */
6
+ import type { ModelTemplate } from '../types/index.js';
7
+ export declare const productionTemplates: ModelTemplate[];
8
+ //# sourceMappingURL=production.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"production.d.ts","sourceRoot":"","sources":["../../src/templates/production.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAikBvD,eAAO,MAAM,mBAAmB,EAAE,aAAa,EAK9C,CAAC"}
@@ -0,0 +1,574 @@
1
+ /**
2
+ * Production and Cost Templates
3
+ *
4
+ * Templates for production functions and cost curves.
5
+ */
6
+ /**
7
+ * Short-Run Production Function
8
+ */
9
+ const productionShortRun = {
10
+ id: 'production_short_run',
11
+ name: 'Short-Run Production Function',
12
+ description: 'Shows Total Product (TP), Average Product (AP), and Marginal Product (MP) curves with diminishing returns.',
13
+ category: 'production',
14
+ level: 'high_school',
15
+ tags: ['production', 'marginal product', 'average product', 'diminishing returns'],
16
+ parameters: {
17
+ A: {
18
+ type: 'number',
19
+ default: 10,
20
+ description: 'Technology/productivity parameter',
21
+ },
22
+ alpha: {
23
+ type: 'number',
24
+ default: 0.7,
25
+ description: 'Labor elasticity (0 < alpha < 1 for diminishing returns)',
26
+ },
27
+ laborUnits: {
28
+ type: 'number',
29
+ default: 50,
30
+ description: 'Number of labor units to show',
31
+ },
32
+ },
33
+ generate: (params) => {
34
+ const A = params.A ?? 10;
35
+ const alpha = params.alpha ?? 0.7;
36
+ const L_max = params.laborUnits ?? 50;
37
+ return {
38
+ metadata: {
39
+ specVersion: '1.3',
40
+ title: 'Short-Run Production Function',
41
+ description: 'TP, AP, and MP curves showing diminishing marginal returns',
42
+ },
43
+ parameters: {
44
+ A: { value: A, label: 'Productivity', min: 1, max: 20 },
45
+ alpha: { value: alpha, label: 'Labor Elasticity', min: 0.1, max: 0.9, step: 0.05 },
46
+ L: { value: L_max / 2, label: 'Labor (L)', min: 1, max: L_max },
47
+ TP: {
48
+ expression: 'A * L^alpha',
49
+ label: 'Total Product',
50
+ readonly: true,
51
+ },
52
+ AP: {
53
+ expression: 'A * L^(alpha - 1)',
54
+ label: 'Average Product',
55
+ readonly: true,
56
+ },
57
+ MP: {
58
+ expression: 'alpha * A * L^(alpha - 1)',
59
+ label: 'Marginal Product',
60
+ readonly: true,
61
+ },
62
+ },
63
+ charts: [
64
+ {
65
+ id: 'tp-chart',
66
+ title: 'Total Product',
67
+ xAxis: { label: 'Labor (L)', min: 0, max: L_max },
68
+ yAxis: { label: 'Output (Q)', min: 0, max: `${A * Math.pow(L_max, alpha) * 1.2}` },
69
+ elements: [
70
+ {
71
+ id: 'tp-curve',
72
+ type: 'line',
73
+ equation: 'A * x^alpha',
74
+ color: '#2563EB',
75
+ strokeWidth: 3,
76
+ label: 'TP = A × L^α',
77
+ },
78
+ {
79
+ id: 'current-tp',
80
+ type: 'point',
81
+ x: 'L',
82
+ y: 'TP',
83
+ color: '#16A34A',
84
+ label: 'Current',
85
+ droplines: { x: true, y: true },
86
+ },
87
+ ],
88
+ },
89
+ {
90
+ id: 'ap-mp-chart',
91
+ title: 'Average and Marginal Product',
92
+ xAxis: { label: 'Labor (L)', min: 0, max: L_max },
93
+ yAxis: { label: 'AP, MP', min: 0, max: `${A * 2}` },
94
+ elements: [
95
+ {
96
+ id: 'ap-curve',
97
+ type: 'line',
98
+ equation: 'A * x^(alpha - 1)',
99
+ color: '#22C55E',
100
+ strokeWidth: 2,
101
+ label: 'AP = TP/L',
102
+ },
103
+ {
104
+ id: 'mp-curve',
105
+ type: 'line',
106
+ equation: 'alpha * A * x^(alpha - 1)',
107
+ color: '#DC2626',
108
+ strokeWidth: 2,
109
+ label: 'MP = dTP/dL',
110
+ },
111
+ {
112
+ id: 'current-ap',
113
+ type: 'point',
114
+ x: 'L',
115
+ y: 'AP',
116
+ color: '#22C55E',
117
+ },
118
+ {
119
+ id: 'current-mp',
120
+ type: 'point',
121
+ x: 'L',
122
+ y: 'MP',
123
+ color: '#DC2626',
124
+ },
125
+ ],
126
+ annotations: [
127
+ {
128
+ id: 'note',
129
+ text: 'MP < AP (diminishing returns)',
130
+ x: L_max * 0.6,
131
+ y: A * 1.5,
132
+ color: '#6B7280',
133
+ },
134
+ ],
135
+ },
136
+ ],
137
+ };
138
+ },
139
+ };
140
+ /**
141
+ * Short-Run Cost Curves
142
+ */
143
+ const costCurvesShortRun = {
144
+ id: 'cost_curves_short_run',
145
+ name: 'Short-Run Cost Curves',
146
+ description: 'Shows Total Cost (TC), Average Total Cost (ATC), Average Variable Cost (AVC), and Marginal Cost (MC).',
147
+ category: 'production',
148
+ level: 'high_school',
149
+ tags: ['cost', 'marginal cost', 'average cost', 'fixed cost', 'variable cost'],
150
+ parameters: {
151
+ fixedCost: {
152
+ type: 'number',
153
+ default: 100,
154
+ description: 'Fixed cost (FC)',
155
+ },
156
+ varCostCoef: {
157
+ type: 'number',
158
+ default: 2,
159
+ description: 'Variable cost coefficient',
160
+ },
161
+ varCostPower: {
162
+ type: 'number',
163
+ default: 2,
164
+ description: 'Variable cost power (for curvature)',
165
+ },
166
+ },
167
+ generate: (params) => {
168
+ const FC = params.fixedCost ?? 100;
169
+ const c = params.varCostCoef ?? 2;
170
+ const n = params.varCostPower ?? 2;
171
+ return {
172
+ metadata: {
173
+ specVersion: '1.3',
174
+ title: 'Short-Run Cost Curves',
175
+ description: 'FC, VC, TC, AFC, AVC, ATC, and MC',
176
+ },
177
+ parameters: {
178
+ FC: { value: FC, label: 'Fixed Cost', min: 0, max: 200 },
179
+ c: { value: c, label: 'VC Coefficient', min: 0.5, max: 5, step: 0.1 },
180
+ n: { value: n, label: 'VC Power', min: 1.5, max: 3, step: 0.1 },
181
+ Q: { value: 10, label: 'Quantity', min: 1, max: 20 },
182
+ VC: { expression: 'c * Q^n', label: 'Variable Cost', readonly: true },
183
+ TC: { expression: 'FC + VC', label: 'Total Cost', readonly: true },
184
+ AFC: { expression: 'FC / Q', label: 'Avg Fixed Cost', readonly: true },
185
+ AVC: { expression: 'c * Q^(n-1)', label: 'Avg Variable Cost', readonly: true },
186
+ ATC: { expression: 'AFC + AVC', label: 'Avg Total Cost', readonly: true },
187
+ MC: { expression: 'n * c * Q^(n-1)', label: 'Marginal Cost', readonly: true },
188
+ },
189
+ charts: [
190
+ {
191
+ id: 'total-costs',
192
+ title: 'Total Costs',
193
+ xAxis: { label: 'Quantity (Q)', min: 0, max: 25 },
194
+ yAxis: { label: 'Cost ($)', min: 0, max: 'TC * 2' },
195
+ elements: [
196
+ {
197
+ id: 'fc-line',
198
+ type: 'horizontalLine',
199
+ y: 'FC',
200
+ color: '#6B7280',
201
+ strokeDasharray: '5,5',
202
+ label: 'FC',
203
+ },
204
+ {
205
+ id: 'vc-curve',
206
+ type: 'line',
207
+ equation: 'c * x^n',
208
+ color: '#F59E0B',
209
+ label: 'VC',
210
+ },
211
+ {
212
+ id: 'tc-curve',
213
+ type: 'line',
214
+ equation: 'FC + c * x^n',
215
+ color: '#2563EB',
216
+ strokeWidth: 3,
217
+ label: 'TC = FC + VC',
218
+ },
219
+ {
220
+ id: 'current-tc',
221
+ type: 'point',
222
+ x: 'Q',
223
+ y: 'TC',
224
+ color: '#16A34A',
225
+ droplines: { x: true, y: true },
226
+ },
227
+ ],
228
+ },
229
+ {
230
+ id: 'average-marginal',
231
+ title: 'Average and Marginal Costs',
232
+ xAxis: { label: 'Quantity (Q)', min: 0, max: 25 },
233
+ yAxis: { label: 'Cost per Unit ($)', min: 0, max: 'max(ATC, MC) * 1.5' },
234
+ elements: [
235
+ {
236
+ id: 'afc-curve',
237
+ type: 'line',
238
+ equation: 'FC / x',
239
+ color: '#6B7280',
240
+ lineStyle: 'dotted',
241
+ label: 'AFC',
242
+ domain: { min: 1 },
243
+ },
244
+ {
245
+ id: 'avc-curve',
246
+ type: 'line',
247
+ equation: 'c * x^(n-1)',
248
+ color: '#F59E0B',
249
+ label: 'AVC',
250
+ },
251
+ {
252
+ id: 'atc-curve',
253
+ type: 'line',
254
+ equation: 'FC / x + c * x^(n-1)',
255
+ color: '#2563EB',
256
+ strokeWidth: 2,
257
+ label: 'ATC',
258
+ domain: { min: 1 },
259
+ },
260
+ {
261
+ id: 'mc-curve',
262
+ type: 'line',
263
+ equation: 'n * c * x^(n-1)',
264
+ color: '#DC2626',
265
+ strokeWidth: 2,
266
+ label: 'MC',
267
+ },
268
+ {
269
+ id: 'current-atc',
270
+ type: 'point',
271
+ x: 'Q',
272
+ y: 'ATC',
273
+ color: '#2563EB',
274
+ },
275
+ {
276
+ id: 'current-mc',
277
+ type: 'point',
278
+ x: 'Q',
279
+ y: 'MC',
280
+ color: '#DC2626',
281
+ },
282
+ ],
283
+ annotations: [
284
+ {
285
+ id: 'mc-atc-note',
286
+ text: 'MC crosses ATC at min ATC',
287
+ x: 15,
288
+ y: 'ATC * 0.6',
289
+ color: '#6B7280',
290
+ },
291
+ ],
292
+ },
293
+ ],
294
+ };
295
+ },
296
+ };
297
+ /**
298
+ * Long-Run Average Cost
299
+ */
300
+ const longRunAverageCost = {
301
+ id: 'lrac',
302
+ name: 'Long-Run Average Cost',
303
+ description: 'Shows the Long-Run Average Cost curve as an envelope of Short-Run Average Cost curves, illustrating economies and diseconomies of scale.',
304
+ category: 'production',
305
+ level: 'undergraduate',
306
+ tags: ['cost', 'long run', 'economies of scale', 'LRAC', 'plant size'],
307
+ parameters: {
308
+ minEfficientScale: {
309
+ type: 'number',
310
+ default: 50,
311
+ description: 'Minimum efficient scale (output level)',
312
+ },
313
+ minCost: {
314
+ type: 'number',
315
+ default: 10,
316
+ description: 'Minimum average cost',
317
+ },
318
+ },
319
+ generate: (params) => {
320
+ const MES = params.minEfficientScale ?? 50;
321
+ const minCost = params.minCost ?? 10;
322
+ return {
323
+ metadata: {
324
+ specVersion: '1.3',
325
+ title: 'Long-Run Average Cost',
326
+ description: 'LRAC as envelope of SRAC curves showing returns to scale',
327
+ },
328
+ parameters: {
329
+ MES: { value: MES, label: 'Min Efficient Scale' },
330
+ Cmin: { value: minCost, label: 'Minimum Cost' },
331
+ Q: { value: MES, label: 'Output', min: 10, max: 150 },
332
+ LRAC: {
333
+ expression: 'Cmin + 0.001 * (Q - MES)^2',
334
+ label: 'LRAC',
335
+ readonly: true,
336
+ },
337
+ },
338
+ charts: [
339
+ {
340
+ id: 'main',
341
+ title: 'Long-Run Average Cost Curve',
342
+ xAxis: { label: 'Output (Q)', min: 0, max: 150 },
343
+ yAxis: { label: 'Average Cost', min: 0, max: 'Cmin * 3' },
344
+ elements: [
345
+ // SRAC curves for different plant sizes
346
+ {
347
+ id: 'srac1',
348
+ type: 'line',
349
+ equation: 'Cmin + 5 + 0.01 * (x - 25)^2',
350
+ color: '#93C5FD',
351
+ lineStyle: 'dashed',
352
+ label: 'SRAC₁ (Small)',
353
+ domain: { min: 5, max: 50 },
354
+ },
355
+ {
356
+ id: 'srac2',
357
+ type: 'line',
358
+ equation: 'Cmin + 0.005 * (x - MES)^2',
359
+ color: '#60A5FA',
360
+ lineStyle: 'dashed',
361
+ label: 'SRAC₂ (Medium)',
362
+ domain: { min: 25, max: 80 },
363
+ },
364
+ {
365
+ id: 'srac3',
366
+ type: 'line',
367
+ equation: 'Cmin + 0.002 * (x - MES)^2',
368
+ color: '#3B82F6',
369
+ lineStyle: 'dashed',
370
+ label: 'SRAC₃ (Optimal)',
371
+ domain: { min: 35, max: 100 },
372
+ },
373
+ {
374
+ id: 'srac4',
375
+ type: 'line',
376
+ equation: 'Cmin + 3 + 0.003 * (x - 100)^2',
377
+ color: '#2563EB',
378
+ lineStyle: 'dashed',
379
+ label: 'SRAC₄ (Large)',
380
+ domain: { min: 70, max: 140 },
381
+ },
382
+ // LRAC envelope
383
+ {
384
+ id: 'lrac',
385
+ type: 'line',
386
+ equation: 'Cmin + 0.001 * (x - MES)^2',
387
+ color: '#DC2626',
388
+ strokeWidth: 3,
389
+ label: 'LRAC',
390
+ },
391
+ {
392
+ id: 'mes-point',
393
+ type: 'point',
394
+ x: 'MES',
395
+ y: 'Cmin',
396
+ color: '#16A34A',
397
+ label: 'MES',
398
+ },
399
+ {
400
+ id: 'current',
401
+ type: 'point',
402
+ x: 'Q',
403
+ y: 'LRAC',
404
+ color: '#7C3AED',
405
+ droplines: { x: true, y: true },
406
+ },
407
+ ],
408
+ annotations: [
409
+ {
410
+ id: 'eos-label',
411
+ text: 'Economies of Scale',
412
+ x: 'MES * 0.4',
413
+ y: 'Cmin * 2',
414
+ color: '#22C55E',
415
+ },
416
+ {
417
+ id: 'dos-label',
418
+ text: 'Diseconomies of Scale',
419
+ x: 'MES * 1.8',
420
+ y: 'Cmin * 2',
421
+ color: '#DC2626',
422
+ },
423
+ ],
424
+ },
425
+ ],
426
+ };
427
+ },
428
+ };
429
+ /**
430
+ * Profit Maximization
431
+ */
432
+ const profitMaximization = {
433
+ id: 'profit_maximization',
434
+ name: 'Profit Maximization (MR = MC)',
435
+ description: 'Shows how a firm maximizes profit by producing where Marginal Revenue equals Marginal Cost.',
436
+ category: 'production',
437
+ level: 'undergraduate',
438
+ tags: ['profit', 'marginal revenue', 'marginal cost', 'optimization'],
439
+ parameters: {
440
+ price: {
441
+ type: 'number',
442
+ default: 30,
443
+ description: 'Market price (for perfect competition)',
444
+ },
445
+ fixedCost: {
446
+ type: 'number',
447
+ default: 50,
448
+ description: 'Fixed cost',
449
+ },
450
+ mcIntercept: {
451
+ type: 'number',
452
+ default: 5,
453
+ description: 'MC curve intercept',
454
+ },
455
+ mcSlope: {
456
+ type: 'number',
457
+ default: 1,
458
+ description: 'MC curve slope',
459
+ },
460
+ },
461
+ generate: (params) => {
462
+ const P = params.price ?? 30;
463
+ const FC = params.fixedCost ?? 50;
464
+ const mcInt = params.mcIntercept ?? 5;
465
+ const mcSlope = params.mcSlope ?? 1;
466
+ return {
467
+ metadata: {
468
+ specVersion: '1.3',
469
+ title: 'Profit Maximization',
470
+ description: 'Firm chooses output where MR = MC',
471
+ },
472
+ parameters: {
473
+ P: { value: P, label: 'Price', min: 10, max: 50 },
474
+ FC: { value: FC, label: 'Fixed Cost' },
475
+ a: { value: mcInt, label: 'MC Intercept' },
476
+ b: { value: mcSlope, label: 'MC Slope', step: 0.1 },
477
+ Qstar: {
478
+ expression: '(P - a) / b',
479
+ label: 'Optimal Q',
480
+ readonly: true,
481
+ },
482
+ TR: { expression: 'P * Qstar', label: 'Total Revenue', readonly: true },
483
+ TC: {
484
+ expression: 'FC + a * Qstar + 0.5 * b * Qstar^2',
485
+ label: 'Total Cost',
486
+ readonly: true,
487
+ },
488
+ profit: { expression: 'TR - TC', label: 'Profit', readonly: true },
489
+ ATC_at_Q: {
490
+ expression: 'FC / Qstar + a + 0.5 * b * Qstar',
491
+ label: 'ATC at Q*',
492
+ readonly: true,
493
+ },
494
+ },
495
+ charts: [
496
+ {
497
+ id: 'main',
498
+ title: 'Profit Maximization: MR = MC',
499
+ xAxis: { label: 'Quantity (Q)', min: 0, max: 'Qstar * 2' },
500
+ yAxis: { label: 'Price/Cost ($)', min: 0, max: 'P * 2' },
501
+ elements: [
502
+ // Profit rectangle
503
+ {
504
+ id: 'profit-area',
505
+ type: 'rectangle',
506
+ x1: 0,
507
+ y1: 'ATC_at_Q',
508
+ x2: 'Qstar',
509
+ y2: 'P',
510
+ fill: '#22C55E',
511
+ opacity: 0.3,
512
+ label: 'Economic Profit',
513
+ },
514
+ {
515
+ id: 'mr',
516
+ type: 'horizontalLine',
517
+ y: 'P',
518
+ color: '#2563EB',
519
+ label: 'MR = P (Perfect Competition)',
520
+ },
521
+ {
522
+ id: 'mc',
523
+ type: 'line',
524
+ equation: 'a + b * x',
525
+ color: '#DC2626',
526
+ strokeWidth: 2,
527
+ label: 'MC',
528
+ },
529
+ {
530
+ id: 'atc',
531
+ type: 'line',
532
+ equation: 'FC / x + a + 0.5 * b * x',
533
+ color: '#7C3AED',
534
+ label: 'ATC',
535
+ domain: { min: 2 },
536
+ },
537
+ {
538
+ id: 'optimal-point',
539
+ type: 'point',
540
+ x: 'Qstar',
541
+ y: 'P',
542
+ color: '#16A34A',
543
+ label: 'Q*',
544
+ droplines: { x: true },
545
+ },
546
+ {
547
+ id: 'atc-point',
548
+ type: 'point',
549
+ x: 'Qstar',
550
+ y: 'ATC_at_Q',
551
+ color: '#7C3AED',
552
+ },
553
+ ],
554
+ annotations: [
555
+ {
556
+ id: 'profit-label',
557
+ text: 'π = ${profit:.0f}',
558
+ x: 'Qstar / 2',
559
+ y: '(P + ATC_at_Q) / 2',
560
+ color: '#166534',
561
+ },
562
+ ],
563
+ },
564
+ ],
565
+ };
566
+ },
567
+ };
568
+ export const productionTemplates = [
569
+ productionShortRun,
570
+ costCurvesShortRun,
571
+ longRunAverageCost,
572
+ profitMaximization,
573
+ ];
574
+ //# sourceMappingURL=production.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"production.js","sourceRoot":"","sources":["../../src/templates/production.ts"],"names":[],"mappings":"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"}