Skip to content

Bar force calculator (BARF) is a set of programs for structural analysis and design.

License

Notifications You must be signed in to change notification settings

akhileshsv/barf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

                  ___          ___         ___   
     _____       /  /\        /  /\       /  /\  
    /  /::\     /  /::\      /  /::\     /  /:/_ 
   /  /:/\:\   /  /:/\:\    /  /:/\:\   /  /:/ /\
  /  /:/~/::\ /  /:/~/::\  /  /:/~/:/  /  /:/ /:/
 /__/:/ /:/\:/__/:/ /:/\:\/__/:/ /:/__/__/:/ /:/ 
 \  \:\/:/~/:|  \:\/:/__\/\  \:\/:::::|  \:\/:/  
  \  \::/ /:/ \  \::/      \  \::/~~~~ \  \::/   
   \  \:\/:/   \  \:\       \  \:\      \  \:\   
    \  \::/     \  \:\       \  \:\      \  \:\  
     \__\/       \__\/        \__\/       \__\/  

                        v0 - (super rough demo)

Table of Contents

  1. Overview
  2. Getting started
    1. Prerequisites
    2. Usage
  3. References

BARF is a collection of programs for structural analysis and design written in Go.

Overview

  • Direct stiffness analysis (/kass): Direct stiffness analysis of (2d/3d) bar member frameworks.
  • RCC design (/mosh): Design of rcc slabs, beams, columns and footings as per is456 and bs8110.
  • Steel design (/bash): Design of steel beam and column members as per bs449.
  • Timber design (/tmbr): Design of timber beam and column members as per is883.

Getting started

Prerequisites

Usage

Clone and build this repo -

git clone https://github.com/akhileshsv/barf  
cd barf  
go build -o barf.exe

