Ejemplo n.º 1
0
 def DInner_discrete(x):
     # initialize insert diameter array
     DInner_dis = np.zeros_like(x)
     # get the step size between grid points
     dx = x[1] - x[0]
     # begin loop to calculate insert diameters
     cnt = 0
     for X in x:
         # write all diameter between each length interval to the same diameter of the step
         if np.sum(X > np.array(disX)) < len(disD):
             DInner_dis[cnt] = disD[np.sum(X > np.array(disX))]
         cnt = cnt + 1
     # begin loop to insert smoothed profile between diameter steps
     for d in range(0, len(disX)):
         # find range of smoothing function
         LowBond = sum(disX[d] > x) - delta
         UpBond = sum(disX[d] > x) + delta
         x_loc = x[LowBond:UpBond]
         try:
             DInner_dis[LowBond:UpBond] = smoothingFunction(
                 x_loc, disX[d], 2 * delta * dx, disD[d], disD[d + 1])
         except:  # when the loop forwards to the last insert, set the final diameter to zero
             DInner_dis[LowBond:UpBond] = smoothingFunction(
                 x_loc, disX[d], 2 * delta * dx, disD[d], 0)
     return DInner_dis
Ejemplo n.º 2
0
def DInner(x):
    diameter = np.zeros(nX)
    diameter += smoothingFunction(x, xLower + LInnerInsert,
                                  DeltaSmoothingFunction, DInnerInsert, 0.0)
    diameter += smoothingFunction(x, xLower + LOuterInsert,
                                  DeltaSmoothingFunction,
                                  DOuterInsertFront - DInnerInsert, 0.0)
    diameter += smoothingFunction(x, xLower + LOuterInsert / 2.0, LOuterInsert,
                                  DOuterInsertBack - DOuterInsertFront, 0.0)
    return diameter
Ejemplo n.º 3
0
 def DInner_discrete(x):
     DInner_dis = np.zeros(x.shape)
     cnt = 0
     for X in x:
         if np.sum(X > np.array(disX)) < len(disD):
             DInner_dis[cnt] = disD[np.sum(X > np.array(disX))]
         cnt = cnt + 1
     for d in range(0, int(np.floor(len(x) / x_step)) - 1):
         LowBond = int(d * x_step - delta)
         UpBond = int(d * x_step + delta)
         x_loc = x[LowBond:UpBond]
         DInner_dis[LowBond:UpBond] = smoothingFunction(
             x_loc, disX[d], 2 * delta * dx, disD[d], disD[d + 1])
     return DInner_dis
Ejemplo n.º 4
0
 def DOuter(x):
     return smoothingFunction(x, xShock, Delta, DDriver, DDriven)