Search
Write a publication
Pull to refresh
6
0

Небесный механик

Send message

Можно ли увидеть невидимое? Прорыв в электродинамике: анаполь позволит скрытно передавать данные

Reading time9 min
Views29K
Сравнительно недавно в престижном журнале Physical Review X была опубликована научная статья на тему “Dielectric metamaterials with toroidal dipolar response”. В ней шла речь о возможности создания метаматериалов, полностью прозрачных для электромагнитных волн за счет возбуждения в них особых мод- “анаполей”.

Мы обратились к одному из авторов этой статьи Алексею Башарину, чтобы получить экспертное мнение относительно уникального явления в анапольной физике, а именно о неизлучающем «анаполе». Специально для нашего корпоративного блога на GT он согласился написать статью в научно-популярном формате и тезисно рассказать, в чем состояла уникальность его исследования, а также дать экспертный комментарий по статье, опубликованной в Nature Communications.

Алексей Башарин, без сомнения, является выдающимся экспертом в своей области, получившем многолетний зарубежный опыт исследований в ведущих исследовательских университетах Греции и Франции. В данный момент Алексей проводит свое исследование в лаборатории «Сверхпроводящие метаматериалы» НИТУ «МИСиС» под руководством Алексея Устинова.


Оборудование лаборатории «Сверхпроводящие метаматериалы» НИТУ «МИСиС» для исследования метаматериалов в сверхпроводящем режиме, которое используется для исследования анаполя в метаматериалах с Джозефсоновскими переходами.

Анаполь (от греч. an — отрицат. частица и polos — полюс) представляет собой неизлучающий источник или рассеиватель, который способен излучать векторные потенциалы, в отсутствие излученных электромагнитных полей, а также рассеивать векторные потенциалы, в отсутствие полей. Благодаря этому мы можем получить уникальную возможность скрывать различные объекты, точнее экранировать их от электромагнитных полей и получить устройства для скрытой передачи данных. При этом передача данных возможна за счет модуляции векторного потенциала, а привычное распространение электромагнитных волн (света) в системе будет отсутствовать. Более того, это может означать, что множество объектов и источников в природе мы просто не видим, потому что они не взаимодействуют с электромагнитными полями, а взаимодействуют исключительно с потенциалами!

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

LLVM для исследователей

Reading time14 min
Views51K
В этой статье рассказывается о проведении исследований на базе инфраструктуры компилятора LLVM. Нашего рассказа должно хватить для того, чтобы исследователи, которым компиляторы прежде были по большей части безразличны, пришли в восторг от LLVM и сделали с его помощью что-нибудь интересное.

Что такое LLVM?


LLVM — это по-настоящему удобный для разборки и сборки «ранний» компилятор для таких традиционных языков программирования, как C и C++.

LLVM настолько хорош, что считается «больше, чем просто компилятором» (это динамический компилятор, он работает с языками, не относящимися к семейству C, он представляет собой новый формат доставки для App Store и т. д. и т. п.). Все перечисленное верно, но для нашей статьи важно лишь приведенное выше определение.

LLVM имеет несколько ключевых отличий от других компиляторов:

  • Главное новшество — промежуточное представление (ПП). LLVM работает с ПП, которое действительно можно прочитать (если вы умеете читать ассемблерный код). Возможно, кому-то это не покажется столь уж большим откровением, однако это свойство очень важно. ПП других компиляторов обычно имеют настолько сложную структуру, что их невозможно записать вручную, трудно понять и использовать.
Читать дальше →

Intel, совместно с Micron Technology, уже в этом году, совершат революционный прорыв в энергонезависимой памяти

Reading time3 min
Views24K
image

Intel и Micron Technology официально представили новую технологию энергонезависимой памяти 3D XPoint, которая совершит переворот на рынке вычислительных устройств. 3D XPoint способна увеличить (до 1300 раз) скорость работы устройств различного типа, приложений и сервисов, которым необходим быстрый доступ к большим объемам данным. Впервые за 26 лет память 3D XPoint позволяет создать принципиально новую категорию устройств для хранения данных, сменив технологию NAND.
Читать дальше →

Мир розеток: как зарядить гаджеты в разных странах мира

Reading time6 min
Views64K


С конца XIX века не прекращались попытки придумать лучший способ передачи электроэнергии. Как только первые умельцы смогли зажечь электрическую лампочку, нас со всех сторон стали окутывать сети проводов, охватывающие здания, улицы, города и страны, вызывая множество сопутствующих проблем.

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

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