Run tui menu (uses https://github.com/AlecAivazis/survey) with -

./barf.exe -tui

Note - using "read json txt" as an input option copies the base struct to clipboard and opens a new editor window to edit struct fields.
Hit "?" to see an explanation of individual struct fields (as seen in the gifs below); paste the struct into the editor (ctrl + v) and save the edited file before exiting the editor window.

direct stiffness method/analysis

truss

frm2d

elastic-plastic analysis of beams/ 2d frames

frm2dep

rcc member design

mosh

steel column/beam design

bash

wood column/beam design

tmbr

  • Flags
    • inf (string) - input json file path
    • term (string) - gnuplot terminal string (supported - "dumb","mono","qt","svg")
    • calc (bool) - stiffness analysis flag (kass.Model json input)
    • rcc (string) - rcc design flag
    • stl (string) - steel design flag
    • wood (string) - wood design flag
    • cmdz (string) - flag sub-commands
    • tui (bool) - start text menu
flag info type vals cmdz info
calc analysis bool     basic model direct stiffness analysis
calc       ep elastic plastic beam/frame analysis
calc       np non uniform beam/frame analysis
calc       blt, bolt bolt group analysis
calc       wld, weld weld group analysis
rcc rcc design string slb,slab   rcc slab design
rcc     cb, cbeam   rcc continuous beam analysis and design
rcc     bm, beam az, analyze rcc beam section analysis
rcc     bm, beam dz, design rcc beam section design
rcc     col, column az, analyze rcc column section analysis
rcc     col, column dz, design rcc column section design
rcc     ftng, footing az, analyze rcc footing analysis
rcc     ftng, footing dz, design rcc footing design
rcc     sf, subfrm az, analyze rcc subframe analysis
stl steel design string col, column az, analyze steel column check
stl     col, column dz, design steel column design
stl     bm, beam az, analyze steel beam check
stl     bm, beam dz, design steel beam design
wood wood design string col, column dz, design solid timber column design
wood     bm, beam dz, design solid timber beam design

Tests

kass (analysis)

Navigate to the folder barf/kass and run the following command with the test name and the -v flag as below:


cd barf/kass
go test -run "test name" -v
go test -run KFacMos -v

IN-PROGRESS calc np tests
  • KFacMos - calc stiffness and distribution factors
  • TestNpBm - non prismatic beam calc
  • TestNpFrm - non prismatic frame calc

IN-PROGRESS calc tests
  • beamsfbmtest - beam bm/sf funcs (hulse)
  • Trs2d - 2d truss (chapter 3/4, kassimali)
  • Trs2dJsd - 2d truss (chapter 3/4, kassimali)
  • Bm1d - 1d beam (chapter 5, kassimali)
  • BmJsd - joint support displacements calc (chapter 7, kassimali)
  • Frm2d - 2d frame (chapter 6, kassimali)
  • Frm2dJsd - 2d frame support disp./member releases (chapter 7, kassimali)
  • Grd3d - 3d grid analysis (chapter 8, kassimali)
  • Frm3d - 3d frame (chapter 8, kassimali)
  • Trs3d - 3d truss (chapter 8, kassimali)
  • add ons - chapter 7, kassimali examples (member releases, temp changes etc)
  • NlCalcTrs2d - chapter 10 - special topics (non linear truss analysis) (kassimali)
  • boltss - bolt group analysis (harrison)
  • weldss - weld group analysis (harrison)
  • CalcEp - elastic - plastic analysis (harrison) close the deflection bit (read)
  • EffLen - iterative column effective length calcs (harrison) finish ze test

IN-PROGRESS section tests
  • SecProp calc - mosley general section properties calculation
  • SecGen - 22 sections so far

mosh (rcc design)

Navigate to the folder barf/mosh and run the following command with the test name and the -v flag as below:



cd barf/mosh
go test -run "test name" -v
go test -run Slb1DBs -v

IN-PROGRESS v0 tests

IN-PROGRESS slab
  1. SlbSdrat - slab span depth ratio tests (in deflectiontest)
  2. TestSlb2DIs - slab 1 way tests (subramanian) (in slabdesignistest)
  3. TestSlbSsShah - shah sec. 6.2 tests
  4. TestSlb2WShah - shah sec. 6.3 2w slb tests
  5. BalSecAst - balanced section area of steel tests (slabdesigntest)
  6. Slb1DBs - bs code one way slab design
  7. Slb2DBs - bs code two way slab design
  8. Slb2BmCoeffBs - bs code 2 way coeff checks
  9. RSlb2Chk - waffle slab check tests (in slabcstest)
  10. RSlb1Chk - ribbed slab check
  11. CSlb1Dz - cs 1 way slab test
  12. CSlb1DepthCs - cs 1 way slab depth test
  13. SlbQuant - slab quant/table test (slabtest)
  14. SlbDraw - slab draw test
  15. SlbEndC2W - slab 2 way end condition test (slabyieldtest)
  16. TestSlb2WCoefComp - 2 way coeff comparison (bs/is/yield line)
  17. SlbYld - yield line analysis tests
  18. SlbYldRect - rect 2 way slab yield line tests

IN-PROGRESS beam
  1. BmSecAzIs - (is code) shah beam section analysis (styp 1, 6, 7, 14)
  2. BmDIs - (is code) shah beam design
  3. BmDzBs - (bs code) hulse beam rebar design (styp ze usual)
  4. BmAzGen - (bs code) hulse beam section analysis (again the usual styps)
  5. BmAzTaper - tapered beam analysis
  6. BmBarGen - (general) - beam rebar generation funcs
  7. BmAsvrat - beam stirrup area/spacing ratio (hulse)
  8. BmTorDBs - design for torsion (hulse)
  9. BmShrIs - beam shear design (shah) - WRITE THIS
  10. BmShrDz - might be redundant, tests for beam shear(shah)
  11. BmSdrat - beam span depth ratio tests (in deflectiontest)

IN-PROGRESS column
  1. ColDzBasic - basic (styp == 1/0) column design tests (in coldesignistest)
  2. ColSizeIs - column sizing funcs
  3. ColSecArXu - col. section area test (in coldesigntest)
  4. ColAzBs - hulse col. analysis (rect sect alone)
  5. ColDzBs - hulse col. design
  6. ColNMBs - hulse nm curves
  7. ColEffHt - hulse eff. height calcs
  8. ColSlmDBs - hulse slender column
  9. ColFlip - column 'flip' test (in coltest)
  10. ColBx - col. biaxial bending test
  11. ColWeirdBs - weird column tests (start with styp 0)
  12. ColAzGen - col gen. analysis funcs

IN-PROGRESS footing
  1. FtngPadAz - pad footing analysis tests (hulse 6.1) (in footingdesigntest)
  2. FtngBxOz - ozmen footing analysis tests
  3. FtngDzRojas - basic footing tests (rojas, hulse, subramanian)

IN-PROGRESS cbeam
  1. CBmOpt - cbeam opt test (govindraj ex 1 n 2)
  2. CBmDz - cbeam design funcs

IN-PROGRESS subframe
  1. TestFltSlb - flat slab design tests (subframetest)
  2. SubFrmDz - subframe design tests
    • SubFrmMosley - subframe analysis test

References

  1. Aslam Kassimali - Matrix Analysis of Structures , Second Edition - CL Engineering (2011)
  2. H. B. Harrison - Structural Analysis and Design, Some Microcomputer Applications-Elsevier Ltd, Pergamon (1990)
  3. W. H. Mosley, W. J. Spencer - Microcomputer Applications in Structural Engineering-Macmillan Education UK (1984)
  4. R. Hulse, W. H. Mosley - Reinforced Concrete Design by Computer-Macmillan Education UK (1986)
  5. Dr. V.L Shah - Computer Aided Design in Reinforced Concrete - Structures Publications (1998)
  6. Subramanian, Narayanan - Design of Reinforced Concrete Structures-Oxford University Press (2013)
  7. A. Allen - Reinforced Concrete Design to BS 8110 Simply Explained-CRC Press (1988)
  8. Abel O. Olorunnisola - Design of Structural Elements with Tropical Hardwoods - Springer (2017)
  9. Arnulfo Luevanos Rojas - Design of isolated rectangular footings of rectangular form using a new model (2013)

About

Bar force calculator (BARF) is a set of programs for structural analysis and design.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages