Carregando WebR...
# ============================================ # Funcoes Custo: CD, Linear, Leontief, CES # Comparacao lado a lado # ============================================ w <- 4; v <- 1 # precos dos insumos q_seq <- seq(0.1, 10, length = 500) # --- 1. Cobb-Douglas --- # (a) CRS: q = K^0.5 * L^0.5 (alpha+beta = 1) C_cd_crs <- function(q) { kappa <- 2 * (0.5^(-0.5) * 0.5^(-0.5)) kappa * w^0.5 * v^0.5 * q # linear em q } # (b) DRS: q = K^0.25 * L^0.25 (alpha+beta = 0.5) C_cd_drs <- function(q) { # C = kappa * w^0.5 * v^0.5 * q^2 kappa <- 1 * (0.25^(-0.25) * 0.25^(-0.25))^2 kappa * w^0.5 * v^0.5 * q^2 } # (c) IRS: q = K^0.4 * L^0.6 com alpha+beta = 1 mas A > 1 # Usaremos alpha=0.6, beta=0.9 => s=1.5 C_cd_irs <- function(q) { a <- 0.6; b <- 0.9; s <- a + b kappa <- s * (a^(-a) * b^(-b))^(1/s) kappa * w^(b/s) * v^(a/s) * q^(1/s) # q^(2/3), concava } # --- 2. Linear: q = 2K + L --- C_linear <- function(q) { q * min(v/2, w/1) # min{v/alpha, w/beta} } # --- 3. Leontief: q = min{K, 2L} --- C_leontief <- function(q) { (1 * v + 0.5 * w) * q # alpha*v + beta*w (com K/1 = L/0.5) } # --- Calculos --- C1 <- C_cd_crs(q_seq) C2 <- sapply(q_seq, C_cd_drs) C3 <- C_cd_irs(q_seq) C4 <- sapply(q_seq, C_linear) C5 <- sapply(q_seq, C_leontief) # --- Tabela resumo --- cat("====== FUNCOES CUSTO: CATALOGO ======\n") cat("Precos: w =", w, " v =", v, "\n\n") cat("1. CD (CRS): q = K^0.5 L^0.5\n") cat(" C(q) =", round(C_cd_crs(1), 2), "* q | CMg = CMe =", round(C_cd_crs(1), 2), "\n\n") cat("2. CD (DRS): q = K^0.25 L^0.25\n") cat(" C(q) ~ q^2 | CMg crescente | CMe crescente\n\n") cat("3. CD (IRS): q = K^0.6 L^0.9\n") cat(" C(q) ~ q^(2/3) | CMg decrescente | CMe decrescente\n\n") cat("4. Linear: q = 2K + L\n") cat(" C(q) = min{v/2, w/1}*q = min{", v/2, ",", w, "}*q =", min(v/2, w)*1, "*q\n") cat(" Firma usa so capital (v/alpha < w/beta)\n\n") cat("5. Leontief: q = min{K, 2L}\n") cat(" C(q) = (v + w/2)*q =", (v + w/2), "*q | Independe dos precos!\n") # --- Graficos --- par(mfrow = c(1, 2), mar = c(4.5, 4.5, 3, 1), bg = "#f8f9fa") # Painel 1: Custo Total plot(q_seq, C1, type = "l", lwd = 3, col = "#0d6efd", xlab = "q", ylab = "C(q)", main = "Custo Total", ylim = c(0, max(C2) * 0.6), cex.lab = 1.1) lines(q_seq, C2, lwd = 2, col = "#dc3545") lines(q_seq, C3, lwd = 2, col = "#198754") lines(q_seq, C4, lwd = 2, col = "#fd7e14", lty = 2) lines(q_seq, C5, lwd = 2, col = "#6f42c1", lty = 3) legend("topleft", legend = c("CD (CRS)", "CD (DRS)", "CD (IRS)", "Linear", "Leontief"), col = c("#0d6efd", "#dc3545", "#198754", "#fd7e14", "#6f42c1"), lwd = c(3, 2, 2, 2, 2), lty = c(1, 1, 1, 2, 3), cex = 0.75, bg = "white") # Painel 2: Custo Medio CMe1 <- C1 / q_seq CMe2 <- C2 / q_seq CMe3 <- C3 / q_seq CMe4 <- C4 / q_seq CMe5 <- C5 / q_seq plot(q_seq, CMe1, type = "l", lwd = 3, col = "#0d6efd", xlab = "q", ylab = "CMe(q)", main = "Custo Medio", ylim = c(0, max(CMe2[q_seq > 1]) * 1.2), cex.lab = 1.1) lines(q_seq, CMe2, lwd = 2, col = "#dc3545") lines(q_seq, CMe3, lwd = 2, col = "#198754") lines(q_seq, CMe4, lwd = 2, col = "#fd7e14", lty = 2) lines(q_seq, CMe5, lwd = 2, col = "#6f42c1", lty = 3) legend("topright", legend = c("CD (CRS) - const.", "CD (DRS) - cresc.", "CD (IRS) - decresc.", "Linear - const.", "Leontief - const."), col = c("#0d6efd", "#dc3545", "#198754", "#fd7e14", "#6f42c1"), lwd = c(3, 2, 2, 2, 2), lty = c(1, 1, 1, 2, 3), cex = 0.7, bg = "white")
▶ Executar
↻ Resetar
(Aguardando WebR...)