Каждый путешественник на себе испытал неудобства проводной передачи энергии. Во многих странах мира используются разные стандарты электрических вилок и розеток, о чем нужно помнить, отправляясь в далекое путешествие.
Читать дальше →

Многопоточный SOCKS 4 сервер на Qt

Reading time5 min
Views29K
Время от времени на форумах рунета в ветке Qt появляются вопросы связанные с программированием сетевых приложений. Одна из проблем которая терзает этих людей, — это подход к организации сервера. Обычно перечисляют три подхода:
  • однопоточный асинхронный;
  • многопоточный, создавать по потоку на соединение;
  • многопоточный, с пулом потоков на QThreadPool и QRunnable.

Когда говоришь про фиксированное количество рабочих потоков со своим циклом обработки событий, то просят привести пример. Дальше будет приведен пример сервера с пулом потоков, каждый из которых имеет свой цикл обработки событий.
Читать дальше →

Сходство и различие между Mercurial и Git

Reading time6 min
Views119K
По роду своей деятельности я нередко становлюсь свидетелем «священных войн» между коллегами-программистами на тему, какую же систему контроля версий выбрать для того или иного проекта. Роль системы контроля версий особо остро ощущается в случаях разработки и поддержки проектов с длинной историей. Вариантов инструментов много, но я хочу сконцентрироваться на двух, на мой взгляд, наиболее перспективных: Mercurial и Git. Далее попробуем рассмотреть возможности обеих систем с позиции их внутреннего устройства.
Читать дальше →

Arduino + ESP8266 с нуля на примере Wi-Fi термометра, часть первая

Reading time5 min
Views288K
Часть 1. Подготовка ESP8266

Зачем эта статья? На хабре уже есть ряд статей про использование ESP в разных конфигурациях, но почему-то без подробностей о том, как именно все подключается, прошивается и программируется. Типа «я взял ESP, две пальчиковые батарейки, DHT22, закинул в коробку, потряс часик и термометр готов!». В итоге, получается странно: те, кто уже работают с ESP не видят в сделанном ничего необычного, а те, кто хочет научиться — не понимают с чего начать. Поэтому, я решил написать подробную статью о том, как подключается и прошивается ESP, как его связать с Arduino и внешним миром и какие проблемы мне попадались на этом пути. Ссылки на Aliexpress привожу лишь для представления порядка цен и внешнего вида компонентов.

Итак, у меня было два микроконтроллера, семь разных сенсоров, пять источников питания, температурный датчик DHT22 и целое множество проводков всех сортов и расцветок, а так же бессчетное количество сопротивлений, конденсаторов и диодов. Не то, чтобы все это было необходимо для термометра, но если уж начал заниматься микроэлектроникой, то становится трудно остановиться.


Читать дальше →

Данные с Arduino в виде диаграмм и графиков

Reading time10 min
Views65K
Иногда требуется, не считывая детальную информацию с множества датчиков, просто оценить текущее состояние системы и динамику изменения ее состояния за какой-то период. Вот и мне захотелось сделать устройство, показывающее изменения данных с датчиков в виде красивых картинок небольших диаграмм, которые можно просмотреть в окне браузера мобильных устройств или компьютера, подключенных в локальную сеть. При этом определяющим фактором была минимальная стоимость, и простота реализации.

После перебора различных вариантов решения этой задачи обратил внимание на микроконтроллеры Arduino. Плюсом данных устройств является простота получения необходимого «железного» функционала путем простого соединения элементов. Например, для получения возможности соединения с локальной сетью достаточно на основную плату надеть сверху плату сетевого адаптера. Главное, чтобы при этом совпали соответствующие разъемы.

image
Читать дальше →

Датчик движения для переключения радиостанций — часть II

Reading time7 min
Views21K
Привет, Хабр! Сегодня — продолжение импровизированного цикла подробных постов для начинающих. В прошлом посте мы взяли готовый набор радиоконструктора с Ардуино и ультразвуковой дальномер для того, чтобы не только совместить их, и получить возможность настраивать радио «одной левой», но также чтобы разобраться в «Ардуиностроении» с нуля. Если у вас есть только Ардуино и сам датчик, вы тоже можете попробовать кое-что собрать из этого поста, но, видимо, остановитесь, после того, как настроите неплохую такую ультразвуковую линейку — что тоже хорошо. Мне захотелось пойти дальше и посадить датчик на плату расширения для создания готового устройства. Вот как это у меня вышло.


Читать дальше →

Бесплатный учебник электроники, архитектуры компьютера и низкоуровневого программирования на русском языке

