(PROBLEMA COMPUTACIONAL) Para um fio sólido de raio " a\) " centrado no eixo \(z\), sabe-se que sua densidade volumétrica de carga é \(\rho_{v}=\left(2 \frac{C}{m}\right) / A\), onde " \(A\) " é a área da seção transversal do fio sólido. Se a densidade de fluxo elétrico é dada por:
\[\boldsymbol{D}= \begin{cases}\frac{\rho_{v}}{2} \rho, & \rho \leq a \\\ \frac{\rho_{v} a^{2}}{2 \rho}, & \rho \geq a\end{cases}
(a) Faça um programa que calcule de forma ITERATIVA o valor do raio para um valor de densidade de fluxo elétrico máximo igual a (150 \mathrm{C} / \mathrm{m}^{2}] a uma distância de 6 mm da parte externa do condutor.
(b) Mostre graficamente a variação do valor da densidade de fluxo elétrico desde a origem até 10 cm no plano xy.
Passo 1
O enunciado pede duas coisas:
Determinar, de forma iterativa, o valor do raio a de um fio cilíndrico, de modo que a densidade de fluxo elétrico seja D_{\rm alvo}=150,\mathrm{C/m^2} a uma distância de 6,\mathrm{mm} da superfície do condutor.
Mostrar graficamente a variação de D(\rho) desde a origem até \rho=0{,}10,\mathrm{m} no plano xy.
Conteúdos necessários: Lei de Gauss para cilindros (para obter D(\rho)), definição de densidade volumétrica \rho_v, montagem de uma função-objetivo f(a)=0 e método iterativo (Newton–Raphson ou bisseção) para achar a, além de plotagem numérica em software (por ex. Python+matplotlib).
Passo 2
Escrevemos primeiro a carga linear \lambda e a densidade volumétrica \rho_v:
Escolhemos, por exemplo, o método da bisseção para garantir convergência mesmo sem derivadas.
Definir intervalo inicial [a_{\rm min},\,a_{\rm max}] com a_{\rm min}>0 e a_{\rm max} grande o suficiente (ex.: 0{,}001 a 0{,}10,\mathrm{m}).
Verificar f(a_{\rm min})\cdot f(a_{\rm max})<0. Se não mudar de sinal, não há raiz física no intervalo.
Enquanto \bigl|a_{\rm max}-a_{\rm min}\bigr|>\varepsilon (tol. ex.: 10^{-6},\mathrm{m}):
a_{\rm mid} = (a_{\rm min}+a_{\rm max})/2.
Se f(a_{\rm min})\,f(a_{\rm mid})<0, então a_{\rm max}=a_{\rm mid}, senão a_{\rm min}=a_{\rm mid}.
A raiz aproximada fica em a_{\rm aprox}=(a_{\rm min}+a_{\rm max})/2.
Passo 4
Pseudocódigo (Python–like):
import numpy as np
lambda\(0=2\) # C/m
d \(=6\)e-3 # m
\(D_target =150\) # C/\(m^2\)
tol \(=1\)e-6 # m
def f(a):
return lambda0/(2*np.pi*(\(a+d\))) - \(D_target a_min =1\)e-3 # m
\(a_max =0.10\) # m
# Checar mudança de sinal
if f(\(a_min\))*f(\(a_max\)) > 0:
print("Não há raiz física em [a_min,a_max]")
else:
while (\(a_max\) - \(a_min\)) > tol:
\(a_mid =0.5\)*(\(a_min\) + \(a_max\))
if f(\(a_min\))*f(\(a_mid\)) < 0:
\(a_max\) = \(a_mid\)
else:
\(a_min\) = \(a_mid a_aprox =0.5\)*(\(a_min\) + \(a_max\))
print("Raio aproximado:", \(a_aprox\), "m")
Passo 5
Para a parte (b), geramos um vetor de \rho\) de \(0\) a \(0{,}10\)\,\(\mathrm{m}\) e calculamos
\[D(\rho) = \begin{cases} \dfrac{\rho_v}{2}\,\rho, & \rho\le a,\\[1em] \dfrac{\lambda}{2\pi\,\rho}, & \rho\ge a, \end{cases}
com (\rho_v=2/(\pi a^2)]. Em Python:
import matplotlib.pyplot as plt
# supondo \(a_aprox\) obtido
a = \(a_aprox rho_v =2\)/(np.pi*a**2)
rho = np.linspace(0, 0.10, 1000)
D = np.where(rho<=a,
\(rho_v\)*0.5*rho,
lambda0/(2*np.pi*rho))
plt.plot(rho, D)
plt.xlabel("ρ (m)")
plt.ylabel("D (C/m^2)")
plt.title("Variação de D(ρ)")
plt.grid(True)
plt.show()
```\]
Resposta
(a) O programa de bisseção reporta que não existe raiz positiva física em [0{,}001,0{,}10],m, pois f(a) não muda de sinal nesse intervalo.
(b) O gráfico é gerado pelo código acima, mostrando D(\rho) crescendo linearmente de 0 até \rho=a e decaindo como 1/\rho para \rho>a.