설명
중심점(x,y,델타) = x * log((x+델타)/(y+델타)) 열거형 값 ---- --- RCOK 0 RCFUNC 1 RCGRAD 2 RCHESS 3 RC시스템 4 에코OK 0 ECDOMAIN 1 특별 2 에코오버플로우 3 기여자: Steve Dirkse
소형 모델 유형 :무료 슬롯 사이트
카테고리 : 무료 슬롯 사이트 테스트 라이브러리
메인 파일 : fncentry.gms 포함: fnset_xy.inc[html] fntest_xy.inc[html]
$title 'centropy(x,y,d) 고유 예외의 정확성 테스트' (FNCENTRY,SEQ=359)
$onText
centropy(x,y,delta) = x * log((x+delta)/(y+delta))
열거형 값
---- ---
RCOK 0
RCFUNC 1
RCGRAD 2
RCHESS 3
RC시스템 4
에코OK 0
ECDOMAIN 1
특별 2
에코오버플로우 3
기여자: Steve Dirkse
$offText
$include fnset_xy.inc
담당자 = 2e-13;
relToInput = 0;
세트
T / t0 * t7, t101*t105 /,
T1(T) / t0 * t7 /,
T2(T) / t101*t105 /;
$세트 OFLO 1.e299
스칼라 d / 1e-20 /;
테이블 데이터(T,V)
x y d f_ fx_ fy_ fxx_ fxy_ fyy_ rc_ ec_
t0 1 1 -1 1 1
t1 1 -1 1 1 1
t2 1 0 1 1 2
t3 -1 1 1 1 1
t4 0 1 0 0 -%OFLO% %OFLO% -1 2 2
t5 1e298 1 0 %OFLO% 123456 -1e298 1e-198 -1 1e298 1 3
t6 1e151 1e-150 1e-150 123456 123456 -%OFLO% 1e-151 -5e149 %OFLO% 2 2
t7 1e100 1e-100 1e-100 123456 -5e199 1e-100 -5e099 %OFLO% 3 2
t101 1 -1 1 1
t102 1 0 1 2
t103 -1 1 1 1
t104 0 1 123456 123456 -1
t105 1e298 1 %OFLO% 123456 -1e298 1e-198 -1 1e298 1 3
;
data(T,'fx_' )$[sameas('t5',T) 또는 sameas('t105',T)] = log(1e298) + 1;
data(T,'fxx_')$[sameas('t5',T) 또는 sameas('t105',T)] = data(T,'fxx_') * 1e-100;
data('t6','f_') = 1e151 * [ log(1e151) - log(2e-150) ];
data('t6','fx_') = [ log(1e151) - log(2e-150) ] + 1;
data('t7','f_') = 1e100 * [ log(1e100) - log(2e-100) ];
data('t7','fx_') = [ log(1e100) - log(2e-100) ] + 1;
data('t104','fx_' ) = log(d);
data('t104','fxx_') = 2 / d;
data(T,'fxy_') = data(T,'fxy_');
루프 T1,
data(T1, 'f') = centropy.value ( data(T1,'x'), data(T1,'y'), data(T1,'d'));
data(T1, 'fx') = centropy.grad (1: data(T1,'x'), data(T1,'y'), data(T1,'d'));
data(T1, 'fy') = centropy.grad (2: data(T1,'x'), data(T1,'y'), data(T1,'d'));
data(T1,'fxx') = centropy.hess (1:1:data(T1,'x'), data(T1,'y'), data(T1,'d'));
data(T1,'fxy') = centropy.hess (1:2:data(T1,'x'), data(T1,'y'), data(T1,'d'));
data(T1,'fyx') = centropy.hess (2:1:data(T1,'x'), data(T1,'y'), data(T1,'d'));
data(T1,'fyy') = centropy.hess (2:2:data(T1,'x'), data(T1,'y'), data(T1,'d'));
data(T1, 'rc') = mathlastrc;
data(T1, 'ec') = mathlastec;
;
* 세 번째 인수가 전달되지 않으면 기본값은 1e-20입니다.
루프 T2,
data(T2, 'f') = centropy.value ( data(T2,'x'), data(T2,'y'));
data(T2, 'fx') = centropy.grad (1: data(T2,'x'), data(T2,'y'));
data(T2, 'fy') = centropy.grad (2: data(T2,'x'), data(T2,'y'));
data(T2,'fxx') = centropy.hess (1:1:data(T2,'x'), data(T2,'y'));
data(T2,'fxy') = centropy.hess (1:2:data(T2,'x'), data(T2,'y'));
data(T2,'fyx') = centropy.hess (2:1:data(T2,'x'), data(T2,'y'));
data(T2,'fyy') = centropy.hess (2:2:data(T2,'x'), data(T2,'y'));
data(T2, 'rc') = mathlastrc;
data(T2, 'ec') = mathlastec;
;
중단$(실행 오류 lt 10)
'centropy(x,y,d)의 func/grad/hess를 가져오는 동안 실행 오류가 발생해야 합니다.';
실행 오류 = 0;
$include fntest_xy.inc