Valis и расчеты

Valis — это параметры проектирования Blocks, Requirements или Analyses, которые можно использовать в расчетах и документации. Vali имеет числовое значение, а также содержит дополнительную информацию, такую как тип, единица измерения, формула, описание и требования min/max.

Создание Valis

Вы можете создать Valis в Block, сначала нажав символ “+” в правом нижнем углу экрана. Затем укажите имя (это может быть любое имя или имя Valitype - 1), Formula и Unit (обязательно - 2), Display Unit (необязательно - 3), после чего нажмите “Create” или “Create & add New” (см. Figure Adding a Vali). Руководство по Units и их преобразованию см. в разделе Units and Automatic Unit Conversion.

Кроме того, вы можете выбрать, в какие Blocks нужно добавить этот Vali (4).

Pro-tip: в поле Formula and Unit нажмите “\“, чтобы получить список возможных типов вычислений.

image-20240320-125054.pngДобавление Vali — всплывающее окно для добавления различных типов Valis.

 

Обратите внимание, что при создании свойства пользователь может создавать разные Valis, например обычный Vali, Matrix, Text Vali, Datevali или Dataset.

Type

Use-case

Vali

Свойство Block, которое имеет только одно значение, например mass, cost, density и т. д.

Matrix

Матрица — это группа отдельных Valis, упорядоченных по строкам и столбцам. Matrix Vali обычно используется, когда свойство Blocks имеет разные режимы. Например, Powerconsumption в разных режимах, значения inertia по разным осям.

Text Vali

Vali, который хранит строки/текст, например,

DateVali

Vali, который хранит информацию о дате, например,

image-20240320-152411.png

Dataset

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

Добавление формул

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

В поле Formula and Unit пользователь может ссылаться на Valis, доступные либо в рамках проекта, либо также в других проектах. Для этого можно перейти в “Formula and Unit” и ввести “$”, после чего откроется небольшое диалоговое окно с Valis внутри (см. Figure Calling Valis). Пользователи могут вводить ключевые слова, чтобы быстрее найти нужный Vali.

image-20240320-130116.pngВызов Valis — в любом месте Requirements & Systems Portal можно использовать символ доллара “$“, чтобы открыть выпадающий список, показывающий любые объекты, на которые можно сослаться (например, Valis, Requirements и т. д.).

Если пользователь хочет использовать Valis из другого проекта, он может прокрутить диалоговое окно вниз до конца и выбрать опцию “show other projects”.

  • Создайте собственный проект “Constants”, где можно хранить часто используемые Valis, чтобы в любой момент вызывать их для расчетов.

  • Редактор формул использует синтаксис Latex для красивого отображения формул. Например, ввод sqrt или нажатие Ctrl+S автоматически преобразуется в символ квадратного корня. Аналогично, ^ можно использовать для степени и т. д. Также доступна синяя подсветка с квадратной рамкой, что делает ввод длинных формул более удобным.

    Редактор также включает автоматическое закрытие скобок.

Распространенные типы формул

Вы можете:

  • использовать фиксированное значение, например 42.7kg

  • использовать формулу, например 5/(3+17.3*9)

  • использовать другие Valis, используя знак $ : $car.speed+5

В формулах доступны следующие математические операции:

  • +-*/

  • %(операция modulo)

  • ^

  • sqrt()

  • exp()

  • log10()ln()log()

  • sin()cos()tan()

  • asin()acos()atan()

  • sinh()cosh()tanh()

  • fabs(): возвращает абсолютное значение

  • soc() = "Сумма дочерних": сумма всех Valis одного и того же типа в дочерних Blocks

  • poc() = "Произведение дочерних": произведение всех Valis одного и того же типа в дочерних Blocks

В формулах также можно использовать следующие логические функции:

  • if(condition, formula_if_true, formula_if_false)

  • max(formula1, formula2)

  • min(formula1, formula2)

