Обновить
-7
0.2

Пользователь

Отправить сообщение

Интеграция DMR858M: Практическое руководство по созданию пользовательских цифровых раций на ESP32

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели10K

В области разработки встраиваемых систем интеграция радиочастотных (РЧ) функций в продукт часто сопряжена со сложным проектированием аппаратного обеспечения и трудоемкой реализацией стека протоколов. Модуль DMR858M значительно упрощает этот процесс, предоставляя высокоинтегрированную подсистему цифровой мобильной радиосвязи (DMR) с мощностью передачи до 5 Вт.1 Это не просто РЧ-трансивер, а комплексное решение, внутренне объединяющее микроконтроллер (MCU), чип цифровой рации, РЧ-усилитель мощности и аудиоусилитель.1 Такая конструкция позволяет разработчикам управлять полнофункциональным ядром рации — поддерживающим стандарт DMR Tier II, совместимым с традиционными аналоговыми режимами и оснащенным функциями SMS и шифрования голоса — через простой последовательный интерфейс.1

Читать далее

Прыгающие частицы защищают квантовые провода

Уровень сложностиСложный
Время на прочтение4 мин
Охват и читатели6.6K

Ученые из Российского квантового центра, ВШЭ и МФТИ изучили  фазовый переход в одномерных системах с беспорядком в присутствии коррелированного перескока частиц. Работа опубликована в Physical Review Journals. Она открывает новые возможности для создания устойчивых одномерных атомных ловушек, квантовых нитей и кристаллов с одномерной проводимостью. 

Читать далее

Фазовая развертка Вселенной: как простая геометрия склеивает математику и физику

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели12K

Что если всю физику — от чёрных дыр и войдов до струй на коллайдерах — читать одной линейкой: энергия + геометрия её канала? Мы показываем, как простая фазовая намотка (цилиндр → тор) срабатывает от спинов и мод до «поведения» тёмной материи и ускорения пустот. Чёрные дыры выступают как предельные уплотнители информации, войды — как зоны с самоускоряющимся разрежением, а сильное/слабое/ЭМ сводятся к типу связности и массе носителя. Без новых сущностей — только ясная оптика и конкретные наблюдательные крючки, за которые можно зацепиться уже сейчас.

Читать далее

Прорыв в аттосекундной физике: улучшена техника спектроскопии высоких гармоник для сложных органических молекул

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели7.5K

Международный коллектив ученых из Швейцарии, России и Дании улучшил экспериментальную технику спектроскопии высших гармоник органических молекул и провел новые теоретические и экспериментальные исследования молекул бензола и 1,3-циклогексадиена. В опытах подтвердились эффекты, связанные с перемещением заряда внутри молекул на аттосекундных масштабах времени. Исследование опубликовано в журнале Structural Dynamics.  

Данная работа демонстрирует новые возможности в изучении строения вещества, которые открывает аттосекундная физика.

Читать далее

Первый Спутник, язык FORTH и немного о JIT-компиляции

Время на прочтение10 мин
Охват и читатели7.9K

Здесь не будет песен и сказок о том какой крутой и недооценённый язык Forth:) По совокупности обстоятельств он скорее уже история. Однако некоторые связанные с ним аспекты поучительны и перспективны (например, для энтузиастов и разработчиков языков и компиляторов) — и хочется их записать на память, да и поделиться с коллегами.

-

Читать далее

Девиртуализация в C++, компиляторах и вашей программе

Уровень сложностиСложный
Время на прочтение16 мин
Охват и читатели12K

Привет, Хабр! Меня зовут Илья Андреев, я старший программист в компании Syntacore. Вы, наверно, слышали, что виртуальные функции в C++ пользуются дурной славой — а может, и сами придерживаетесь о них не самого лучшего мнения. В этой статье, подготовленной совместно с Константином Владимировым, я в некоторой степени выступлю адвокатом виртуализации.

Мы начнем с вводной части о статическом и динамическом полиморфизме, рассмотрим факторы, влияющие на девиртуализацию, и ее примеры разной сложности — в том числе те, что мы используем в реальной разработке. А напоследок познакомим вас со спекулятивной девиртуализацией и дадим рекомендации, как подходить к виртуальным функциям в разработке на C++.

Читать далее

Статические DAG-графы: почему TBB иногда избыточен и как сделать планировщик с гарантированным временем выполнения

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели5.9K

Многие thread-пулы оптимизированы под динамический spawn и бесконечный backlog. В этой статье — подход для противоположного кейса: фиксированный DAG, один run и полный контроль над поведением

Читать далее

std::mdspan в C++23: многомерные данные без самодельных view

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели5.6K

Привет, Хабр!

В C++ долго не было нормального стандартизованного способа адресовать многомерные данные без самодельных обвязок на указателях, индексации по формуле и пачек typedef с макросами. В C++20 появился std::span для одномерных непрерывных диапазонов. Следующий логичный шаг — многомерный view с настраиваемым отображением индексов в адреса памяти. Этим шагом в C++23 стал std::mdspan в заголовке <mdspan>. Это не контейнер и не владеет памятью, это слой адресации поверх уже существующего буфера. Формально идею закрепили в P0009, а в стандарт попали mdspan, extents и политики layout; отдельная функция submdspan пошла в следующую версию стандарта C++26.

