맞춤 열 수식다음 계산을 사용하여 테이블에 새 열 'Vth'를 추가하고 싶습니다.
먼저 'IDS'가 1e-9(또는 Log10[IDS] = -9)에 가장 가까운 'IDS' 열의 인덱스 i를 찾아야 합니다. 그러면 Vth = VGS(i)입니다. 사이트(Site), 측정(Measurement), SWP(SWP), 웨이퍼(Wafer) 열별로도 그룹화되어야 합니다. 즉, 사이트, 측정, SWP, 웨이퍼의 각각의 고유한 조합은 하나의 Vth 값을 갖습니다.
IDS가 정확히 1e-9가 아닌 경우. 이런 식으로 보간하세요. 그건; Log10[IDS] 대 VGS.
정확한 VTH = 보간( Log10( 1e-9 ), [Log10[IDS](i)) Log10[IDS](i-1)] , [VGS (i) VGS (i-1) ] );
SWP 열은 정방향(0) 및 역방향(1)으로 VGS를 스윕합니다. 따라서 보간 방향은 적절한 방식으로 처리되어야 합니다.
데이터 혼합 및 정리Re: 맞춤 열 수식아래 이메일에 오타가 있었습니다. 아래 내용이 정확해야 합니다
-9 바로 위에 있는 VGS, logIDS를 찾으세요..-- VGS_u, log(IDS)_u라고 부릅니다.
-9 바로 아래에 있는 VGS, logIDS를 찾으세요..-- VGS_i, log(IDS)_i라고 부르세요.
기울기 계산, m = abs(log(IDS)_u-log(IDS)_i)./abs(abs(VGS_u-VGS_i))
정확한 VTH = VGS_i + 1/m*(9-abs(log(IDS)_i)))
Re: 맞춤 열 수식안녕, 케빈!
나는 당신이 이 접근법을 취할 수 있다고 생각했습니다.
-9 바로 위에 있는 VGS, logIDS를 찾습니다..-- VGS_u, log(IDS)_u라고 부릅니다.
-9보다 약간 낮은 VGS, logIDS를 찾습니다..-- VGS_i, log(IDS)_i라고 부릅니다.
기울기 계산, m = abs(log(IDS)_u-log(IDS)_i)./abs( log(IDS)_u-log(IDS)_i)
정확한 VTH = m*(abs(VGS_u-VGS_i)) + min(abs( log(IDS)_u), abs( log(IDS)_i) )
여러 열의 수식을 통해 수행할 수 있더라도 사용자 지정 수식을 정말 원했습니다.
문안 인사,
판카이
Re: 맞춤 열 수식열 수식으로 사용하는 것이 가능하다면 상당히 어려울 것입니다.아마도 가장 좋은 선택은 테이블 스크립트나 일반 스크립트일 것입니다.다음은 잘 작동하는 것 같습니다.
dt = Current Data Table();
summarized table = dt << Summary( Group( :Site, :Measurement, :SWP, :Device, :Wafer ) );
lookup = [=> ];
For Each Row(
summarized table,
If( !(lookup << Contains( :Site, Empty() )),
lookup[:Site] = [=> ]
);
If( !(lookup[:Site] << Contains( :Measurement, Empty() )),
lookup[:Site][:Measurement] = [=> ]
);
If( !(lookup[:Site][:Measurement] << Contains( :SWP, Empty() )),
lookup[:Site][:Measurement][:SWP] = [=> ]
);
If( !(lookup[:Site][:Measurement][:SWP] << Contains( :Device, Empty() )),
lookup[:Site][:Measurement][:SWP][:Device] = [=> ]
);
If( !(lookup[:Site][:Measurement][:SWP][:Device] << Contains( :Wafer, Empty() )),
lookup[:Site][:Measurement][:SWP][:Device][:Wafer] = [=> ]
);
summarized table << Clear Select;
summarized table << Select Rows( Row() );
rows = dt << Get Selected Rows;
vals = Column( dt, "Log10[IDS]" )[rows];
test = {};
For( i = 1, i <= N Items( rows ), i++,
test[i] = Eval List( {Abs( 9 + vals[i] ), rows[i]} )
);
Sort List Into( test );
lookup[:Site][:Measurement][:SWP][:Device][:Wafer] = Column( dt, "VGS" )[test[1][2]];
);
Close( summarized table, No Save );
Eval( Eval Expr(
dt << New Column( "LOOKUP_RESULT", "Numeric", Formula( lookup = Expr( lookup ); lookup[:site][:measurement][:swp][:device][:wafer] ) )
) )Re: 맞춤 열 수식안녕하세요, 판카진싱크입니다!
네, 볼 수 있었습니다.
1e-9에 가장 가까운 IDS 값과 관련된 VGS 값을 찾는 것은 매우 간단합니다.log10(IDS)+9의 절대값을 취하는 손실 함수 열을 설정한 후 해당 값의 Col 최소값을 다음과 같이 식별합니다. 사이트, 측정, SWP, 장치, 웨이퍼.해당 손실 값 최소값에 해당하는 VGS는 정확하지 않은 Vth입니다.
하지만 IDS 값 중 어느 것도 정확히 1e-9가 아니며 "가장 가까운" IDS 값 중 일부는 1e-9에서 상당히 떨어져 있으므로 "보간"이라는 단어를 사용할 때 어떤 절차와 결과가 발생하려는지 자세히 설명해주세요. ".IDS가 정확히 1e-9일 경우 Vth에 대한 예측을 의미합니까?선형 모델을 사용하시나요?IDS 값이 1e-9에서 얼마나 멀리 떨어져 있는지에 관계없이 모든 고유한 사이트, 측정, SWP, 장치, 웨이퍼 조합에 이 절차가 필요합니까?
아마도 이러한 질문에 답하는 것 외에도 이미 시도했지만 실패했던 접근 방식이 무엇인지 공유해 주실 수 있을까요?개인적으로 나는 JSL 스크립트를 작성하는 것을 고려할 것입니다. 왜냐하면 귀하의 응용 프로그램이 일부 오류 검사 및 초기 데이터 경계 조건 확인을 통해 이점을 얻을 수 있을 것 같지만 이 토론 사이트의 일부 거주자는 Formula Jedi로서 그들의 기술에 깊은 인상을 받았습니다. , 공식이 필요한 경우 솔루션이 있을 수 있습니다.그러나 귀하의 답변이 올바르게 예상된다면 그렇게 될 것이라고 생각하지 않습니다.
건배,
케빈
Re: 맞춤 열 수식안녕,
내가 얼마나 멀리 왔는지는 다음과 같습니다. Wafer, Site, Measurement, Device 및 Wafer별로 1e-9에 가장 가까운 IDS의 ID를 찾은 다음 해당 VGS를 반환하고 그렇지 않으면 0을 반환합니다. 그러나 앞서 언급했듯이 보간은 더 어렵습니다.
If(
Abs( :Name( "Log10[IDS]" ) + 9 ) == Col Minimum(
Abs( :Name( "Log10[IDS]" ) + 9 ),
:Site,
:Measurement,
:Device,
:Wafer
),
:VGS,
0
);
최상의,
TS
Re: 맞춤 열 수식안녕,
요청한 작업을 수행하는 열 수식을 얻는 것이 예상보다 조금 더 어려운 것으로 나타났습니다.
다른 사람들도 나보다 더 많은 행운을 누리기를 바랍니다.
최상의,
TSRe: 맞춤 열 수식그것을 볼 수 있는 사람이 있었나요?Re: 맞춤 열 수식이 JMP 파일을 사용하세요. 위의 엑셀은 무시하세요.
아래 설명이 업데이트되었습니다.
다음 계산을 사용하여 테이블에 새 열 'Vth'를 추가하고 싶습니다.
먼저 'IDS'가 1e-9(또는 Log10[IDS] = -9)에 가장 가까운 'IDS' 열의 인덱스 i를 찾아야 합니다. 그러면 Vth = VGS(i)입니다. 사이트, 측정, SWP, 장치, 웨이퍼 열별로도 그룹화되어야 합니다. 즉, 사이트, 측정, SWP, 웨이퍼, 장치의 각 고유한 조합은 하나의 Vth 값을 갖습니다.
IDS가 정확히 1e-9가 아닌 경우. 이런 식으로 보간하세요. 그건; Log10[IDS] 대 VGS.
정확한 VTH = 보간( Log10( 1e-9 ), [Log10[IDS](i)) Log10[IDS](i-1)] , [VGS (i) VGS (i-1) ] );
SWP 열은 정방향(0) 및 역방향(1)으로 VGS를 스윕합니다. 따라서 보간 방향은 적절한 방식으로 처리되어야 합니다.