Reading time2 min
Views251K

Господа! Я рад сообщить, что наконец-то все желающие могут загрузить бесплатный учебник на более чем 1600 страниц, над переводом которого работало более полусотни человек из ведущих университетов, институтов и компаний России, Украины, США и Великобритании. Это был реально народный проект и пример международной кооперации.

Учебник Дэвида Харриса и Сары Харрис «Цифровая схемотехника и архитектура компьютера», второе издание, 2012, сводит вместе миры программного обеспечения и аппаратуры, являясь одновременно введением и в разработку микросхем, и в низкоуровневое программирование для студентов младших курсов. Этот учебник превосходит более ранний вводный учебник «Архитектура компьютера и проектирование компьютерных систем» от Дэвида Паттерсона и Джона Хеннесси, причем соавтор предыдущего учебника Дэвид Паттерсон сам рекомендовал учебник от Харрисов как более продвинутый. Следуя новому учебнику, студенты строят реализацию подмножества архитектуры MIPS, используя платы с ПЛИС / FPGA, после чего сравнивают эту реализацию с индустриальными микроконтроллерами Microchip PIC32. Таким образом вводится вместе схемотехника, языки описания аппаратуры Verilog и VHDL, архитектура компьютера, микроархитектура (организация процессорного конвейера) и программирование на ассемблере — в общем все, что находится между физикой и высокоуровневым программированием.

Как загрузить? К сожалению, не одним кликом. Сначало надо зарегистрироваться в пользовательском коммьюнити Imagination Technologies, потом зарегистрироваться в образовательных программах на том же сайте, после чего наконец скачать:
Читать дальше →

Вы опасно некомпетентны в криптографии

Reading time7 min
Views142K
От переводчика: Хоть посыл статьи Najaf Ali, переведённой ниже, и носит слегка рекламный оттенок («оставьте криптографию нам, экспертам»), но описанные в ней примеры показались мне довольно интересными и заслуживающими внимания.
Кроме того, никогда не будет лишним повторить прописную истину: не придумывайте свою крипто-защиту. И эта статья отлично иллюстрирует почему.

Читать дальше →

Основы моделирования в openEMS

Reading time5 min
Views14K
В прошлой части было рассказано как установить и настроить open-source электромагнитный симулятор openEMS . Теперь можно переходить к моделированию. Как производить моделирование ЭМВ при помощи openEMS и Octave будет рассказано в этой статье.

Мы будем моделировать процесс распространения электромагнитной волны (ЭМВ) между двумя параллельными металлическим пластинами.

Конфигурация объекта показана на рисунке. Предполагается прямоугольный источник ЭМВ, от которого ЭМВ распространяется в обе стороны.



Под катом приведён построчный разбор скрипта для моделирования такого объекта.
Читать дальше →

openEMS — электромагнитный симулятор с открытым исходным кодом

Reading time5 min
Views34K
Этот пост рассказывает об электромагнитном симуляторе с открытым исходным кодом openEMS. Автор проекта — Thorsten Liebig (Германия, университет Дуйсбург-Эссен). Сайт проекта — openems.de. Репозиторий на Гитхабе: github.com/thliebig/openEMS-Project. Симулятор является кроссплатформенным и работает под Linux и Windows.

Когда я впервые увидел этот проект, то не поверил, что такое может быть создано. Создание электромагнитного симулятора представляет собой достаточно-трудоемкую задачу, и раньше я думал, что такое не под силу open-source сообществу. Тем не менее openEMS опровергает это представление. Это полноценный электромагнитный симулятор. Конечно, он не дотягивает до уровня HFSS, но это уже весьма достойный результат.

Здесь изображен пример использования симулятора. Это диаграмма направленности рупорной антенны на частоту 15 ГГц, полученная при помощи openEMS.


Читать дальше →

Электронный замок с беспроводным управлением на базе Energia Launchpad

Reading time12 min
Views38K


Глядя на множество хабро-статей на базе Arduino мне показалось несколько странным отсутствие интересных беспроводных решений из мира Energia Launchpad. Пора исправить эту вселенскую несправедливость!
Сегодня я познакомлю вас с отладочной платой CC3200-launchpad, расскажу об ее преимуществах перед ESP8266, подключу к ней пару launchpad по радиоканалу и буду щелкать большими советскими релюхами. Поехали!
Читать дальше →

Определяем, свободен ли туалет, и выводим статус в web

Reading time2 min
Views22K
1. Intro

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

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

1.1 Если нет желания читать весь текст, то можно сразу перейти к демонстрации
Читать дальше →

