Source code for pybamm.expression_tree.vector

#
# Vector class
#
import numpy as np

import pybamm


[docs]class Vector(pybamm.Array): """ node in the expression tree that holds a vector type (e.g. :class:`numpy.array`) **Extends:** :class:`Array` """ def __init__( self, entries, name=None, domain=None, auxiliary_domains=None, domains=None, entries_string=None, ): if isinstance(entries, (list, np.matrix)): entries = np.array(entries) # make sure that entries are a vector (can be a column vector) if entries.ndim == 1: entries = entries[:, np.newaxis] if entries.shape[1] != 1: raise ValueError( """ Entries must have 1 dimension or be column vector, not have shape {} """.format( entries.shape ) ) if name is None: name = "Column vector of length {!s}".format(entries.shape[0]) super().__init__( entries, name, domain, auxiliary_domains, domains, entries_string )