Source code for pyturbo.helper.exp_ratio

import numpy as np
import numpy.typing as npt 

[docs] def exp_ratio(ratio:float,npoints:int,maxvalue:float=1,flip_direction:bool=False) -> npt.NDArray: """_summary_ Args: ratio (float): _description_ npoints (int): _description_ maxvalue (float, optional): _description_. Defaults to 1. flip_direction (bool, optional): _description_. Defaults to False. Returns: _type_: _description_ """ t = np.zeros(npoints) s = 0 for p in range(npoints-1): s+=ratio**(p+1) a = 1/s t[0] = 0 if flip_direction: for i in range(1,npoints): t[i] = t[i-1]+a*ratio**(npoints-i) else: for i in range(1,npoints): t[i] = t[i-1] + a*ratio**i t = maxvalue*t return t