亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mod2sparse.h

?? ldpc的11個程序 encode decode extract make-gen make-ldpc make-pchk print-gen print-pchk rand-src transm
?? H
字號:
/* MOD2SPARSE.H - Interface to module for handling sparse mod2 matrices. *//* Copyright (c) 2000, 2001 by Radford M. Neal  * * Permission is granted for anyone to copy, use, or modify this program  * for purposes of research or education, provided this copyright notice  * is retained, and note is made of any changes that have been made.  * * This program is distributed without any warranty, express or implied. * As this program was written for research purposes only, it has not been * tested to the degree that would be advisable in any important application. * All use of this program is entirely at the user's own risk.
*//* This module implements operations on sparse matrices of mod2 elements    (bits, with addition and multiplication being done modulo 2).       All procedures in this module display an error message on standard    error and terminate the program if passed an invalid argument (indicative   of a programming error), or if memory cannot be allocated.  Errors from    invalid contents of a file result in an error code being returned to the    caller, with no message being printed by this module. *//* DATA STRUCTURES USED TO STORE A SPARSE MATRIX.  Non-zero entries (ie, 1s)   are represented by nodes that are doubly-linked both by row and by column,   with the headers for these lists being kept in arrays.  Nodes are allocated   in blocks to reduce time and space overhead.  Freed nodes are kept for   reuse in the same matrix, rather than being freed for other uses, except    that they are all freed when the matrix is cleared to all zeros by the   mod2sparse_clear procedure, or copied into by mod2sparse_copy.    Direct access to these structures should be avoided except in low-level   routines.  Use the macros and procedures defined below instead. */typedef struct mod2entry /* Structure representing a non-zero entry, or			      the header for a row or column               */{  int row, col;		  /* Row and column indexes of this entry, starting                             at 0, and with -1 for a row or column header  */  struct mod2entry *left, *right,  /* Pointers to entries adjacent in row  */                   *up, *down;     /*   and column, or to headers.  Free   */                                   /*   entries are linked by 'left'.      */  double pr, lr;	  /* Probability and likelihood ratios - not used  */			  /*   by the mod2sparse module itself             */} mod2entry;#define Mod2sparse_block 10  /* Number of entries to block together for                                memory allocation */typedef struct mod2block /* Block of entries allocated all at once */{  struct mod2block *next;  /* Next block that has been allocated */  mod2entry entry[Mod2sparse_block]; /* Entries in this block */} mod2block;typedef struct		/* Representation of a sparse matrix */{   int n_rows;		  /* Number of rows in the matrix */  int n_cols;		  /* Number of columns in the matrix */  mod2entry *rows;	  /* Pointer to array of row headers */  mod2entry *cols;	  /* Pointer to array of column headers */  mod2block *blocks;	  /* Blocks that have been allocated */  mod2entry *next_free;	  /* Next free entry */} mod2sparse;/* MACROS TO GET AT ELEMENTS OF A SPARSE MATRIX.  The 'first', 'last', 'next',   and 'prev' macros traverse the elements in a row or column.  Moving past   the first/last element gets one to a header element, which can be identified   using the 'at_end' macro.  Macros also exist for finding out the row    and column of an entry, and for finding out the dimensions of a matrix. */#define mod2sparse_first_in_row(m,i) ((m)->rows[i].right) /* Find the first   */#define mod2sparse_first_in_col(m,j) ((m)->cols[j].down)  /* or last entry in */#define mod2sparse_last_in_row(m,i) ((m)->rows[i].left)   /* a row or column  */#define mod2sparse_last_in_col(m,j) ((m)->cols[j].up)#define mod2sparse_next_in_row(e) ((e)->right)  /* Move from one entry to     */#define mod2sparse_next_in_col(e) ((e)->down)   /* another in any of the four */#define mod2sparse_prev_in_row(e) ((e)->left)   /* possible directions        */#define mod2sparse_prev_in_col(e) ((e)->up)   #define mod2sparse_at_end(e) ((e)->row<0) /* See if we've reached the end     */#define mod2sparse_row(e) ((e)->row)      /* Find out the row or column index */#define mod2sparse_col(e) ((e)->col)      /* of an entry (indexes start at 0) */#define mod2sparse_rows(m) ((m)->n_rows)  /* Get the number of rows or columns*/#define mod2sparse_cols(m) ((m)->n_cols)  /* in a matrix                      *//* POSSIBLE LU DECOMPOSITION STRATEGIES.  For use with mod2sparse_decomp. */typedef enum { Mod2sparse_first,   Mod2sparse_mincol,   Mod2sparse_minprod} mod2sparse_strategy;/* PROCEDURES TO MANIPULATE SPARSE MATRICES. */mod2sparse *mod2sparse_allocate (int, int);void mod2sparse_free            (mod2sparse *);void mod2sparse_clear    (mod2sparse *);void mod2sparse_copy     (mod2sparse *, mod2sparse *);void mod2sparse_copyrows (mod2sparse *, mod2sparse *, int *);void mod2sparse_copycols (mod2sparse *, mod2sparse *, int *);void mod2sparse_print       (FILE *, mod2sparse *);int  mod2sparse_write       (FILE *, mod2sparse *);mod2sparse *mod2sparse_read (FILE *);mod2entry *mod2sparse_find   (mod2sparse *, int, int);mod2entry *mod2sparse_insert (mod2sparse *, int, int);void mod2sparse_delete       (mod2sparse *, mod2entry *);void mod2sparse_transpose (mod2sparse *, mod2sparse *);void mod2sparse_add       (mod2sparse *, mod2sparse *, mod2sparse *);void mod2sparse_multiply  (mod2sparse *, mod2sparse *, mod2sparse *);void mod2sparse_mulvec    (mod2sparse *, char *, char *);int mod2sparse_equal (mod2sparse *, mod2sparse *);int mod2sparse_count_row (mod2sparse *, int);int mod2sparse_count_col (mod2sparse *, int);void mod2sparse_add_row (mod2sparse *, int, mod2sparse *, int);void mod2sparse_add_col (mod2sparse *, int, mod2sparse *, int);int mod2sparse_decomp (mod2sparse *, int, mod2sparse *, mod2sparse *,                        int *, int *, mod2sparse_strategy, int, int);int mod2sparse_forward_sub  (mod2sparse *, int *, char *, char *);int mod2sparse_backward_sub (mod2sparse *, int *, char *, char *);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
综合久久给合久久狠狠狠97色| 亚洲国产成人午夜在线一区| 色诱亚洲精品久久久久久| 国产美女在线观看一区| 老司机一区二区| 另类调教123区| 国产乱淫av一区二区三区| 国内外成人在线| 国产精品性做久久久久久| 国产精品一区专区| 成人综合在线观看| 99久久99精品久久久久久 | 成人午夜免费视频| 处破女av一区二区| 91蜜桃视频在线| 欧美一a一片一级一片| 欧美日韩一区国产| 91精品一区二区三区久久久久久| 欧美日韩国产乱码电影| 欧美一级欧美三级在线观看| 精品少妇一区二区三区视频免付费 | 美脚の诱脚舐め脚责91 | 91视频一区二区三区| 日本丶国产丶欧美色综合| 欧美日韩精品福利| 日韩色视频在线观看| 国产日韩欧美一区二区三区综合| 欧美国产精品中文字幕| 亚洲伦理在线精品| 三级不卡在线观看| 国产精品综合二区| 91福利国产精品| 日韩欧美一级二级三级久久久| 久久久久久**毛片大全| 国产精品国产三级国产三级人妇| 亚洲伊人色欲综合网| 免费在线观看日韩欧美| 成人一区二区视频| 精品视频一区二区不卡| 精品国产露脸精彩对白| 自拍偷在线精品自拍偷无码专区 | 福利一区二区在线观看| 色婷婷久久久久swag精品| 正在播放亚洲一区| 国产精品视频一二| 天天综合天天做天天综合| 国产精品一区二区在线观看网站 | 欧美一级片在线看| 国产精品美日韩| 日韩电影一区二区三区四区| 国产 欧美在线| 欧美人与性动xxxx| 国产精品网曝门| 三级久久三级久久| 99视频一区二区| 日韩欧美精品三级| 亚洲免费观看在线观看| 久久se这里有精品| 色狠狠一区二区三区香蕉| 2019国产精品| 亚洲成a人v欧美综合天堂下载| 国产乱码精品一品二品| 制服视频三区第一页精品| 亚洲乱码国产乱码精品精98午夜 | 国产在线不卡视频| 欧美探花视频资源| 国产欧美一区二区精品性色超碰| 午夜久久久久久电影| 成人av在线一区二区| 欧美成人免费网站| 午夜精彩视频在线观看不卡| heyzo一本久久综合| 精品久久久久久久久久久久包黑料 | 日韩理论电影院| 国产一区三区三区| 91精品国产色综合久久ai换脸| 国产精品天干天干在观线| 蜜桃一区二区三区在线观看| 在线精品视频一区二区| 亚洲国产精品黑人久久久| 久久99精品国产麻豆婷婷| 欧美人成免费网站| 亚洲精品中文在线| 成人午夜免费av| 久久久久久黄色| 国产一区二区精品在线观看| 欧美一区二区精品在线| 午夜一区二区三区在线观看| 91精彩视频在线| 一区二区三区中文在线| 99久久精品免费| 中文字幕中文字幕在线一区| 国产91精品入口| 久久久精品国产免大香伊| 久久国产欧美日韩精品| 日韩一区二区三区在线| 日韩国产在线观看一区| 欧美狂野另类xxxxoooo| 丝袜国产日韩另类美女| 色婷婷亚洲一区二区三区| 国产精品传媒入口麻豆| 99久久综合狠狠综合久久| 中文字幕欧美三区| 国产河南妇女毛片精品久久久| 亚洲精品一区二区三区四区高清| 免费看欧美女人艹b| 欧美另类久久久品| 五月婷婷欧美视频| 91精品国产综合久久精品app| 午夜精品福利一区二区三区av| 欧美日韩www| 蜜臀va亚洲va欧美va天堂| 欧美一卡在线观看| 激情亚洲综合在线| 国产亚洲一区二区在线观看| 国产999精品久久| 国产精品乱码人人做人人爱| 91影院在线免费观看| 亚洲美女在线一区| 欧美视频三区在线播放| 午夜视频一区二区三区| 精品入口麻豆88视频| 国产精品亚洲午夜一区二区三区 | 欧美一区二区三区小说| 免费看日韩精品| 国产日产亚洲精品系列| 91在线你懂得| 视频一区国产视频| 精品国产伦一区二区三区免费| 国产91精品久久久久久久网曝门| 亚洲欧洲99久久| 欧美写真视频网站| 捆绑变态av一区二区三区| 久久蜜桃一区二区| av中文一区二区三区| 亚洲在线免费播放| 精品欧美乱码久久久久久1区2区| 粉嫩一区二区三区性色av| 亚洲精品一卡二卡| 日韩精品一区二区三区中文不卡 | 精品一区二区免费视频| 国产三级精品视频| 色婷婷香蕉在线一区二区| 蜜臀精品久久久久久蜜臀 | 韩日欧美一区二区三区| 国产精品免费aⅴ片在线观看| 欧美性大战xxxxx久久久| 国产一区二区主播在线| 亚洲色图.com| 日韩欧美一区二区视频| 成人国产精品免费网站| 亚洲bdsm女犯bdsm网站| 国产欧美精品一区二区色综合| 欧美亚一区二区| 国产在线一区二区综合免费视频| 中文字幕在线一区| 日韩一级视频免费观看在线| 99国产精品视频免费观看| 日韩经典中文字幕一区| ...xxx性欧美| 精品国产1区2区3区| 欧美系列亚洲系列| 九九国产精品视频| 亚洲欧洲av在线| 精品福利av导航| 欧美久久一区二区| 9久草视频在线视频精品| 另类小说欧美激情| 亚洲国产精品天堂| 国产精品久久777777| 精品国产精品一区二区夜夜嗨| 在线观看欧美精品| 成人黄色av网站在线| 蜜臀av性久久久久蜜臀aⅴ流畅 | 国产精品系列在线播放| 天天综合色天天综合| 亚洲伦理在线精品| 国产精品国产三级国产aⅴ原创| 欧美电影免费观看高清完整版| 成人av网站在线观看| 国产精品原创巨作av| 久久精品免费看| 午夜伊人狠狠久久| 亚洲制服丝袜一区| 亚洲欧美日韩在线不卡| 欧美国产国产综合| 久久久激情视频| 精品第一国产综合精品aⅴ| 欧美乱熟臀69xxxxxx| 欧美日韩精品系列| 欧美视频三区在线播放| 91成人网在线| 91蜜桃婷婷狠狠久久综合9色| 99视频一区二区| 91在线观看美女| 成人三级在线视频| 成人性生交大合| 懂色av一区二区在线播放| 蜜臀av一区二区在线观看| 日韩精品电影在线|