Читать далее

Плазмоны в экранированном прямоугольнике оказались похожи на волны в бассейне

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели6.9K

Ученые из МФТИ и Института радиотехники и электроники им. В. А. Котельникова РАН исследовали поведение полностью экранированных двумерных плазмонов — локализованных электромагнитных волн, распространяющихся по поверхности металлов. Оказалось, что они ведут себя подобно тому, как колеблется вода в неглубоком бассейне. Статья опубликована в журнале Physical Review B. 

Уникальные электромагнитные волны, именуемые поверхностными плазмонными поляритонами или просто плазмонами, имеют способность распространяться в оптическом, инфракрасном и терагерцовом диапазонах частот вдоль границы металла и воздуха или диэлектрика. Термин «поверхностный плазмонный поляритон» указывает на то, что эти волны объединяют движение зарядов (электронного газа) на металлической поверхности (поверхностный плазмон) и электромагнитные волны в окружающем воздухе или диэлектрике (поляритоны). Это особая форма электромагнитных колебаний, сильно локализованных на тонком приграничном слое, толщина которого не превышает десятых долей микрометра. Другими словами, электрическое поле оказывается «запертым» в области, размеры которой не превышают длину световой волны. Это явление уникально, потому что дифракция обычно не позволяет локализовать волну света на такой малой длине. Используя особенности плазмонов, можно достичь различных целей: от применения их для биосенсоров и микроскопии до использования в новом поколении вычислительных устройств.

Читать далее

Свет считает быстрее: как работают фотонные вычисления и из какого «железа» они собраны

Время на прочтение9 мин
Охват и читатели7.8K

Сколько времени занимает сложение двух лучей света? Почти никакого: интерференция рождает результат сразу, пока лучи проходят через чип. В этой статье — без мистики и рекламных лозунгов — разберём, как свет выполняет линейную алгебру, из каких модулей собирают фотонные процессоры и где они уже уместны в реальных задачах. К концу чтения у вас будет ясная картинка тракта «источник → модулятор → оптическая решётка → детекторы» и чек-лист для первого PoC.

Погружаемся в фотонику

Нейросети без градиентов: спектральное моделирование и построение решений

Уровень сложностиСложный
Время на прочтение19 мин
Охват и читатели4.2K

В статье предлагается альтернативный подход к построению нейронных сетей без использования алгоритма обратного распространения ошибки. Вместо оптимизации весов с помощью градиентов рассматривается прямой спектральный синтез решений, основанный на анализе гармонического содержания сигналов. На примере логических функций XOR, AND и OR показано, как линейные и нелинейные преобразования влияют на спектр входных данных и как эти преобразования можно использовать для ручной сборки нейросетевых структур. Отдельное внимание уделяется роли функций активации как спектральных операторов. В завершение обсуждаются ограничения классического подхода к обучению и обозначаются перспективы использования частотного кодирования, которое будет рассмотрено в следующей статье.

Читать далее

Что такое графовые нейронные сети

Время на прочтение10 мин
Охват и читатели37K

Графовые сети — это способ применения классических моделей нейронных сетей к графовым данным. Графы, не обладая регулярной структурой как изображения (каждый пиксель имеет 8 соседей) или тексты (последовательность слов), долгое время оставались вне поля зрения классических нейронных моделей, которые получили широкое распространение в области машинного обучения и искусственного интеллекта. Большинство моделей векторизации графов (построения векторного представления вершин в графе) были достаточно медленными и использовали алгоритмы на основе матричной факторизации или спектральной декомпозиции графа. В 2015-16 годах появились более эффективные модели (DeepWalk, Line, Node2vec, Hope) на основе случайных блужданий. Однако и они имели ограничения, потому что никак не затрагивали при построении векторной модели графа дополнительных признаков, которые могут храниться в вершинах или на ребрах. Появление графовых нейронных сетей стало логичным продолжением исследований в области графовых эмбеддингов и позволило унифицировать под единым фреймворком предыдущие подходы.
Читать дальше →

Визуализация графов. Метод связывания ребер

Время на прочтение7 мин
Охват и читатели59K
Иногда полезно представить граф в графической форме, так чтобы была видна структура. Можно привести десятки примеров, где это может пригодиться: визуализация иерархии классов и пакетов исходного кода какой-нибудь программы, визуализация социального графа (тот же Twitter или Facebook) или графа цитирования (какие публикации на кого ссылаются) и т.д. Но вот незадача: количество ребер в графе зачастую настолько велико, что нарисованный граф просто невозможно разобрать. Взгляните на эту картинку:



Это граф зависимостей некой программной системы. Он представляет собой дерево разбиения на пакеты (серые шарики — пакеты, белые — классы), на которое поверх наложены ребра зависимости одних классов от других. Чтобы не рисовать стрелки направления, ребра нарисованы в виде градиентных линий, где зеленый — это начало, а красный — конец ребра. Как видите, граф настолько визуально перегружен, что архитектуру программы невозможно проследить.
Под катом описание метода, решающего эту проблему.
Читать дальше →