Встроенные функции Requirements & Systems Portal:

  • soc(): означает "sum of children", суммирует все Valis одного и того же типа в Blocks на один уровень ниже

  • rssoc(): Обозначает “root sum squared of children” sqrt(x1^2+x2^2+⋯+xn^2). Например, если у вас есть три массы 2kg, 5kg и 6kg, функция rssoc даст результат 8.062257

  • aoc(): означает "average of children", вычисляет среднее значение Valis одного и того же типа в Blocks на один уровень ниже

  • poc(): означает "product of children", перемножает все Valis одного и того же типа в Blocks на один уровень ниже

  • average_of_datasets() или aod(): результатом Vali является среднее значение для каждой точки наборов данных, относящихся к этому Vali. Если набор данных только один, то именно он является результатом и используется в дальнейших расчетах

  • sum_of_datasets() или sod(): результатом Vali является сумма для каждой точки наборов данных, относящихся к этому Vali. Если набор данных только один, то именно он является результатом и используется в дальнейших расчетах

  • property($vali, property_name): получить свойство Vali. Возможные значения для property_name:

    • min

    • max (для получения требований min и max соответственно)

    • wc_minus

    • wc_plus (для получения худших случаев minus и plus соответственно)

  • minoc(): минимум дочерних. Возвращает минимальное значение среди всех Valis одного и того же типа в дочерних Blocks

  • maxoc(): максимум дочерних. Возвращает максимальное значение среди всех Valis одного и того же типа в дочерних Blocks

  • round(): встроенная функция round( ) следует спецификации Python's round function, в которой значения округляются до ближайшего кратного 10 в степени минус ndigits

     

Примеры формул:

  • $SolarPanel.width * $SolarPanel.length

  • max(soc(), $SolarPanel.lowest_mass)

  • if($SolarPanel.width*2 > $SolarPanel.length, 10, 5)

 

Vali Information

Вы можете увидеть больше информации о Vali, нажав на его имя. Это откроет представление сведений (1), где пользователь сможет найти информацию (2). См. Figure Vali Information для получения дополнительных сведений.

image-20240320-152847.pngИнформация о Vali — при нажатии на Vali откроется окно с дополнительной информацией. Здесь можно определить дополнительные свойства, добавить описание и задать impacts.

На вкладке информации пользователи могут добавлять/изменять margins/units, а также добавлять requirements (min/max). Requirements (min/max) — это пределы, установленные для конкретного свойства. Если значение или worst-case увеличивается или уменьшается и выходит за пределы требований либо опускается ниже них, Requirements & Systems Portal показывает предупреждение рядом с именем Vali. Дополнительную информацию см. в разделе Warnings.

Обратите внимание, что total margin, отображаемый в свойствах Vali, — это margin самого Block и суммарные накопленные margins дочернего Block. Подробнее о Margins см. на нашей справочной странице Margins.

ID: ID — это случайное число, автоматически добавляемое Valiengine, которое используется в Backend. Вы можете ввести ID Vali в поле поиска Rest API, чтобы найти этот Vali. См. документацию Rest API.

Name: здесь можно ввести и изменить имя Vali.

Description: в поле description можно ввести описание Vali. Вы также можете форматировать и редактировать задачи, как показано ниже.

Другая информация, которую здесь можно добавить/просмотреть, включает References, Using и Used by, а также Impacts этого Vali.

История Valis

Когда Vali изменяется напрямую или косвенно, изменения автоматически сохраняются в базе данных Requirements & Systems Portal. Вкладка истории Vali показывает значение до изменения, значение после изменения и кто изменил значения. Requirements & Systems Portal фиксирует изменения, даже если измененный Vali не имеет прямой ссылки на данный Vali.

Чтобы просмотреть историю изменений Vali (см. Figure Vali History), нажмите на имя Vali (1), и откроется вкладка сведений (2). Выберите значок “History” (2) , и ниже будет показан график изменений во времени. В разделе “Recent Changes” (3) пользователь найдет таблицу с данными ‘Time’, ‘Value before’, ‘Value after’ и ‘Reason’.

image-20240320-154208.pngИстория Vali — на вкладке History отображается графическое и табличное представление изменения Vali во времени.

Уведомления об изменениях

Чтобы получать уведомления при изменении определенного Vali, вы можете подписаться на него, нажав Subscribe в выпадающем меню кнопки Action у этого Vali. См. Figure Subscribing to a Vali, чтобы понять, как это сделать.

image-20240321-101120.pngПодписка на Vali — при подписке на Vali автоматические уведомления будут отображаться на вкладке Notification (значок колокольчика в правом верхнем углу), когда Vali изменяется.

Вы увидите новое уведомление на колокольчике уведомлений в правом верхнем углу, когда кто-то изменит значение, на которое вы подписаны (4). Затем можно нажать значок колокольчика, чтобы просмотреть уведомления.

 

AI-LocalizedЛокализовано с помощью ИИ
Если вы обнаружили проблему, выделите текст/изображение и нажмитеCtrl + Enter, чтобы отправить нам свой отзыв.
Доступность функциональных возможностей

Набор доступных функциональных возможностей зависит от вашего решения Altium – Altium Develop, редакция Altium Agile (Agile Teams или Agile Enterprise) или Altium Designer (на активной подписке).

Если вы не видите в своем ПО функцию, описанную здесь, свяжитесь с отделом продаж Altium, чтобы узнать больше.

Content