数学建模社区-数学中国
标题:
学了LINGO才2天别笑我写的东西,求助接口指针写法。
[打印本页]
作者:
cqwj
时间:
2010-4-15 23:52
标题:
学了LINGO才2天别笑我写的东西,求助接口指针写法。
本帖最后由 cqwj 于 2010-4-18 13:47 编辑
* M, k- u2 I3 T
2 V `2 ?3 K0 {8 ~/ Z
指针处怎么写??
7 U: _8 ]# [. l4 ^" [6 D$ O
我的意思就是说@pointer在模型里面怎么定义?如@pointer(1)=??或 ??=@pointer(1)
$ T0 R, B* u* v# k3 V7 f
表示什么意思。我个人理解@pointer(1)=??表示把数模变量的值??装进@pointer(1)这个储存单元,外部程序程序可调用此储存单元数据。??=@pointer(1)表示外部数据值??通过DLL传来的数据放进数模变量,这样理解对吗?
4 b9 s" G1 [+ P
:) sets:
# |. X) F8 P7 @! T8 U
xinxi:cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k,zys,x,y,z;
& ]( ?1 G% O9 T1 G) I Y% T! w
endsets
" E3 i0 {$ ]: [) z
data:
2 v1 Q5 @7 Y0 \$ f
xinxi,cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k= @file("li_yong.txt")
% a6 O+ w- M; p2 a1 I
@TEXT()=@status();
) W* J; Z7 ^% _# ~
enddata
3 M/ w$ C5 E) z' o2 F$ @
[bb] min=@sum(xinxi:sj190*x+sj160*y+sj270*z);
/ @, f" U* f, u
@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)<=12);
$ Z+ L5 m( [$ Y7 q3 a
@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)>=0);
7 u9 H" [% V! `3 e
@sum(xinxi:x)=sr190;
: s" \7 `5 S* \* d- e
@sum(xinxi:y)=sr160;
: n2 ?: F0 }, k
@sum(xinxi:z)=sr270;
! U2 r* w7 ~. X3 U9 x
@sum(xinxi:x)>=0;
( g6 x/ J4 J& ?# D) O* [+ j
@sum(xinxi:y)>=0;
; S0 R1 Z4 y) ?) [7 Y
@sum(xinxi:z)>=0;
. F% A8 V5 D4 j& P+ H; a9 t3 F0 ?
@for(xinxi(i):x(i)<=cl190(i)*sl190(i));
" }0 b% F$ V& Z: x0 a
@for(xinxi(i):x(i)>=0);
2 u, P* F3 F0 Z
@for(xinxi(i):y(i)<=cl160(i)*sl160(i));
7 X5 I2 a w% e
@for(xinxi(i):y(i)>=0);
! S2 U# v( ^( |( \5 ]) q* i+ K
@for(xinxi(i):z(i)<=cl270(i)*sl270(i));
% ^ T4 h" t4 A3 x0 e
@for(xinxi(i):z(i)>=0);
/ z0 e- `: b( |; h0 m" r; @
@for(xinxi(i):@gin(x(i)));
9 @1 s5 a# c( U/ [# @6 C
@for(xinxi(i):@gin(y(i)));
: i1 c9 @' X( V1 |
@for(xinxi(i):@gin(z(i)));
* f3 E# L7 ~! x! w& W
mm=@sum(xinxi:k);
& M& N: K" B8 L1 ~& j
xx=@sum(xinxi:sj190*x+sj160*y+sj270*z)/mm;
) P, y( k4 F! i6 ~3 y8 [, H8 ^0 U! K
+ {) V: l- q8 S) F2 R$ \
@for(xinxi(i):zys(i)=sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i));
' n/ Y. a! }. _: m Q* Y/ k! N" }& f# b
DATA:
5 D- W+ w$ g5 R) m8 z; f6 I
@POINTER
1 ?. A! E7 I: v0 D5 N
3 V% v% m! S) ]# Z
!此处结果想连接VB6.0,却不知道怎么写;
/ I) @# o* ]; u6 ]
ENDDATA
$ s. k6 b; D9 b& J, o
& L4 b, c/ Z; t& x2 F3 W
end
) k: K; ~' O4 c% z8 z) \
结果为 主要是想取 X,Y,Z的结果
1 |( T3 ? U& ^- X% @ }1 |2 D/ M- ^
Global optimal solution found.
: N" G3 U9 g) s- g" b% s( k
Objective value: 0.000000
" E' l- ~. r1 `7 t% C; I
Extended solver steps: 0
- H* c! D( j& e7 u% N4 W
Total solver iterations: 0
" \$ E: ]% U& X7 k2 V$ G3 \( F* V, w
5 M6 N! L/ C4 c# k6 J
0 F5 \9 c, F* J' a# @
0
Z3 O4 z* r8 D: p- X5 O) q9 j
- p- w! ^" C7 b8 q$ K* p) r$ y
Variable Value Reduced Cost
) j" I1 ]9 e0 G+ d) S
SR190 0.000000 0.000000
8 t( \- L" [7 C1 [3 m
SR160 0.000000 0.000000
/ R ~- d0 _" X" @ _, c: w8 Z
SR270 0.000000 0.000000
, w4 m- b* m( t7 f' X, G/ W- d( Q
MM 2.000000 0.000000
9 v% B! V1 \7 i$ V2 s9 m
XX 0.000000 0.000000
" p R% C3 ^+ @; x' A4 V: k, o8 S
CL190( ZHANG) 35.00000 0.000000
: J: `! l; }& V% o! s
CL190( LI) 35.00000 0.000000
4 z. O/ o* k' Y. n) c7 J. G
CL160( ZHANG) 30.00000 0.000000
j# I" x$ W; h6 m1 c1 F0 O
CL160( LI) 30.00000 0.000000
& j9 @( Z0 x- `
CL270( ZHANG) 5.000000 0.000000
+ s. q* q* s. n2 h
CL270( LI) 5.000000 0.000000
: Q5 \3 Z; K2 l( U, v+ C6 R
GZSJ( ZHANG) 12.00000 0.000000
" N; O. U' P6 F) M' X4 N
GZSJ( LI) 12.00000 0.000000
, o+ q9 b2 H* J6 V* a% ]
SL190( ZHANG) 0.9000000 0.000000
( y) B1 i5 e( J8 `- S# D
SL190( LI) 0.8000000 0.000000
# G1 ]" X4 k3 i! n' Q; W; K- u {
SL160( ZHANG) 0.9000000 0.000000
" i+ u6 V' K6 ~' H4 v6 z; F
SL160( LI) 0.9000000 0.000000
Y4 X" @2 R7 R$ U
SL270( ZHANG) 0.8000000 0.000000
0 u6 Z/ `" F' Q9 u6 B
SL270( LI) 0.6000000 0.000000
; z. B4 w9 N) b1 h3 Z% ?1 Q
SJ190( ZHANG) 0.3770000 0.000000
, z% x- f' F% p; \7 e0 |
SJ190( LI) 0.4120000 0.000000
* C; F7 Y/ c+ f) O2 i% n
SJ160( ZHANG) 0.4400000 0.000000
8 w3 x: Z1 y1 p6 k" |( O8 w
SJ160( LI) 0.4400000 0.000000
6 {0 o$ x# Y6 E% T0 O" d
SJ270( ZHANG) 2.880000 0.000000
9 ~! [+ j9 N2 Z6 W) P: z
SJ270( LI) 3.360000 0.000000
' B1 P3 H9 d- v% ]+ q k
K( ZHANG) 1.000000 0.000000
s) a+ O4 V0 j3 K$ o
K( LI) 1.000000 0.000000
5 H0 ~0 u+ v8 M, Y
ZYS( ZHANG) 0.000000 0.000000
5 k7 E( r. B5 `. f* T; `/ K
ZYS( LI) 0.000000 0.000000
7 ] o3 a8 f% u$ Y
X( ZHANG) 0.000000 0.3770000
( s+ s( }/ l3 T
X( LI) 0.000000 0.4120000
3 j4 P4 Q& y+ j" c3 ]: j
Y( ZHANG) 0.000000 0.4400000
8 r3 i) Q- D7 l) n3 m
Y( LI) 0.000000 0.4400000
2 z% u' E0 V0 R- e3 w
Z( ZHANG) 0.000000 2.880000
+ m) e5 i2 a3 n' h3 R2 h1 C( o
Z( LI) 0.000000 3.360000
# O/ T3 R: j7 k+ m2 G' C
9 L* R/ u" F' v+ \# x
Row Slack or Surplus Dual Price
, _8 T m! `8 k1 U" E" P
BB 0.000000 -1.000000
6 Y: O# s% P2 b) J. T7 j. y( e
2 12.00000 0.000000
1 u' N* J4 [ o0 L* R) z
3 12.00000 0.000000
' m7 P" M8 F. |4 o0 a" P
4 0.000000 0.000000
0 I) K% O& J/ \0 G
5 0.000000 0.000000
I5 J* R2 |; \( E$ A% P
6 0.000000 0.000000
0 q7 x( B# U$ |; k8 r% A' v
7 0.000000 0.000000
! F' G8 u/ v& R& U: h
8 0.000000 0.000000
% m. A' s0 H& k/ x$ I
9 0.000000 0.000000
) U" @# v5 P6 R6 K6 y
10 0.000000 0.000000
' r. W6 ?# [3 Q
11 0.000000 0.000000
6 i* @/ S: `1 b+ T% b- a/ e4 `+ D
12 31.50000 0.000000
* ?& X. |; i$ r$ G, ?; N
13 28.00000 0.000000
+ T5 c7 L1 r. Q: e
14 0.000000 0.000000
( z! H+ j B# x5 p: Y
15 0.000000 0.000000
! W$ g0 {( s, r( P$ Q! Z. X! e
16 27.00000 0.000000
/ S; a% B8 H' P* m
17 27.00000 0.000000
+ v! c: G" I: p& u7 U0 x/ y6 d
18 0.000000 0.000000
$ E0 g' x- B+ J2 z+ [! a& |
19 0.000000 0.000000
" B* O1 N! a3 I0 m: v. ]
20 4.000000 0.000000
0 \' h% X: e2 f+ |- r
21 3.000000 0.000000
; b; W# m2 c9 _1 {3 T" x R+ ~
22 0.000000 0.000000
1 n3 n# r( O0 j+ q7 s/ q
23 0.000000 0.000000
, p S2 m$ Z, ?6 _6 M( S2 @
24 0.000000 0.000000
9 g6 @6 ?" g4 S+ H6 I A# l7 w
25 0.000000 0.000000
, u* Q1 F2 k- w& x$ m. n7 U; T( X
26 0.000000 0.000000
3 R' P& d5 c; |* \
27 0.000000 0.000000
作者:
olh2008
时间:
2010-4-16 07:49
VB中调用Lingo使用DLL就行了
作者:
olh2008
时间:
2010-4-16 07:50
这是一个例子,可以参考一下。
8 E6 o) Q- D% F: H x5 j0 I
Staff1.rar
(8.2 KB, 下载次数: 6)
2010-4-16 07:50 上传
点击文件名下载附件
下载积分: 体力 -2 点
作者:
cqwj
时间:
2010-4-16 11:56
回复
3#
olh2008
. ^1 _# S% F2 z2 {% S* E6 I
/ X" @% E- g9 D( p( N+ \
9 w$ e* H2 H1 l% E5 k6 k% h
你发的附件不对,再说我也有这个例程,只是不清楚指针这么写到数模里才好调用。
作者:
olh2008
时间:
2010-4-16 11:59
指针怎么写到数模里
" N) I2 H; G# e
这是什么意思?
作者:
legan
时间:
2010-4-16 12:07
谁会LINGO与C++的混合编程啊,我想用C++的循环调用LINGO编的程序进行复杂的优化类问题计算
作者:
funintears
时间:
2010-4-16 12:18
lingo可以和c++混合编程呀?!厉害,牛人指导下呀!!!
作者:
haoshuang3394
时间:
2010-4-16 19:28
lingo怎么用啊,看着代码挺怪的?
作者:
风云雨哲
时间:
2010-4-16 20:04
请教高手Lingo的使用。请教高手Lingo的使用。
作者:
cqwj
时间:
2010-4-16 22:16
LINGO的代码很简单,相当于命令格式,但是要灵活运用的话也不简单。
作者:
cqwj
时间:
2010-4-16 22:17
年龄18岁以下的同学最好不用,会有依赖感
作者:
madio
时间:
2010-4-16 22:53
要想用C++调用lingo需要了lingo的命令行使用方法,C++采用调用外部程序的方法也可以调用lingo。可以看lingo的帮助文档。例如:
) O3 N) M2 g/ K5 b: Y/ `
Solution Commands in Brief
! {0 c7 X* B" B2 ^! K6 Z. Q' x
Top Previous Next
: \. ?: `+ b Q9 z2 X% z, s% ~( f
DEBUG
6 Z: f6 N. j9 P2 | B* L8 L7 x2 D
tracks down formulation errors in infeasible and unbounded models
0 M# R- X/ _ u) T
! i; o. u4 i3 j. M$ q) g% R
GO
) @2 Z4 ^$ M% ^7 i
solves the current model
9 R2 j$ r0 }+ w- s M3 U" ~
( A, P \( h# M) g. m
NONZ
5 T, g/ Z' ^. I8 `. w/ d
generates a nonzeros only solution report
2 A3 N! G( R3 y8 o6 H! N5 U1 A
7 L$ H# g" C, y/ Z4 }) F$ B, B
RANGE
8 m) c; L, A @1 r' {
generates a range analysis report
4 m" M7 i4 z- o3 r. r+ B
# `1 d. I9 d# O0 o6 D ~+ ^6 k
SOLU
& ]+ {: k3 v) C7 @6 B7 N
generates a solution report
作者:
fangxuanfxuan
时间:
2010-4-17 21:55
谢谢~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
作者:
cqwj
时间:
2010-4-18 13:50
这是命令行语句,@pointer怎么用还是不清楚。。。。期待中。
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5