Задать вопрос
  • Как работают потоки электронов при параллельном подключении батареек?

    engine9
    @engine9
    Разрабатываю интерфейсы и трехмерные презентации.
    У вас ошибка в рассуждениях, токи одноимённых зарядов не могут течь в противоположных направлениях. В схеме, что у у вас нарисованы вы используете идеальные источники с нулевым R внутренним, в реальности будет примерно вот так:

    xflzey0mw1o-rip3z8zvfygl1va.gif

    1) Источник с б0льшим ЭДС будет гнать ток через источник с меньшим ЭДС, так заряжают аккумуляторы, например.
    2) Ток через реальную батарейку будет ограничен R внутр источника.

    Вот тут можете сами поиграть с параметрами схемы: https://tinyurl.com/25oh8k9l
    Ответ написан
    Комментировать
  • Как работают потоки электронов при параллельном подключении батареек?

    @tifco
    65e37e76625c1090412330.png
    1) При параллельном подключении источников, общее напряжение на них равно.
    Тут получится среднее между двумя:
    Uср=(U1+U2)/2=(1В+3В)/2=4В/2=2В.
    С этим я согласен.

    2) Не согласен с направлением движения тока. Как-то принято считать, в электротехнике, его идущим от "+" к "-". Т. е. от источника избытка электронов к месту их недостатка. От ИЗБЫТКА к НЕДОСТАТКУ - без упоминания чего именно, без конкретизации. Воды, шариков и т. п. - если взять аналогии.

    Понятно, что если смотреть с т. з. химии, то все будет наоборот. Там, где есть много электронов, будет большой отрицательный заряд атомов (переизбыток электронов). И в противоположность: где мало, там избыток плюсовых зарядов атомов (или недостаток электронов в атомных оболочках). Т. к., изначально, как известно, атом нейтрален по заряду.
    Вот вы и указали направление с т. з. химии. Науки общего плана. Хотя, повторюсь, у специалистов конкретных специальностей, узких - так сказать, взгляд иной.

    3) Интересные рисунки конечно. Но обычно как-то пользуются несколько иным способом анализа цепей. Существуют формулы, законы, математический аппарат.
    Вы рисуете линии, которые показывают ток I. В то время как характеристика, проставленная рядом, в Вольтах - напряжение U. Может не стоит путать сущности?
    Напряжение распространяется параллельно полюсам источника ("+" и "-") или между полюсами источника и полюсами нагрузки. Ток - течет по контуру между полюсами.

    4) Вы линиями указали ток. Для тока существует 1-й закон Кирхгофа: "сумма токов, входящих в узел, равна сумме токов, исходящих из узла".
    В первом контуре (слева) течет I1. Во втором (справа) - I2. В общем контуре, что объединяет внешним периметром контуры 1 и 2, течет I3.

    GB - батарея элементов, R - сопротивление.
    Контур 1: GB1, GB2,
    Контур 2: GB2, R1,
    Контур 3: GB1, R1.

    Узел 1 (соединение 3-х проводников сверху (точка)): входят (направленная к узлу стрелка): I1, I2, I3, выходят I1, I2, I3,
    Узел 2 (снизу): входят I1, I2, I3, выходят: I1, I2, I3.

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

    5) Пусть GB1 = 1В, GB2 = 3В. R1 = 1000 Ом, r = 100 Ом. r - внутреннее сопротивление источника.
    Каковы будут токи I1, I2 и I3?

    Закон Ома для полной цепи:
    I=U/(R+r)

    I1=1/(100+100)=0,005 А
    I2=3/(1000+100)=0,0027 А
    I3=1/(1000+100)=0,0009 А

    6) Какое будет напряжение на элементе GB1?
    общий ток через батарею:
    IGB1=I1+I3=0,005+0,0009=0.0059 А
    ???напряжение, подаваемое на батарею 1:??? - зачем мне это здесь?
    ???UGB2=GB2=3 В???
    закон Ома для участка цепи:
    I=U/R -> U=Ixr
    U=0.0059x100=0,59 В

    Какое будет напряжение на элементе GB2?
    общий ток через батарею:
    IGB21=I1-I2=0,005-0,0027=0,0023 А
    ???напряжение, подаваемое на батарею 2:??? - зачем мне это здесь?
    ???UGB2=GB1=1 В???
    закон Ома для участка цепи:
    I=U/R -> U=Ixr
    U=0,0023x100=0,23 В

    Какое будет напряжение на резисторе R1?
    общий ток через резистор:
    IR1=I2+I3=0,0027+0,0009=0,0036 А
    общее напряжение двух источников, подаваемое на резистор:
    UR1=Uср=(U1+U2)/2=(1В+3В)/2=4В/2=2В.
    закон Ома для участка цепи:
    I=U/R -> U=IxR
    U=0,0036x1000=3,6 В

    7) Согласно 2-му закону Кирхгофа: "алгебраическая сумма падений напряжений в контуре равна нулю".
    Есть три элемента, имеющих напряжение на них:
    UGB1=0,59 В,
    UGB2=0,23 В,
    UR1=3,6 В.

    Тогда для каждого контура:
    Uк1: 0,59+0,23=0,82 В,
    Uк2: 0,23+3,6=3,83 В,
    Uк3: 0,59+3,6=4,19 В.
    Здесь знака минус нет, т. к. источники напряжения не включены встречно.
    Получены: 0,82 В, 3,83 В, 4,19 В.
    Результат, конечно, интересный...
    Где тут алгебраический ноль?

    8) И какие, по итогу, реально напряжения получаются на 3-х элементах? Что-то не догоняю.

    Вариант		GB1, В	GB2, В	R1, В
    A		2	2	2
    B		1	3	2
    C		1	3	3,6
    D		0,59	0,23	3,6


    9) Еще есть наблюдение из жизни: если источник мощный, то его напряжение не так-то просто просадить. Оно будет держаться на уровне, все равно. Если источник маломощный, то подключи к нему сколь мощный потребитель или низкоомную нагрузку, то питающее напряжение сразу просядет. Батарейки - второй случай, в основном. С электросетью домовой или автомобильным аккумулятором не сравнить.
    Здесь надо заметить, что 1000 Ом резистора - не низкоомная нагрузка. А вот 100 Ом сопротивления источника я взял наобум. И это, в общем-то, достаточно мало. Я просто не знаю каковы реально эти величины в жизни. Т. е. порядок цифр.

    10) Вообще, что касается общего напряжения двух параллельных батареек, то тут мне нравится аналогия с двумя бочками, заполненными водой и соединенными вместе нижней трубкой. Так сказать, сообщающиеся сосуды. Если букву V считать за ведро. То получится, что первая батарея - бочка, содержащая 1 ведро, а вторая батарея - 3 ведра. Если их соединить между собой, то общий уровень воды выровняется до отметки в 2 ведра - так в каждой бочке. Но это аналогия. Аналогии не всегда и везде работают. С ними надо осторожнее. Если пример неудачен, то получится только хуже. Т. к. есть некоторые сходства в явлениях и процессах, так же как и различия. В народе говорят: "сколько людей, столько и мнений". :)

    11) Токи получились вот такие:
    I1=0,005 А,
    I2=0,0027 А,
    I3=0,0009 А.

    12) Как видите, и мне не все ясно в данной ситуации. Хотя, казалось бы, схема простейшая.
    Ответ написан
    Комментировать
  • Как работают потоки электронов при параллельном подключении батареек?

    @pfg21
    ex-турист
    ТОЭ, часть первая, метод контурных токов. Изучать от корки до корки.
    В нем описано как распределять контурные токи, а также правило что в одном контуре не должно быть "прописано" двух токов (не помню точные определения)

    Опять же, даже теоретически, схема бессмысленна.
    ибо два источника разного напряжения замкнутые меж собой создадут ток бесконечной мощности.
    Ну и какой-то ток будет идти через сопротивление. Какой точно вычислить не возможно :)
    Ответ написан
    Комментировать
  • Как работают потоки электронов при параллельном подключении батареек?

    @VT100
    Embedded hardware & software.
    Закон Ома + правила Кирхгофа (в основе одного из правил - банальный закон сохранения зарядов). ТОЭ, в общем.
    Ответ написан
    Комментировать
  • Как работают потоки электронов при параллельном подключении батареек?

    NeiroNx
    @NeiroNx
    Программист
    На самом деле там нет отдельных потоков - стрелки показывают происхождение влияния.
    Ответ написан
    Комментировать
  • Почему не срабатывает проверка на первое монтирование?

    Kentavr16
    @Kentavr16
    long cold winter
    Если правильно понял желаемый результат - я бы сделал примерно так. Обрати внимание на то, как срабатывает сообщение в консоли.
    Ответ написан
    Комментировать
  • Как считать по модифицированной формуле Жаккара?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Берём формулу и рассматриваем крайние случаи.
    64bcea5910806234106711.pngПервый крайний случай - подмножества совпадают, X ≡ Y и X ≢ ∅. В этом случае числитель дроби будет равен единице (X ∩ Y ≡ X => |X ∩ Y| = |X|), знаменатель равен нулю (|X̅ ∩ Y| = 0). Соответственно, результат будет +∞.
    Второй крайний случай - подмножества не содержат одинаковых элементов, X ≢ ∅, Y ≢ ∅. В этом случае числитель равен нулю (X ∩ Y ≡ ∅), в знаменателе |Y| / |X̅|. Соответственно, результат будет 0.
    Особые случаи - X ≡ ∅, Y ≡ ∅, X̅ ≡ ∅.
    Ответ написан
    Комментировать
  • Почему график отображается без вызова метода plt.show()?

    Maksim_64
    @Maksim_64
    Data Analyst
    График как раз таки должен отображаться потому что вы используете Jupyter (IPython). В Jupyter нет необходимости вообще в команде plt.show(), ее просто нет. plt.plot уже рисует график внутри нотебука, любые дальнейшие команды просто обновляют ваш plot. И все.

    Можно поменять ему mode. plt.ioff() и тогда через plt.show() (Может и проблемы какие будут настраивать придется) вот нужная вам ссылка на раздел документации. https://matplotlib.org/stable/users/explain/intera...

    Главный аргумент, здесь что по умолчанию plt.show() (ничего не делает) в notebooke.
    Ответ написан
    Комментировать
  • Почему длинная строка ломает вёрстку?

    iiiBird
    @iiiBird Куратор тега CSS
    Пока ты спишь - твой конкурент совершенствуется
    .center {min-width: 0;}
    Ответ написан
    Комментировать
  • Почему фиксированный блок перемещается при прокрутке?

    @slide13
    frontend/web-developer
    HitGirl объясню в чем проблема. Да, фиксированный элемент фиксируется относительно вьюпорта браузера и остается фиксированным при скролле, но в данном случае у вас у родителя (container) установлено свойство container-type: inline-size;
    но при установке некоторых свойств они влияют на фиксированно спозиционированные элементы и те становятся позиционируемыми относительно родительского элемента, устанавливающего это свойство, т.е. в данном случае родителя (container) и больше не являются фиксированными относительно вьюпорта браузера.

    Вот список всех таких свойств:
    filter
    transform
    backdrop-filter
    perspective
    contain
    container
    transform-style
    content-visibility

    container и в частности container-type в принципе не стоит использовать пока, т.к. 76% всего глобальная поддержка.
    В данном случае заменить fixed элемент на sticky самое простое, как вы и сделали. Альтернативный вариант через js получить ширину container и установить ее для mobileSidebar, если требуется иногда прям fixed оставить
    Ответ написан
    3 комментария
  • Как задать расстояние до правой стороны?

    melpnz
    @melpnz Куратор тега Figma
    UX/UI дизайнер
    Не зная точного контекста что это и зачем такое вам, предложу вариант: завернуть в Auto Layout и отступ задавать уже с любой стороны от края до объекта внутри.

    63c972118bac1439403507.gif
    Ответ написан
    Комментировать
  • Как задать расстояние до правой стороны?

    tank666
    @tank666
    Дизайнер, Figma-эксперт, автор плагинов для Figma.
    X = Ширина контейнера (родительский объект) - Ширина объекта (который необходимо сместить) - Величина смещения.

    Например:
    800-220-40
    Ответ написан
    2 комментария
  • Как получить атрибуты и их значения из строки?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Легче всего так: ([a-zA-Z0-9-]+)=("[^"]*"|'[^']*'|[a-zA-Z0-9_-]+)
    Но нужно очищать результат от лишних " и '.
    Ответ написан
    5 комментариев
  • В чем разница между pk и id?

    @deliro
    pk — это алиас для поля, которое является primary_key. По умолчанию оно и является id. Но может быть, например, uuid или вообще любым другим, у которого primary_key=True
    Использовать pk предпочтительней, однако, в 99% проектах разницы никакой нет.
    Ответ написан
    Комментировать
  • Как правильно отображать примеры кода на сайте?

    @meburka
    Есть тег xmp, вставь код в него
    Ответ написан
    Комментировать
  • Как работает преобразование времени в Python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я-бы переписал так.

    # benchmark start
    start = time.time_ns()
    .....
    end = time.time_ns()

    Это избавляет меня от обнуления на 60-й секунде.

    А все остальные преобразования единиц измерений времени в физике я-бы сделал уже при печати на экран.
    Так - правильнее. Никто не придерется что мы теряем точность.
    Ответ написан
    Комментировать
  • Как работает преобразование времени в Python?

    Maksim_64
    @Maksim_64
    Data Analyst
    1. Отступы в вашем коде (2) пробела должно быть 4.
    2. По существу вопроса 1 ns (нано секунда) = 10^(-9). То есть 1 sec / 1_000_000_000 то есть вы перевели в секунды. А ваш код (якобы выдает в (милисекундах)). По факту ваш результат в секундах. %60 - ничего не меняет в вашем коде вы можете убрать (и там где start и там где end естественно) и ничего не изменится. число на выходе вы получите тоже самое.
    3. Правильно использовать
    start = time.perf_counter()
    ваш код
    end = time.perf_counter()

    end - start даст вам продолжительность выполнения кода в секундах.
    Обратите еще раз внимание что ваш код подсчитал в в секундах а вы говорите что милисекундах. print("time taken:", f"{end-start:.5f}ms")
    Ответ написан
    Комментировать
  • Как работает преобразование времени в Python?

    twobomb
    @twobomb
    Неизвестно.
    По сути здесь время переводят из наносекунд в милисекунду а потом из милисекунд в секунды.
    А остаток просто ограничит это 60 секундами. По идее такой таймер может показать неверное время и чем больше времени выполняется тем больше вероятность неверных значений
    P.S. Например если
    start = 50
    end = 10
    То результат будет -40, а должен быть 20 или 80 или 140 или сколько минут там у нас выполняется что-то....
    Ответ написан
    Комментировать
  • Как правильно рендерить рекурсивный массив используя useMemo?

    Alexandroppolus
    @Alexandroppolus
    кодир
    reply.replies = [newReply,...reply.replies]
    setReplies(rootReplies=>[...rootReplies])

    ты неправильно обрабатываешь стейт. По факту здесь меняется содержимое некоего узла, а потом возвращается поверхностная копия всего дерева.

    есть 3 варианта:
    1) Продолжать использовать дерево в useState. Но менять его надо иммутабельно. То есть если у какого-то узла что-то поменялось, то надо заменить узел и все его паренты, а не только корневой массив.
    2) Нормализовать данные в плоскую структуру. Каждому реплаю присваивается уникальный id, все реплаи складываются в объект, где ключем будет id. В массиве replies у каждого объекта будут лежать не сами объекты, а только id, и потом надо будет их соединять во время рендера. Этот вариант канонично используется для redux, но как зайдет для useState, навскидку не совсем понятно.
    3) Использовать MobX с этими его observable.deep (или просто observable). Как всегда, самый простой и удобный вариант.
    Ответ написан
    Комментировать
  • Как правильно рендерить рекурсивный массив используя useMemo?

    Aetae
    @Aetae Куратор тега TypeScript
    Тлен
    useMemo - это не магическое заклинание. Оно работает сверяя изменения переданных props не более того.
    В твоём случае в useMemomemo надо обернуть сам компонент Replay, а не голый jsx.
    Ответ написан
    2 комментария