LMMC
Lamina Mathematic core
载入中...
搜索中...
未找到
dense_elementwise.h 文件参考
#include "lmmc/dense_types.h"
#include "lmmc/status.h"
dense_elementwise.h 的引用(Include)关系图:
此图展示该文件被哪些文件直接或间接地引用了:

浏览该文件的源代码.

函数

lmmc_status_t lmmc_vec_hadamard (const lmmc_vec_t *a, const lmmc_vec_t *b, lmmc_vec_t *c)
 逐元素向量 Hadamard 乘积: \(c_i = a_i \cdot b_i\)。
lmmc_status_t lmmc_vec_elementwise_div (const lmmc_vec_t *a, const lmmc_vec_t *b, lmmc_vec_t *c)
 逐元素向量除法: \(c_i = a_i / b_i\)。
lmmc_status_t lmmc_vec_elementwise_pow (const lmmc_vec_t *a, const lmmc_vec_t *b, lmmc_vec_t *c)
 逐元素向量幂运算: \(c_i = a_i^{b_i}\)。
lmmc_status_t lmmc_mat_hadamard (const lmmc_mat_t *a, const lmmc_mat_t *b, lmmc_mat_t *c)
 逐元素矩阵 Hadamard 乘积: \(C_{ij} = A_{ij} \cdot B_{ij}\)。
lmmc_status_t lmmc_mat_elementwise_div (const lmmc_mat_t *a, const lmmc_mat_t *b, lmmc_mat_t *c)
 逐元素矩阵除法: \(C_{ij} = A_{ij} / B_{ij}\)。
lmmc_status_t lmmc_mat_elementwise_pow (const lmmc_mat_t *a, const lmmc_mat_t *b, lmmc_mat_t *c)
 逐元素矩阵幂运算: \(C_{ij} = A_{ij}^{B_{ij}}\)。
lmmc_status_t lmmc_vec_cmp_gt (const lmmc_vec_t *a, const lmmc_vec_t *b, int *out)
 逐元素向量大于比较: \(\text{out}[i] = (a_i > b_i) \;?\; 1 : 0\)。
lmmc_status_t lmmc_vec_cmp_lt (const lmmc_vec_t *a, const lmmc_vec_t *b, int *out)
 逐元素向量小于比较: \(\text{out}[i] = (a_i < b_i) \;?\; 1 : 0\)。
lmmc_status_t lmmc_vec_cmp_ge (const lmmc_vec_t *a, const lmmc_vec_t *b, int *out)
 逐元素向量大于等于比较: \(\text{out}[i] = (a_i \geq b_i) \;?\; 1 : 0\)。
lmmc_status_t lmmc_vec_cmp_le (const lmmc_vec_t *a, const lmmc_vec_t *b, int *out)
 逐元素向量小于等于比较: \(\text{out}[i] = (a_i \leq b_i) \;?\; 1 : 0\)。
lmmc_status_t lmmc_vec_cmp_eq (const lmmc_vec_t *a, const lmmc_vec_t *b, lmmc_real_t tol, int *out)
 逐元素向量近似相等比较: \(\text{out}[i] = (|a_i - b_i| \leq \text{tol}) \;?\; 1 : 0\)。
lmmc_status_t lmmc_vec_apply (const lmmc_vec_t *in, lmmc_real_t(*func)(lmmc_real_t), lmmc_vec_t *out)
 对向量逐元素应用标量函数: \(\text{out}[i] = \text{func}(\text{in}[i])\)。
lmmc_status_t lmmc_mat_apply (const lmmc_mat_t *in, lmmc_real_t(*func)(lmmc_real_t), lmmc_mat_t *out)
 对矩阵逐元素应用标量函数: \(\text{out}[i][j] = \text{func}(\text{in}[i][j])\)。
lmmc_status_t lmmc_vec_apply_sin (const lmmc_vec_t *in, lmmc_vec_t *out)
 对向量逐元素求正弦: \(\text{out}[i] = \sin(\text{in}[i])\)。
lmmc_status_t lmmc_vec_apply_cos (const lmmc_vec_t *in, lmmc_vec_t *out)
 对向量逐元素求余弦: \(\text{out}[i] = \cos(\text{in}[i])\)。
