Valis 및 계산
Vali는 계산과 문서화에 사용할 수 있는 Block, Requirement 또는 Analysis의 설계 파라미터입니다. Vali는 수치 값을 가지며, type, unit, formula, description, min/max requirements 같은 추가 정보도 포함합니다.
Vali 생성
Block에서 Vali를 생성하려면 먼저 화면 오른쪽 하단의 “+” 기호를 클릭합니다. 그런 다음 이름(임의의 이름 또는 Valitype 이름 - 1), Formula와 Unit(필수 - 2), Display Unit(선택 - 3)을 입력한 뒤 “Create” 또는 “Create & add New”를 클릭합니다(그림 Adding a Vali 참조). Unit 및 자동 변환에 대한 가이드는 Units and Automatic Unit Conversion을 참조하세요.
추가로, 이 Vali를 어떤 Block에 추가할지 결정할 수 있습니다(4).
Pro-tip: Formula and Unit 필드에서 “\“를 입력하면 가능한 계산 유형 목록을 볼 수 있습니다.
Vali 추가 - 다양한 유형의 Vali를 추가하는 팝업 창입니다.
속성을 생성하는 동안 사용자는 일반 Vali, Matrix, Text Vali, Datevali 또는 Dataset 등 다양한 Vali를 생성할 수 있습니다.
Formula 추가
Vali는 일반적인 수학 표현식이나 상수, 함수 추가를 사용한 formula로 계산할 수 있습니다. Formula에는 다른 Vali도 포함될 수 있습니다.
Formula and Unit 필드 내에서 사용자는 현재 프로젝트 또는 다른 프로젝트에 있는 Vali를 참조할 수 있습니다. 이를 위해 “Formula and Unit”으로 이동해 “$”를 입력하면, Vali가 포함된 작은 대화상자가 열립니다(그림 Calling Valis 참조). 사용자는 키워드를 입력해 원하는 Vali를 쉽게 찾을 수 있습니다.
Vali 호출 - Requirements & Systems Portal의 어디에서든 달러 기호 “$“를 사용하면 참조 가능한 객체(예: Vali, Requirement 등)를 보여주는 드롭다운을 열 수 있습니다.다른 프로젝트의 Vali를 사용하려는 경우, 대화상자 맨 아래로 스크롤하여 “show other projects” 옵션을 선택할 수 있습니다.
일반적인 Formula 유형
다음과 같이 사용할 수 있습니다.
-
예를 들어 와 같은 고정값 사용
42.7kg -
예를 들어 와 같은 formula 사용
5/(3+17.3*9) -
$기호를 사용해 다른 Vali 사용:$car.speed+5
Formula에서 사용할 수 있는 수학 연산은 다음과 같습니다:
-
+,-,*,/ -
%(modulo 연산) -
^ -
sqrt() -
exp() -
log10(),ln(),log() -
sin(),cos(),tan() -
asin(),acos(),atan() -
sinh(),cosh(),tanh() -
fabs(): 절댓값을 반환합니다 -
soc()= "Sum of children": 하위 Block에 있는 동일한 유형의 모든 Vali 합계 -
poc()= "Product of children": 하위 Block에 있는 동일한 유형의 모든 Vali 곱
또한 formula에서 다음 논리 함수를 사용할 수 있습니다:
-
if(condition, formula_if_true, formula_if_false) -
max(formula1, formula2) -
min(formula1, formula2)
Requirements & Systems Portal 내장 함수:
-
soc(): "sum of children"을 의미하며, 한 단계 아래 Block에 있는 동일한 유형의 모든 Vali를 합산합니다 -
rssoc():“root sum squared of children”을 의미하며 sqrt(x1^2+x2^2+⋯+xn^2)입니다. 예를 들어 질량이 2kg, 5kg, 6kg인 세 개가 있으면 rssoc 함수의 결과는 8.062257입니다 -
aoc(): "average of children"을 의미하며, 한 단계 아래 Block에 있는 동일한 유형 Vali의 평균값을 계산합니다 -
poc(): "product of children"을 의미하며, 한 단계 아래 Block에 있는 동일한 유형의 모든 Vali를 곱합니다 -
average_of_datasets()또는aod(): 해당 Vali에 속한 dataset의 각 포인트에 대한 평균이 Vali 결과가 됩니다. dataset이 하나뿐이면 그 dataset이 결과가 되며 이후 계산에 사용됩니다 -
sum_of_datasets()또는sod(): 해당 Vali에 속한 dataset의 각 포인트에 대한 합계가 Vali 결과가 됩니다. dataset이 하나뿐이면 그 dataset이 결과가 되며 이후 계산에 사용됩니다 -
property($vali, property_name): Vali의 속성을 가져옵니다. property_name으로 가능한 값은 다음과 같습니다:-
min
-
max (각각 min 및 max requirement를 가져오기 위해)
-
wc_minus
-
wc_plus (각각 minus 및 plus worst case를 가져오기 위해)
-
-
minoc(): 하위 항목의 최솟값. 하위 Block에 있는 동일한 유형의 모든 Vali 중 최솟값을 반환합니다 -
maxoc(): 하위 항목의 최댓값. 하위 Block에 있는 동일한 유형의 모든 Vali 중 최댓값을 반환합니다 -
round(): 내장 round( ) 함수는 Python's round function 사양을 따르며, 값은 10의 마이너스 ndigits제곱 배수 중 가장 가까운 값으로 반올림됩니다
Formula 예시:
-
$SolarPanel.width * $SolarPanel.length -
max(soc(), $SolarPanel.lowest_mass) -
if($SolarPanel.width*2 > $SolarPanel.length, 10, 5)
Vali Information
Vali 이름을 클릭하면 해당 Vali에 대한 더 많은 정보를 볼 수 있습니다. 그러면 상세 보기 (1)가 열리고, 사용자는 정보 (2)를 확인할 수 있습니다. 자세한 내용은 그림 Vali Information 를 참조하세요.
Vali 정보 - Vali를 클릭하면 추가 정보가 포함된 창이 열립니다. 여기에서 더 많은 속성을 정의하고, 설명을 추가하고, impact를 정의할 수 있습니다.정보 탭에서는 margin/unit을 추가 또는 변경하고 requirement(min/max)도 추가할 수 있습니다. requirement(min/max)는 특정 속성에 대해 설정한 한계값입니다. 값 또는 worst-case가 증가 또는 감소하여 requirement 한계를 초과하거나 그 아래로 내려가면, Requirements & Systems Portal은 Vali 이름 옆에 경고를 표시합니다. 자세한 내용은 Warnings 섹션을 참조하세요.
Vali 속성에 표시되는 total margin은 해당 Block의 margin과 child Block의 누적 total margin을 포함한다는 점에 유의하세요. Margin에 대한 자세한 내용은 도움말 페이지 Margins를 참조하세요.
ID: ID는 Backend에서 사용되는 Valiengine이 무작위로 자동 추가하는 숫자입니다. Rest API의 검색 필드에 Vali의 ID를 입력해 해당 Vali를 찾을 수 있습니다. 자세한 내용은 Rest API 문서를 참조하세요.
Name: 여기에서 Vali의 이름을 입력하고 수정할 수 있습니다.
Description: description 필드에서 Vali에 대한 설명을 입력할 수 있습니다. 아래와 같이 서식을 지정하고 작업을 편집할 수도 있습니다.
여기에서 추가/확인할 수 있는 다른 정보로는 References, Using, Used by, 그리고 이 Vali의 Impacts가 있습니다.
Vali 이력
Vali가 직접 또는 간접적으로 변경되면, 그 변경 사항은 Requirements & Systems Portal 데이터베이스에 자동으로 저장됩니다. Vali의 History 탭에는 변경 전 값, 변경 후 값, 그리고 누가 값을 변경했는지가 표시됩니다. Requirements & Systems Portal은 변경된 Vali가 해당 Vali를 직접 참조하지 않는 경우에도 변경 사항을 기록합니다.
Vali 변경 이력을 보려면(그림 Vali History 참조), Vali 이름 (1)을 클릭하면 details 탭이 열립니다 (2). “History” 아이콘 (2) 을 선택하면, 그 아래에서 시간에 따른 변경 사항을 보여주는 그래프를 확인할 수 있습니다. “Recent Changes” (3)에서는 ‘Time’, ‘Value before’, ‘Value after’, ‘Reason’ 데이터가 채워진 표를 볼 수 있습니다.
Vali 이력 - History 탭에서는 시간에 따른 Vali 변경 내용을 그래프와 표 형태로 보여줍니다.변경 알림
특정 Vali가 변경될 때 알림을 받으려면, Vali의 Action 버튼 드롭다운에서 Subscribe를 클릭하여 구독할 수 있습니다. 방법은 그림 Subscribing to a Vali를 확인하세요.
Vali 구독 - Vali를 구독하면 Vali에 변경이 있을 때 알림 탭(오른쪽 상단의 종 모양 아이콘)에 자동 알림이 표시됩니다.내가 구독한 값이 다른 사람에 의해 변경되면 오른쪽 상단의 알림 종 아이콘에 새 알림이 표시됩니다 (4). 그런 다음 종 아이콘을 클릭하여 알림을 확인할 수 있습니다.



