feat: integrate AMESim media models and editor UI
This commit is contained in:
1 parent
3e4f466114
commit
e7177ab03e
181 files changed
+7042
-25270
No files matched your search
@@ -25,13 +25,136 @@ export const componentCatalog = {
|
||||
temporary: true,
|
||||
order: 1,
|
||||
components: [
|
||||
{
|
||||
type: "amesim_ideal_air_medium",
|
||||
label: "空气介质定义",
|
||||
modelType: "amesim_ideal_air_medium",
|
||||
modelVersion: "0.2.0",
|
||||
symbol: "amesim_ideal_air_medium",
|
||||
order: 1,
|
||||
category: {
|
||||
id: "media",
|
||||
label: "介质物性",
|
||||
order: 1,
|
||||
},
|
||||
role: "amesimGasMediumDefinition",
|
||||
ports: [],
|
||||
parameters: [
|
||||
{
|
||||
name: "gi",
|
||||
label: "介质定义索引(gi)",
|
||||
quantity: "dimensionless",
|
||||
unit: "",
|
||||
default: 1,
|
||||
minimum: 1,
|
||||
maximum: 99,
|
||||
minimumExclusive: false,
|
||||
description: "介质定义索引由画布自动分配;索引 0 保留给内置理想空气。",
|
||||
},
|
||||
{
|
||||
name: "property_model",
|
||||
label: "物性计算模型",
|
||||
quantity: "dimensionless",
|
||||
unit: "",
|
||||
default: 0,
|
||||
minimum: 0,
|
||||
maximum: 0,
|
||||
minimumExclusive: false,
|
||||
editor: "amesimGasPropertyModel",
|
||||
options: [{ value: 0, label: "理想气体" }],
|
||||
description: "选择空气介质采用的物性计算模型。",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "amesim_helium_medium",
|
||||
label: "氦气介质定义",
|
||||
modelType: "amesim_helium_medium",
|
||||
modelVersion: "0.1.0",
|
||||
symbol: "amesim_helium_medium",
|
||||
order: 2,
|
||||
category: {
|
||||
id: "media",
|
||||
label: "介质物性",
|
||||
order: 1,
|
||||
},
|
||||
role: "amesimGasMediumDefinition",
|
||||
ports: [],
|
||||
parameters: [
|
||||
{
|
||||
name: "gi",
|
||||
label: "介质定义索引(gi)",
|
||||
quantity: "dimensionless",
|
||||
unit: "",
|
||||
default: 1,
|
||||
minimum: 1,
|
||||
maximum: 99,
|
||||
minimumExclusive: false,
|
||||
description: "介质定义索引由画布自动分配;索引 0 保留给内置理想空气。",
|
||||
},
|
||||
{
|
||||
name: "property_model",
|
||||
label: "物性计算模型",
|
||||
quantity: "dimensionless",
|
||||
unit: "",
|
||||
default: 0,
|
||||
minimum: 0,
|
||||
maximum: 0,
|
||||
minimumExclusive: false,
|
||||
editor: "amesimGasPropertyModel",
|
||||
options: [{ value: 0, label: "Peng–Robinson" }],
|
||||
description: "氦气当前使用 Peng–Robinson 状态方程计算物性。",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "amesim_pneumatic_test",
|
||||
label: "AMESim 气动测试元件",
|
||||
modelType: "amesim_pneumatic_test",
|
||||
modelVersion: "1.0.0",
|
||||
symbol: "symbol-not-registered",
|
||||
order: 3,
|
||||
category: {
|
||||
id: "pneumatic",
|
||||
label: "气动元件",
|
||||
order: 2,
|
||||
},
|
||||
ports: [
|
||||
physicalPort("port_a", "left", "bidirectional"),
|
||||
physicalPort("port_b", "right", "bidirectional"),
|
||||
],
|
||||
parameters: [
|
||||
{
|
||||
name: "gi",
|
||||
label: "介质物性模型(gi)",
|
||||
quantity: "dimensionless",
|
||||
unit: "",
|
||||
default: 0,
|
||||
minimum: 0,
|
||||
maximum: 99,
|
||||
minimumExclusive: false,
|
||||
editor: "amesimGasReference",
|
||||
description: "选择该气动元件引用的画布介质定义索引;0 表示内置理想空气。",
|
||||
},
|
||||
{
|
||||
name: "reference_pressure",
|
||||
label: "参考压力",
|
||||
quantity: "pressure",
|
||||
unit: "Pa",
|
||||
default: 100000,
|
||||
minimum: 0,
|
||||
minimumExclusive: true,
|
||||
description: "用于验证参数表单位换算和 XML 基础单位输出的参考压力。",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: "generic_sensor",
|
||||
label: "通用测试元件",
|
||||
modelType: "generic_sensor",
|
||||
modelVersion: "1.0.0",
|
||||
symbol: "symbol-not-registered",
|
||||
order: 1,
|
||||
order: 4,
|
||||
category: {
|
||||
id: "generic",
|
||||
label: "通用组件",
|
||||
@@ -49,6 +172,7 @@ export const componentCatalog = {
|
||||
unit: "",
|
||||
default: 1,
|
||||
minimumExclusive: false,
|
||||
description: "传感器输入值的无量纲放大倍数。",
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -158,8 +282,12 @@ export const resultSnapshot = {
|
||||
|
||||
export async function prepareApp(page: Page) {
|
||||
await page.addInitScript(() => {
|
||||
window.localStorage.clear();
|
||||
window.sessionStorage.clear();
|
||||
const preparedKey = "system-simulation-flow:e2e-storage-prepared";
|
||||
if (window.sessionStorage.getItem(preparedKey) !== "1") {
|
||||
window.localStorage.clear();
|
||||
window.sessionStorage.clear();
|
||||
window.sessionStorage.setItem(preparedKey, "1");
|
||||
}
|
||||
window.location.hash = "#/modeling";
|
||||
});
|
||||
await page.route("**/api/components/catalog", async (route) => {
|
||||
|
||||
Reference in new issue
Block a user