...принципы, заложенные ARCnet, продолжат существовать еще долгое время.
ARCnet - протокол с назначением маркера, т.е. права вещать, лишь одному адаптеру в сети в каждый момент времени. Этим он на логическом уровне отличается от Ethernet, протокола с множественным доступом и обнаружением коллизий. Разница между ними в чем-то похожа на разницу между невытесняющей и вытесняющей многозадачностью, каковые продолжат существовать пока существует этот мир - надеюсь, это продлится действительно долго)
Всё неправильно. То, что вы называете усилителями на нашей схеме - это биполярные транзисторы разной полярности, подключеные к общей нагрузке как "эмиттерные повторители". Всё вместе составляет двухтактный (push-pull) усилитель тока, об этом вы можете прочитать примерно везде, а пока вот читаете здесь.
Я немного поспешил с выбором картинки, вообразив, что и вы в спешке произвели тот странный абзац. Я ошибся, признаю. По схеме нельзя с уверенностью сказать, работает ли этот двухтактный каскад в режиме В, АВ или даже А (последнее вряд ли, графики говорят - на картинке АВ, верно). Так вот, разница между этими классами - в величине тока покоя, у В он - нулевой, у АВ - небольшой, но достаточный, чтобы выходное сопротивление этого каскада при нулевам выходном токе было достаточно малым в сравнении с сопротивлением нагрузки, у А - большой, в однотактном каскаде А равный максимальному выходному току, в двухтактном - половине.
Отдельный вопрос к тем, кто плюсует ваш комментарий - ребята, вы кто?
Go переписан на Go, котлин на котлине, хаскель на хаскеле, далее не везде, но много где. Даже старичек паскаль был переписан с фортрана на паскаль, ведь он появился до С.
Всё, что компилируется, хочет, чтобы на нём написали компилятор )
Питоновский int произвольной длины инкрементируется програмно, а нативный для процессора float - аппаратно, одним процессорным опкодом за один процессорный такт. Хотя здесь фактические вычисления ведутся с малыми числами и, по факту, короткой арифметикой, предварительно производится уточнение, что и в каком виде хранится в переменной.
В python2 было два целочисленных типа - короткий, размером в машинное слово, и длинный, в python3 их заменили одним int - ввиду того, что серьёзную арифметику стали считать в NumPy, а в эпизодической проигрыш в быстродействии не критичен.
4 вместо 1 - не оптимизация, так, для красоты.
Вы еще упускаете импорт конкретной функции вместо модуля, её содержащего - вычисление атрибута random.random в цикле тоже чего-то стоит. Смотрите сюда:
import random
from random import random as rnd
from dis import dis
def f(): return random.random()
def g(): return rnd()
dis(f)
print("-------------")
dis(g)
У статьи два тэга: Python и Математика. Это прекрасно.
Начнем с питона, перепишем авторское решение, сохранив его идею:
from random import random
def estimate_pi(n):
s = 0.
for _ in range(n):
x, y = random(), random()
if 1. >= x * x + y * y:
s += 4.
return s / n
Хм, в CPython 3.10 это работает в 3.5 раза быстрее. Как же так, дружище? Как же тэг Python?
Ладно, что там с математикой? Про сходимость тут уже высказались, хорошо бы немного практики, чтобы цифры пощупать. Считаем по-всякому площадь сектора OAC.
Я умею интегрировать трапециями!
from math import sqrt
def trapezoid_pi(n):
s = .5 # значения в крайних точках интервала
# берутся с весом 0.5, а значения эти - 1 и 0
x = step = 1. / n
for _ in range(n - 1):
s += sqrt(1. - x * x)
x += step
return s * 4. / n
Я могу интегрировать по Симпсону!
from math import fsum
def simpson_pi(n):
x, step, res = 0, 1. / n, [.5]
for _ in range(n):
x += step
res.append(sqrt(1. - x * x))
return (fsum(res[::2]) + fsum(res[1::2]) * 2.) * 8. / (n * 3)
Правда, это даёт выигрыш в точности против трапеции всего 2.5 раза. Всё из-за особенности в точке C - там касательная к окружности идёт отвесно. Так это можно обойти: отдельно посчитаем площадь сегмента AB и четырехугольника OABC.
from math import fsum, sqrt
def simpson45_pi(n):
x, step, res, s5 = 0., 1. / n, [.0], sqrt(.5)
for _ in range(n):
x += step
res.append(sqrt(1. - x * x * .5) - 1. + (1. - s5) * x)
AB = (fsum(res[::2]) + fsum(res[1::2]) * 2.) * s5 * 2. / (n * 3)
OABC = s5 # взял аналитически
return (OABC + AB * 2.) * 4.
Да, а как же цифры? Вот они:
Абсолютная погрешность против библиотечного значения π для n = 2 ** 3 == 8
(разбиение интервала на степень двойки дает мне выигрыш в точности)
estimate_pi 0.47564011559266456 # усредненно по большой выборке
trapezoid_pi 0.05177350923261992
simpson_pi 0.02040348381437518
simpson45_pi 0.00003003695260295
Погрешность для n = 2 ** 13, мельчить сильнее вроде незачем
estimate_pi 0.01486375361227077 # усредненно
trapezoid_pi 0.00000158604010281
simpson_pi 0.00000061939277884
simpson45_pi 0.00000000000000000
Ну что тут скажешь? Друзья, не суйте Монте-Карло куда попало.
А можно еще и с NumPy, но уж это как-нибудь в другой раз.
Класс set (множество) — это одна из ключевых структур данных в Python
Класс set был предложен в PEP218 от 31-Jul-2000 и реализован в Python 2.3 (релиз July 29, 2003). И какая же это «ключевая структура», если 10 лет без неё обходились?
print([func(x) for x in values if func(x)]) # хреново
print([y for y in (func(x) for x in values) if y]) # так себе
print([y for x in values if (y := func(x))]) # получше
print(list(filter(None, map(func, values)))) # вот так нормально
Если попытаться передать функции random.choice(seq) неиндексируемую последовательность, например — словарь, множество или значение числового типа — возникнет ошибка.
Ошибкой было назвать словарь неиндексируемой последовательностью. Да возникнет она не у только лишь всех )
from random import choice
d = {i: i * i for i in range(10)}
print(choice(d)) # всё пучком
from math import atan2
def draw(title, n, m, f):
y0, x0 = (n - 1) / 2, (m - 1) / 2 # нужен центр
print(f"\n{title:-^{m * 3 - 1}}")
res = [0] * (n * m)
for i, j in enumerate(sorted(range(n * m),
key=lambda i: f(i // m - y0, i % m - x0))):
res[j] = f"{i:>02}"
for i in range(0, n * m, m):
print(*res[i:i + m])
f = lambda y, x: (max(abs(y), abs(x)), atan2(x, y))
# высота и ширина матрицы должны быть одной четности,
# или центр нужно сдвинуть - для изотропности
draw("spiral", 4, 6, f)
draw("spiral", 5, 5, f)
5 лайфхаков Python, которые сделают ваш код более читабельным и элегантным
Отнюдь не всегда:
Гнать таких знаек в шею ссаными тряпками.
Технологии прошлого — обсуждаем ARCnet
ARCnet - протокол с назначением маркера, т.е. права вещать, лишь одному адаптеру в сети в каждый момент времени. Этим он на логическом уровне отличается от Ethernet, протокола с множественным доступом и обнаружением коллизий. Разница между ними в чем-то похожа на разницу между невытесняющей и вытесняющей многозадачностью, каковые продолжат существовать пока существует этот мир - надеюсь, это продлится действительно долго)
РКК «Энергия» запатентовала опорные блоки информационных знаков для поверхности Луны
На пыльных тропинках далёких планет
Останутся наши фланцы и мешки.
Банк России выпустил мобильную игру для подростков «Экономикум»
Тайна планеты Инфурсия
YAML из Ада
Кратчайший ликбез по сабжу, "Learn X in Y minutes, where X=yaml" - это yaml-документ в 200 строк.
Про "yes/no is boolean" там есть.
Почитайте, может еще что новое для себя узнаете )
Что есть функция в Python?
Это что-то страшное - исходник стандартной библиотеки.
Простите её авторов за доставленный шок )
Звуковой усилитель на драйвере шагового двигателя L298 и таймере 555. Да, 555-й может и спеть
Всё неправильно. То, что вы называете усилителями на нашей схеме - это биполярные транзисторы разной полярности, подключеные к общей нагрузке как "эмиттерные повторители". Всё вместе составляет двухтактный (push-pull) усилитель тока, об этом вы можете прочитать примерно везде, а пока вот читаете здесь.
Я немного поспешил с выбором картинки, вообразив, что и вы в спешке произвели тот странный абзац. Я ошибся, признаю. По схеме нельзя с уверенностью сказать, работает ли этот двухтактный каскад в режиме В, АВ или даже А (последнее вряд ли, графики говорят - на картинке АВ, верно). Так вот, разница между этими классами - в величине тока покоя, у В он - нулевой, у АВ - небольшой, но достаточный, чтобы выходное сопротивление этого каскада при нулевам выходном токе было достаточно малым в сравнении с сопротивлением нагрузки, у А - большой, в однотактном каскаде А равный максимальному выходному току, в двухтактном - половине.
Отдельный вопрос к тем, кто плюсует ваш комментарий - ребята, вы кто?
Звуковой усилитель на драйвере шагового двигателя L298 и таймере 555. Да, 555-й может и спеть
Серьёзно? )))
Операционные усилители. Часть 7: Операционные усилители на лампах
В характеристиках отсутствует полоса пропускания - а любопытно. Предположу ~100kHz.
ps Цена адская, $34 в 1952г - это почти $400 сегодня. Похоже, всё упиралось в мелкосерийность.
АНБ США порекомендовало IT-компаниям отказаться от языков C и C++
Go переписан на Go, котлин на котлине, хаскель на хаскеле, далее не везде, но много где. Даже старичек паскаль был переписан с фортрана на паскаль, ведь он появился до С.
Всё, что компилируется, хочет, чтобы на нём написали компилятор )
Гэри Дарби, автобиография — Delphi For Fun
Вращающееся оборудование? В Саудовской Аравии? За много денег?
Впервые встречаю столь смешное именование буровой установки, лайк )
Ищем значение числа Пи, используя генератор случайных значений
Питоновский int произвольной длины инкрементируется програмно, а нативный для процессора float - аппаратно, одним процессорным опкодом за один процессорный такт. Хотя здесь фактические вычисления ведутся с малыми числами и, по факту, короткой арифметикой, предварительно производится уточнение, что и в каком виде хранится в переменной.
В python2 было два целочисленных типа - короткий, размером в машинное слово, и длинный, в python3 их заменили одним int - ввиду того, что серьёзную арифметику стали считать в NumPy, а в эпизодической проигрыш в быстродействии не критичен.
4 вместо 1 - не оптимизация, так, для красоты.
Вы еще упускаете импорт конкретной функции вместо модуля, её содержащего - вычисление атрибута random.random в цикле тоже чего-то стоит. Смотрите сюда:
В РФ сформирован список из 92 научных приборов, производство которых необходимо наладить в ближайшие годы
Привет из 1960х
Физтех-песня - Нам такие точные нужны приборы
Нам такие точные нужны приборы,
Чтобы все эффекты мерять без разбора,
Точные нужны приборы, но однако
Нам нужны приборы вот с таким вот знаком.
припев:
И тогда прибор нам как жена,
И тогда жена нам не нужна,
И тогда любой из нас не против
Дни и ночи отдавать работе.
Нам нужны такие зеркала на шкалах,
Чтоб их точность атомную превышала,
Чтоб цена делений и цена зазора
Втрое превышали бы цену прибора.
припев.
В наших институтах будут очень скоро
Новые отечественные приборы
Скоро, очень скоро будут, а пока ты
Выпиши прибор в соединенных штатах.
припев: ---------- : ----------
И тогда, науку нашу славя,
Мы буржуйских прихвостней в хвосте оставим.
припев.
Нашелся и mp3
Ищем значение числа Пи, используя генератор случайных значений
У статьи два тэга: Python и Математика. Это прекрасно.
Начнем с питона, перепишем авторское решение, сохранив его идею:
Хм, в CPython 3.10 это работает в 3.5 раза быстрее. Как же так, дружище? Как же тэг Python?
Ладно, что там с математикой? Про сходимость тут уже высказались, хорошо бы немного практики, чтобы цифры пощупать. Считаем по-всякому площадь сектора OAC.
Я умею интегрировать трапециями!
Я могу интегрировать по Симпсону!
Правда, это даёт выигрыш в точности против трапеции всего 2.5 раза. Всё из-за особенности в точке C - там касательная к окружности идёт отвесно. Так это можно обойти: отдельно посчитаем площадь сегмента AB и четырехугольника OABC.
Да, а как же цифры? Вот они:
Ну что тут скажешь? Друзья, не суйте Монте-Карло куда попало.
А можно еще и с NumPy, но уж это как-нибудь в другой раз.
Исчерпывающее руководство по множествам в Python
По-вашему, питон 2.2 и питон 2.3 ключевым образом отличаются? Разработчики питона так не думали, сообщество не высказывало такого мнения.
Ответьте себе на вопрос «почему?», это ключевой вопрос )
Исчерпывающее руководство по множествам в Python
Класс set был предложен в PEP218 от 31-Jul-2000 и реализован в Python 2.3 (релиз July 29, 2003). И какая же это «ключевая структура», если 10 лет без неё обходились?
Нехорошо, когда статья начинается со вранья.
Списковые включения в Python мощнее, чем можно подумать
14 задач по Kotlin lists, которые заставят вас подумать
Такие загадки проще придумывать, чем разгадывать. Идешь по списку функций, что там у нас? Пусть будет
mapIndexed { index, value → index + value}
Что там в итоге? 29 – замечательно, в жизни бы бы не подумал, беру!
Справедливости ради, стандартная библиотека kotlin классная, и такие посты – отличная профилактика от велосипедостроения.
�
6 хитростей Python, о которых никто не рассказывает новичкам
Ошибкой было назвать словарь неиндексируемой последовательностью. Да возникнет она не у только лишь всех )
Змейка здорового человека
Покончим с этим разговором.