lmmc_status_t lmmc_vec_apply_exp (const lmmc_vec_t *in, lmmc_vec_t *out)
 对向量逐元素求自然指数: \(\text{out}[i] = \exp(\text{in}[i])\)。
lmmc_status_t lmmc_vec_apply_log (const lmmc_vec_t *in, lmmc_vec_t *out)
 对向量逐元素求自然对数: \(\text{out}[i] = \ln(\text{in}[i])\)。
lmmc_status_t lmmc_vec_apply_sqrt (const lmmc_vec_t *in, lmmc_vec_t *out)
 对向量逐元素求平方根: \(\text{out}[i] = \sqrt{\text{in}[i]}\)。
lmmc_status_t lmmc_vec_apply_abs (const lmmc_vec_t *in, lmmc_vec_t *out)
 对向量逐元素求绝对值: \(\text{out}[i] = |\text{in}[i]|\)。
lmmc_status_t lmmc_mat_apply_sin (const lmmc_mat_t *in, lmmc_mat_t *out)
 对矩阵逐元素求正弦: \(\text{out}[i][j] = \sin(\text{in}[i][j])\)。
lmmc_status_t lmmc_mat_apply_cos (const lmmc_mat_t *in, lmmc_mat_t *out)
 对矩阵逐元素求余弦: \(\text{out}[i][j] = \cos(\text{in}[i][j])\)。
lmmc_status_t lmmc_mat_apply_exp (const lmmc_mat_t *in, lmmc_mat_t *out)
 对矩阵逐元素求自然指数: \(\text{out}[i][j] = \exp(\text{in}[i][j])\)。
lmmc_status_t lmmc_mat_apply_log (const lmmc_mat_t *in, lmmc_mat_t *out)
 对矩阵逐元素求自然对数: \(\text{out}[i][j] = \ln(\text{in}[i][j])\)。
lmmc_status_t lmmc_mat_apply_sqrt (const lmmc_mat_t *in, lmmc_mat_t *out)
 对矩阵逐元素求平方根: \(\text{out}[i][j] = \sqrt{\text{in}[i][j]}\)。
lmmc_status_t lmmc_mat_apply_abs (const lmmc_mat_t *in, lmmc_mat_t *out)
 对矩阵逐元素求绝对值: \(\text{out}[i][j] = |\text{in}[i][j]|\)。

函数说明

◆ lmmc_vec_hadamard()

lmmc_status_t lmmc_vec_hadamard ( const lmmc_vec_t * a,
const lmmc_vec_t * b,
lmmc_vec_t * c )

逐元素向量 Hadamard 乘积: \(c_i = a_i \cdot b_i\)。

a,b,c 长度须相同;c 可与 a 或 b 别名(就地运算)。

参数
[in]a输入向量。
[in]b输入向量。
[out]c输出向量,覆写原内容。
返回
注解
不分配内存。

在文件 dense_elementwise.c 第 12 行定义.

引用了 lmmc_vec_t::data, LMMC_REAL_CLEAR, LMMC_REAL_INIT, LMMC_REAL_MUL, LMMC_REAL_SET, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_vec_hadamard() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_hadamard().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_elementwise_div()

lmmc_status_t lmmc_vec_elementwise_div ( const lmmc_vec_t * a,
const lmmc_vec_t * b,
lmmc_vec_t * c )

逐元素向量除法: \(c_i = a_i / b_i\)。

写入输出前扫描 b 的全部元素,检测零值。 a,b,c 长度须相同;c 可与 a 或 b 别名。

参数
[in]a被除向量。
[in]b除数向量。
[out]c输出向量,覆写原内容。
返回
注解
不分配内存。

在文件 dense_elementwise.c 第 36 行定义.

引用了 lmmc_vec_t::data, LMMC_REAL_CLEAR, LMMC_REAL_CMP, LMMC_REAL_DIV, LMMC_REAL_INIT, LMMC_REAL_SET, LMMC_REAL_SET_D, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_NUMERICAL_FAILURE, LMMC_STATUS_OK, lmmc_vec_elementwise_div() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_elementwise_div().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_elementwise_pow()

lmmc_status_t lmmc_vec_elementwise_pow ( const lmmc_vec_t * a,
const lmmc_vec_t * b,
lmmc_vec_t * c )

