Created by Roman Putanowicz@L-5
The aim of this presentation is to provide a short summary of the experience accumulated by the researchers at Institute of Computational Civli Engineering (L-5) while developing various software tools.
The main share of this presentation is related to development of FEMDK project being one of the tasks the project "Innovative resources and effective methods of safety improvement and durability of buildings and transport infrastructure in the sustainable development" financed by the European Union from the European Fund of Regional Development based on the Operational Program of the Innovative Economy.
The main motivation for FEMDK (Finite Element Development Toolkit) is to build and setup an software development environment targeted at applications for computational mechanics, mostly based on Finite Element Method.
Subsequent slides give a short overview on the experiences in specific areas of the development of numerical simulation software. The slides list various software libraries and applications we are familiar with.
Research projects with substantial software development share:
While developing tools for FEMDK we have established some patterns for building graphical user interfaces based on Qt library. The specific features we are able to handle are:
Subsequent slides show some screenshots for application with extensive GUIs. We start with the simplest one being de-facto a proof of concept and finish with application with modular, extensible GUI.
Being rather proof of concept and a prototype than fully fledged application QDSim allows to set up quickly a numerical model for rectangular domain for simulating elastic material. It can handle setup for dimensions, meshing, supports and loads.
Beafire is the computational tool for the analysing fire resistance of reinforced concrete beams both statically determined and hyperstatic. The numerical algorithm of the program is capable of modelling the redistribution effects due to changes in stiffness as the results of cracking and degradation of mechanical properties of concrete and reinforced steel caused by high temperature.
L5B Composite Beam Designer is an application intended as an aid in design and verification of selected types of composite beams. The specific thing is that design data (e.g. profile data) can be either automatically embedded in the application (via import from CSV format) or read from external configuration files.
GMSR was an attempt to build modular and extendible GUI for complex simulations. It contains custom tree based explorer for model data, Hoops 3D based widget for interactive model manipulation in 3D, VTK widget for data visualisation, Python based shell widget, as well as implementation of a modular data structure.
Most of programs we develop for research purposes are however controlled via command line or appropriate data files, often in customary data formats. Subsequent example shows how do we handle data based on JSON.
Morphbar is an application to analyse deformation and stress state starting from user prescribed body motion.
Artificial scrolling-like deformation.
Influence of NURBS degree on body shape.
{
"Actions" : {
"SaveCV" : {
"filename" : "ala_cage.vtk"
},
"SaveGeom" : 1,
"SaveFields" : {
"filename" : "ala.vtk",
"at" : {
"points" : {
"file" : "mypoints.json",
"coords" : {
"1" : [1,0,0],
"2" : [2,0,0]
}
},
"mesh" : {
"femType" : "QK",
"femDegree" : 1,
"generated" : {
"noised" : 0,
"nxnynz" : [16, 8, 8],
"LxLyLz" : [1, 0.5, 0.5],
"OxOyOz" : [0.5, 0.25, 0.25]
}
}
},
"fields" : ["Umag", "U"]
}
},
"Deformers" : {
"active" : ["def1"],
"def1" : {
"type" : "NURBSCageDeformer",
"initconf" : {
"from" : "bbox",
"bbox" : [0.0,0.0,0.0,1.0,0.5,0.5],
"orderVec" : [6,5,5],
"cvCountVec" : [6,5,5]
},
"deformconf" : {
"type" : "transformations",
"transformations" : [
{ "name" : "rotate",
"selection" : "section",
"sectionDir" : 0,
"sectionRange" : [2,3],
"axis" : [1, 0, 0],
"angle" : 45
}
]
}
}
}
}