Настоящее предназначение OpenAI SORA: как и зачем симулировать «Матрицу» для ChatGPT

Уровень сложностиСредний
Время на прочтение41 мин
Охват и читатели120K

Ну что, уже успели прочитать восхищения небывалым качеством видео от нейросетки SORA у всех блогеров и новостных изданий? А теперь мы вам расскажем то, о чем не написал никто: чего на самом деле пытается добиться OpenAI с помощью этой модели, как связана генерация видео с самоездящими машинами и AGI, а также при чем здесь культовая «Матрица».

Войти в симуляцию →

Rust: объясняем Владение и Субструктурные типы на пальцах

Время на прочтение14 мин
Охват и читатели3.5K

Системы типов помогают разработчикам создавать надежные и безопасные программы. Однако такие термины, как «субструктурные типы» или «владение», нередко кажутся сложными и трудными для понимания, особенно для тех, кто не сталкивался с теорией типов в академической среде.

Новый перевод от команды МойОфис расскажет вам, как субструктурные типы и система владения в Rust помогают создавать безопасные и эффективные программы. Автор разбирает ключевые теоретические аспекты, выясняет, какие преимущества они предоставляют, и показывает, почему их использование становится неотъемлемой частью разработки современных языков. Вы узнаете, как субструктурные типы помогают обеспечивать безопасность и жизнеспособность программ, а также познакомитесь с идеями и проблемами их внедрения на практике.

Читать далее

Три необсуждаемых вопроса о микросервисах и параллельной распределённой обработке данных — чтобы жить стало легче

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели1.7K

Воркшоп для тех, кто впервые сталкивается с распределёнными системами.

В этой статье на примере решения несложного архитектурного кейса я покажу, что ответов только на 3 вопроса при проектировании систем распределённой параллельной обработки данных будет достаточно для обеспечения жёстких нефункциональных требований.

Читать далее

Моделирование управления AC двигателя — Field oriented control of PMSM с помощью opensource решений

Уровень сложностиСложный
Время на прочтение50 мин
Охват и читатели4.8K

В этой статье я хочу поделиться результатом своих исследований в области моделирования систем управления двигателями переменного тока. В качестве объекта управления был выбран синхронный двигатель с постоянными магнитами PMSM (Permanent Magnet Synchronous Machine) как наиболее распространенная машина в современных транспортных средствах. Основное внимание будет уделено построению математической модели системы, объекта управления, и алгоритмов для симуляции. Для реализации модели я выбрал open source решения: Python control, Scilab. Мне было интересно, возможно ли использование свободных средств моделирования для построения более-менее сложных и реальных систем. Далее я поделюсь своими впечатлениями. В первой части статьи приводится теоретический материал, где описываются основные уравнения двигателя и элементы теории управления. Для теоретической части необходимы базовые понимания электротехники, ниже приложу ссылки, где можно обновить знания. Я постарался проработать разные источники литературы, чтобы взять необходимый минимум, с которым самому пришлось столкнуться для понимания сути процессов управления двигателем. Читатель вправе пропустить матчасть и перейти сразу к описанию реализации, и при необходимости вернуться к некоторым теоретическим аспектам в этом материале, или других источниках. Реализация алгоритмов управления построена по классическому принципу с помощью диаграммы потоков.

Читать далее

Транспортный уровень: TCP И UDP

Время на прочтение7 мин
Охват и читатели8.5K

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

Транспортный уровень играет ключевую роль в организации обмена информацией: он управляет разбиением данных на пакеты, их доставкой и сборкой на стороне получателя. Это позволяет обеспечить эффективную, безопасную и бесперебойную работу сетевых приложений.

Читать далее

Типы и архитектуры параллельных вычислений: какие они бывают?

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели4.7K

Привет, Хабр! В этом материале мы снова вернемся к теме GPU и машинного обучения, но на этот раз поговорим о параллельных вычислениях, видах параллелизма и типах архитектур, которые задействуют для эффективной тренировки и работы нейросетевых моделей.

Читать далее

Кто реально угрожает C++ (нет, Rust, не ты)

Время на прочтение14 мин
Охват и читатели86K

Привет! Меня зовут Александр Каленюк, и я крепко подсел на C++. Пишу на C++ 18 лет кряду, и все эти годы отчаянно пытаюсь избавиться от этой разрушительной зависимости.

Всё началось в конце 2005 года, когда мне довелось писать движок для симуляции 3D-пространства. В этом движке было буквально всё, чем язык C++ мог похвастаться в 2005 году. Трёхзвёздочные указатели, восьмиуровневые зависимости, C-подобные макросы повсюду. Кое-где – вкрапления ассемблера. Итераторы в стиле Степанова и мета-код в стиле Александреску. В общем, всё. Кроме ответа на самый важный вопрос: зачем?

Читать далее

Информация

В рейтинге
2 773-й
Зарегистрирован
Активность