VariableView class¶
(Shortest import: from brian2.core.variables import VariableView)
-
class
brian2.core.variables.
VariableView
(name, variable, group, dimensions=None)[source]¶ Bases:
object
A view on a variable that allows to treat it as an numpy array while allowing special indexing (e.g. with strings) in the context of a
Group
.Parameters: name : str
The name of the variable (not necessarily the same as
variable.name
).variable :
Variable
The variable description.
group :
Group
The group through which the variable is accessed (not necessarily the same as
variable.owner
).dimensions :
Dimension
, optionalThe physical dimensions to be used for the variable, should be
None
when a variable is accessed without units (e.g. when accessingG.var_
).Attributes
dtype
shape
unit
The Unit
of this variableMethods
get_item
(item[, level, namespace])Get the value of this variable. get_subexpression_with_index_array
(*args, **kwds)get_with_expression
(*args, **kwds)Gets a variable using a string expression. get_with_index_array
(*args, **kwds)set_item
(item, value[, level, namespace])Set this variable. set_with_expression
(*args, **kwds)Sets a variable using a string expression. set_with_expression_conditional
(*args, **kwds)Sets a variable using a string expression and string condition. set_with_index_array
(*args, **kwds)Details
-
dtype
¶
-
shape
¶
-
get_item
(item, level=0, namespace=None)[source]¶ Get the value of this variable. Called by
__getitem__
.Parameters: item : slice,
ndarray
or stringThe index for the setting operation
level : int, optional
How much farther to go up in the stack to find the implicit namespace (if used, see
run_namespace
).namespace : dict-like, optional
An additional namespace that is used for variable lookup (if not defined, the implicit namespace of local variables is used).
-
get_subexpression_with_index_array
(*args, **kwds)¶
-
get_with_expression
(*args, **kwds)¶ Gets a variable using a string expression. Is called by
VariableView.get_item
for statements such asprint G.v['g_syn > 0']
.Parameters: code : str
An expression that states a condition for elements that should be selected. Can contain references to indices, such as
i
orj
and to state variables. For example:'i>3 and v>0*mV'
.run_namespace : dict-like
An additional namespace that is used for variable lookup (either an explicitly defined namespace or one taken from the local context).
-
get_with_index_array
(*args, **kwds)¶
-
set_item
(item, value, level=0, namespace=None)[source]¶ Set this variable. This function is called by
__setitem__
but there is also a situation where it should be called directly: if the context for string-based expressions is higher up in the stack, this function allows to set thelevel
argument accordingly.Parameters: item : slice,
ndarray
or stringThe index for the setting operation
value :
Quantity
,ndarray
or numberThe value for the setting operation
level : int, optional
How much farther to go up in the stack to find the implicit namespace (if used, see
run_namespace
).namespace : dict-like, optional
An additional namespace that is used for variable lookup (if not defined, the implicit namespace of local variables is used).
-
set_with_expression
(*args, **kwds)¶ Sets a variable using a string expression. Is called by
VariableView.set_item
for statements such asS.var[:, :] = 'exp(-abs(i-j)/space_constant)*nS'
Parameters: item :
ndarray
The indices for the variable (in the context of this
group
).code : str
The code that should be executed to set the variable values. Can contain references to indices, such as
i
orj
run_namespace : dict-like, optional
An additional namespace that is used for variable lookup (if not defined, the implicit namespace of local variables is used).
check_units : bool, optional
Whether to check the units of the expression.
run_namespace : dict-like, optional
An additional namespace that is used for variable lookup (if not defined, the implicit namespace of local variables is used).
-
set_with_expression_conditional
(*args, **kwds)¶ Sets a variable using a string expression and string condition. Is called by
VariableView.set_item
for statements such asS.var['i!=j'] = 'exp(-abs(i-j)/space_constant)*nS'
Parameters: cond : str
The string condition for which the variables should be set.
code : str
The code that should be executed to set the variable values.
run_namespace : dict-like, optional
An additional namespace that is used for variable lookup (if not defined, the implicit namespace of local variables is used).
check_units : bool, optional
Whether to check the units of the expression.
-
set_with_index_array
(*args, **kwds)¶
-