Отрицательная частота

Всё же как много я не знаю и не понимаю. Последний месяц-два изучаю методы измерения параметров качественности усиления звукового (и не только) сигнала.

Методов есть несколько, но про это в другой раз.

Основа в том, что чистый сигнал определённой частоты (например, 1 КГц) представляет собой синусоиду. Всё, что немного не синусоида, уже есть не чистый сигнал, а сумма сигналов, сумма синусоид. Даже меандр можно описать синусоидами — как функцию y(x) = sin(x) + sin (3x) / 3 + sin (5x) / 5 + .. + sin (nx) / n. Потому что меандр — это сумма синусоид основного сигнала и синусоид нечётных гармоник — то-есть, сигналов с частотой в 3, 5, 7 и так далее до бесконечности раз выше основной. Просто если речь идёт о звуковом сигнале, гармоники выше 19й слышны (как считается) уже не будут, так что меандр там получается не совсем полный, приблизительный.

Так вот если есть источник звукового сигнала, как узнать, насколько чистый там тон? Можно записать это в обыкновенный wav файл, а потом провести над полученным массивом данных математическое издевательство, называемое преобразованием Фурье. Пакетов для этого существует масса, можно взять бесплатный редактор Audacity, в нём есть спектральный анализ (преобразование Фурье это оно и есть).

Но, во-первых, я не ищу лёгкого пути, а во-вторых, мерять гармоники, долго их складывать и вставлять в формулу для расчёта КНИ я не хочу. Нехай электронный болван всё за меня считает, он на то и был куплен.

Так что нарисовал свою программу. Разумеется, на Питоне (на чём же ещё, не на Сях же рисовать). Благо есть модуль SciPy, в котором уже всё придумано, в том числе алгоритм быстрого преобразования Фурье (сиречь FFT).

Алгоритм FFT выдаёт гистограмму. По горизонтали — частота сигнала, по вертикали — его громкость. Примерно так слышит музыку человеческое ухо. Так вот выяснилось, что по умолчанию алгоритм выдаёт симметричную вокруг нуля герц картинку, то-есть, есть как положительная частота, так и отрицательная %) На этом месте я залип — как это, минус один килогерц?

Анализ файла с синусоидой 1 КГц выглядит так:

В принципе оно ведь логично — у синусоиды одна половинка имеет положительные значения от 0 до 1 (в военное время — до 4 =)), а другая — отрицательные, от 0 до -1. Соответственно, положительная частота — для того, что выше нуля, а отрицательная частота — для того, что ниже нуля. Правда, не совсем понятно, почему именно вот так — не было бы логичнее делать положительную и отрицательную амплитуды (громкости)?

Ещё менее понятным стало, когда я силой сгенерировал синусоиду с отрезанной верхушкой и сунул её в анализатор. Вот такую:

Я ожидал, что анализатор увидит туеву хучу гармоник с положительными частотами, и чистейший тон с отрицательными. Ан фиг — одни и те же гармоники были и слева и справа от нуля. Совсем непонятно, почему так. Вернее, конечно, понятно — сигнал это ВСЯ синусоида, от нуля до двух пи радиан, а не только её часть. Но тогда уже непонятно, зачем вообще городить огород с отрицательными и положительными частотами — не всё ли равно?

Плюнул, сменил алгоритм scipy.fftpack.fft на scipy.fftpack.rfft. rfft — это real fft, и отрицательных частот не выдаёт. Так намного понятнее.

Продолжаю изучать.

И снова пнём Андроид

С сисадминской точки зрения телефоны с Андроидом — ЗЛО.

Почему? Потому, что если на телефоне была секретная информация, то перед выдачей новому сотруднику этого телефона или при избавлении от устройства вообще, эту информацию нужно стирать по ГОСТу стандартам NIST.

И если мы начнём читать стандарт, то процедура надёжного удаления данных для телефоном типа iPhone проста — ресетишь и в ус не дуешь. Эппл описал стандарт того, как этот алгоритм работает, и он полностью удовлетворил NIST.

А для телефонов на ОС Андроид в документе целый параграф, суть которого сводится к следующему — конкретная имплементация алгоритмов стирания зависит от производителя телефона. Поэтому процедуры надёжного удаления данных с телефонов на ОС Андроид в общем виде не существует. Сказано, что надо звонить производителю и выяснять, поддерживается ли там eMMC Secure Erase, Secure Trim и прочие умные слова.

Поэтому в общем случае, если от телефона на ОС Андроид надо избавиться, и на нём хранились секретные данные, телефон необходимо СЖИГАТЬ (ну или размалывать в пыль с размером зерна не более 2.4mm, как описано в стандарте).

И, кстати, для телефонов на ОС Windows то же самое. Вот уж никогда не подумал бы, что Яббл ближе корпоративному миру, чем Микрософт.

GPS v.Everything

“Когда модемы были большими”, и разговаривали друг с другом по телефонной линии, существовала туева хуча протоколов — v22, v32, v34, и так далее. Помимо общепринятых стандартов, были также фирменные стандарты отдельных производителей — так, до того момента когда все стали поддерживать v34, модемы Zyxel и USR, несмотря на наличие у них протоколов, позволяющих им передавать данные со скоростью 19 200 (Zyx19200) и 16 800 (HST, в дальнейшем разогнанный аж до 24 000) бод, могли общаться максимум на 14 400.

