부품의 고밀도화가 시작되는 공정 온도를 파악하려고 합니다. 아래 그래프에 주황색 선으로 표시했습니다. 또한 녹색 선으로 표시된 고밀도화가 중단되는 온도도 파악하고 싶습니다. 이 작업을 위한 스크립트를 찾는 데 도움을 주실 수 있을까요?

나는 제안에 열려 있습니다. 기본적으로 고밀도화의 시작은 램 이동이 몇 개의 데이터 포인트에서 많이 변경되는 시점입니다. 설정된 포인트 수에 대한 램 이동이 변경되지 않으면 고밀도화가 일시 중지됩니다 (특정 수를 잘 모르겠습니다.) 최종 세부 사항을 처리하기 위해 제안 된 공식을 수정할 수 있다고 생각했습니다. 이것이 도움이됩니까?
그 정의는 좋은 시작처럼 들립니다. 그런 다음 램 트래블의 시작점에 해당하는 온도 값을 어떻게 가져 옵니까?
샘플 데이터 표를 첨부해 주시면 Onset Point를 계산하는 시작 스크립트를 작성할 수 있을 것입니다.
저는 제 데이터의 하위 집합을 첨부했습니다. 이것이 명확하지 않으면 알려주세요.
여기 Onset Point를 찾는 가능한 방법에 대한 첫 번째 패스가 있습니다. 스크립트는 아래 그래프를 계산했습니다.

Names Default To Here( 1 );
dt = Current Data Table();
dt << clear select;
// Set the number of places to look ahead for calculations
lookAhead = 6;
// Loop across all rows, finding possible Onset Points
// temp[x] < temp[x+1] & temp[x] < Mean of the next 6 values of temp - 1.5 STD of those points
// When found, select those rows
For( i = 1, i <= N Rows( dt ) - lookAhead, i++,
If(
:Temperature Actual[i] < :Temperature Actual[i + 1] & :Temperature Actual[i] >
Mean( :Temperature Actual[Index( i + 1, i + 1 + lookAhead )] )
-Std Dev( :Temperature Actual[Index( i + 1, i + 1 + lookAhead )] ) * 1.5,
Row State( i ) = Selected State( 1 )
)
);
// Get the list of the selected rows
suspectRows = dt << get selected rows();
// The target criteria for the Onset is where the max temp values for the suspect rows
maxTemp = Max( :temperature Actual[suspectRows] );
// Get the time value for the selected suspect Row
timeval = :"time (s)"n[suspectRows[Loc( :temperature Actual[suspectRows], maxTemp )[1]]];
// Clear all selected rows
dt << clear select;
// Generate the Graph Builder Chart
gb = Graph Builder(
Size( 534, 456 ),
Show Control Panel( 0 ),
Variables(
X( :"Time (s)"n ),
Y( :Temperature Actual ),
Y( :Ram Travel Actual, Position( 1 ), Side( "Right" ) )
),
Elements( Points( X, Y( 1 ), Legend( 5 ) ), Points( X, Y( 2 ), Legend( 9 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model( 5, Properties( 0, {Line Color( 21 )}, Item ID( "Temperature Actual", 1 ) ) )}
)
)
);
// Add a verticle reference line at the calculated Onset Point
Report( gb )[AxisBox( 1 )] << add ref line( timeval, solid, green, "", 3 );
// Select the row in the data table that is the calculated Onset Point
Row State( suspectRows[Loc( :temperature Actual[suspectRows], maxTemp )[1]] ) = Selected State( 1 );