Math & Numbers
按伯努利方程 p/(ρg)+v²/(2g)+z = const 求解理想不可压缩定常流动中两点的未知量。输入上游三点 p₁、v₁、z₁,下游两点(非求解项的另两项),工具解出下游第三点。求流速:v₂=√[v₁²+2(p₁-p₂)/ρ+2g(z₁-z₂)],被开方值为负(物理不可能)时报错;求压强:p₂=p₁+½ρ(v₁²-v₂²)+ρg(z₁-z₂);求高度:z₂=z₁+(p₁-p₂)/(ρg)+(v₁²-v₂²)/(2g)。g=9.81 m/s²。密度支持 kg/m³/g/cm³,压强支持 Pa/kPa/bar/atm/psi,流速支持 m/s,高度支持 m/cm/ft。结果同时给出上游三水头分量(压强水头、速度水头、位置水头)及总水头。
用三种语言从你的代码中调用此工具。
curl -X POST 'https://api.elysiatools.com/zh/api/tools/bernoulli-equation-solver' \
-H 'Content-Type: application/json' \
-d '{"unknownVar":"velocity","density":1000,"densityUnit":"kg/m3","p1":200000,"v1":2,"z1":0,"pressureUnit":"Pa","velocityUnit":"m/s","lengthUnit":"m","p2":100000,"v2":0,"z2":0,"decimalPlaces":4}'以 JSON 形式 POST 提交输入参数。文件类型参数需先单独上传。
POST https://api.elysiatools.com/zh/api/tools/bernoulli-equation-solver| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| unknownVar | select | 否 | Which downstream quantity to solve for: velocity v₂, pressure p₂, or elevation z₂. Provide the other two downstream quantities. |
| density | number | 是 | Fluid density ρ. Enter in the selected Density Unit. |
| densityUnit | select | 否 | — |
| p1 | number | 是 | Upstream (point 1) pressure p₁. Enter in the selected Pressure Unit. |
| v1 | number | 是 | Upstream (point 1) velocity v₁ in m/s. |
将此工具加入你的 Model Context Protocol 服务,让 AI 智能体可以列出并调用它。
将以下内容加入你的 MCP 客户端配置:
{
"mcpServers": {
"elysiatools-bernoulli-equation-solver": {
"name": "bernoulli-equation-solver",
"description": "按伯努利方程 p/(ρg)+v²/(2g)+z = const 求解理想不可压缩定常流动中两点的未知量。输入上游三点 p₁、v₁、z₁,下游两点(非求解项的另两项),工具解出下游第三点。求流速:v₂=√[v₁²+2(p₁-p₂)/ρ+2g(z₁-z₂)],被开方值为负(物理不可能)时报错;求压强:p₂=p₁+½ρ(v₁²-v₂²)+ρg(z₁-z₂);求高度:z₂=z₁+(p₁-p₂)/(ρg)+(v₁²-v₂²)/(2g)。g=9.81 m/s²。密度支持 kg/m³/g/cm³,压强支持 Pa/kPa/bar/atm/psi,流速支持 m/s,高度支持 m/cm/ft。结果同时给出上游三水头分量(压强水头、速度水头、位置水头)及总水头。",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=bernoulli-equation-solver",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}连接到 SSE 端点后,列出已开放的工具:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}通过工具 id 调用,参数由其参数表构建:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "bernoulli-equation-solver",
"arguments": {
"unknownVar": "velocity",
"density": 1000,
"densityUnit": "kg/m3",
"p1": 200000,
"v1": 2,
"z1": 0,
"pressureUnit": "Pa",
"velocityUnit": "m/s",
"lengthUnit": "m",
"p2": 100000,
"v2": 0,
"z2": 0,
"decimalPlaces": 4
}
}
}有问题或反馈?请联系 [email protected]
| z1 | number | 是 | Upstream (point 1) elevation z₁. Enter in the selected Length Unit. |
| pressureUnit | select | 否 | — |
| velocityUnit | select | 否 | — |
| lengthUnit | select | 否 | — |
| p2 | number | 否 | Downstream (point 2) pressure p₂. Enter in the selected Pressure Unit. Required unless solving for p₂. |
| v2 | number | 否 | Downstream (point 2) velocity v₂ in m/s. Required unless solving for v₂. |
| z2 | number | 否 | Downstream (point 2) elevation z₂. Enter in the selected Length Unit. Required unless solving for z₂. |
| decimalPlaces | number | 否 | — |
JSON 结果
{
"key": {...},
"metadata": {
"key": "value"
},
"error": "Error message (optional)",
"message": "Notification message (optional)"
}