The technological structure of the current society is based on information
technology. The preparation of an engineer cannot be separated from
some basic knowledge and programming skills. Therefore the content of
the course is specific to a Computer Science for engineering and in
particular for the Engineering of Buildings. Accordingly, the course takes
particular care of the fundamental bases of Computer Science, but, above
all, of programming through some important languages commonly used
in technical and scientific environments, namely C ++, Fortran, Matlab.
Both the programming structures common to these types of languages
and their specificities are given and discussed. The selected educational
approaches are typical of those followed in areas such as "problem
solving" and "training on job". Therefore, the path for the acquisition of
the fundamental aspects of programming is based on the progressive
development, during the course, of simple softwares related to some
important aspects of physical-mathematical-numerical engineering
modeling. In this regard, the following topics were selected: Matrix
inversion; Eigenvalue search; Finite element and volume methods (F.E.M.
and F.V.M.) with aspects of 1D numerical calculation and brief outline of
2D and 3D problems; Solutions of boundary and initial problems,
expressed by means of the relative differential equations related to:
Filtration and Consolidation, Diffusion and Advective Heat Exchange,
Wave Propagation, Vibrations; Interpolations; Fourier Analysis. A first part
of the course, in conjunction with the informatic aspects, is devoted to
obtain and to present the numerical models selected for the construction
of the related softwares.
A brief mention is also given to the parallel programming based on
Graphical Processing Units (G.P.U.). Short seminars (informative only) are
also planned on Python and Java languages.