ess.amor.tools.linlogspace

ess.amor.tools.linlogspace

ess.amor.tools.linlogspace(dim, edges, scale, num, unit=None)

Generate a 1d array of bin edges with a mixture of linear and/or logarithmic spacings.

Examples:

  • Create linearly spaced edges (equivalent to sc.linspace):

    linlogspace(dim=’x’, edges=[0.008, 0.08], scale=’linear’, num=50, unit=’m’)

  • Create logarithmically spaced edges (equivalent to sc.geomspace):

    linlogspace(dim=’x’, edges=[0.008, 0.08], scale=’log’, num=50, unit=’m’)

  • Create edges with a linear and a logarithmic part:

    linlogspace(dim=’x’, edges=[1, 3, 8], scale=[‘linear’, ‘log’], num=[16, 20])

Parameters
  • dim (str) – The dimension of the ouptut Variable.

  • edges (Union[list, ndarray]) – The edges for the different parts of the mesh.

  • scale (Union[list, str]) – A string or list of strings specifying the scaling for the different parts of the mesh. Possible values for the scaling are “linear” and “log”. If a list is supplied, the length of the list must be one less than the length of the edges parameter.

  • num (Union[list, int]) – An integer or a list of integers specifying the number of points to use in each part of the mesh. If a list is supplied, the length of the list must be one less than the length of the edges parameter.

  • unit (Optional[str], default: None) – The unit of the ouptut Variable.

Returns

Variable – Lin-log spaced Q-bin edges.

Return type

scipp._scipp.core.Variable