Мини-обзор библиотек для Reflection в C++

Reading time5 min
Views26K
В силу скромной информации на эту тему, в данной статье проведу небольшой обзор и сравнение найденных библиотек для Reflection в C++. В первую очередь эта информация будет интереса разработчикам игр.

Благодаря reflection можно:
— Легко создавать редакторы, в том числе интерфейсов, так как есть удобный доступ к мета-информации о всех свойствах ваших объектов;
— Добавить binding для многих скриптовых языков сразу (Lua, Python, JavaScript и т.д.);
— Использовать мета-информацию для автоматической сериализаци;
— Использовать как фабрику объектов, создавая нужные экземпляры, имея лишь строку с именем тип;
— Использовать в качестве более легковесной замены dynamic_cast;
— И прочее прочее прочее, в зависимости от фантазии и потребностей.
Читать дальше →

Многопоточность в Rust

Reading time14 min
Views38K
Rust начинался как проект, решающий две трудные проблемы:

  • Как обеспечить безопасность (работы с памятью) в системном программировании?
  • Как сделать многопоточное программирование безболезненным?

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

Ошибки работы с памятью и ошибки при работе с несколькими потоками частно сводятся к тому, что код обращается к некоторым данным вопреки тому, что он не должен этого делать. Секретное оружие Rust против этого — концепция владения данными, способ управления доступом к данным, которого системные программисты стараются придерживаться самостоятельно, но который Rust проверяет статически.

С точки зрения безопасности работы с памятью это означает, что вы можете не использовать сборщик мусора и в то же время не опасаться сегфолтов, потому что Rust не даст вам совершить ошибку.

С точки зрения многопоточности это означает, что вы можете пользоваться различными парадигмами (передача сообщений, разделяемое состояние, lock-free-структуры данных, чистое функциональное программирование), и Rust позволит избежать наиболее распространённых подводных камней.

Вот какие особенности у многопоточного программирования в Rust:
Читать дальше →

Fortran 2003: учим Фортран и С дружить

Reading time7 min
Views19K

На языке Фортран написано огромное количество кода, отлаженного и работающего многие годы. Я не собираюсь поднимать вопрос «что лучше — Фортран или С?». У каждого языка есть свои сильные и слабые стороны. Но, учитывая большое распространение языка С, всё более популярными в определенных кругах становятся случаи «гибридных» приложений, когда часть кода пишется (скорее, уже написана) на языке Фортран, а другая – на С. Вот только у этих языков есть определенная специфика, про которую я частично уже говорил, и чтобы написанное нами приложение работало корректно, нужно учитывать много нюансов. Различия в типах данных, соглашениях о вызове (calling convention), именах (naming convention) делают задачу создания mixed language приложения далеко нетривиальной. Хорошо, что в стандарте Fortran 2003 появился целый набор средств, специально разработанный для решения задачи интероперабельности C и Фортрана. Кстати, не помню других языков, которые бы стандартизировали подобную работу — ещё один «плюсик» Фортрану за протянутую «руку дружбы».
Читать дальше →

История о том, как я делал печатную плату первый раз в жизни

Reading time2 min
Views26K
Всем привет!
Меня зовут Сергей.

Сегодня хочу показать один из способов формирования слоя


Сразу скажу, что способ не очень новый, но реализации я не видел. Так же, хочу задать несколько вопросов по нанесению фоторезиста, травлению. Вопросы буду подчёркивать.

Вообще, я занимаюсь 3D принтерами, но в голову пришло ещё одно применение механики принтера, а именно развёртки.
С помощью развёртки у меня формируется линия, состоящая из точек. Эту линию я двигаю вдоль оси и, меняя, расположение точек, рисую картинку.

Читать дальше →

Intel® Graphics Technology. Часть III: эффективные вычисления на графике

Reading time5 min
Views9K
image

В комментариях к прошлому посту был поднят весьма важный вопрос – а будет ли вообще выигрыш в производительности от выгрузки вычислений на интегрированную графику, по сравнению с выполнением только на CPU? Конечно, он будет, но нужно соблюдать определенные правила программирования для эффективных вычислений на GFX+CPU.
В подтверждение моих слов, сразу представлю график ускорения, получаемого при выполнении вычислений на интегрированной графике, для различных алгоритмов и с разной долей вовлеченности CPU. На КДПВ мы видим, что выигрыш более чем весомый.
Читать дальше →

Information

Rating
6,220-th
Location
Монино, Москва и Московская обл., Россия
Registered
Activity