Valis và Calculations
Vali là các tham số thiết kế của Block, Requirement hoặc Analysis, có thể được dùng trong tính toán và tài liệu hóa. Một Vali có giá trị số và cũng chứa thông tin bổ sung như kiểu, đơn vị, công thức, mô tả và các yêu cầu min/max.
Tạo Vali
Bạn có thể tạo Vali trong một Block bằng cách trước tiên nhấp vào biểu tượng “+” ở góc dưới bên phải màn hình. Sau đó, tiếp tục điền tên (có thể là bất kỳ tên nào hoặc tên Valitype - 1), Công thức và Đơn vị (bắt buộc - 2), Đơn vị hiển thị (tùy chọn - 3), rồi nhấn “Create” hoặc “Create & add New” (xem Hình Adding a Vali). Để biết hướng dẫn về đơn vị và cách chuyển đổi đơn vị, vui lòng tham khảo Units and Automatic Unit Conversion.
Ngoài ra, bạn có thể quyết định sẽ thêm Vali này vào những Block nào (4).
Pro-tip: Trong trường Formula and Unit, nhấn “\“ để nhận danh sách các kiểu tính toán có thể dùng.
Thêm Vali - Cửa sổ bật lên để thêm các loại Vali khác nhau.
Lưu ý rằng khi tạo một thuộc tính, người dùng có thể tạo nhiều loại Vali khác nhau, ví dụ: Vali thông thường, Matrix, Text Vali, Datevali hoặc Dataset.
Thêm công thức
Một Vali có thể được tính bằng công thức sử dụng các biểu thức toán học thông dụng hoặc bằng cách thêm hằng số hay hàm. Công thức cũng có thể chứa các Vali khác.
Trong trường Formula and Unit, người dùng có thể tham chiếu đến các Vali có sẵn trong dự án hoặc cả ở các dự án khác. Để làm điều đó, họ có thể vào “Formula and Unit” và nhập “$”, một hộp thoại nhỏ sẽ mở ra với các Vali bên trong (xem Hình Calling Valis). Người dùng có thể nhập từ khóa để tìm Vali dễ hơn.
Gọi Vali - Ở bất kỳ đâu trong Requirements & Systems Portal, bạn có thể dùng ký hiệu đô la “$“ để mở danh sách thả xuống hiển thị mọi đối tượng có thể tham chiếu (ví dụ: Vali, Requirement, v.v.).Nếu người dùng muốn dùng Vali từ một dự án khác, họ có thể cuộn xuống cuối hộp thoại để chọn tùy chọn “show other projects”.
Các kiểu công thức phổ biến
Bạn có thể
-
dùng một giá trị cố định, chẳng hạn như
42.7kg -
dùng một công thức, chẳng hạn như
5/(3+17.3*9) -
dùng các Vali khác, bằng cách sử dụng ký hiệu
$:$car.speed+5
Các phép toán có thể dùng trong công thức là:
-
+,-,*,/ -
%(phép modulo) -
^ -
sqrt() -
exp() -
log10(),ln(),log() -
sin(),cos(),tan() -
asin(),acos(),atan() -
sinh(),cosh(),tanh() -
fabs(): trả về giá trị tuyệt đối -
soc()= "Tổng của các phần tử con": tổng của tất cả các Vali cùng loại trong các Block con -
poc()= "Tích của các phần tử con": tích của tất cả các Vali cùng loại trong các Block con
Bạn cũng có thể dùng các hàm logic sau trong công thức:
-
if(condition, formula_if_true, formula_if_false) -
max(formula1, formula2) -
min(formula1, formula2)
Các hàm tích hợp sẵn của Requirements & Systems Portal:
-
soc(): viết tắt của "sum of children", cộng tất cả các Vali cùng loại trong các Block ở cấp thấp hơn một mức -
rssoc():Viết tắt của “root sum squared of children” sqrt(x1^2+x2^2+⋯+xn^2). Ví dụ, nếu bạn có ba khối lượng 2kg, 5kg và 6kg, hàm rssoc sẽ cho kết quả là 8.062257 -
aoc(): viết tắt của "average of children", tính giá trị trung bình của các Vali cùng loại trong các Block ở cấp thấp hơn một mức -
poc(): viết tắt của "product of children", nhân tất cả các Vali cùng loại trong các Block ở cấp thấp hơn một mức -
average_of_datasets()hoặcaod(): kết quả của Vali là giá trị trung bình tại từng điểm của các dataset thuộc Vali đó. Nếu chỉ có một dataset, dataset đó sẽ là kết quả và được dùng trong các phép tính tiếp theo -
sum_of_datasets()hoặcsod(): kết quả của Vali là tổng tại từng điểm của các dataset thuộc Vali đó. Nếu chỉ có một dataset, dataset đó sẽ là kết quả và được dùng trong các phép tính tiếp theo -
property($vali, property_name): Lấy một thuộc tính của Vali. Các giá trị có thể có cho property_name là:-
min
-
max (để lấy lần lượt các yêu cầu min và max)
-
wc_minus
-
wc_plus (để lấy lần lượt các trường hợp xấu nhất âm và dương)
-
-
minoc(): Giá trị nhỏ nhất của các phần tử con. Trả về giá trị nhỏ nhất trong tất cả các Vali cùng loại ở các Block con -
maxoc(): Giá trị lớn nhất của các phần tử con. Trả về giá trị lớn nhất trong tất cả các Vali cùng loại ở các Block con -
round(): Hàm tích hợp sẵn round( ) tuân theo đặc tả của Python's round function, trong đó các giá trị được làm tròn tới bội số gần nhất của 10 với số mũ là âm của ndigits
Ví dụ về công thức:
-
$SolarPanel.width * $SolarPanel.length -
max(soc(), $SolarPanel.lowest_mass) -
if($SolarPanel.width*2 > $SolarPanel.length, 10, 5)
Vali Information
Bạn có thể xem thêm thông tin về Vali bằng cách nhấp vào tên của nó. Thao tác này sẽ mở chế độ xem chi tiết (1) và người dùng có thể tìm thấy thông tin (2). Xem Hình Vali Information để biết thêm chi tiết.
Thông tin Vali - Khi nhấp vào một Vali, một cửa sổ với thông tin bổ sung sẽ mở ra. Tại đây bạn có thể xác định thêm các thuộc tính, thêm mô tả và xác định các tác động.Trong tab thông tin, người dùng có nhiều tùy chọn để thêm/thay đổi margin/đơn vị và thêm các yêu cầu (min/max). Các yêu cầu (min/max) là các giới hạn mà bạn đặt ra cho thuộc tính cụ thể đó. Bất cứ khi nào giá trị hoặc worst-case tăng hoặc giảm, nếu các giá trị vượt quá hoặc thấp hơn giới hạn yêu cầu của bạn, Requirements & Systems Portal sẽ hiển thị cảnh báo bên cạnh tên của Vali. Tham khảo phần Warnings để biết thêm thông tin.
Lưu ý rằng total margin được hiển thị trong thuộc tính Vali là margin của Block và tổng các margin tích lũy của các Block con. Để biết thêm thông tin về Margins, vui lòng xem trang trợ giúp của chúng tôi tại Margins.
ID: ID là một số ngẫu nhiên được Valiengine tự động thêm vào và được sử dụng ở Backend. Bạn có thể nhập ID của một Vali vào trường tìm kiếm của Rest API để tìm Vali đó. Vui lòng tham khảo tài liệu Rest API.
Name: tại đây bạn có thể nhập và chỉnh sửa tên của Vali.
Description: trong trường mô tả, bạn có thể nhập mô tả cho Vali. Bạn cũng có thể định dạng và chỉnh sửa các tác vụ như minh họa bên dưới.
Các thông tin khác có thể được thêm/xem tại đây bao gồm References, Using và Used by, cũng như Impacts của Vali này.
Lịch sử của Vali
Khi một Vali được thay đổi trực tiếp hoặc gián tiếp, các thay đổi sẽ tự động được lưu vào cơ sở dữ liệu của Requirements & Systems Portal. Tab lịch sử của Vali hiển thị giá trị trước đó, giá trị sau khi thay đổi và ai là người đã thay đổi các giá trị. Requirements & Systems Portal ghi nhận các thay đổi ngay cả khi Vali bị thay đổi không được tham chiếu trực tiếp đến Vali đó.
Để xem lịch sử thay đổi của một Vali (xem Hình Vali History), hãy nhấp vào tên của Vali (1) và tab chi tiết sẽ mở ra (2). Chọn biểu tượng “History” (2) và bên dưới bạn sẽ thấy đồ thị hiển thị các thay đổi theo thời gian. Trong “Recent Changes” (3) người dùng có thể thấy một bảng chứa dữ liệu ‘Time’, ‘Value before’, ‘Value after’ và ‘Reason’.
Lịch sử Vali - Trong tab History sẽ hiển thị biểu diễn bằng đồ thị và bảng về sự thay đổi của một Vali theo thời gian.Thông báo khi có thay đổi
Để nhận thông báo khi một Vali nhất định thay đổi, bạn có thể đăng ký theo dõi bằng cách nhấp vào Subscribe trong danh sách thả xuống của nút Action của Vali. Hãy xem Hình Subscribing to a Vali để biết cách thực hiện.
Đăng ký theo dõi một Vali - Khi đăng ký theo dõi một Vali, các thông báo tự động sẽ được hiển thị trong tab Thông báo (biểu tượng chuông ở góc trên bên phải) khi Vali thay đổi.Bạn sẽ thấy một thông báo mới trên biểu tượng chuông thông báo ở góc trên bên phải khi có ai đó thay đổi một giá trị mà bạn đang đăng ký theo dõi (4). Sau đó, bạn có thể nhấp vào biểu tượng chuông để kiểm tra các thông báo.



