Analysis of Isolated Footing using Elastic Foundation (Springs) in Abaqus

  1.  Choose Units, i.e., MKS or FPS. For this problem, we will use N, m and seconds as units.
  2. Make Rectangular footing in Sketch in Parts. Give it thickness as we want to model it as Solid Plate. Take footing dimension as 2x2x0.5
  3. Define Material as Concrete density (23.60) (note: correct this value when you practice it to 23.60e3), Elasticity (20e6) and Poisson’s ratio (0.2).
  4. We need to partition the plate so that we get point for application of load in centre. Tools>Partition in Part Module.
  5. Assign instance in assembly and then define interaction of Elastic Foundation in interaction module. Give value of Spring as 1. Note that the purpose of taking simplified value of load, dimension and spring is to get easy to interpret value of deflection to verify calculations.
  6. Mesh the footing from mesh module.
  7. Define load application step and apply concentrated load of 4 in negative 3-direction.
  8. Create Job and run the analysis.
  9. Open Result and check maximum deflection. As applied pressure is 4/4 = 1 and resisting stiffness per area is also 1 so from F = K*x, the resulting deflection will be 1 units. Again note that such values are pre-decided to have an easy cross-check on calculations.
  10. Check plots and deflection contour. And save the database cae file.

CAE file of abaqus can be downloaded from: CAE file

RampCalc0.1 – Parametric input for ramp in FE.

This program calculate data of beam, col and slab for ramp. It creates CSV file that can be used in sap2k or any FE package. It requires gnuoctave/matlab to work. You can download it from here:

Scripts Info:

  1. spiral.m = calculate and plot ramp in octave/matlab
  2. beams.m  = calculate data of beam for ramp to be used in FE
  3. cols.m    = calculate data of columns for ramp to be used in FE
  4. slabs.m   = calculate data of triangular slab for ramp to be used in FE

Background Theory:

Circle plot requires x = r*sin(t) and y = r*cos(t) where t increments from 0 to any given radians. If we increment z from 0 to given height h with some increment, and plot with x and y of a circle,  we will get a 3D spiral curve. Two such spiral curve can be used to calculate data point for ramp. Below is the sample code. You can run this by copy and paste directly in gnu octave or matlab or  create script out of it.

Ramp plot in octave
Ramp plot in octave

By using, beams, cols and slabs script function, csv data will be created that can be formatted as per any finite element code. Here I formatted it for sap2K.

Ramp view in sap2k
Ramp view in sap2k

A spreadsheet with sample sap2k format is attached with this code. Below is video tutorial explaining usage of this code:


epc – enggprog compute

enggprog compute – epc is GPL web based CalculiX CrunchiX – ccx solver for solving multiphysics problems using Finite Element analysis. It is written in PHP.

How it works:

Upload ccx input file and get tar output. You can find online instance at:


  1. Dedicated debian server with CalculiX CrunchiX installed.
  2.  Apache2
  3.  PHP
  4. mod_expires, mod_headers activated.


You can download the tar files of epc package from here.


  1. Extract the package files of epc in web root.
  2. Change site name in core/config.php.
  3. Open index.php in web browser.


  1. is in alpha stage running on Pentium 4 with 1MBPS home based connection. It may not handle heavy traffic.
    Or sometimes you may face downtime on
  2. Apache security features not implemented yet. Number of active users at given time is not limited yet.

Future Development:

  1. Implementing apache security features.
  2. Limiting simultaneous active session.
  3. Adding feature to excute fbd+inp file.


  1. CalculiX Portal.
  2. CalculiX Forum.
  3. CalculiX Binary for Debian 32bit.
  4. CalculiX Binary for Debian 64bit.
  5. CalculiX Buildbot for Debian 32bit.
  6. CalculiX Buildbot for Debian 64bit.

CCX on Android Devices

Today smart phones have revolutionized Engineering Computations. Computer Aided Engineering (CAE) is now more easy and accessible with help of android tablets and phones.

CalculiX CrunchiX Solver – ccx is one of the most powerful Multiphysics GNU Finite Element Solver. This post is about how to compile and run gnu ccx on android. The code tested on HTC Incredible S and Android version 2.3.3.

If you are familiar with ccx or you can execute abaqus inp files using ccx, then, this script is helpful to you. Following steps show how to compile and run ccx on android.

1. Install Prerequisite Apps in Android:

a. Required android apps:

  1. GNURoot Wheezy by Corbin Champion
  2. GNURoot by Corbin Champion
  3. Free disk space on sdcard (better to have more than 6GB) and internal memory (better to have more than 500MB).

b. Required packages on Rootfs of GNURoot (Wheezy arm os):

  1. make
  2. gfortran
  3. gcc
  4. wget
  5. sed
  6. bzip2

2. Compiling ccx:

  1. Open GNUROOT
  2. Launch rootfs as fake root
  3. Download the script by following command:

    Or you can use tar files of cxbuild4mob. Untar and use it. Do not forget to go through readme file inside tar folder. Link of tar file is:
  4. Make script executable and then run it. Estimate downloading and compilation time for ccx is about 3 hours.

3. How to use ccx on Android:

  1. Open GNURoot

    Fig. 1: GNURoot
  2. Check Launch as Fake Root option then press Launch Rootfs button.

    Fig 2: Rootfs with Fake Root option checked
  3. Change current directory to folder where inp file exists. Verify by ls command and then run it under ccx.

    inp file
    Fig 3: Verify inp file.
  4. Check for errors in ccx log.

    Output log
    Fig. 4: Output Log of ccx.
  5. Verify output files.
    Ouput files of ccx
    Fig. 5: Output files of ccx


