Re: random matrix from row and column sums

*To*: mathgroup at smc.vnet.net*Subject*: [mg53588] Re: random matrix from row and column sums*From*: DrBob <drbob at bigfoot.com>*Date*: Wed, 19 Jan 2005 01:59:47 -0500 (EST)*References*: <200501181007.FAA23929@smc.vnet.net>*Reply-to*: drbob at bigfoot.com*Sender*: owner-wri-mathgroup at wolfram.com

rowSums = {7, 3, 2, 1}; colSums = {2, 9, 2}; m = Array[a, {Length@rowSums, Length@colSums}]; allSolutions = m /. {ToRules@Reduce[Flatten@{Thread[Tr /@ m == rowSums], Thread[Tr /@ Transpose@m == colSums], Thread[ Flatten@m >= 0]}, Flatten@m, Integers]}; allSolutions[[Random[Integer,{1,Length@allSolutions}]]] {{1,6,0},{0,3,0},{1,0,1},{0,0,1}} (The same code works for your 3x3 example.) Bobby On Tue, 18 Jan 2005 05:07:54 -0500 (EST), <adiggle at agric.wa.gov.au> wrote: > Is there an efficient method in Mathematica to generate random tables > of nonnegative integers from a list of row sums and a list of column > sums? > > For example for row sums of {7,3,2} and column sums of {2,9,1} the > following two tables satisfy the constraints: > > {{2, 5, 0}, {0, 2, 1}, {0, 2, 0}} > and > > {{1, 6, 0}, {1, 2, 0}, {0, 1, 1}} > > Thanks > > > > -- DrBob at bigfoot.com www.eclecticdreams.net

**References**:**random matrix from row and column sums***From:*adiggle@agric.wa.gov.au