ellipsoidal

Contents

ellipsoidal#

class brainpy.state.spatial.ellipsoidal(major_axis, minor_axis, polar_axis, azimuth_angle=0.0, polar_angle=0.0, anchor=None)[source]#

Ellipsoidal mask (3-D): displacement inside a rotated ellipsoid (NEST ellipsoidal).

Parameters:
  • major_axis (float or Quantity) – Full lengths of the three principal axes (not semi-axes). All three equal degenerates to spherical() of radius major_axis / 2.

  • minor_axis (float or Quantity) – Full lengths of the three principal axes (not semi-axes). All three equal degenerates to spherical() of radius major_axis / 2.

  • polar_axis (float or Quantity) – Full lengths of the three principal axes (not semi-axes). All three equal degenerates to spherical() of radius major_axis / 2.

  • azimuth_angle (float, optional) – Rotation about the polar (z) axis, in degrees. Default 0.

  • polar_angle (float, optional) – Tilt of the polar axis away from z, in degrees (applied after the azimuthal rotation, NEST R_y(-polar) . R_z(-azimuth)). Default 0.

  • anchor (sequence of float or Quantity, optional) – Offset of the ellipsoid centre from the source node. Default origin.

Returns:

A hard-cutoff ellipsoidal mask.

Return type:

_EllipseMask

Examples

>>> from brainpy import state as bp
>>> mask = bp.spatial.ellipsoidal(4.0, 2.0, 1.0, azimuth_angle=30.0, polar_angle=15.0)