안녕하세요 여러분,
내 작업 중 하나는 Fit Life by X를 사용하여 신뢰도 분석을 수행하는 것입니다.
이렇게 하면 다음을 출력하는 두 개의 JSL 스크립트가 있습니다. 정확히 같은 결과 하지만 가지고 다양한 코딩 접근법 .
첫 번째는 단순히 코드를 함께 계단식으로 사용하는 것입니다. 의사 코드는 다음과 같습니다.
// Plot Fit Life by X #1
Fit Life by X(...);
// Plot Fit Life by X #2
Fit Life by X(...);
// Plot Fit Life by X #3
Fit Life by X(...);
// And so on
두 번째는 다른 X, Y 및 검열 열로 반복되는 단일 함수를 가집니다. 의사 코드는 다음과 같습니다.
// Function that contains Fit Life by X
reli_analysis = function(
{input parameters},
{local variables},
Fit Life by X(...);
);
// Call the above function multiple times
reli_analysis(input parameters set #1);
reli_analysis(input parameters set #2);
reli_analysis(input parameters set #3);
// And so on
내가 경험한 것은 두 번째 코드가 첫 번째 코드보다 거의 10배 정도 더 빠르다는 것입니다. (내 실제 코드와 데이터는 벽시계 시간이 코드 #2에서 ~17초와 코드 #1에서 ~170초입니다.)
다음과 같은 세 가지 질문이 있습니다.
1. 모든 코드를 명시적으로 작성하는 것보다 함수를 호출하는 것이 훨씬 빠른 이유는 무엇입니까?
2. 내 코드가 가장 효율적인 시간 및/또는 공간 복잡성을 갖도록 하기 위해 일반적으로 수행해야 하는 다른 방법/팁은 무엇입니까?
3. JSL에 CPU 시간 및 벽시계 시간과 같은 타이밍 기능이 내장되어 있는지 잘 모르겠습니다. 나는 today() 함수를 사용하여 코드 실행 시간을 측정했습니다. 그러나 많은 수동 코딩이 필요합니다. 또한 이렇게 계산된 경과 시간은 실행 중인 다른 작업이 있는지 여부에 따라 항상 조금씩 다릅니다.
도와 주셔서 정말 감사합니다.
JMP 버전: 17.0