Закончилось это победой разума — USR выкатил свой Courier v.Everything, который поддерживал все стандарты (кроме чужих фирменных, разумеется), все стали поддерживать v34+, и проблема “модем-то у меня скоростной, но с тобой я могу пообщаться только медленно” исчезла. А потом и модемы-то практически ушли, хотя в отдельных ипостасях (факс-серверы) живут до сих пор.

Вся эта ситуация мне напоминает положение вещей с глобальным позиционированием. Сейчас существует четыре крупных систем глобального позиционирования — американский GPS, русский GLONASS, европейский Galileo и китайский BeiDou (японский QZSS не рассматриваем — это дополнение к GPS и работает только в Японии). И всё оно никак не взаимодействует между собой — приёмник GPS не умеет работать с Galileo и наоборот. Хотя мультисистемность более-менее появляется, чипы с поддержкой GPS и GLONASS я уже видел, даже в телефоны их ставят.

Однако выяснилось, что существуют чипы с поддержкой ВСЕХ систем позиционирования — эдакий Courier v.Everything в мире навигации. Это, например, u-blox M8, поддерживащий приём со всех четырёх созвездий спутников. Однако, одновременно оно может только в три созвездия из четырёх — что, в-общем-то, и так дофига, а если шибко надо ВСЁ — можно тупо взять ДВА чипа, благо они стоят меньше 8 долларов в партиях от 500 штук.

Фактически, таким образом можно обеспечить приём спутников так с сорока сразу. Интересно, даст ли это возможность получить точность позиционирования в сантиметры?

На злобу дня

Мне всё же интересно — в Белом Доме реально творится такой раздрай, хаос и бардак, или же там по сути ничем не хуже, чем при других президентах, просто это наши доблестные СМИ по причине маниакальной ненависти к Дональду тщательно создают такое впечатление?

Я думал у всех так

Оказывается, у людей, которые покрываются мурашками при прослушивании музыки, несколько другая структура мозга. И встречается нечасто.

https://www.indy100.com/article/music-goosebumps-some-people-science-research-emotions-psychology-study-harvard-7926781?utm_source=indy&utm_medium=top5&utm_campaign=i100

Шутка дня

Показываю племяннику 3.5-дюймовую дискету.

Реакция племянника:

–Ух, круто! Ты напечатал на 3D принтере кнопку сохранения!

А в самом деле, если подумать, то дискета на кнопке говорит о записи данных только старпёрам вроде нас.

Богат октябрь на баги….

Раз:

Всем, использующим беспроводные сети с шифрованием WPA2, можно начинать бояться. Существует кибератака, позволяющая расшифровать и спуфить передаваемые данные через повторное использование одноразового кода (nonce):

https://www.krackattacks.com/

При этом, что характерно, пароль WPA2 узнать по-прежнему невозможно.

Два:

Все криптографические сопроцессоры Infineon генерируют плохо защищённые ключи несимметричного шифрования RSA:

http://www.tomshardware.com/news/infineon-tpm-insecure-rsa-keys,35668.html

Если у вас есть ноутбук Lenovo, HP, Fujitsu, Asus и вы используете криптографический сопроцессор — можете начинать бояться.

Давненько таких крутых багов не было…

Тягач

Собираюсь вскоре отказаться от владения грузовиком. Мамонта продам, он мне не нужен. Я его купил, когда ремонтировал старый дом, и мне реально надо было постоянно возить стройматериалы. Сейчас мне это просто не нужно — а зачем тогда мне этот грузовик? Он огромный, и жрёт как не в себя (5.8L V8, не хухры-мухры).

Тем не менее, владельцу дома что-то крупногабаритное периодически возить надо. Выход, очевидно, в том, чтобы таскать за собой трейлер. Я даже больше скажу — трейлер в определённых моментах это значительно лучше пикапа. Например, если надо перевезти что-то по-настоящему большое и тяжёлое. Фиг ты закинешь это в кузов; во всяком случае, не в одно рыло. А трейлер низенький, в него затаскивать значительно проще.

Конечно, мой Хундай с его дохлым 2.4L дрыгателем не утащит что-то серьёзно тяжелое:

Учитывая что самый маленький трейлер, который я согласен иметь, весит 400 фунтов (180 kg), максимальная полезная нагрузка составляет 800 фунтов (360 kg). Это немного, хотя и не сказать, что мало — это где-то 12-14 листов фанеры, например. К слову, самый маленький трейлер — это такой, в который можно положить полноразмерный лист фанеры плашмя. Покупать что-то меньше просто уже совсем бессмысленно.

Смотрю заодно, сколько могут утащить другие автомобили. Какая-то странная картина вырисовывается.

В 2000 году самая простенькая модель Форда Эксплорера могла тягать почти 2.3 метрические тонны:

Это уже кое-что, этот Форд может утянуть небольшой трактор “Кубота” со всеми причиндалами типа грейдера и косилки, плюс четверо рыл, стройматериалы, бензин, и т.д.

В 2006 году произошло необъяснимое ухудшение его способностей как тягача (совершенно непонятно, почему, дрыгатель и там и там одинаковый — 4-литровый V6):

А в 2017 году младшая модель Эксплорера это вообще порнография какая-то:

Почему? А потому что в в него стали ставить 4-цилиндровый двигатель, рабочим объёмом 2.3L (меньше, чем у меня сейчас!!). Вы чо делаете, ироды? Эксплорер — это оджипленный F-150, полноразмерный грузовик. Полноразмерный грузовик и 4-цилиндровые двигатели — эти слова странно читать в одном предложении. Зато “Икобуст”, и 27 миль на галлон, да. Ну нафиг.