Методы расчета элетростатических полей


http://alexandr4784.narod.ru/
Откуда: Псков
Кто: книгоиздательство
Перейдя по указанной ниже ссылке Вы найдете примеры решения задач на расчет электростатических полей

Как расчитать емкость конденсатора произвольной формы . К примеру вот такого конденсатора. Красным показанны — обкладки конденсатора.

diver12 , с чего начать ?
1. Рабить поверхность на маленькие части и посчитать их ёмкость. Но как считать их емкость ?
2. Посчитать напряженность поля и разделить на заряд. Но как посчитать напряженность поля ?

Как расчитать q и U ?
Вот пока промоделировал поле от двух зарядов.
Если один заряд будет больше другого
отредактировал(а) givigudze: 2022-11-05 15:50 GMT

Там два точечных заряда, они изображены маленькими красными точками.
Можно так же попробовать смоделировать конденсатор. Но нужно понимать как будет заряд по поверхности распределятся.

Можно запустить в QB64
CLS
SCREEN 12
COLOR 4
CIRCLE (100, 200), 5
CIRCLE (250, 150), 5
CIRCLE (250, 250), 5
DIM qx1, qx2, qy1, qy2, cx, cy AS INTEGER
COLOR 15
qx1 = 100
qy1 = 200
qx2 = 250
qy2 = 150
qx3 = 250
qy3 = 250
DIM MX%
DIM MY%
cx = 200
cy = 190
FOR I = 1 TO 40 STEP 1
r = SQR((cx — qx1) * (cx — qx1) + (cy — qy1) * (cy — qy1))
F! = (5000 / (r * r))
SA! = (cy — qy1) / r
CA! = (cx — qx1) / r
xf1 = CA * F!
yf1 = SA * F!
M = SQR(xf1 * xf1 + yf1 * yf1)
xf1 = 14 * xf1 / M
yf1 = 14 * yf1 / M
r = SQR((cx — qx2) * (cx — qx2) + (cy — qy2) * (cy — qy2))
F! = (5000 / (r * r))
SA! = (cy — qy2) / r
CA! = (cx — qx2) / r
xf2 = CA * F!
yf2 = SA * F!
M = SQR(xf2 * xf2 + yf2 * yf2)
xf2 = 14 * xf2 / M
yf2 = 14 * yf2 / M
r = SQR((cx — qx3) * (cx — qx3) + (cy — qy3) * (cy — qy3))
F! = (5000 / (r * r))
SA! = (cy — qy3) / r
CA! = (cx — qx3) / r
xf3 = CA * F!
yf3 = SA * F!
M = SQR(xf3 * xf3 + yf3 * yf3)
xf3 = 14 * xf3 / M
yf3 = 14 * yf3 / M
LINE (cx, cy)-(cx + xf1 + xf2 + xf3, cy + yf1 + yf2 + yf3)
cx = cx + xf1 + xf2 + xf3
cy = cy + yf1 + yf2 + yf3
NEXT
DO
DO WHILE _MOUSEINPUT
COLOR 0
CIRCLE (MX, MY), 4
MX = _MOUSEX
MY = _MOUSEY
COLOR 10
CIRCLE (_MOUSEX, _MOUSEY), 4
IF _MOUSEBUTTON(1) = -1 THEN
cx = MX
cy = MY
FOR I = 1 TO 40 STEP 1
r = SQR((cx — qx1) * (cx — qx1) + (cy — qy1) * (cy — qy1))
F! = (5000 / (r * r))
SA! = (cy — qy1) / r
CA! = (cx — qx1) / r
xf1 = CA * F!
yf1 = SA * F!
M = SQR(xf1 * xf1 + yf1 * yf1)
xf1 = 14 * xf1 / M
yf1 = 14 * yf1 / M
r = SQR((cx — qx2) * (cx — qx2) + (cy — qy2) * (cy — qy2))
F! = (5000 / (r * r))
SA! = (cy — qy2) / r
CA! = (cx — qx2) / r
xf2 = CA * F!
yf2 = SA * F!
M = SQR(xf2 * xf2 + yf2 * yf2)
xf2 = 14 * xf2 / M
yf2 = 14 * yf2 / M
r = SQR((cx — qx3) * (cx — qx3) + (cy — qy3) * (cy — qy3))
F! = (5000 / (r * r))
SA! = (cy — qy3) / r
CA! = (cx — qx3) / r
xf3 = CA * F!
yf3 = SA * F!
M = SQR(xf3 * xf3 + yf3 * yf3)
xf3 = 14 * xf3 / M
yf3 = 14 * yf3 / M
LINE (cx, cy)-(cx + xf1 + xf2 + xf3, cy + yf1 + yf2 + yf3)
cx = cx + xf1 + xf2 + xf3
cy = cy + yf1 + yf2 + yf3
NEXT
END IF
LOOP
LOOP UNTIL INKEY$ <> ""

deleted
Причина: флуд в тематическом разделе.
отредактировал(а) zam: 2024-01-26 15:49 GMT