|January 7th, 2016|
To make things simpler, imagine that we're relying on pasta for all our calories and protein, and it's just these two being combined.  Dietary requirements vary between people a lot, but standard recommendations are something like 2000 calories and 50g of protein.
One ounce of wheat pasta is 3.5g of protein and 100 calories, while bean pasta is 12.5g and 90 calories. So we want:
3.5g x w + 12.5g x b = 50g 100C x w + 90C x b = 2000CThis gives us: 
w = 21.9oz b = -2.13ozThat clearly doesn't work; I don't know how to eat -2.13 ounces of anything. Why are we getting this weird result? To get 2000 calories from wheat pasta you need to eat 20 ounces, which would get you 70g of protein. So you can get enough protein with ordinary pasta alone... really?
The problem is we're treating protein as a homogenous thing, when actually it's a big bag of things. We have two different constraints: we need enough protein, and we need enough of each of the individual amino acids we can't make ourselves (essential amino acids). Getting 50g of the right mix is enough, but if you're getting all 50g from, say, gelatine, you won't get any tryptophan and that's not going to work out. So how much of each amino acid do we need?
Actually, how do we even know how much protein you need? Protein is the main way we take in nitrogen.  We can measure someone's nitrogen in and nitrogen out and from there get a sense of how much they're using in a steady state, "nitrogen balance". But if we find that you use 50g in a steady state, that doesn't actually tell us that if we gave you 50g and no more that you would be getting enough. So our numbers here aren't super reliable.
Then consider that measuring all this is a messy and inaccurate affair. We need to know exactly how much nitrogen you're eating, an how much you excrete. Some is lost to breathing and sweat, but we're pretty sure that's too small to matter. Not only is it hard to be exact, but our best measurements find that people are taking in more than they're letting out, which can't be right. So we're missing something.
In the case of essential amino acids we can tag them with radioactive carbon and then track how much of that carbon ends up in your breath as it's digested. This is really awkward, as you need to be in ventilated hood the whole time. And you get pretty different results depending on whether you're eating lots of small meals or a few big ones, and whether you include sleeping.
Basically, all our data here is kind of a mess, and this is the sort of thing that would make me nervous about using Soylent or Meal Squares for primary nutrition. At least with baby formula we have something to compare to. Still, we can forge ahead with the WHO's best estimates to get our rough ratio.
|Essential Amino Acid||protein %|
|Phenylalanine + tyrosine||3.8%|
What this tells us is that 27.7% of our protein requirement needs to come from specific amino acids while the remaining 72.3% can be met with any amino acid combination. Another way to look at this same data is to look at individual foods and see how their protein compares against an imaginary ideal protein that had exactly the above composition: 100% of the requirement for each unsynthesizable amino acid, with the remaining 72.3% made up of other amino acids:
You can see that egg, beef, soy, and potato are all over 100% for each amino acid. That means that if you're trying to get 50g of protein and you eat enough of one of those to get 50g of protein, then you'll have met your requirements both for total protein and for each amino acid you can't synthesize. On the other hand, rice, corn, wheat, cassava, and (real) yam would all leave you deficient in lysine, so you'd need to eat more to make up for it. For wheat, that 57% means you'd need to eat nearly twice as much as you'd expect based on just counting protein.
This explains why getting all your protein from wheat would be hard. Sticking with our 2,000 calories and 50g protein target, you'd eat 20oz and 140% of the protein you need but just 80% of the lysine you'd need. Hitting the lysine target means eating 25oz or 2,500 calories, which is getting up there.
Now we can answer the original simple question: if all you ate was wheat pasta and bean pasta, what ratio would get you enough protein at 2000 calories? Instead of targeting 50g of protein, we'll target getting enough lysine, since that's the limitation:
0.57 x 3.5g x w + 1.44 x 12.5g x b = 50g 100C x w + 90C x b = 2000C
This gives us:
w = 19.4oz b = 0.6oz
This makes some sense: 2000 calories worth of wheat got us 80% of the way to having enough lysine, and each ounce of bean pasta gets us 36% of the lysine we need. Still, this is a suspiciously low amount of beans. Are we missing anything else?
I like pasta a lot, but it's not all I eat. I might have my dinner with olive oil, tomatoes, garlic, onions, and peppers, all of which have calories but nearly no protein. The ratio of calories from pasta to calories from the other non-proteiny stuff might be 1:1, in which case I only have 1000 pasta calories to get my 50g from. Lets run it again!
0.57 x 3.5g x w + 1.44 x 12.5g x b = 50g 100C x w + 90C x b = 1000C
And now we have:
w = 8.3oz b = 1.9ozWhich means I should combine wheat pasta and bean pasta at a ratio of 4:1. Or whatever ratio tastes best.
Update 2016-01-08: The WHO report I used gave numbers for soy protein (6.48%) but not black bean protein, and I assumed it was similar for all beans. Finding a source that gives data for cooked black beans, I now see they're 6.86% lysine, scoring 152, which gives us w=8.5oz and b=1.7oz, but doesn't change the bottom-line 4:1 approximation.
 Bean pasta costs $60 for 24lbs including shipping if you buy in bulk, so $2.50/lb. Regular pasta costs about $1/lb at the store, and I can't find it cheaper online. All the bean pastas are kind of fancy (the linked one is organic) so if bean pasta became popular enough that there were non-fancy kinds this gap would narrow.
 I did a similar calculation for rice and beans for this post, but I only looked at total protein numbers. I think there it works out, though, because with rice and beans you end up having enough beans that I think you'll be ok for lysine.
 One way to solve this:
def solve(a, b, c, d, e, f): # solves pairs of linear equations in the form # # ax + by = c # dx + ey = f def x(y): return (c-b*y)/a def y(): return (f-d*c/a) / (e-d*b/a) return x(y()), y() solve(a=3.5, b=12.5, c=50.0, d=100.0, e=90.0, f=2000.0)
 This all comes from reading the 2007 WHO technical report, Protein and Amino Acid Requirements in Human Nutrition (pdf)