ocean::Model
ocean::Model
模型, 模型是一个基础类,是所有模型的基础 More...
#include <Model.hpp>
Inherits from ocean::Node, std::enable_shared_from_this< Node >
Inherited by ocean::ConnectionModel, ocean::NeuronGroup
Public Functions
Name | |
---|---|
Model(const PIModel & base) 构造模型, 该方法由模块内部调用 | |
~Model() override 模型析构 | |
float | getStep() 获取计算步长,步长是两次计算间的周期 |
std::string | getOperation() 获取操作名称 |
PVariable | getParam(const std::string & paramName) 根据参数名称获取变量 |
PTensorVariable | getStatus(const std::string & variableName) 据参数名称张量变量 |
bool | setStatus(const std::string & variableName, const Filler & filler) 根据参数名称设置张量变量 |
bool | setStatus(const std::string & variableName, const Tensor & status) 根据参数名称设置张量变量 |
PInput | in(const std::string & name) 根据端口名称获取输入端口 |
POutput | out(const std::string & name) 根据端口名称获取输出端口 |
PReference | ref(const std::string & name) 根据端口名称获取引用端口 |
PConnection | mat(const std::string & name) 根据端口名称获取连接端口 |
void | addMonitor(const std::string & paramName, float windows =0) 添加变量监控 |
void | addMonitors(std::vector< std::string > monitors, float windows =0) 批量添加变量监控 |
void | removeMonitor(const std::string & paramName) 移除变量监控 |
void | removeMonitors(std::vector< std::string > monitors) 批量删除变量监控 |
CaptureBuffer | getCapture(const std::string & paramName) 获取变量监控结果 |
std::vector< CaptureBuffer > | getCaptures(std::vector< std::string > captures) 批量获取变量监控 |
PIModel | getModel() 获取内部模型指针, 仅被内部模块使用 |
Additional inherited members
Public Functions inherited from ocean::Node
Name | |
---|---|
Node(PModelBase model) 构造节点 | |
virtual | ~Node() 节点析构函数 |
const std::string & | getName() const 获取节点名称 |
const std::string & | getDescription() const 获取节点描述 |
void | setDescription(const std::string & description) 设置节点描述 |
PModelBase | getModelBase() 获取内部基类指针 |
Protected Attributes inherited from ocean::Node
Name | |
---|---|
PModelBase | model 内部模块指针 |
Detailed Description
class ocean::Model;
模型, 模型是一个基础类,是所有模型的基础
- 提供了操作管理,参数管理的功能;
- 提供了端口管理的功能,快速访问模型端口;
Public Functions Documentation
function Model
explicit Model(
const PIModel & base
)
构造模型, 该方法由模块内部调用
function ~Model
~Model() override
模型析构
function getStep
float getStep()
获取计算步长,步长是两次计算间的周期
Return: 计算步长
function getOperation
std::string getOperation()
获取操作名称
Return: 操作名称
Note: 模型类型的标识,不同模型,操作名称不同
function getParam
PVariable getParam(
const std::string & paramName
)
根据参数名称获取变量
Parameters:
- paramName 参数名称
Return: 参数实例
- nullptr 表示变量不存在
- other 参数实例
function getStatus
PTensorVariable getStatus(
const std::string & variableName
)
据参数名称张量变量
Parameters:
- variableName 变量名称
Return: 参数实例
- nullptr 表示变量不存在
- other 参数实例
function setStatus
bool setStatus(
const std::string & variableName,
const Filler & filler
)
根据参数名称设置张量变量
Parameters:
- variableName 变量名称
- filler 填充器
Return: 是否设置成功,
- true 成功
- false 失败
Note: 设置对象为填充器, 设置不会立即生效,如果模型已经完成初始化,设置将不会被使用
function setStatus
bool setStatus(
const std::string & variableName,
const Tensor & status
)
根据参数名称设置张量变量
Parameters:
- variableName 变量名称
- status 张量
Return: 是否设置成功,
- true 成功
- false 失败
Note: 设置对象为张量, 如果模型已经完成初始化设置立即生效,否则以填充器绑定到变量,将在初始化时使用
function in
PInput in(
const std::string & name
)
根据端口名称获取输入端口
Parameters:
- name 端口名称
Return: 端口指针
- nullptr 表示端口不存在
- other 端口指针
function out
POutput out(
const std::string & name
)
根据端口名称获取输出端口
Parameters:
- name 端口名称
Return: 端口指针
- nullptr 表示端口不存在
- other 端口指针
function ref
PReference ref(
const std::string & name
)
根据端口名称获取引用端口
Parameters:
- name 端口名称
Return: 端口指针
- nullptr 表示端口不存在
- other 端口指针
function mat
PConnection mat(
const std::string & name
)
根据端口名称获取连接端口
Parameters:
- name 端口名称
Return: 端口指针
- nullptr 表示端口不存在
- other 端口指针
function addMonitor
void addMonitor(
const std::string & paramName,
float windows =0
)
添加变量监控
Parameters:
- paramName 参数名称
- windows 缓冲区窗口大小, 为0表示按需进行进行创建
function addMonitors
void addMonitors(
std::vector< std::string > monitors,
float windows =0
)
批量添加变量监控
Parameters:
- monitors 变量列表
- windows 缓冲区窗口大小, 为0表示按需进行进行创建
function removeMonitor
void removeMonitor(
const std::string & paramName
)
移除变量监控
Parameters:
- paramName 变量名称
function removeMonitors
void removeMonitors(
std::vector< std::string > monitors
)
批量删除变量监控
Parameters:
- monitors 变量列表
function getCapture
CaptureBuffer getCapture(
const std::string & paramName
)
获取变量监控结果
Parameters:
- model 模型实例
- paramName 变量名称
Return: 捕获结果
function getCaptures
std::vector< CaptureBuffer > getCaptures(
std::vector< std::string > captures
)
批量获取变量监控
Parameters:
- captures 变量列表
Return: 捕获结果列表
function getModel
PIModel getModel()
获取内部模型指针, 仅被内部模块使用
Return: 内部模块指针
Updated on 2022-08-19 at 17:14:26 +0800