逐元素向量幂运算: \(c_i = a_i^{b_i}\)。

使用标准 pow() 函数;a,b,c 长度须相同;c 可与 a 或 b 别名。

参数
[in]a底数向量。
[in]b指数向量。
[out]c输出向量,覆写原内容。
返回
注解
不分配内存。

在文件 dense_elementwise.c 第 72 行定义.

引用了 lmmc_vec_t::data, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_vec_elementwise_pow() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_elementwise_pow().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_hadamard()

lmmc_status_t lmmc_mat_hadamard ( const lmmc_mat_t * a,
const lmmc_mat_t * b,
lmmc_mat_t * c )

逐元素矩阵 Hadamard 乘积: \(C_{ij} = A_{ij} \cdot B_{ij}\)。

a,b,c 维度须完全相同;c 可与 a 或 b 别名(就地运算)。

参数
[in]a输入矩阵。
[in]b输入矩阵。
[out]c输出矩阵,覆写原内容。
返回
注解
不分配内存。

在文件 dense_elementwise.c 第 91 行定义.

引用了 lmmc_mat_t::cols, lmmc_mat_t::data, lmmc_mat_hadamard(), LMMC_REAL_CLEAR, LMMC_REAL_INIT, LMMC_REAL_MUL, LMMC_REAL_SET, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_mat_t::rows , 以及 lmmc_mat_t::stride.

被这些函数引用 lmmc_mat_hadamard().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_elementwise_div()

lmmc_status_t lmmc_mat_elementwise_div ( const lmmc_mat_t * a,
const lmmc_mat_t * b,
lmmc_mat_t * c )

逐元素矩阵除法: \(C_{ij} = A_{ij} / B_{ij}\)。

写入输出前扫描 b 的全部元素,检测零值。 a,b,c 维度须完全相同;c 可与 a 或 b 别名。

参数
[in]a被除矩阵。
[in]b除数矩阵。
[out]c输出矩阵,覆写原内容。
返回
注解
不分配内存。

在文件 dense_elementwise.c 第 120 行定义.

引用了 lmmc_mat_t::cols, lmmc_mat_t::data, lmmc_mat_elementwise_div(), LMMC_REAL_CLEAR, LMMC_REAL_CMP, LMMC_REAL_DIV, LMMC_REAL_INIT, LMMC_REAL_SET, LMMC_REAL_SET_D, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_NUMERICAL_FAILURE, LMMC_STATUS_OK, lmmc_mat_t::rows , 以及 lmmc_mat_t::stride.

被这些函数引用 lmmc_mat_elementwise_div().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_elementwise_pow()

lmmc_status_t lmmc_mat_elementwise_pow ( const lmmc_mat_t * a,
const lmmc_mat_t * b,
lmmc_mat_t * c )

逐元素矩阵幂运算: \(C_{ij} = A_{ij}^{B_{ij}}\)。

使用标准 pow() 函数;a,b,c 维度须完全相同;c 可与 a 或 b 别名。

参数
[in]a底数矩阵。
[in]b指数矩阵。
[out]c输出矩阵,覆写原内容。
返回
注解
不分配内存。

在文件 dense_elementwise.c 第 163 行定义.

引用了 lmmc_mat_t::cols, lmmc_mat_t::data, lmmc_mat_elementwise_pow(), LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_mat_t::rows , 以及 lmmc_mat_t::stride.

被这些函数引用 lmmc_mat_elementwise_pow().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_cmp_gt()

lmmc_status_t lmmc_vec_cmp_gt ( const lmmc_vec_t * a,
const lmmc_vec_t * b,
int * out )

逐元素向量大于比较: \(\text{out}[i] = (a_i > b_i) \;?\; 1 : 0\)。

a,b 长度须相同;out 数组由调用方预分配,长度至少为 a->size。

参数
[in]a输入向量。
[in]b输入向量。
[out]out输出整数数组,由调用方预分配。
返回
注解
覆写 out 数组,不分配内存。

在文件 dense_elementwise.c 第 187 行定义.

引用了 lmmc_vec_t::data, LMMC_REAL_CMP, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_vec_cmp_gt() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_cmp_gt().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_cmp_lt()

