Commit 6e5f2f04 by Lian-runzhe Committed by GitHub

Update RustScript手册.md

parent 8b2b2e79
# RustScript 语言规范
# RustScript 语言规范
......@@ -260,7 +260,6 @@ tensor3d = [
get
语法:
element = get(t, row, col); // 获取指定位置的单个元素
注意:不支持 A[0,1] 这样的直接索引方式
输入参数:
t - 张量,若为稀疏矩阵,仅能获取非零元
row - 行索引,标量
......@@ -276,6 +275,7 @@ tensor3d = [
输入 get(sparse([0,0],[0,1],[1,2], 2, 2), 0, 1)
结果 2
```
**注意**:不支持 A[0,1] 这样的直接索引方式
### 6.2 张量切片
```rustscript
......@@ -448,10 +448,10 @@ c = [[1], [2], [3]]; // 列向量(二维张量), shape: [3, 1]
输入 size([[1., 0.5, 0.3, 0.2], [0.5, 1., 0.6, 0.5], [0.3, 0.6, 1., 0.7]])
结果 [3,4]
输入 size([1, 2, 3], 0)
输入 size([1, 2, 3], 0) //一维张量dim参数只能为空或者0,返回元素个数
结果 3
输入 size([[1, 2, 3]], 0)
输入 size([[1, 2, 3]], 0) //二维张量中,为空范围行数*列数,“0”返回行数,“1”返回列数
结果 1
输入 size([[1, 2, 3]], 1)
......@@ -612,12 +612,13 @@ c = [[1], [2], [3]]; // 列向量(二维张量), shape: [3, 1]
输入参数:
A - 矩阵
n - 标量
A中每个元素取n次幂
示例:
输入 [[1,2],[3,4]].^(-1)
结果 [[1,0.5], [1/3.,0.25]]
输入 [c(1,2),c(3,4)].^3
结果 [c(-3,4),c(-7,24)]
结果 [c(-11,-2),c(-117,44)]
输入 sparse([0,1,2],[1,0,1],[2,3,6], 3, 2).^3
结果 [[3, 2, 0], [0, 1, 8], [1, 0, 27], [2, 1, 216]]
......@@ -1259,11 +1260,6 @@ fn function_name(param1, param2, ...) {
return result;
}
// 简化返回语法(最后一个表达式作为返回值)
fn add(a, b) {
a + b
}
//函数支持多个返回
fn two_return_fn(input) {
return(input, input+1);
......@@ -2807,7 +2803,7 @@ fn make_y_bus(baseMVA, bus, branch) {
- 例如:母线编号仍然是1, 2, 3...
**函数转换(转换为0基索引):**
- 函数中的索引操作需要转换:`A(i)` → `A[i-1]`
- 循环变量需要调整:`for i = 1:n` → `for i in range(0, n)`
- 函数中的索引操作需要转换:`A(i)` → `get(A, i-1)`
- 循环变量需要调整:`for i = 1:n` → `for i in 0..n-1`
- 序列生成需要转换:`1:n` → `range(1, n+1)` 或 `range(0, n)`
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论