- Docente: Carolina Vittoria Beccari
- Credits: 6
- SSD: MAT/08
- Language: English
- Teaching Mode: Traditional lectures
- Campus: Bologna
-
Corso:
Second cycle degree programme (LM) in
Mathematics (cod. 6730)
Also valid for Second cycle degree programme (LM) in Mathematics (cod. 5827)
-
from Sep 15, 2025 to Dec 16, 2025
Learning outcomes
By the end of the course, a student will be familiar with the main techniques for constructing geometric models on a computer, particularly with numerical methods for curves and surfaces. A successful learner can apply the discussed approaches for approximating univariate and multivariate functions and datasets, implement them within a programming environment, and critically evaluate the results.
Course contents
Geometric Modeling is a branch of computational mathematics focused on the representation and construction of geometric models—particularly curves and surfaces—using computer-based methods. These virtual models form the foundation of many Computer-Aided Design (CAD) systems and are widely used in various application domains, including mechanical and industrial design, numerical simulation (e.g., solving partial differential equations on complex domains), rapid prototyping (such as 3D printing), and automated manufacturing processes involving computer numerical control (CNC) machines.
The aim of the course is to provide students with a solid mathematical and computational foundation for the principal geometric modeling techniques used in modern scientific and industrial contexts. The course introduces and analyzes the functional spaces commonly employed to describe geometric objects, with a strong focus on computational aspects and numerical methods for constructing curves and surfaces.
The teaching approach combines theoretical lectures with hands-on laboratory sessions. During the labs, students will apply the mathematical tools covered in class using specialized software. These sessions are designed to promote active learning and enhance students’ familiarity with modeling techniques, strengthening the connection between theory and practical application.
Main topics covered:
- Bernstein polynomials and Bézier curves
- Spline functions: B-spline basis, interpolation and approximation techniques, construction of parametric spline curves
- NURBS (Non-Uniform Rational B-Splines) curves and surfaces
- Tensor-product surfaces: modeling with spline and NURBS surfaces
- Multivariate spline functions: construction of surfaces over complex domains using triangulations
Readings/Bibliography
-
Prautzsch, H., Boehm, W., & Paluszny, M. (2002). Bézier and B-Spline Techniques. Springer.
-
Farin, G. (2001). Curves and Surfaces for CAGD: A Practical Guide (5th ed.). Morgan Kaufmann.
-
Lai, M.-J., & Schumaker, L. L. (2010). Spline Functions on Triangulations. Cambridge University Press.
Additional textbooks and recent scientific articles will be recommended throughout the course.
Teaching methods
The course includes theoretical lectures and practical sessions in the computer lab using MATLAB software.
Laboratory exercises will be partly demonstrated by the instructor and partly carried out by students, either individually or in small groups. Some of the assigned exercises will be completed at home, with the goal of fostering student autonomy and reinforcing independent problem-solving skills.
The outcomes of the lab work will be reviewed in class and discussed during the oral examination.
Assessment methods
The purpose of the exam is to assess the student’s understanding of the fundamental theory, proficiency with the computational tools introduced during the course, and the ability to critically analyze the results obtained.
Students may choose between two exam formats, to be agreed upon individually with the instructor:
-
Oral discussion covering the theoretical topics and laboratory exercises. The exercises must be submitted a few days prior to the exam.
-
Project-based exam (alternative to option 1) for attending students, consisting of the implementation of a MATLAB code along with a presentation of the related theoretical background. The code must be submitted a few days before the exam. The oral exam will include a presentation of the project and a critical discussion of the results achieved.
Teaching tools
Lecture slides, notes, MATLAB scripts and functions.
Office hours
See the website of Carolina Vittoria Beccari