lmmc_status_t lmmc_vec_cmp_lt ( const lmmc_vec_t * a,
const lmmc_vec_t * b,
int * out )

逐元素向量小于比较: \(\text{out}[i] = (a_i < b_i) \;?\; 1 : 0\)。

a,b 长度须相同;out 数组由调用方预分配。

参数
[in]a输入向量。
[in]b输入向量。
[out]out输出整数数组,由调用方预分配。
返回
注解
覆写 out 数组,不分配内存。

在文件 dense_elementwise.c 第 205 行定义.

引用了 lmmc_vec_t::data, LMMC_REAL_CMP, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_vec_cmp_lt() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_cmp_lt().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_cmp_ge()

lmmc_status_t lmmc_vec_cmp_ge ( const lmmc_vec_t * a,
const lmmc_vec_t * b,
int * out )

逐元素向量大于等于比较: \(\text{out}[i] = (a_i \geq b_i) \;?\; 1 : 0\)。

a,b 长度须相同;out 数组由调用方预分配。

参数
[in]a输入向量。
[in]b输入向量。
[out]out输出整数数组,由调用方预分配。
返回
注解
覆写 out 数组,不分配内存。

在文件 dense_elementwise.c 第 223 行定义.

引用了 lmmc_vec_t::data, LMMC_REAL_CMP, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_vec_cmp_ge() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_cmp_ge().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_cmp_le()

lmmc_status_t lmmc_vec_cmp_le ( const lmmc_vec_t * a,
const lmmc_vec_t * b,
int * out )

逐元素向量小于等于比较: \(\text{out}[i] = (a_i \leq b_i) \;?\; 1 : 0\)。

a,b 长度须相同;out 数组由调用方预分配。

参数
[in]a输入向量。
[in]b输入向量。
[out]out输出整数数组,由调用方预分配。
返回
注解
覆写 out 数组,不分配内存。

在文件 dense_elementwise.c 第 241 行定义.

引用了 lmmc_vec_t::data, LMMC_REAL_CMP, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_vec_cmp_le() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_cmp_le().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_cmp_eq()

lmmc_status_t lmmc_vec_cmp_eq ( const lmmc_vec_t * a,
const lmmc_vec_t * b,
lmmc_real_t tol,
int * out )

逐元素向量近似相等比较: \(\text{out}[i] = (|a_i - b_i| \leq \text{tol}) \;?\; 1 : 0\)。

a,b 长度须相同;out 数组由调用方预分配。

参数
[in]a输入向量。
[in]b输入向量。
[in]tol容差阈值(非负)。
[out]out输出整数数组,由调用方预分配。
返回
注解
覆写 out 数组,不分配内存。

在文件 dense_elementwise.c 第 259 行定义.

引用了 lmmc_vec_t::data, LMMC_REAL_ABS, LMMC_REAL_CLEAR, LMMC_REAL_CMP, LMMC_REAL_INIT, LMMC_REAL_SUB, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_vec_cmp_eq() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_cmp_eq().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_apply()

lmmc_status_t lmmc_vec_apply ( const lmmc_vec_t * in,
lmmc_real_t(* func )(lmmc_real_t),
lmmc_vec_t * out )

对向量逐元素应用标量函数: \(\text{out}[i] = \text{func}(\text{in}[i])\)。

支持就地操作( in 与 out 可指向同一向量)。

参数
[in]in输入向量(in == out 时就地更新)。
[in]func标量函数指针,接受一个 lmmc_real_t 参数并返回 lmmc_real_t。须为有效指针。
[out]out输出向量,长度须与 in 相同。覆写原内容。
返回
注解
不分配内存。

在文件 dense_elementwise.c 第 334 行定义.

引用了 lmmc_vec_t::data, LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_vec_apply() , 以及 lmmc_vec_t::size.

被这些函数引用 lmmc_vec_apply(), lmmc_vec_apply_abs(), lmmc_vec_apply_cos(), lmmc_vec_apply_exp(), lmmc_vec_apply_log(), lmmc_vec_apply_sin() , 以及 lmmc_vec_apply_sqrt().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_apply()

lmmc_status_t lmmc_mat_apply ( const lmmc_mat_t * in,
lmmc_real_t(* func )(lmmc_real_t),
lmmc_mat_t * out )

