Ftool - Two-dimensional Frame Analysis Tool
[ ETools - Web Site for Educational Software in Engineering ]
Ftool: A Structural Analysis Educational Interactive Tool
Author: Luiz Fernando Martha
PUC-Rio - Pontifical Catholic University of Rio de Janeiro
Department of Civil Engineering and
Tecgraf - Computer Graphics Technology Group
Rua Marquês de São Vicente, 225, Gávea
22453-900 - Rio de Janeiro - BRASIL
Users are free to use this educational version of the program. However,
neither the author, nor PUC-Rio, nor Tecgraf/PUC-Rio, nor any related
Institution are responsible for any use or misuse of the programs and
the results. The aforementioned assume no liability or responsibility to any
person or company for direct or indirect damages resulting from the use of
any information or the use of any of the software made available here. The
user is responsible for any and all conclusions made while using the programs.
There is no warranty and no guarantee.
Version 3.00 of Ftool was released on 02/Aug/2012 and has been updated to fix the following problems:
(1) Updated on 19/Aug/2012: The program stopped working in very rare situations of analysis of influence lines or envelops of vehicle live load effects.
(2) Updated on 22/Aug/2012: The program stopped working when a concentrated force load was applied at a node with an inclined support (with skew angle).
(3) Updated on 03/Sep/2012: The program stopped working when a prescribed displacement or rotation component was applied with a null value.
(4) Updated on 06/Sep/2012: The program was not considering temperatura variation effects in the results.
(5) Updated on 19/Sep/2012: The program was given wrong internal force results for a model with all degrees-of-freedom fixed and with at least one component of prescribed displacement or rotation.
(6) Updated on 23/Nov/2012: Fixed input of structural models created prior to version 2.12: moment of inertia of generic cross-section was set with a null value.
(7) Updated on 08/Dec/2012: In case of a double click on a file with extension ".ftl", the program ran but did open the file.
Manual (on-line manual for version 3.00 is under preparation)
New features of the latest version 3.00 (August 2012)
- Graphics interface of program was updated to reflect recent evolution in native interfaces of Windows and Linux. Following this evolution, IUP (www.tecgraf.puc-rio.br/iup) graphics interface system adopted by FTOOL was updated, and in the Linux version package GTK is used. This provides a better user-interface than the previous one that was based on MOTIF.
- Created option for member shear deformation (Timoshenko beams). By default, a member is created without shear deformation.
- Added Poisson ratio to material properties.
- Added effective shear area parameter to all types of cross-section.
- Modified menu that specifies member deformation constraints. There are two exclusive main options: flexible member and rigid member. For flexible member, there are two non-exclusive options: toggle for axial deformation and toggle for shear deformation. When a new model is created, the default toggle options are flexible member with axial deformation of with no shear deformation. If a model is read from a file, and all its members have shear deformation allowed, the shear deformation toggle is set on.
- Set up display of members with shear deformation using a different color (dark magenta).
- When doing post-processing of deformed configuration, and a member is picked to consult results, made available cross-section rotation value in prompt messages. Also, added rotation values to exported deformed configuration result files.
- Eliminated material specific weight property because it has not been used.
- Created options to select display sizes of support, load, and text on the canvas (three options for each: small, medium, and big). Supports and hinges are treated equally for display size definitions.
- Changed display of distributed loads such that the arrow size proportionally reflects load intensity.
- Modified display of member orientation arrow: its size is half of the size used in the previous version.
- Created option to run analysis with or without saving neutral file to pass data to internal analysis module (file with extension ".pos"). The default value of this option is to run analysis without saving a file. The default value of this option is reset when opening an existing model.
- Modified display of influence line to draw a red mark at the reference cross-section.
- Allowed the use of blank spaces in the title of all attributes.
- Prevented modification of orientation of cross-section in post-processing mode.
- Modified display of influence line diagram such that it is only drawn along the members that belong to the chain of members of the load-train path. Before, an influence line diagram was drawn along all members. In case there is no current load-train, the influence line diagram is still drawn along all members.
- Eliminated automatic launch of credits dialog when program is activated.
- Added two key control options: CTRL+Z for undoing pre-processing operation, and CTRL+Y or CTRL+R for redoing last pre-processing undoing operation.
- Fixed mistake in Gerdau-Aço Minas cross-section table, I Shape family, depth 610 mm: the number of profiles with this depth (6) was not correct and the navigation was leaking to other family.
- Fixed mistake in Gerdau-Aço Minas cross-section table, H Shape family: the program was not allowing the selection of profiles with depth greater than 210 mm.
New features of version 2.12 (February 2008)
- Implemented structural analysis for load-trains. Reference:
Envelopes of internal forces due to load-trains in bridges using an evolution strategy.
by Gisele C. Holtz, Luiz F. Martha, and Luiz E. Vaz.
- Created load-train menu: options to create and manipulate lists
of generic load-trains, with variable number of concentrated,
distributed loads (full and empty cars), and external and internal
- Created display of critical positions of load-trains in
relation to current displayed influence line. The critical positions
are the ones that result in minimum and maximum values for the
specified internal force result, at the selected section, due to the
current selected load-train.
- Created option to visualize internal force minimum and maximum
envelop diagrams for the current selected load-train.
- In "Options" drop-down menu, added toggle to add permanent single
load effects to load-train envelops.
- Made a complete revision of Linux version graphics interface:
redefined fonts and sizes of user-interface elements.
- Improved user-interface dialogs for data input through the keyboard.
These dialogs use Ftool's number formatting and unit convention.
- Renamed cross-section table NBR Welded I-shapes to Welded
- Renamed cross-section table Usilight I-shapes to Electro-Welded
- Added two new cross-section tables: Gerdau AçoMinas I-shapes (BR)
and ASCI Parallel Flange I-shapes.
- Created options to export a formated text file with analysis
results along a chain of members. The results are exported either
in step values or in display resolution.
- Modified policy for selection and unselection of entities (members,
nodes, or dimension lines): if the SHIFT key is pressed during
pick or fence selection, the selection status of a found entity
is inverted. Before a selected entity would remain selected if
the SHIFT key was pressed.
- Modified treatment of dimension line selection such that new
dimension lines are set unselected by default. Before, new
dimension lines were set selected.
- Modified dimension lines display such that arrows tip do not appear
when size of dimension line on screen is small.
- Modified launch of user-interface dialog for keyboard input of
coordinates during mouse entry. For keyboard input, press the
middle mouse button with CRTL key pressed (berfore this was done
with the middle button and without the CRTL key).
- Modified control of mouse tolerance box such that now this control
is made only using the right mouse button with CRTL key pressed
(before the middle mouse button could also be used).
- Implemented zooming in and out of visualization window using the
mouse middle button wheel.
- Implemented translation of visualization window dragging the
mouse with middle button pressed.
- Implemented automatic translation of visualization window during
selection of the second node of a member.
- Modified exported image file in PS and EPS formats to display in
landscape format, using vector fonts instead of raster fonts, and
with a resolution of 600 DPI.
- Added options to export image file in PDF, DGN, and CD-Metafile
- Set up resolution of 24 pixels per milimeter for exported image
files in DXF, PDF, and DGN formats.
- Decreased font size in exported image files.
- Eliminated display of node marks and grid points in exported
- Increased the thickness of lines in exported images files.
- Increased maximum allowed number of member to 480. Before, the
maximum allowed number was 96.
Bug fix and corrections of versions prior to version 2.12
- Made modifications to handle especial case of shear force influence
line at the free end section of a cantiveler beam. This influence
line is just a single unit spike. In the previous version, Ftool
was defining a null influence line.
- Modified signs of diagram values to conform with signs of internal
- Modified computation of local maximum bending moment to be consistent
to adopted sign convention.
- Fixed unit conversion error for rotational spring when the
adopted unit was different than kNm/rad.
- Fixed problem in exporting images when file names contained
blank spaces. When there was a blank space in the full path file name
the file was not created.
- Fixed problem with selection in member split: the two resulting
members were kept selected if the original member was selected prior
to spliting. Now, only the new node after spliting remains selected.
- Changed display of opaque text background to white color in
exported image files. In previous versions, the current screen
background color (white, gray or black) was used.
New features of version 2.11 (August 2002)
- Improved definition of member cross-sections. Several types of cross-sections
were created, each one defined by its specific parameters. Two I-shape section
tables were incorporated.
- Created an option to change the member side for displaying bending moment diagram.
This diagram may now be displayed on the tension or on the compression side of the
- Created an option to change the member side for displaying influence line. Positive
influence line values may be displayed on the top or on the bottom side of a member,
according to the convention adopted for the corresponding internal force diagram.
- Created options to import global parameters (unit system, visualization parameters,
etc.) and attributes (material and cross-section property tables, load tables, etc.)
from another file created by FTOOL. Properties may be imported globally or each
table may be imported individually.
- Created an option to display result values transversally to the members.
- Created an option to display step values along the diagrams.
- Made available in the graphics interface scaling factor for displaying internal
forces diagrams. This scale is defined in terms of units of internal force per
unit of length. The internal force scale may be adjusted by specifying a value in
top tool bar.
- Fixed problem when adjusted model image on screen. Adjustment now takes into
account displayed diagrams to compute model image size.
- Fixed problem with long file names.
New features of version 2.10 (November 2001)
- Created influence line response mode.
- Created step size for querying member diagram response values.
- Changed member result message such that it lists result values
at each step along a member (if a step size is defined).
- Created internal force sign convention message dialog.
- Changed display of diagram result values such that values are
displayed with signs, with the exception of bending moment
values, which by default are displayed with no sign. Bending
moment signs may be displayed optionally.
- Changed display of reaction forces and moments, adding a dash
line in the center of the arrows.
- Fixed mistake in length conversion from inch to meter (used
New features of version 2.09 (January 2001)
- Created member displacement constraints. The user may specify members
with no axial deformation or infinitely rigid members.
- Created member end moments loading.
- Implemented computation of member end rotation at hinged ends.
- Supports with prescribed displacements are shown with each
constraint component displayed independently (simple supports for horizontal and
vertical prescribed displacement and a plate for prescribed rotation).
- Several modifications were made to improve the quality of the model image.
The main one is that, in the Windows version, the model is displayed in
double buffering, that is, the image is updated at once on the screen, with a
better perceptual result. The display of internal force diagrams was also
improved: in each member, the diagram is offset by eventual hinges at the
New features of version 2.08 (August 2000)
- Released Linux version.
- Created member temperature variation loading. The user specifies a
temperature variation at the top border of the cross section (border
at the positive local y axis side) and a temperature variation
at the bottom of the cross section (border at the negative local y
axis side). Necessary for this loading, it was created a new material
parameter, the thermal expansion coefficient, and two additional cross
section properties, the cross section depth and the gravity center height.
- Created dimension lines for distance annotation in the structure image.
- Created option to open a structure file using drag-and-drop in the
program screen. This option only works for the Windows version.
- Modified the program to allow creation of attributes (material parameters
and section properties) and loads prior to creating a structure. In
this way, the user may keep a file with the attributes and loads that
are mostly used, as well as units and number formatting, and use this
file as a starting point for a new structure.
- Fixed mistake in the sign of bending moments that was shown in the top
message box and in the lateral information area for members that had
right-to-left or top-to-bottom orientations. The sign was not consistent
with the convention that a positive bending moment causes tension in
the lower fiber of the the cross section (or right fiber for vertical
members). By mistake, the sign was defined based on the direction of
the local y axis of the member.
New features of version 2.07 (April 2000)
- Fixed mistake of version 2.06 that was not displaying the
correct values of internal force diagrams for units
different that [kN], for axial and shear forces, and [kNm], for
bending moments. The values were unintentionally been displayed
using the internal units of the program.
- Modified default number formatting for displacement values
such that now the default format is an exponential number with 3
- Fixed number formatting for nodal coordinates, visualization
window sizes, and grid steps when number formatting of length
values was modified by the user.
- Fixed number formatting for internal force diagrams values when
number formatting of force or moment values was modified by the
- Modified fence selection such that, when no object is selected,
selection is automatically geared to beam members.
New features of version 2.06 (February 2000)
- Created Units & Number Formatting item in the Options menu,
which launchs a dialog for units and number formatting configuration.
The user may specify the units of each parameter in Ftool, as
well as its number formatting. There are options to set default SI units
(International System), default US units (United States System), or all
units in kilo-Newtons and meters. The user
may overwrite the default unit of any parameter.
- Replaced Member Properties menu by Material Parameters menu and
Section Properties menu, which handles geometric parameters of
cross sections. Created default Concrete and Steel material parameters.
- Created spring supports (translation and rotation springs).
- Replaced vector font text display by raster font text display on the drawing
window. Exported images still use vector fonts, with the exception of postscript
- Created options to display load and reaction values in addition
to the load and reaction drawings.
- Created an option to display loads in conjunction to the response
diagrams and deformed configuration.
- Modified lateral info message box to use multi-line texts instead of just
passive label texts as in the previous versions. This allows the user
to copy the info message to the clipboard and paste it into a text editor.
The right mouse button may be used to copy the message to the clipboard.
- FTOOL (Two-dimensional Frame Analysis Tool) was initially developed through an integrated research project coordinated by Professor Marcelo Gattass from the Computer Department of PUC-Rio and leader of the Computer Graphics Technology Group (Tecgraf/PUC-Rio). Professor Gattass received support form CNPq (National Council for Scientific and Technologic Development). The responsiblility for the program is now with Professor Luiz Fernando Martha from the Department of Civil Engineering of the PUC-Rio. Former undergraduate students Eduardo Thadeu Leite Corseuil, Vinícius Samu de Figueiredo and Adriane Cavalieri Barbosa, from Department of Civil Engineering of PUC-Rio, contributed to the development of the program as research assistants from March of 1991 until December of 1992. The program was developed originally on a DOS platform and went through some initial improvements until April of 1995.
- Waldemar Celes Filho, professor of the Computer Science Department of PUC-Rio, worked on development of the HED (Half-Edge Data structure) function library for the internal data structure. The program’s numeric module of analysis received a contribution from the former PhD student of PUC-Rio Ivan Fábio Menezes, (currently professor of the Department of Mechanical Engineering of PUC-Rio).
- From 1997 to 1998, FTOOL was revised by Professor Luiz Fernando Martha, who used the interface system IUP and the graphics system CD, both developed by Tecgraf/PUC-Rio. This graphics interface allows the program to be executed on both Windows and Unix. In February of 1998, version 2.00 was launched. Successive versions of FTOOL were then introduced, each one with some improvements, until the lastest version 3.00 of August 2012.
- The first version of the program manual (for version 2.07) was created by Luis Fernando Kaefer, former MSc and PhD student of the Polytechnic School of the University of São Paulo (EPUSP), Department of Engineering of Structures and Foundations (PEF) and Laboratory of Computational Mechanics (LMC).
- The first version of the program manual in English (for version 2.11) was translated from Portuguese by Professor Robert H. Dodds, Jr. and Mr. Adam Carlyle from Department of Civil & Environmental Engineering, University of Illinois at Urbana-Champaign.
- The implementation of multiple types of transverse sections in the FTOOL was contributed by Christiana Niskier, former undergraduate and MSc student in Civil Engineering in PUC-Rio.
- The update of manual for version 2.11 was contributed by Pedro Cordeiro Marques, former undergraduate student in Civil Engineering in PUC-Rio.
- The development of internal force envelops due to load-trains was performed by the researcher of Tecgraf/PUC-Rio Gisele Cristina da Cunha Holtz, based on her MSc thesis "Traçado Automático de Envoltórias de Esforços em Estruturas Planas devido a Cargas Móveis utilizando um Algoritmo Evolucionário" (in English, "Envelopes of Internal Forces due to Load-Trains in Bridges using an Evolution Strategy"), Department of Civil Engineering, PUC-Rio, 2005. Gisele Holtz actively worked in version 2.12 of FTOOL.
- The consideration of members with shear deformation (Timoshenko beams), introduced in version 3.00 of FTOOL, use analytical solutions that were developed by Rodrigo Bird Burgos, a civil engineer graduated from PUC-Rio, with MSc and PhD degrees also from PUC-Rio, and currently an assistant professor in UERJ, State University of Rio de Janeiro, Brazil.
- Many improvements in graphics interface of version 3.00 were made by Antonio Scuri, who is responsible for the development of IUP user interface system.
- The conclusion of version 3.00 of FTOOL was only possible because the author took a sabbatical license during the first semester of 2012 in IST – Instituto Superior Técnico – of Lisbon. This is reason for the name “Lisboa” of this version. The author is very grateful to many IST professors, in particular to José Paulo Moitinho de Almeida, Carlos Tiago Fernandes, and Orlando Pereira, for the fruitful discussions related to FTOOL and structural analysis.
Related book and memorial
Last update: December 08, 2012 by
Luiz Fernando Martha