CUBSPL — SPLINE 데이터를 traditional cubic 방법으로 보간하는 Adams 런타임 함수

CUBSPL 은 SPLINE statement 의 데이터에 접근하여 traditional cubic 방법으로 cubic curve(spline)를 fit 하고, 곡선의 보간값 또는 도함수를 반환하는 Adams 함수다 [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.1630].

정의·용도

CUBSPL 은 standard cubic spline fitting method 를 사용해 이산 데이터 포인트들을 정확히 통과하는 곡선을 fit 하고, 그 곡선 또는 surface 로부터 보간값이나 도함수를 반환한다 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.596]. 보간 방식은 global cubic curve fitting 기법으로, AKISPL 이 사용하는 local 방식인 Akima method 와 대비된다 [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.311].

spline 데이터가 독립변수 1개를 가지면 Adams 는 점들 사이를 cubic polynomial 로 보간한다. 독립변수가 2개이면 먼저 첫 번째 독립변수 점들 사이를 cubic 보간한 뒤, 두 번째 독립변수의 곡선들 사이를 linear 방식으로 보간한다 [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.355].

CUBSPL 은 AKISPL 만큼 빠르지는 않지만 함수값과 그 1차·2차 도함수에 대해 항상 좋은 결과를 만들며, 데이터 포인트가 균등 간격일 필요가 없다 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.525]. 특히 motion 에 spline 을 쓸 때는 연속적인(smooth) 2차 도함수가 중요한데, 2차 도함수는 motion 이 강제하는 가속도이며 이것이 motion 구동에 필요한 반력을 정의하기 때문이다. 2차 도함수의 불연속은 가속도와 반력의 불연속을 의미하여 solver 수렴 불량이나 실패를 유발할 수 있다 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.525].

형식 / 필드 / 구문

Function Builder 에서의 형식은 다음과 같다 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.596]:

CUBSPL (First Independent Variable, Second Independent Variable, Spline Name, Derivative Order)
ParameterValue Type설명
xFunctionspline 의 x 축 방향 독립변수 값을 지정하는 real 변수 [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.1657]
zFunction보간되는 surface 의 z 축 방향 두 번째 독립변수 값을 지정하는 real 변수 [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.1657]
spline_nameAn Existing Spline기존에 존재하는 spline 을 지정 [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.1657]
derivative_orderIntegerCUBSPL 이 반환할 보간값의 도함수 차수를 지정하는 선택적 정수. 범위 0 ≤ iord ≤ 2 [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.1657]

사용 예

spline_1 이라는 spline 을 이산 데이터로 정의하고, 이를 Cubic spline fitting method 로 보간 함수로 만든다. spline 이 surface 가 아니라 curve 를 정의하므로 Second Independent Variable 은 0 으로 설정해야 한다 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.596]. 변위-시간 spline 의 보간값을 반환하여 motion 함수를 정의하는 예 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.596]:

Motion = CUBSPL(TIME, 0, spline_1)

관련 항목

  • AKISPL — Akima(local cubic) 방법을 쓰는 spline 함수. 빠르지만 도함수가 부정확 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.524]
  • CURVE — B-spline fitting method, 3D geometric curve 기술에 주로 쓰임 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.525]
  • INTERP — spline 보간값의 도함수를 반환 [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.525]
  • SPLINE — CUBSPL 이 데이터를 읽어오는 data element
  • Run-Time Functions · Adams Functions — CUBSPL 이 속한 함수 범주
  • STEP · POLY · CHEBY — 같은 Adams FUNCTIONS 표에 나열되는 런타임 함수들 [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.1630]
  • Adams View Function Builder · View

출처

  • [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.596] — Format, Cubic Fitting Method, Example
  • [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.525] — Comparison of Interpolation Methods, Where to Find the Spline Functions
  • [Adams_2024.1_Adams_View_Function_Builder_User_Guide.pdf p.524] — Interpolation Methods Overview
  • [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.355] — Spline Extended Definition
  • [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.311] — Akima vs traditional cubic
  • [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.1657] — Parameter Description
  • [Adams_2024.1_Adams_View_Command_User_Guide.pdf p.1630] — Adams FUNCTIONS