对矩阵逐元素应用标量函数: \(\text{out}[i][j] = \text{func}(\text{in}[i][j])\)。

支持就地操作( in 与 out 可指向同一矩阵)。按各自的 stride 遍历。

参数
[in]in输入矩阵(in == out 时就地更新)。
[in]func标量函数指针,接受一个 lmmc_real_t 参数并返回 lmmc_real_t。须为有效指针。
[out]out输出矩阵,维度须与 in 相同(rows 和 cols 均相等)。覆写原内容。
返回
注解
不分配内存。

在文件 dense_elementwise.c 第 353 行定义.

引用了 lmmc_mat_t::cols, lmmc_mat_t::data, lmmc_mat_apply(), LMMC_STATUS_DIMENSION_MISMATCH, LMMC_STATUS_INVALID_ARGUMENT, LMMC_STATUS_OK, lmmc_mat_t::rows , 以及 lmmc_mat_t::stride.

被这些函数引用 lmmc_mat_apply(), lmmc_mat_apply_abs(), lmmc_mat_apply_cos(), lmmc_mat_apply_exp(), lmmc_mat_apply_log(), lmmc_mat_apply_sin() , 以及 lmmc_mat_apply_sqrt().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_apply_sin()

lmmc_status_t lmmc_vec_apply_sin ( const lmmc_vec_t * in,
lmmc_vec_t * out )

对向量逐元素求正弦: \(\text{out}[i] = \sin(\text{in}[i])\)。

等价于 lmmc_vec_apply(in, sin, out)。

参数
[in]in输入向量(in == out 时就地更新)。
[out]out输出向量,长度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 375 行定义.

引用了 lmmc_vec_apply() , 以及 lmmc_vec_apply_sin().

被这些函数引用 lmmc_vec_apply_sin().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_apply_cos()

lmmc_status_t lmmc_vec_apply_cos ( const lmmc_vec_t * in,
lmmc_vec_t * out )

对向量逐元素求余弦: \(\text{out}[i] = \cos(\text{in}[i])\)。

等价于 lmmc_vec_apply(in, cos, out)。

参数
[in]in输入向量(in == out 时就地更新)。
[out]out输出向量,长度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 380 行定义.

引用了 lmmc_vec_apply() , 以及 lmmc_vec_apply_cos().

被这些函数引用 lmmc_vec_apply_cos().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_apply_exp()

lmmc_status_t lmmc_vec_apply_exp ( const lmmc_vec_t * in,
lmmc_vec_t * out )

对向量逐元素求自然指数: \(\text{out}[i] = \exp(\text{in}[i])\)。

等价于 lmmc_vec_apply(in, exp, out)。

参数
[in]in输入向量(in == out 时就地更新)。
[out]out输出向量,长度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 385 行定义.

引用了 lmmc_vec_apply() , 以及 lmmc_vec_apply_exp().

被这些函数引用 lmmc_vec_apply_exp().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_apply_log()

lmmc_status_t lmmc_vec_apply_log ( const lmmc_vec_t * in,
lmmc_vec_t * out )

对向量逐元素求自然对数: \(\text{out}[i] = \ln(\text{in}[i])\)。

等价于 lmmc_vec_apply(in, log, out)。

参数
[in]in输入向量(in == out 时就地更新)。
[out]out输出向量,长度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 390 行定义.

引用了 lmmc_vec_apply() , 以及 lmmc_vec_apply_log().

被这些函数引用 lmmc_vec_apply_log().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_apply_sqrt()

lmmc_status_t lmmc_vec_apply_sqrt ( const lmmc_vec_t * in,
lmmc_vec_t * out )

对向量逐元素求平方根: \(\text{out}[i] = \sqrt{\text{in}[i]}\)。

等价于 lmmc_vec_apply(in, sqrt, out)。

参数
[in]in输入向量(in == out 时就地更新)。
[out]out输出向量,长度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 395 行定义.

引用了 lmmc_vec_apply() , 以及 lmmc_vec_apply_sqrt().

被这些函数引用 lmmc_vec_apply_sqrt().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_vec_apply_abs()

lmmc_status_t lmmc_vec_apply_abs ( const lmmc_vec_t * in,
lmmc_vec_t * out )

