示例#1
0
void nflcp(void)
{
    int i;

    gennf();
    setlcp( nstrats[1] + 1 + nstrats[2] + 1 );
    /* fill  M  */
    /* -A       */
    payratmatcpy(nfpay, 0, 1, 0, nstrats[1], nstrats[2],
	lcpM, 0, nstrats[1] + 1);
    /* -E\T     */
    for (i = 0; i < nstrats[1]; i++)
	lcpM[i][nstrats[1] + 1 + nstrats[2]] = ratneg(ratfromi(1));
    /* F        */
    for (i = 0; i < nstrats[2]; i++)
	lcpM[nstrats[1]][nstrats[1] + 1 + i] = ratfromi(1);
    /* -B\T     */
    payratmatcpy(nfpay, 1, 1, 1, nstrats[1], nstrats[2],
	lcpM, nstrats[1] + 1, 0);
    /* -F\T     */
    for (i = 0; i < nstrats[2]; i++)
	lcpM[ nstrats[1] + 1 + i] [nstrats[1]] = ratneg(ratfromi(1));
    /* E        */
    for (i = 0; i < nstrats[1]; i++)
	lcpM[ nstrats[1] + 1 + nstrats[2]] [i] = ratfromi(1);

    /* define RHS q     */
    for (i = 0; i < lcpdim; i++)
	rhsq[i] = ratfromi(0);
    rhsq[ nstrats[1] ] = ratneg(ratfromi(1));
    rhsq[ nstrats[1]  + 1 + nstrats[2] ] = ratneg(ratfromi(1));
}
示例#2
0
文件: rng.c 项目: LuaDist/numlua
static int rf_rng (lua_State *L) {
  nl_RNG *r = getrng(L);
  lua_Number dfn = luaL_checknumber(L, 1);
  lua_Number dfd = luaL_checknumber(L, 2);
  lua_Number xnc = luaL_optnumber(L, 3, 0);
  checknp(L, dfn);
  checknp(L, dfd);
  checkneg(L, xnc);
  setdeviate(number,
      (xnc == 0) ? genf(r, dfn, dfd) : gennf(r, dfn, dfd, xnc), 4);
  return 1;
}