설명
기고자: Lutz Westermann, 2014년 12월
소형 모델 유형 :.Net
카테고리 : 무료 슬롯 사이트 API 라이브러리
메인 파일 : CSCalcInverse.gms
$title '인덱스된 GDX를 읽고 쓰기 위한 전문가 수준 C# API 테스트' (CSEX1,SEQ=46)
$onText
기고자: Lutz Westermann, 2014년 12월
$offText
$set srcRoot %무료 슬롯 사이트sysdir%apifiles%system.dirsep%CSharp%system.dirsep%
$escape &
$if %system.filesys% == UNIX
$if %sysenv.MPATH% == %&sysenv.MPATH%& $abort.noError Unix에서 이를 실행하려면 Mono가 필요합니다.
$ COMP csc.exe 설정
$if %system.filesys% == UNIX $set COMP $MPATH/mcs
$ 세트 실행
$if %system.filesys% == UNIX $set EXEC $MPATH/mono
$if %system.platform% == WEX
$플래그가 설정되지 않은 경우 $set 플래그 /플랫폼:x64
$if %system.platform% == LAX
$플래그를 설정하지 않은 경우 $set 플래그
$if %system.platform% == LEX
$플래그를 설정하지 않은 경우 $set 플래그
$if %system.platform% == DEX
$플래그가 설정되지 않은 경우 $set 플래그 /define:__APPLE__
$if %system.platform% == DAX
$플래그가 설정되지 않은 경우 $set 플래그 /define:__APPLE__
*$call %BUILD% %flags% "%srcRoot%xp_CalcInverseIDX%system.dirsep%xp_CalcInverseIDX.csproj"
*$if errorlevel 1 $abort 'xp_CalcInverseIDX 컴파일 문제'
$call %COMP% %flags% -out:xp_CalcInverseIDX.exe "%srcRoot%xp_CalcInverseIDX%system.dirsep%xp_CalcInverseIDX.cs" "%srcRoot%xp_CalcInverseIDX%system.dirsep%InvertMatrix.cs" "%srcRoot%api%system.dirsep%idxcs.cs" "%srcRoot%api%system.dirsep%gamsglobals.cs"
$if errorlevel 1 $abort 'xp_CalcInverseIDX.cs 컴파일 문제'
$사이즈를 설정하지 않은 경우 $사이즈 50으로 설정
i / i1*i%size% /, j / j1*j%size% / 설정;
매개변수 ij(i,j), ji(j,i);
ij(i,j)$(uniform(0,1)<0.1) = 일반(1,0.1);
$eval iCnt 카드(i)
$eval jCnt 카드(j)
iIdx / 1*%iCnt% / 설정
jIdx / 1*%jCnt% /
iMap(i,iIdx) / #i:#iIdx /
jMap(j,jIdx) / #j:#jIdx /;
매개변수 ijIdx(iIdx,jIdx)
jiIdx(jIdx,iIdx);
* ij에서 ijIdx를 계산하는 세 가지 방법
* 루프((iMap(i,iIdx),jMap(j,jIdx))$ij(i,j), ijIdx(iIdx,jIdx) = ij(i,j));
* ijIdx(iIdx,jIdx) = sum((iMap(i,iIdx),jMap(j,jIdx)), ij(i,j));
loop((i,j)$(sameas('i1',i) 및 sameas('j1',j)),
ijIdx(iIdx,jIdx) = ij(i + (ord(iIdx) - 1), j + (ord(jIdx) - 1)));
Execute_unloadIdx 'sparse_idx.gdx',ijIdx;
'%EXEC% xp_CalcInverseIDX.exe "%무료 슬롯 사이트sysdir%"를 실행합니다. sparse_idx.gdx';
abort$errorlevel 'xp_CalcInverseIDX 실행 문제';
Execute_load 'inverse_idx.gdx', jiIdx;
* jiIdx에서 ji를 계산하는 세 가지 방법
* 루프((jMap(j,jIdx),iMap(i,iIdx))$jiIdx(jIdx,iIdx), ji(j,i) = jiIdx(jIdx,iIdx));
* ji(j,i) = sum((jMap(j,jIdx),iMap(i,iIdx)), jiIdx(jIdx,iIdx));
loop((iIdx,jIdx)$(sameas('1',iIdx) 및 sameas('1',jIdx)),
ji(j,i) = jiIdx(jIdx + (ord(j) - 1), iIdx + (ord(i) - 1)));
* ji가 ij의 역수인지 테스트
매개변수 id(i,i) 계산된 항등 행렬;
별칭(i,ip);
id(i,ip) = round(sum(j,ij(i,j)*ji(j,ip)),12);
abort$(not(card(id)=card(i) and sum(i, id(i,i))=card(i))) 'ji는 ij의 반대가 아닙니다.';