first draft
BIN
course2/sem3/labs/lab3.01/assets/1.png
Normal file
|
After Width: | Height: | Size: 144 KiB |
BIN
course2/sem3/labs/lab3.01/assets/2.png
Normal file
|
After Width: | Height: | Size: 222 KiB |
BIN
course2/sem3/labs/lab3.01/assets/3.png
Normal file
|
After Width: | Height: | Size: 193 KiB |
BIN
course2/sem3/labs/lab3.01/assets/4.png
Normal file
|
After Width: | Height: | Size: 318 KiB |
BIN
course2/sem3/labs/lab3.01/assets/5.png
Normal file
|
After Width: | Height: | Size: 216 KiB |
|
Before Width: | Height: | Size: 365 KiB After Width: | Height: | Size: 365 KiB |
BIN
course2/sem3/labs/lab3.01/assets/7.png
Normal file
|
After Width: | Height: | Size: 327 KiB |
BIN
course2/sem3/labs/lab3.01/assets/8.png
Normal file
|
After Width: | Height: | Size: 137 KiB |
@@ -210,116 +210,119 @@
|
||||
|
||||
Сначала точки с миллиметровой бумаги были перенесены в компьютер при помощи программы в Приложении.
|
||||
|
||||
...
|
||||
#align(center)[#image("assets/1.png")]
|
||||
#align(center)[#image("assets/2.png")]
|
||||
|
||||
Затем я соединил их эквипотенциальными линиями.
|
||||
|
||||
#align(center)[#image("assets/3.png")]
|
||||
#align(center)[#image("assets/4.png")]
|
||||
|
||||
После, я добавил систему линий поля:
|
||||
|
||||
#align(center)[#image("assets/5.png")]
|
||||
#align(center)[#image("assets/6.png")]
|
||||
|
||||
=== 10. Расчет величины напряженности.
|
||||
|
||||
Расстояние между эквипотенциалями $phi = 5.89 "В"$ и $φ = 7.89 "В"$:
|
||||
Напряженность в центре ванны и поверхностная плотность заряда.
|
||||
|
||||
По формуле $angle.l E_(12) angle.r approx.eq frac(phi_1 - phi_2, l_(12))$ величина напряженности в центре электролитической ванны между линиями с $phi = 5.89 " и " phi = 7.89$:
|
||||
|
||||
При $y = 10 "см"$: $phi_4 = 5.89 "В"$ при $x = 12.5 "см"$; $phi_5 = 7.89 "В"$ при $x = 16.5 "см"$.
|
||||
|
||||
$
|
||||
l = 16.5 - 12.3 = 4.2 "см" = 0.042 "м"
|
||||
Delta phi = 7.89 - 5.89 = 2.0 "B"
|
||||
$
|
||||
$
|
||||
E_"ц" = (Delta phi)/l = (2.0)/(0.042) = 47.6 "В/м"
|
||||
angle.l E_"ц" angle.r approx frac(phi_5 - phi_4, l_(45)) = frac(7.89 - 5.89, (165 - 125) times 10^(-3)) = 50.0 "В/м"
|
||||
$
|
||||
|
||||
Берём точки у правого края при y = 10: $phi = 9.89 В$, $phi = 11.89 В$.
|
||||
В окрестности одного из электродов
|
||||
|
||||
Аналогично в окрестности правого электрода между линиями с $phi = 9.89$ и $phi = 11.89$
|
||||
|
||||
Смотрим точки при $y = 10 "см"$: $phi = 9.89 "В"$ при $x = 21.3 "см"$; $phi = 11.89 "В"$ при $x = 25.6 "см"$.
|
||||
|
||||
$
|
||||
l = 25.6 - 21.3 = 4.3 "см" = 0.043 "м"
|
||||
Delta φ = 11.89 - 9.89 = 2.0 "В"
|
||||
angle.l E_"э" angle.r approx frac(11.89 - 9.89, (256 - 213) times 10^(-3)) = 46.5 "В/м"
|
||||
$
|
||||
|
||||
Поверхностная плотность
|
||||
|
||||
Правый электрод находится при $X = 30 "см"$ с потенциалом $phi = 14 "В"$.
|
||||
|
||||
Ближайшая измеренная точка: $phi = 11.89 "В"$ при $x = 25.6 "см"$
|
||||
|
||||
По нормали к электроду:
|
||||
|
||||
$
|
||||
Delta phi = 14 - 11.89 = 2.11 "В" \
|
||||
Delta l_n = (300 - 256) times 10^(-3) = 44 × 10^(-3) "м"
|
||||
$
|
||||
|
||||
$
|
||||
E_"э" = (Delta φ)/l = (2.0)/(0.043) = 46.5 "В/м"
|
||||
sigma' = -frac(epsilon - 1, epsilon) sigma
|
||||
$
|
||||
|
||||
У правого электрода ближайшая точка: $φ = 11.89 "В"$ при $x = 25.6 "см"$
|
||||
|
||||
До электрода: $Delta l_n = 30 - 25.6 = 4.4 "см" = 0.044 м$
|
||||
До электрода $φ = 14 "В"$
|
||||
|
||||
Возьмём $epsilon = 79$. Тогда множитель
|
||||
$
|
||||
Delta phi = 14 - 11.89 = 2.11 "В"
|
||||
sigma' = epsilon_0 dot (Delta phi)/(Delta l_n) = 8.85 dot 10^(-12) dot (2.11)/(0.044)
|
||||
sigma' = 4.24 dot 10^(-10) "Кл/м²"
|
||||
frac(epsilon - 1, epsilon) = frac(79-1, 79) = frac(78, 79) approx 0.987341772.
|
||||
$
|
||||
|
||||
Погрешности:
|
||||
|
||||
Следовательно
|
||||
$
|
||||
Delta phi = plus.minus 0.1 "B", Delta X = plus.minus 1 "мм"
|
||||
sigma' approx -0.987342 sigma
|
||||
$
|
||||
|
||||
Для $E_"ц"$:
|
||||
$
|
||||
delta phi = frac(2 dot 0.1, 2.0) = 0.1
|
||||
delta l = frac(2 dot 0.001, 0.042) = 0.048
|
||||
delta E = sqrt(0.1^2 + 0.048^2) = 0.111
|
||||
Если учитывать максимальное значение $epsilon = 81$:
|
||||
|
||||
Delta E_"ц" = 47.6 dot 0.111 = 5.3 "В/м"
|
||||
$
|
||||
frac(80, 81) approx 0.987654321 space.quad arrow.double space.quad sigma' approx -0.987654 sigma.
|
||||
$
|
||||
|
||||
=== 11. Расчет $E_min$ и $E_max$.
|
||||
|
||||
Слева от кольца $phi = 2.4 arrow 3.4: При Y=10: от (3.0, 10) до (4.2, 10), расстояние ≈ 1.2 см
|
||||
- E = 1.0 В / 0.012 м = **83.3 В/м**
|
||||
=== 12. Нахождение $E_min$ и $E_max$.
|
||||
|
||||
**Справа от кольца (φ = 8.4 → 9.4):**
|
||||
- При Y=10: от (21.8, 10) до (22.9, 10), расстояние ≈ 1.1 см
|
||||
- E = 1.0 В / 0.011 м = **90.9 В/м**
|
||||
Между $phi = 8.4$ и $phi = 9.4$ справа от кольца.
|
||||
|
||||
**Между φ = 9.4 и 10.4:**
|
||||
- При Y=10: от (22.9, 10) до (24.6, 10), расстояние ≈ 1.7 см
|
||||
- E = 1.0 В / 0.017 м = **58.8 В/м**
|
||||
$
|
||||
Delta x = 1.1 "см" = 0.011 "м"
|
||||
$
|
||||
|
||||
**Вблизи кольца (φ = 6.4 → 7.4):**
|
||||
- Внутри кольца данных мало, но расстояние большое (пропуск φ = 7.4 в центре)
|
||||
$
|
||||
E = frac(1.0, 0.011) = 90.9 "В/м"
|
||||
$
|
||||
|
||||
### Поиск минимальной напряженности E_min
|
||||
$
|
||||
E_max = 91 "В/м", space (22.4, 10)
|
||||
$
|
||||
|
||||
**Внутри/вблизи кольца:**
|
||||
- От φ = 6.4 (точка 8.8, 10) до φ = 7.4 отсутствуют промежуточные точки
|
||||
- До φ = 8.4 (точка 21.8, 10): расстояние ≈ 13 см!
|
||||
- E = 2.0 В / 0.13 м = **15.4 В/м** (очень низкая)
|
||||
Между $φ = 6.4$ и $φ = 8.4$
|
||||
Путь $approx 6 "см" = 0.06 "м"$
|
||||
|
||||
**Центр ванны без кольца в районе кольца:**
|
||||
- От φ = 5.4 до φ = 6.4: расстояние большое из-за искажения поля кольцом
|
||||
$
|
||||
E = frac(2.0, 0.06) = 33.3 "В/м"
|
||||
$
|
||||
|
||||
---
|
||||
$
|
||||
E_min = 33 "В/м", space (15, 9)
|
||||
$
|
||||
|
||||
## РЕЗУЛЬТАТЫ:
|
||||
Точки $E_min$ и $E_max$:
|
||||
|
||||
### **E_max ≈ 83-91 В/м** (округляем до **E_max = 90 В/м** или **85 В/м**)
|
||||
#align(center)[#image("assets/7.png")]
|
||||
|
||||
**Расположение:**
|
||||
- Справа от кольца, между φ = 8.4 В и φ = 9.4 В
|
||||
- Координаты: примерно X = 22-23 см, Y = 10 см
|
||||
- **Область:** Между кольцом и правым электродом, где эквипотенциальные линии максимально сближены
|
||||
=== 13. Построение графика $phi = phi(x), space y = 10 "см"$.
|
||||
|
||||
### **E_min ≈ 15-30 В/м** (округляем до **E_min = 30 В/м** или **33 В/м**)
|
||||
#align(center)[#image("assets/8.png")]
|
||||
|
||||
**Расположение:**
|
||||
- В области вблизи кольца/внутри кольца
|
||||
- Между φ = 6.4 В и φ = 8.4 В
|
||||
- Координаты: X = 9-16 см, Y = 10 см
|
||||
- **Область:** Около проводящего кольца и внутри него, где эквипотенциальные линии разрежены
|
||||
=== 14. Вывод.
|
||||
|
||||
---
|
||||
### Вывод
|
||||
|
||||
## Физическое объяснение:
|
||||
В ходе работы экспериментально построены эквипотенциальные линии и силовые линии поля для двух конфигураций — без кольца и с кольцом.
|
||||
|
||||
1. **Максимум E_max** наблюдается справа от кольца, потому что:
|
||||
- Силовые линии огибают проводящее кольцо
|
||||
- Они концентрируются в узких промежутках
|
||||
- Эквипотенциали сближаются → E увеличивается
|
||||
В центре ванны напряжённость составила $E_"ц" approx 50 "В/м"$, у правого электрода — $E_"э" approx 46.5 "В/м"$.
|
||||
|
||||
2. **Минимум E_min** наблюдается около/внутри кольца, потому что:
|
||||
- Внутри проводника E = 0 (φ = const)
|
||||
- Кольцо "экранирует" поле
|
||||
- Эквипотенциали разрежены в этой области
|
||||
Для системы с кольцом найдены:
|
||||
$E_max approx 91 "В/м"$ и $E_"min" approx 33 "В/м"$.
|
||||
|
||||
**Для отчёта можно написать:**
|
||||
- **E_max = 83 В/м** (справа от кольца, X ≈ 22 см, Y = 10 см)
|
||||
- **E_min = 33 В/м** (вблизи кольца, X ≈ 12 см, Y = 10 см)
|
||||
Поверхностная плотность наведённого заряда определяется как $sigma' = -frac(epsilon-1, epsilon) sigma approx -0.987 sigma$ при $epsilon = 79$, что показывает почти полное экранирование поля водой.
|
||||
|
||||
92
course2/sem3/labs/lab3.01/scripts/4.py
Normal file
@@ -0,0 +1,92 @@
|
||||
from collections import defaultdict
|
||||
from sys import argv
|
||||
|
||||
import matplotlib.pyplot as plt
|
||||
import numpy as np
|
||||
|
||||
|
||||
def read_points(filename: str) -> list[tuple[float, float, str]]:
|
||||
points = []
|
||||
with open(filename, "r", encoding="utf-8") as f:
|
||||
for line in f:
|
||||
line = line.strip()
|
||||
if line and not line.startswith("#"):
|
||||
parts = line.split()
|
||||
if len(parts) >= 3:
|
||||
x = float(parts[0])
|
||||
y = float(parts[1])
|
||||
label = parts[2]
|
||||
points.append((x, y, label))
|
||||
return points
|
||||
|
||||
|
||||
def main() -> None:
|
||||
points = read_points(argv[1])
|
||||
|
||||
plt.figure(figsize=(8.27, 11.69))
|
||||
plt.xlim(0, 30)
|
||||
plt.ylim(0, 20)
|
||||
plt.gca().set_aspect("equal", adjustable="box")
|
||||
plt.grid(True, linewidth=0.3)
|
||||
plt.xticks(range(0, 31, 2))
|
||||
plt.yticks(range(0, 21, 2))
|
||||
|
||||
grouped = defaultdict(list)
|
||||
for x, y, phi in points:
|
||||
grouped[phi].append((x, y))
|
||||
|
||||
for x, y, label in points:
|
||||
plt.scatter(x, y, color="red", s=15)
|
||||
plt.text(x + 0.3, y + 0.3, label, fontsize=9)
|
||||
|
||||
for phi, coords in grouped.items():
|
||||
coords.sort(key=lambda p: p[1])
|
||||
xs, ys = zip(*coords)
|
||||
plt.plot(xs, ys, linewidth=0.8, label=f"φ={phi} В")
|
||||
|
||||
if int(argv[2]):
|
||||
theta = np.linspace(0, 2 * np.pi, 200)
|
||||
cx, cy = 15, 9
|
||||
|
||||
for r in [5, 6]:
|
||||
x = cx + r * np.cos(theta)
|
||||
y = cy + r * np.sin(theta)
|
||||
plt.plot(x, y, color="blue", linewidth=1)
|
||||
|
||||
emax_x, emax_y = 22.4, 10
|
||||
emin_x, emin_y = 15, 9
|
||||
|
||||
plt.arrow(
|
||||
emax_x + 2,
|
||||
emax_y + 2,
|
||||
-1.5,
|
||||
-1.2,
|
||||
head_width=0.4,
|
||||
head_length=0.3,
|
||||
fc="darkgreen",
|
||||
ec="darkgreen",
|
||||
linewidth=2,
|
||||
)
|
||||
plt.text(emax_x + 2.3, emax_y + 2.3, "E_max", fontsize=11, color="darkgreen")
|
||||
|
||||
plt.arrow(
|
||||
emin_x - 3,
|
||||
emin_y + 3,
|
||||
1.5,
|
||||
-1.5,
|
||||
head_width=0.4,
|
||||
head_length=0.3,
|
||||
fc="darkgreen",
|
||||
ec="darkgreen",
|
||||
linewidth=2,
|
||||
)
|
||||
plt.text(emin_x - 4.2, emin_y + 3.2, "E_min", fontsize=11, color="darkgreen")
|
||||
|
||||
plt.xlabel("X (см)")
|
||||
plt.ylabel("Y (см)")
|
||||
plt.title("Эквипотенциальные линии")
|
||||
plt.savefig("points.png", dpi=300)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
55
course2/sem3/labs/lab3.01/scripts/5.py
Normal file
@@ -0,0 +1,55 @@
|
||||
from pathlib import Path
|
||||
from typing import List, Tuple
|
||||
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
|
||||
def read_points(filename: str) -> List[Tuple[float, float, float]]:
|
||||
pts = []
|
||||
for line in Path(filename).read_text(encoding="utf-8").splitlines():
|
||||
line = line.strip()
|
||||
if not line or line.startswith("#"):
|
||||
continue
|
||||
parts = line.split()
|
||||
if len(parts) < 3:
|
||||
continue
|
||||
x = float(parts[0])
|
||||
y = float(parts[1])
|
||||
phi = float(parts[2])
|
||||
pts.append((x, y, phi))
|
||||
return pts
|
||||
|
||||
|
||||
def phi_vs_x_at_y(
|
||||
points: List[Tuple[float, float, float]], y_target: float, tol: float = 1e-6
|
||||
):
|
||||
xs = []
|
||||
phis = []
|
||||
for x, y, phi in points:
|
||||
if abs(y - y_target) <= tol:
|
||||
xs.append(x)
|
||||
phis.append(phi)
|
||||
paired = sorted(zip(xs, phis), key=lambda p: p[0])
|
||||
if not paired:
|
||||
return [], []
|
||||
xs_sorted, phis_sorted = zip(*paired)
|
||||
return list(xs_sorted), list(phis_sorted)
|
||||
|
||||
|
||||
p1 = read_points("points1.txt")
|
||||
p2 = read_points("points2.txt")
|
||||
|
||||
x1, yphi1 = phi_vs_x_at_y(p1, 10.0)
|
||||
x2, yphi2 = phi_vs_x_at_y(p2, 10.0)
|
||||
|
||||
plt.figure(figsize=(10, 5))
|
||||
if x1:
|
||||
plt.plot(x1, yphi1, marker="o", linestyle="-", label="points1.txt (Y=10)")
|
||||
if x2:
|
||||
plt.plot(x2, yphi2, marker="s", linestyle="--", label="points2.txt (Y=10)")
|
||||
plt.xlabel("X (см)")
|
||||
plt.ylabel("φ (В)")
|
||||
plt.title("Зависимость φ = φ(X) при Y = 10 см")
|
||||
plt.grid(alpha=0.4)
|
||||
plt.legend()
|
||||
plt.savefig("phi_vs_x_Y10.png", dpi=300)
|
||||