4. References:

  1. CalculiX CrunchiX
  2. GNURoot

Highlighting Syntax in gedit for CalculiX CrunchiX inp file for Enhanced Readability

CalculiX is a free software nonlinear three-dimensional finite element program for structural applications. Following steps results in syntax highlight of inp file in gedit:

  1. Add .xml in ~/.local/share/mime/packages named ccx.xml with following content:

  2. Update mime-database as:

  3. Add ccx.lang file in /usr/share/gtksourceview-3.0/language-specs or in path resulting from following command:

    The content of ccx.lang is:

  4. Open inp file and select gedit program to open.
  5. If you dont like or face problem then revert back the inp files to plain text as:

Syntax Highlight Files can be downloaded from below link:
Download Syntax Highlight Files.

before syntax highlight
Fig.1: Before Syntax Highlight of CCX input file.
after syntax highlight
Fig.2: After Syntax Highlight of CCX input file.



  1. Gedit New Language File
  2. Language Definition v2.0 Tutorial
  4. CalculiX CrunchiX

Analysis of GFRC in Ansys APDL

Following is link contain APDL code for GFRC. It will be modified for better post processing result and topology optimization.

Download Ansys APDL file for Analysis of GFRC

The preview of above inp file is show below.

This APDL code is available for mentoring. Comment for your suggestions and improvements.

Analysis of GFRC in Ansys APDL

Classificaiton of Load with respect to Time


A static load is time independent. It’s value is constant w.r.t time.


A dynamic load is time dependent and for which inertial effects cannot be ignored.


A quasi-static/pseudo-static load is time dependent but is “slow” enough such that inertial effects can be ignored. Note that a load quasi-static for a given structure (made of some material) may not be quasi-static for another structure (made of a different material).


In pseudo-dynamic loading, inertia and damping properties are simulated while stiffness properties are acquired from the structure. It is displacement based load given to structure in pseudodynamic (PSD) test. The pseudodynamic (PSD) test method is a displacement-based experimental technique that is used to simulate the seismic response of structures. PSD utilizes feedback signals from a test structure in a numerical integration algorithm to sequentially solve the equations of motion to determine command displacements. The command displacements are imposed on a test structure using hydraulic actuators.


  2. ASCE
  3. PSD



Strong and Weak Form Solution – FEA

Partial Differential Equations – PDE is called “strong form” because the relationship MUST satisfy at every mathematical point in the domain.

A “weak form” means that the relationship (in integral form) is only satisfied in overall sense. In another word, “it is only satisfied in an integral (sum) sense, it is not a requirement that every point in the domain MUST obey”

The strong form of a differential equation is just that: the (partial) differential equation itself. Evaluating the PDE requires being able to get all the associated derivatives. It is satisfied pointwise at every point in a body, and is usually stated as D[u] = 0, where D is some partial differential operator. In this case, I am using u as the displacement. It may be more appropriate to look at, say, Cauchy stress (s) instead of displacement. Then the strong form might be something like D[s,u] = div[s] – ru,tt= 0.

The weak form is obtained by multiplying the PDE by an arbitrary weighting function of (in most cases) the spatial variables, then integrating the result over the domain. One then requires that the result is zero for all choices of such functions. An integration by parts is performed, leading to differentiability requirements on the weighting function, but relaxing, or “weakening” the requirements on the field described by the PDE. Once we start setting requirements on these functions, we “weaken” the form even more, but often provide a basis for expressing the approximate solution.


Q1. Why do we multiply the PDE by the weighting function?

Q2. How do we choose the weighting function?


The “why” is to reduce differentiability requirements on our approximate solution.
The “how” is whatever works. If you know of a particular set of functions that work well in your geometry (say Bessel functions for axisymmetric problems), you can use these. We often use arbitrary combinations of nodal basis functions (compact support, C1, finite domains). If we use the same basis for our weighting functions as we use to represent our primary variable field(s), e.g. displacement, we are using a Galerkin method.

By Matt Lewis
Los Alamos, New Mexico

This excerpt is taken from IMECHANICA Forum.


  1. Weak Derivative – Wikipedia
  2. Weak Formulation – Wikipedia
  3. Weak Solution – Wikipedia


Lectures on Introduction to Finite Element Analysis

Following are course content for Introduction to Finite Element Analysis –  FEA.

Course Intructor: Prof. Dr. Shahzad Rahman

Introduction to FEA

Very Informative lectures on FEA are also available on Youtube.


Course Outline

Lecture 1: Overview of Finite Element Method – FEM, Historical Background and its Application

Lecture 2: Method of Weighted Residual, Least Square, Collocation, and Galerkin

Lecture 3: General derivation of Finite Element Equilibrium Equations

Lecture 4: Development of Stiffness Matrix for a Beam Element

Lecture 5: Some rules governing relationship between Global and Local Coordinates

Lecture 6: Comments on Numerical Integration

Lecture 7: Error and Convergence in FEM


Assignment 1: Bar Element Problem

Assignment 2: Beam Problem

Assignment 3: Thick walled cylinder Problem

Solution of Assignments

Note: Solution of Assignment 1 is in Lecture 2. There is excellent solution of axial bar problem using FE and comparing with Exact Solution plot along with matlab code in here.

Solution of Assignment 2

Solution of Assignment 3


Midterm Exam Paper

Final Term Paper