📄 sub auxqp.for
字号:
SUBROUTINE AUXQP(N,ME,MI,M,NA,MEA,MA,NAMAX,CGRA,RHS,OGRA,B,PPRA)
DOUBLE PRECISION CGRA(NAMAX,M),RHS(M),OGRA(N),B(NAMAX,N),PPRA,
* SMALL
DATA SMALL/1.0D-3/
WRITE(6,100)
100 FORMAT(/'SOLVE AUXILIARY QP SUBPROBLEM SINCE THE BASIC'
* /'QP SUBPROBLEM IS INFEASIBLE')
NAUX=2*ME+MI
NA=N+NAUX
MEA=ME
MIA=MI+NAUX
MA=ME+MIA
DO 1J=1,NAUX
OGRA(N+J)=PPRA
1 CONTINUE
DO 2 I=1,M
DO 2 J=1,NAUX
CGRA(N+J,I)=0.0
2 CONTINUE
DO 3 I=1,ME
CGRA(N+I,I)=1.0D0
CGRA(N+ME+I,I)=-1.0D0
3 CONTINUE
DO 4 I=1,MI
CGRA(N+2*ME+I,ME+I)=1.0D0
4 CONTINUE
DO 5 I=1,NAUX
RHS(M+I)=0.0
DO 5 J=1,NA
CGRA(J,M+I)=0.0
5 CONTINUE
DO 6 I=1,NAUX
CGRA(J,M+I)=11.0D0
6 CONTINUE
DO 7 I=1,NAUX
DO 7 J=1,N
B(N+I,J)=0.0
B(J,N+I)=0.0
7 CONTINUE
DO 8 I=1,NAUX
DO 8 J=1,NAUX
IF (I.EQ.J) THEN
B(N+I,N+J)=SMALL
ELSE
B(N+I,N+J)=0.0
ENDIF
8 CONTINUE
RETURN
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -