K.java

/*
 * Created on 2010/01/21
 * Copyright (C) 2010 Koga Laboratory. All rights reserved.
 *
 */
package org.mklab.sdpj.convert;

/**
 * 構造体Kを表すクラスです.
 * 
 * @author Hiroaki Matsuo
 * @version $Revision$, 2010/01/21
 */
public class K {

  /** 主問題の自由変数の数を表しています。 */
  int f;
  /** 負でない要素の数を表しています。 */
  int l;
  /** 2次錐制約の次元の数のリストを表しています。 */
  double[] q;
  /** 回転した2次錐の次元のリストを表しています。 */
  double[] r;
  /** 主問題で零でない複数部分を持たせておけるf,l,q,rブロックの構成要素のリストを表しています */
  double[] xcomplex;
  /** 半正値制約の次元のリストを表しています。 */
  int[] s;
  /** エルミート行列であるPSDブロックのリストを表しています */
  double[] scomplex;
  /** A×xの複素部分に制約を課す場合に用います */
  double[] ycomplex;

  /**
   * 新しく生成された{@link K}オブジェクトを初期化します。
   * 
   * @param s 半正値制約の次元のリスト
   */
  public K(int[] s) {
    this.s = s;
  }
}