Das has it in his foundation book, and I am sure there is one in Bowles.
It is pretty straightforward if there is moment about one axis only. If e=B/6 or e<B/6 then you have full bearing and can do P/A + or - M/S to get max bearing and min bearing. This will vary linearly from max to min so you can easily get the bearing at any point along the footing. Use this distribution to get the moments and shears in your footing.
If e>B/6, then you have partial bearing and now you have to set up an equation.
Draw a FBD of your footing. Show the centerline of the ftg, and the location of the eccentric load (P). Now draw the triangular soil pressures under the footing and label the max as qmax. You know that the resultant must be equal to and coincident with the eccentric load (P).
Your equation will look like this:
P=(0.5)*(qmax)*[3*[(B/2)-e]]
You know e and you know P. Now solve for qmax. Make sure this doesn't exceed your allowable and design your footing for shears and moments accordingly.
Hope this helps!
what about overturning. Say you have a 15 ft column on a 5 ft square, 1ft deep ftg. A gravity load of 14k and lateral of 5k. Could you say e = M/P, and then sum moments about the toe to get uplift reaction. And then make sure the weight of footing and overburden soil (from the column to the edge of footing) multiplied by 0.9, does not exceed the uplift reaction. Or am I just way off on this.
Well, sort of. You should check the footing for the different load combinations.
0.9D + 1.6W or
0.6D + 1.0W
but in your case you would be checking overturning, not uplift.
Just make sure that your OTM is less than your stabilizing moment in these cases. Unless you absolutely need it, I wouldn't include the weight of the soil above the footing, I would just increase the footing size a little.
What you are checking is overturning, which will not be a problem with a spread footing. With a spread footing, "e" MUST be less than B/2, or the footing flat out does not work. You can use the overburden and footing weight as part of "P".
StructuralEIT has described the solution to this problem correctly.