Difference between revisions of "Retaining wall"
(→Construction of the nomograph) |
(→Source code) |
||
Line 71: | Line 71: | ||
− | Copyright (C) 2007- | + | Copyright (C) 2007-2012 Leif Roschier |
This program is free software: you can redistribute it and/or modify | This program is free software: you can redistribute it and/or modify | ||
Line 95: | Line 95: | ||
'g':lambda u:3*u*(u+1.0), | 'g':lambda u:3*u*(u+1.0), | ||
'h':lambda u:(-u*(u-1.0)), | 'h':lambda u:(-u*(u-1.0)), | ||
− | 'title':' | + | 'title':'L', |
'tick_side':'left', | 'tick_side':'left', | ||
'tick_levels':4, | 'tick_levels':4, | ||
Line 119: | Line 119: | ||
'g':lambda w:3.0*(w+1.0), | 'g':lambda w:3.0*(w+1.0), | ||
'h':lambda w:(-(w+1.0)*(2.0*w+1.0)), | 'h':lambda w:(-(w+1.0)*(2.0*w+1.0)), | ||
− | 'title':' | + | 'title':'p', |
'tick_side':'left', | 'tick_side':'left', | ||
'tick_levels':4, | 'tick_levels':4, |
Latest revision as of 21:24, 5 August 2012
Retaining wall | |
![]() | |
author | Leif Roschier |
---|---|
File:Ex retaining wall.pdf |
Contents
Theory and background
Classic example of nomograph found in Ref [1] is the formula connecting the proportions of retaining walls according to picture.
The picture can be scaled horizontally and vertically so that the wall cross-section is in general a rectangle as illustrated. The nomograph calculates equal retaining walls: one having straight faces (texture in figure) and one with on sloping faces (blue color). The problem follows equation
[math](1+L)h^2-Lh(1+p)-\frac{1}{3}(1-L)(1+2p)=0[/math]
that can be written as
[math] \begin{vmatrix} 2(L^2-1) & 3L(L+1) & -L(L-1) \\ 2(2p+1) & 3(p+1) & -(p+1)(2p+1) \\ h & 1 & -h^2 \end{vmatrix} =0, [/math]
where p is defines as (density of earth)/(density of masonry). Similar nomograph is also found in Ref.[2]
References
- ↑ H.J. Allcock, J.R. Jones and J.G.L. Michel, The Nomogram. Sir Isaac Pitman & Sons, Ltd., 4nd Edition, 1952.
- ↑ d'Ocagne, Traité Nomographie, Gauthier-Villars (1899)
Construction of the nomograph
The underlying equation is expressed as determinant and type 9 has to be used. This equation has to be transformed so we use
'transform_ini':True
Note that we have set the points at scale to be transformed with
'u_min_trafo':0.5, 'u_max_trafo':1.0,
in scale definitions.
Generated nomograph
Retaining wall | |
---|---|
![]() |
|
Generated portable document file (pdf): | File:Ex retaining wall.pdf |
Source code
""" ex_retaining_wall.py Retaining wall. ----------------------------------------- | 2*(u*u-1) | 3*u*(u+1) | -u*(u-1.0) | ----------------------------------------- | v | 1 | -v*v | = 0 ----------------------------------------- | 2*(2*w+1) | 3*(w+1) |-(w+1)*(2*w+1) | ----------------------------------------- Copyright (C) 2007-2012 Leif Roschier This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. """ from pynomo.nomographer import * N_params_1={ 'u_min':0.5, 'u_max':1.0, 'u_min_trafo':0.5, 'u_max_trafo':1.0, 'f':lambda u:2*(u*u-1.0), 'g':lambda u:3*u*(u+1.0), 'h':lambda u:(-u*(u-1.0)), 'title':'L', 'tick_side':'left', 'tick_levels':4, 'tick_text_levels':2, } N_params_2={ 'u_min':1.0, 'u_max':0.75, 'f':lambda v:v, 'g':lambda v:1.0, 'h':lambda v:(-v*v), 'title':'h', 'tick_side':'right', 'tick_levels':3, 'tick_text_levels':2 } N_params_3={ 'u_min':1.0, 'u_max':0.5, 'u_min_trafo':1.0, 'u_max_trafo':0.5, 'f':lambda w:2.0*(2.0*w+1.0), 'g':lambda w:3.0*(w+1.0), 'h':lambda w:(-(w+1.0)*(2.0*w+1.0)), 'title':'p', 'tick_side':'left', 'tick_levels':4, 'tick_text_levels':2 } block_params={ 'block_type':'type_9', 'f1_params':N_params_1, 'f2_params':N_params_2, 'f3_params':N_params_3, 'transform_ini':True, 'isopleth_values':[[0.8,'x',0.7]] } main_params={ 'filename':'ex_retaining_wall.pdf', 'paper_height':10.0, 'paper_width':10.0, 'block_params':[block_params], 'transformations':[('scale paper',)] } Nomographer(main_params)