Обновить
1.24

Julia *

Высокоуровневый высокопроизводительный язык

Сначала показывать
Порог рейтинга
Уровень сложности

«Разработка алгоритма программного управления пространственной ориентацией КА»

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров1.3K

Напишем скрипт на языке Engee который будет вычислять параметры ориентации МКА при повороте из текущей ориентации в заданную неподвижную ориентацию. Скрипт должен рассчитывать и формировать во времени программу изменения ориентации КА в виде программных кватерниона и скорости с целью разворота из текущей ориентации (в т.ч. переменной) в заданную постоянную в инерционной системе координат (ИСК). Алгоритм запускается внешним диспетчером системы автоматического управления (САУ) и должен формировать признаки начала разгона, конец разгона, начало торможения, конец торможения.

Читать далее

Новости

Как построить модель цифровых раций DMR

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

Эта статья — подробный разбор того, как мы смоделировали современный стандарт профессиональной цифровой радиосвязи Digital Mobile Radio (DMR) на отечественной инженерной платформе Engee.

Digital Mobile Radio (DMR) — это не просто «цифровая рация». Это международный открытый стандарт, который за счёт использования двухслотового TDMA позволяет удвоить ёмкость канала по сравнению с аналоговыми системами, сохраняя ту же полосу частот (12.5 кГц). DMR поддерживает не только голос, но и передачу данных, текстовых сообщений, GPS и обеспечивает надёжную, энергоэффективную связь для промышленности, служб быстрого реагирования и бизнеса.

Если вы хотите заглянуть «под капот» цифровой радиосвязи и понять, как отечественный инструмент позволяет решать сложные задачи верификации протоколов, добро пожаловать!

Заглянуть под капот!

Бесконтактная ЭКГ: биорадиолокация и ИИ в действии

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров1K

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

Сегодня говорим про мониторинг жизненно важных показателей (ЖВП) человека. ЖВП — это метрики, по которым можно понять, всё ли в порядке с нашим организмом: температура тела, давление, дыхание, ну и наш сегодняшний герой — пульс.

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

Читать далее

Заставляем компьютер видеть цвета без нейросетей: сегментация изображений по старинке

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров2.5K

Привет, Хабр! В предыдущей части мы рассматривали базовые методы цифровой обработки изображений для задачи сегментации спутникового снимка.

В этой статье рассмотрим ещё парочку методов решения этой задачи, всё ещё «классических», то есть без применения машинного обучения или нейросетей. Помогут нам во всём разобраться, как и в прошлый раз, язык программирования Julia и среда технических расчётов Engee!

Читать далее

Визуальное проектирование управляющей логики фитнес-браслета

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров2K

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

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

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

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

Читать далее

Старый конь борозды не испортит: классические методы обработки изображений все ещё актуальны

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

Что такое цифровая обработка изображений? Зачем нам вообще знать про алгоритмы обработки, когда есть фотошоп и фильтры в телефоне? Или всё можно отдать нейросети и получить крутой результат? И при чём тут Julia, наконец? Будем разбираться!

Мы запускаем серию статей про обработку изображений с использованием языка Julia и вычислительной среды Engee. Задача – ответить на часто встречающиеся вопросы вроде актуальности этого направления компьютерной науки, задач, решаемых методами обработки изображений, применения и реализации стандартных и «умных» алгоритмов. 

В первой части ознакомимся с основами на примере сегментации спутникового снимка.

Читать далее

Шпаргалка по типам Julia для инженеров и не только

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

Статья-шпаргалка о типах данных в Julia: от примитивных, до параметрических абстрактных. Рассказывается, почему range умеет работать как массив, почему Vector{Int64} не является подтипом Vector{Real}, но является подтипом Vector{<:Real}, чем отличается неизменяемая структура от изменяемой структуры с неизменяемыми полями

Читать далее

Julia и Engee: созданы для параллельных вычислений

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6.2K

Как загрузить GPU инженерными вычислениями? Давайте я расскажу, как с помощью Julia наконец смог втащить высокопроизводительные вычисления в свою немудрёную инженерную работу. Это был долгий путь, но мне кажется, что Julia стала моим лучшим другом в мире GPU/HPC.

Читать далее

Биорадиолокация в Engee

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров1.4K

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

Биорадиолокация – набирающий популярность бесконтактный метод измерения жизненно важных показателей (ЖВП) человека, таких, как сердцебиение и дыхание. В отличие от контактных систем радары не нуждаются в прикреплении каких-либо датчиков на поверхность тела пациента. 

В статье разберём построение относительно простой, но в то же время полезной модели биорадара. Модель разбита на две части. Первая часть посвящена моделированию перемещения грудной клетки человека. Вторая часть модели – про разработку FMCW-радара с последующим анализом его эффективности и применимости для обнаружения ЖВП. Итак, начнем…

Читать далее

Engee – лучшая альтернатива MATLAB, Simulink, Amesim

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

Современные реалии рынка инженерного ПО в России бросают вызов техническим специалистам любого уровня, так как перед ними встает задача найти отечественную альтернативу привычным CAE-системам для технических вычислений и модельно-ориентированного проектирования, таким как MATLAB, Simulink, Amesim. Это непросто, поскольку предприятиям нужно максимально сохранить привычный рабочий процесс и имеющиеся наработки, в том числе многолетние, и при этом безболезненно внедрить новую систему на рабочие места и обучить сотрудников.

Мы можем с уверенностью заявить, что соответствующая таким требованиям альтернатива MATLAB, Simulink, Amesim найдена, и это среда Engee.

