ocean::Model

Neurocean大约 5 分钟

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
模型析构
floatgetStep()
获取计算步长,步长是两次计算间的周期
std::stringgetOperation()
获取操作名称
PVariablegetParam(const std::string & paramName)
根据参数名称获取变量
PTensorVariablegetStatus(const std::string & variableName)
据参数名称张量变量
boolsetStatus(const std::string & variableName, const Filler & filler)
根据参数名称设置张量变量
boolsetStatus(const std::string & variableName, const Tensor & status)
根据参数名称设置张量变量
PInputin(const std::string & name)
根据端口名称获取输入端口
POutputout(const std::string & name)
根据端口名称获取输出端口
PReferenceref(const std::string & name)
根据端口名称获取引用端口
PConnectionmat(const std::string & name)
根据端口名称获取连接端口
voidaddMonitor(const std::string & paramName, float windows =0)
添加变量监控
voidaddMonitors(std::vector< std::string > monitors, float windows =0)
批量添加变量监控
voidremoveMonitor(const std::string & paramName)
移除变量监控
voidremoveMonitors(std::vector< std::string > monitors)
批量删除变量监控
CaptureBuffergetCapture(const std::string & paramName)
获取变量监控结果
std::vector< CaptureBuffer >getCaptures(std::vector< std::string > captures)
批量获取变量监控
PIModelgetModel()
获取内部模型指针, 仅被内部模块使用

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
获取节点描述
voidsetDescription(const std::string & description)
设置节点描述
PModelBasegetModelBase()
获取内部基类指针

Protected Attributes inherited from ocean::Node

Name
PModelBasemodel
内部模块指针

Detailed Description

class ocean::Model;

模型, 模型是一个基础类,是所有模型的基础

  1. 提供了操作管理,参数管理的功能;
  2. 提供了端口管理的功能,快速访问模型端口;

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

上次编辑于:
贡献者: damone