Slope2Deviation

特定時点における曲線の勾配が、そのターゲット値に対して示す偏差の平方を計算します。この勾配の計算には有限差分法を使用します。

サスペンションの設計では、設計位置、フルジャウンス位置、およびフルリバウンド位置におけるライド-ステア、ライド-キャンバー、およびライド-キャスターのターゲットを設定することが普通です。設計エンジニアのタスクは、これらのターゲットを達成することです。

サスペンション用語で、設計位置、ジャウンス位置、およびリバウンド位置とは、サスペンションの3種類のコンフィギュレーションを指します。ステア、キャンバー、およびキャスターは、サスペンション設計者が考慮すべき3つの角度です。ライド-ステア、ライド-キャンバー、およびライド-キャスターはそれぞれ、ステア対ライド高さ曲線の勾配、キャンバー対ライド高さ曲線の勾配、およびキャスター対ライド高さ曲線の勾配です。ライド高さとは、路面からホイール中心までの高さのことです。

物理試験では、フロントサスペンションは2つのジャッキ上に取り付けられています。設計位置は、これらのジャッキでのサスペンションの変位がゼロである位置に相当します。正弦波入力に応じてジャッキが上下に動くと、サスペンションは設計位置からジャウンス位置まで動いた後、設計位置に戻り、今度はリバウンド位置まで動いて、この往復動作を繰り返します。

この例では、フルジャウンス位置(T=2.4秒)でライド-キャンバーが示す偏差の平方を計算します。

この計算を実行するコードを以下に示します。ライド高さの計算では、単位変換係数として0.001を使用し、mmをmに変換します。

>>> # Ride Height @ Full Jounce: point 1
>>> x1  = ValueAtTime (label         = "Ride Height @ Full Jounce",
                       measuredValue =  "0.001*DZ(30701024,30701025,10701021)",
                       atTime        = 2.30,
                       delta         = 0.1,
                      )

>>> # Camber @ Full Jounce: point 1
>>> y1  = ValueAtTime (label           = "Camber @ @ Full Jounce",
                       measuredValue   =  "-ROLL(30701024,30701025)*RTOD",
                       atTime          = 2.30,
                       delta           = 0.1,
                      )

>>> # Ride Height @ Full Jounce: point 2
>>> x2  = ValueAtTime (label           = "Ride Height @ Full Jounce ",
                       measuredValue   =  "0.001*DZ(30701024,30701025,10701021)",
                       atTime          = 2.50,
                       delta           = 0.1,
                      )

>>> # Camber @ Full Jounce: point 2
>>> y2  = ValueAtTime (label           = "Camber @ Full Jounce ",
                       measuredValue   = "-ROLL(30701024,30701025)*RTOD",
                       atTime          = 2.50,
                       delta           = 0.1,
                      )

>>> # Camber @ Full Jounce – y1
>>> sd  = Slope2Deviation (label       = "(1/2)*(1-RideCamber@FullJounce/5)**2",
                           points      = (y2,x2,y1,x1),
                           targetValue = +5,
                          )
この例ではSlope2Deviationが次のように計算されます。(1)
f = slope2  ( y2, x2, y1, x1 ) if  | targetValue |  >  :  Slope2Deviation= ( 1 2 ) (1 -  f t arg e t v a l u e ) 2 else:   Slope2Deviation= ( 1 2 ) ( f – targetValue ) 2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8srps0l bbf9q8WrFfeuY=Hhbbf9v8qiqrFr0xc9pk0xbba9q8WqFfea0=yr0R Yxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabeqadiWa ceGabeqabeqadeqadeaakqaabeqaaabbaaaaaG+acXwDLbWdbiaabA gacaqGGaGaaeypaiaabccacaqGZbGaaeiBaiaab+gacaqGWbGaaeyz aiaabkdacaqGGaWaaeWaaeaacaqG5bGaaeOmaiaabYcacaqGGaGaae iEaiaabkdacaqGSaGaaeiiaiaabMhacaqGXaGaaeilaiaabccacaqG 4bGaaeymaaGaayjkaiaawMcaaaqaaiaabMgacaqGMbGaaeiiamaaem aabaGaaeiDaiaabggacaqGYbGaae4zaiaabwgacaqG0bGaaeOvaiaa bggacaqGSbGaaeyDaiaabwgaaiaawEa7caGLiWoacaqGGaGaaeOpai aabccacqGHiiIZcaGG6aGaaeiOaiaabofacaqGSbGaae4Baiaabcha caqGLbGaaeOmaiaabseacaqGLbGaaeODaiaabMgacaqGHbGaaeiDai aabMgacaqGVbGaaeOBaiaab2dacaqGGaGaaeikamaalaaabaGaaGym aaqaaiaaikdaaaGaaeykaiaabccacaqGOaGaaeymaiaabccacaqGTa GaaeiiamaalaaabaGaamOzaaqaaiaadshaciGGHbGaaiOCaiaacEga caWGLbGaamiDaiaadAhacaWGHbGaamiBaiaadwhacaWGLbaaaiaabM cadaahaaWcbeqaaiaabkdaaaaak8aabaWdbiaabwgacaqGSbGaae4C aiaabwgacaqG6aGaaeiOaiaabckacaqGGcGaae4uaiaabYgacaqGVb GaaeiCaiaabwgacaqGYaGaaeiraiaabwgacaqG2bGaaeyAaiaabgga caqG0bGaaeyAaiaab+gacaqGUbGaaeypaiaabccacaqGOaWaaSaaae aacaaIXaaabaGaaGOmaaaacaqGPaWaaeWaaeaacaqGMbGaaeiiaiaa bobicaqGGaGaaeiDaiaabggacaqGYbGaae4zaiaabwgacaqG0bGaae OvaiaabggacaqGSbGaaeyDaiaabwgaaiaawIcacaGLPaaadaahaaWc beqaaiaabkdaaaaaaaa@AAD7@