Читать далее

Моделирование блэкаутов: какой софт сейчас используют российские электроэнергетики?

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

Привет, Хабр! Всем известно, на чём программисты пишут код, — большинство из вас хоть раз слышали о Python, Java или C++. Но задумывались ли вы когда-нибудь, какими инструментами разработки пользуются инженеры-электроэнергетики? Ведь их задача — не просто написать код, а смоделировать целую энергосистему и внедрить в нее новый алгоритм без катастрофических последствий. Сегодня мы хотим погрузить вас в мир электроэнергетики и рассказать про то, какой российский софт пришел на смену зарубежному.

Читать далее

Шесть причин выучить Julia в 2024 году

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров16K


В этом году Экспонента вместе со средой разработки
Engee стали информационными партнерами бесплатной Летней школы Julia. Это уникальное событие для России, ведь еще никто не проводил онлайн-курсы по этому современному и очень перспективному языку программирования. Мы уверены, что в современных политических и экономических реалиях за этим языком видится большое будущее, особенно в научной и инженерной средах, и приглашаем всех желающих принять участие в этом важном событии.

А чтобы подогреть ваш интерес, мы подготовили небольшую статью (опирались на этот материал, спасибо авторам, и добавили много тезисов на основе нашего опыта с Julia) с описанием основных причин, почему вы должны срочно заинтересоваться Julia и подать заявку на Летнюю школу. Приятного чтения!

Читать далее

Искусство мозговых волн. Как ученые визуализируют вызванные потенциалы: результаты опроса

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

Меня зовут Владимир Михеев, я работаю в лаборатории Вычислительный когнитивных наук Университета Штутгарта. Мы разрабатываем библиотеки для анализа, симуляции и визуализации ЭЭГ данных на языке Julia под зонтичным брендом Unfold.

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

Эта статья может быть вам полезна если вы:

Хоть раз рисовали потенциал вызванного действия.
Визуализируете временные данные.
Радеете за воспроизводимость научных исследований.
Разрабатываете аналитическое ПО.
Делаете красивые графики и хотите, чтобы они были корректными.

Раскрыть тайны мозга

Ближайшие события

Julia. Метапрограммирование и макросы

Уровень сложностиСредний
Время на прочтение20 мин
Количество просмотров3.2K

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

Механизм макросов используется в Julia довольно часто. Макрос при использовании начинается с символа @ и имеет вид @show, @benchmark… А также, в неявной форме, макросами являются регулярные выражения r"[a..z]" (это макрос с полным именем r_str), а также многочисленные другие способы применения, включая примеры Modia.jl / Unitful.jl с макросом u_str, где физическая величина «вшита» в число:

L = 0.8u"m",
m = 1.0u"kg",
d = 0.5u"Nms/rad",
g = 9.81u"m/s^2",

Читать далее

Кратко про FP в Julia

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.5K

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

Juliа поддерживает анонимные функции, замыкания, и имеет систему типов, которая позволяет писать высокооптимизированный код без потери читаемости и удобства.

Читать далее

Временные ряды с Julia с библиотекой TimeSeries.jl

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2K

Julia позволяет достигать скорости, сравнимой с C, что делает её хрошим выбором для временных рядов.

Пакет TimeSeriesпредоставляет удобные методы для работы с данными временных рядов в Julia.

Читать далее

Julia в машинном обучение: база

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4.1K

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

Julia зародилась в 2012 году, благодаря усилиям четырех энтузиастов-разработчиков: Джефф Безансон, Стефан Карпински, Вирал Би Шах, и Алан Эдельман. Они стремились создать язык, который сочетал бы легкость Python, скорость C, динамичность Ruby, лингвистическую чистоту Lisp и возможности математических систем вроде Matlab. Им удалось! Julia – это слияние простоты и мощи.

Благодаря JIT-компиляции, код Julia может выполняться с скоростью, сопоставимой с кодом, написанным на C или Fortran.

Читать далее

Julia 1.9. Основные моменты

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров3.8K

перевод

7-го мая 2023, после 3-х бета-версий и 3-х релиз-кандидатов наконец выпущена новая версия языка программирования Julia 1.9. Мы хотели бы поблагодарить всех участников, разработчиков этого выпуска и всех тех, кто тестировал и помог выявить проблемы в предварительных выпусках. Без вас этот выпуск был бы невозможен.

Полный список изменений можно найти в файле release-1.9/NEWS.md, а здесь мы дадим развернутый обзор некоторых ключевых моментов выпуска.

Читать далее

Mojo может стать крупнейшим достижением в области разработки языков программирования за последние десятилетия

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров128K

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

Об авторе: Джереми Говард (Jeremy Howard) — Data Scientist, исследователь, разработчик, преподаватель и предприниматель. Джереми является одним из основателей исследовательского института fast.ai, занимающегося тем, чтобы сделать глубокое обучение более доступным, а также он является почётным профессором Университета Квинсленда. Ранее Джереми был выдающимся научным сотрудником в Университете Сан‑Франциско, где он был основателем Инициативы Уиклоу «Искусственный интеллект в медицинских исследованиях».

Mojo – это Python++

Genie Builder v0.2: ускорьте разработку вашего приложения на Julia

Время на прочтение8 мин
Количество просмотров2.1K

В этой статье представлен перевод руководства: "How to quickly turn your Julia code into a web app with Genie Builder". В статье пойдет речь о новом инструменте быстрой разработки web-приложений на основе Ginie Framework - платформы для интернет приложений на языке Julia.

Читать далее