对向量逐元素求绝对值: \(\text{out}[i] = |\text{in}[i]|\)。

等价于 lmmc_vec_apply(in, fabs, out)。

参数
[in]in输入向量(in == out 时就地更新)。
[out]out输出向量,长度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 400 行定义.

引用了 lmmc_vec_apply() , 以及 lmmc_vec_apply_abs().

被这些函数引用 lmmc_vec_apply_abs().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_apply_sin()

lmmc_status_t lmmc_mat_apply_sin ( const lmmc_mat_t * in,
lmmc_mat_t * out )

对矩阵逐元素求正弦: \(\text{out}[i][j] = \sin(\text{in}[i][j])\)。

等价于 lmmc_mat_apply(in, sin, out)。

参数
[in]in输入矩阵(in == out 时就地更新)。
[out]out输出矩阵,维度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 405 行定义.

引用了 lmmc_mat_apply() , 以及 lmmc_mat_apply_sin().

被这些函数引用 lmmc_mat_apply_sin().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_apply_cos()

lmmc_status_t lmmc_mat_apply_cos ( const lmmc_mat_t * in,
lmmc_mat_t * out )

对矩阵逐元素求余弦: \(\text{out}[i][j] = \cos(\text{in}[i][j])\)。

等价于 lmmc_mat_apply(in, cos, out)。

参数
[in]in输入矩阵(in == out 时就地更新)。
[out]out输出矩阵,维度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 410 行定义.

引用了 lmmc_mat_apply() , 以及 lmmc_mat_apply_cos().

被这些函数引用 lmmc_mat_apply_cos().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_apply_exp()

lmmc_status_t lmmc_mat_apply_exp ( const lmmc_mat_t * in,
lmmc_mat_t * out )

对矩阵逐元素求自然指数: \(\text{out}[i][j] = \exp(\text{in}[i][j])\)。

等价于 lmmc_mat_apply(in, exp, out)。

参数
[in]in输入矩阵(in == out 时就地更新)。
[out]out输出矩阵,维度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 415 行定义.

引用了 lmmc_mat_apply() , 以及 lmmc_mat_apply_exp().

被这些函数引用 lmmc_mat_apply_exp().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_apply_log()

lmmc_status_t lmmc_mat_apply_log ( const lmmc_mat_t * in,
lmmc_mat_t * out )

对矩阵逐元素求自然对数: \(\text{out}[i][j] = \ln(\text{in}[i][j])\)。

等价于 lmmc_mat_apply(in, log, out)。

参数
[in]in输入矩阵(in == out 时就地更新)。
[out]out输出矩阵,维度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 420 行定义.

引用了 lmmc_mat_apply() , 以及 lmmc_mat_apply_log().

被这些函数引用 lmmc_mat_apply_log().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_apply_sqrt()

lmmc_status_t lmmc_mat_apply_sqrt ( const lmmc_mat_t * in,
lmmc_mat_t * out )

对矩阵逐元素求平方根: \(\text{out}[i][j] = \sqrt{\text{in}[i][j]}\)。

等价于 lmmc_mat_apply(in, sqrt, out)。

参数
[in]in输入矩阵(in == out 时就地更新)。
[out]out输出矩阵,维度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 425 行定义.

引用了 lmmc_mat_apply() , 以及 lmmc_mat_apply_sqrt().

被这些函数引用 lmmc_mat_apply_sqrt().

函数调用图:
这是这个函数的调用关系图:

◆ lmmc_mat_apply_abs()

lmmc_status_t lmmc_mat_apply_abs ( const lmmc_mat_t * in,
lmmc_mat_t * out )

对矩阵逐元素求绝对值: \(\text{out}[i][j] = |\text{in}[i][j]|\)。

等价于 lmmc_mat_apply(in, fabs, out)。

参数
[in]in输入矩阵(in == out 时就地更新)。
[out]out输出矩阵,维度须与 in 相同。覆写原内容。
返回

在文件 dense_elementwise.c 第 430 行定义.

引用了 lmmc_mat_apply() , 以及 lmmc_mat_apply_abs().

被这些函数引用 lmmc_mat_apply_abs().

函数调用图:
这是这个函数的调用关系图: