Что такое ATLAS?

ATLAS - это программный комплекс для инженерного моделирования и научных исследований, созданный в парадигме low-code, который позволяет визуально создавать математические и функциональные модели.

Наша цель

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

Почему ATLAS?

Мы заметили, что сегодня на рынке научного и инженерного ПО сложилась монополия. Фактически большая часть рынка инженерно-научного ПО принадлежит MATLAB (MathWorks, Inc.) Остальные же представители рынка занимают узкие профессиональные ниши и имеют очень специфичный функционал для конкретной отрасли.

Однако, проблемы самого сильного игрока на рынке на сегодняшний день очевидны. Через несколько десятков лет с момента создания данного продукта, изменились потребности и характер научных исследований и инженерных расчетов. Устаревшая архитектура, сложность настройки, высокие требования к системным ресурсам, и, конечно, неприлично низкая производительность - заставляют инженеров и ученых искать альтернативные аналоги для решения своих задач. Многие инженеры используют калейдоскоп инструментов в своей ежедневной работе - набор узкоспециализированных инструментов, а также языков программирования - Python, Julia, M, R, C, Fortran и др. Таким образом, современное инженерное и научное моделирование - является сложной и трудоёмкой задачей.

Одной из важных проблем для большей части инженерного ПО является необходимость обучения новым языкам программирования. Почти все специализированные программы (в том числе MATLAB) требуют овладения конкретным языком программирования. В современном цикле разработки и системного моделирования, в отличие от ситуации в далеком прошлом, когда создавалось большинство инженерных прикладных программ, программирование и функциональная разработка разделены. Это накладывает серьезные ограничения на процесс разработки, заставляя инженеров и научных сотрудников овладевать навыками программирования (C, R, M, Python, Fortran, Julia и др.), что значительно тормозит весь процесс.

Важно: Хотя ATLAS является low-code системой, пользователь также может использовать многие возможности программирования для детальной настройки функциональных блоков. См. подробнее Синтаксис Julia.

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

Создавая ATLAS, мы постарались исключить все указанные недостатки:

  • Мы используем современную микро-сервисную архитектуру, которая позволяет гибко масштабировать систему подключая и отключая дополнительные модули по необходимости

  • Мы с самого начала используем облачные распределенные технологии, тем самым во много раз снижая стоимость инфраструктуры и предоставляя непревзойденную гибкость пользователям

  • ATLAS - это единая среда проектирования инженерных систем, которая объединяет в себе функционал построения моделей, математических расчетов, симуляций процессов. Платформа не требует знания языков программирования, но при этом позволяет использовать все возможности гибкой настройки

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

Как устроен ATLAS

Платформа ATLAS делится на 2 части: удобный и функциональный frontend (визуальная часть) и мощный профессиональный backend (вычислительны модуль).

Frontend построен по принципам SPA (Single Page Application) и использует минимум вычислительных ресурсов на стороне пользователя. Это позволяет отрисовывать модели быстро, предоставлять графические результаты и работать с множеством моделей одновременно. Frontend ATLAS сочетает в себе современный дизайн, удобство использования, интуитивно-понятный интерфейс при этом не предъявляя никаких особых требований к локальному компьютеру пользователя. Frontend ATLAS изначально поддерживает адаптивную версию для использования на мобильных устройствах и планшетах.

Backend основан на языке Julia Language и использует самые современные библиотеки и рекомендации экспертов по научным вычислениям. Благодаря особенностям языка программирования Julia, нам удалось достичь высокой вычислительной мощности. Несмотря на визуальную привлекательность и удобство интерфейса ATLAS, пользователь может воспользоваться преимуществами программирования непосредственно на языке Julia с помощью скриптов и отдельных строк кода - для обеспечения максимальной гибкости при решении специализированных задач.

Почему мы выбрали Julia

Язык программирования Julia впервые появился в 2012 году, созданный в Массачусетском Технологическом Институте. Julia - это язык программирования, специализированный на численном анализе и высоконагруженных инженерных вычислениях.

Главные отличительные особенности языка Julia - детальная динамическая типизация, множественная диспетчеризация и архитектурная поддержка распределенных вычислений. Синтаксис языка похож на MatLab и Python, что облегчает его изучение и переход из других языков. Julia поддерживает кодировку Unicode, что позволяет использовать расширенные символы на уровне языка, такие как спецсимволы (, , , ), кириллица и греческие символы (α, β, γ, π) для обозначения переменных.

Julia взяла за основу лучшие практики других языков, таких как C, Lisp, Lua, MatLab, R, Python, Ruby и применила их для реализации современных задач программирования, таких как метапрограммирование (генерация программного кода Julia самой программой Julia), а также прямой вызов библиотек C, Fortran, Python без промежуточных интерфейсов.

Быстродействие Julia - является главным преимуществом языка для "тяжелых" инженерных расчетов и параллельных вычислений. В Julia реализован JIT (just-in-time) компилятор для быстрого преобразования в машинный код до исполнения самого кода. Благодаря особенностям и фокусировке на инженерных вычислениях, Julia удалось добиться быстродействия, значительно превосходящего другие языки, такие как MatLab, Python, Mathematicа.

Несмотря на то, что Julia достаточно молодой язык, однако он набирает стремительную популярность среди инженерной и научной среды. На сегодня у Julia больше 35 миллионов загрузок, более 1500 университетов используют Julia для вычислительных задач, а также более 10.000 компаний применяют Julia для исследований и разработок - Amazon, Apple, AstraZeneca, Capital One, FAA, Google, IBM, Intel, JP Morgan, Microsoft, Moderna, NASA, Pfizer, Uber, и др.

Установка

В большинстве случаев, ATLAS работает онлайн и не требует каких-либо специальных действий по установке.

Однако вы можете разместить ATLAS на своем сервере, если это действительно необходимо. Свяжитесь с кем-то из нашей команды для использования данного сценария.

Last updated