应用ECOS求解器,求解二阶锥问题,程序中有备注,上传的是整个方案,可以直接使用VS2010打开
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-12-26 10:45 ECOS_C++锥约束问题
目录 0 2018-12-26 10:45 ECOS_C++锥约束问题Debug
文件 141312 2018-07-13 14:44 ECOS_C++锥约束问题DebugECOS_C++.exe
文件 499492 2018-07-13 14:44 ECOS_C++锥约束问题DebugECOS_C++.ilk
文件 1158144 2018-07-13 14:44 ECOS_C++锥约束问题DebugECOS_C++.pdb
目录 0 2018-12-26 10:45 ECOS_C++锥约束问题ECOS_C++
文件 25448448 2018-07-13 15:14 ECOS_C++锥约束问题ECOS_C++.sdf
文件 891 2017-11-12 11:11 ECOS_C++锥约束问题ECOS_C++.sln
文件 94208 2018-07-13 15:14 ECOS_C++锥约束问题ECOS_C++.suo
文件 18467 2017-11-12 13:24 ECOS_C++锥约束问题ECOS_C++amd.h
文件 5890 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_1.c
文件 66716 2017-11-12 13:25 ECOS_C++锥约束问题ECOS_C++amd_2.c
文件 5061 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_aat.c
文件 1849 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_control.c
文件 1290 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_defaults.c
文件 5191 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_dump.c
文件 3264 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_global.c
文件 4292 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_info.c
文件 9515 2017-11-12 13:29 ECOS_C++锥约束问题ECOS_C++amd_internal.h
文件 6107 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_order.c
文件 5715 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_postorder.c
文件 3823 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_post_tree.c
文件 3926 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_preprocess.c
文件 3072 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_valid.c
文件 15277 2018-05-02 16:48 ECOS_C++锥约束问题ECOS_C++cone.c
文件 6290 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++cone.h
文件 2529 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++ctrlc.c
文件 1826 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++ctrlc.h
文件 82557 2017-11-12 11:57 ECOS_C++锥约束问题ECOS_C++data.h
文件 1722 2017-12-22 22:14 ECOS_C++锥约束问题ECOS_C++dbgmalloc.c
目录 0 2018-12-26 10:45 ECOS_C++锥约束问题ECOS_C++Debug
............此处省略107个文件信息
/* ========================================================================= */
/* === AMD_1 =============================================================== */
/* ========================================================================= */
/* ------------------------------------------------------------------------- */
/* AMD Copyright (c) Timothy A. Davis */
/* Patrick R. Amestoy and Iain S. Duff. See ../README.txt for License. */
/* email: DrTimothyAldenDavis@gmail.com */
/* ------------------------------------------------------------------------- */
/* AMD_1: Construct A+A‘ for a sparse matrix A and perform the AMD ordering.
*
* The n-by-n sparse matrix A can be unsymmetric. It is stored in MATLAB-style
* compressed-column form with sorted row indices in each column and no
* duplicate entries. Diagonal entries may be present but they are ignored.
* Row indices of column j of A are stored in Ai [Ap [j] ... Ap [j+1]-1].
* Ap [0] must be zero and nz = Ap [n] is the number of entries in A. The
* size of the matrix n must be greater than or equal to zero.
*
* This routine must be preceded by a call to AMD_aat which computes the
* number of entries in each row/column in A+A‘ excluding the diagonal.
* Len [j] on input is the number of entries in row/column j of A+A‘. This
* routine constructs the matrix A+A‘ and then calls AMD_2. No error checking
* is performed (this was done in AMD_valid).
*/
#include “amd_internal.h“
GLOBAL void AMD_1
(
Int n /* n > 0 */
const Int Ap [ ] /* input of size n+1 not modified */
const Int Ai [ ] /* input of size nz = Ap [n] not modified */
Int P [ ] /* size n output permutation */
Int Pinv [ ] /* size n output inverse permutation */
Int Len [ ] /* size n input undefined on output */
Int slen /* slen >= sum (Len [0..n-1]) + 7n
* ideally slen = 1.2 * sum (Len) + 8n */
Int S [ ] /* size slen workspace */
double Control [ ] /* input array of size AMD_CONTROL */
double Info [ ] /* output array of size AMD_INFO */
)
{
Int i j k p pfree iwlen pj p1 p2 pj2 *Iw *Pe *Nv *Head
*Elen *Degree *s *W *Sp *Tp ;
/* --------------------------------------------------------------------- */
/* construct the matrix for AMD_2 */
/* --------------------------------------------------------------------- */
ASSERT (n > 0) ;
iwlen = slen - 6*n ;
s = S ;
Pe = s ; s += n ;
Nv = s ; s += n ;
Head = s ; s += n ;
Elen = s ; s += n ;
Degree = s ; s += n ;
W = s ; s += n ;
Iw = s ; s += iwlen ;
ASSERT (AMD_valid (n n Ap Ai) == AMD_OK) ;
/* construct the pointers for A+A‘ */
Sp = Nv ; /* use Nv and W as workspace for Sp and Tp [ */
Tp = W ;
pfree = 0 ;
for (j = 0 ; j < n ; j++)
{
Pe [j] = pfree ;
Sp
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-12-26 10:45 ECOS_C++锥约束问题
目录 0 2018-12-26 10:45 ECOS_C++锥约束问题Debug
文件 141312 2018-07-13 14:44 ECOS_C++锥约束问题DebugECOS_C++.exe
文件 499492 2018-07-13 14:44 ECOS_C++锥约束问题DebugECOS_C++.ilk
文件 1158144 2018-07-13 14:44 ECOS_C++锥约束问题DebugECOS_C++.pdb
目录 0 2018-12-26 10:45 ECOS_C++锥约束问题ECOS_C++
文件 25448448 2018-07-13 15:14 ECOS_C++锥约束问题ECOS_C++.sdf
文件 891 2017-11-12 11:11 ECOS_C++锥约束问题ECOS_C++.sln
文件 94208 2018-07-13 15:14 ECOS_C++锥约束问题ECOS_C++.suo
文件 18467 2017-11-12 13:24 ECOS_C++锥约束问题ECOS_C++amd.h
文件 5890 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_1.c
文件 66716 2017-11-12 13:25 ECOS_C++锥约束问题ECOS_C++amd_2.c
文件 5061 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_aat.c
文件 1849 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_control.c
文件 1290 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_defaults.c
文件 5191 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_dump.c
文件 3264 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_global.c
文件 4292 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_info.c
文件 9515 2017-11-12 13:29 ECOS_C++锥约束问题ECOS_C++amd_internal.h
文件 6107 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_order.c
文件 5715 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_postorder.c
文件 3823 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_post_tree.c
文件 3926 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_preprocess.c
文件 3072 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++amd_valid.c
文件 15277 2018-05-02 16:48 ECOS_C++锥约束问题ECOS_C++cone.c
文件 6290 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++cone.h
文件 2529 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++ctrlc.c
文件 1826 2015-08-06 10:42 ECOS_C++锥约束问题ECOS_C++ctrlc.h
文件 82557 2017-11-12 11:57 ECOS_C++锥约束问题ECOS_C++data.h
文件 1722 2017-12-22 22:14 ECOS_C++锥约束问题ECOS_C++dbgmalloc.c
目录 0 2018-12-26 10:45 ECOS_C++锥约束问题ECOS_C++Debug
............此处省略107个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)