Introduction to Python

Python is a powerful open-source programming language and one of the most popular worldwide. Its ecosystem is vast, with libraries and frameworks available for virtually every need, and is supported by a large user community. In this course, we will explore how Python can be leveraged to tackle complex challenges. With the Capstone Project, you will learn to manage big data by analyzing a large dataset of parametrized hull geometries. Completing this course will give you the knowledge and skills to understand and write Python code.

Welcome!

Welcome to the Introduction to Python course!

This course is designed for beginners and covers everything you need to start coding in Python.

We will begin with an introduction to Google Colab, an easy-to-use online coding environment that requires no installation. You will start by learning Python basics, including syntax, control flow, functions, and object-oriented programming. Then, you will gain hands-on experience with core data structures and control flow tools and dive into libraries like NumPy, Pandas, Scipy, and PyTorch.

The course culminates in a Capstone project where you will analyze a dataset of 10,000 hull geometries, applying your new skills to clean, manage, and extract insights from the data.

By the end of the course, you will have a solid foundation in Python and be ready to tackle more advanced projects.

We provide all course materials, including code and documentation, to support your learning journey.

From data analysis and simulation to automation and system integration, Python offers a comprehensive and efficient solution that outperforms other programming languages in versatility, ease of use, and speed of development.

Join us to start your Python programming adventure and unlock new possibilities!

Please login for access. Login

Capstone Project

The MIT Dataset provides a large amount of information to create a data-driven approach to hull design. It uses diffusion models (DDPMs), a type of generative artificial intelligence, to generate parametric ship hull designs.

The course’s Capstone Project aims to apply Python programming concepts to analyze the MIT Dataset, focusing on hull geometry coefficients and the Froude number. You will learn to manage big data and compute various quantities of interest, applying stability theory and fluid dynamics.

Introduction to Python course
Python is a powerful and versatile open-source programming language and one of the most popular worldwide. Its ecosystem is vast, with libraries and frameworks available for virtually every need.
SHIPGEN is a Diffusion Model for Parametric Ship Hull Generation created at MIT’s Design Computation and Digital Engineering Lab that we will use in the Course’s Capstone Project.

Why Python?

Python is a powerful, efficient, reliable, and versatile programming language that consistently ranks as one of the most popular programming languages in the world. It has gained widespread use in many fields, such as Machine Learning.

Easy to learn and reliable: Unlike other programming languages such as Java, C, or C++, Python syntax closely resembles natural languages, making it easier to learn and read. That means we can spend less time coding and more time-solving complex engineering problems.

Versatile application: Python’s versatility is unmatched. It is used not only in software development but also extensively in data analysis, simulation, and numerical computation, which are crucial, for example, in performance analysis, structural integrity assessment, and environmental studies.

Rich ecosystem and community support: The Python ecosystem is vast. Libraries and frameworks exist for virtually every need. Libraries like Pandas for data manipulation, PyTorch for machine learning, and OpenCV for image processing can significantly enhance the analysis and interpretation of complex data, from material stress tests to hydrodynamic simulations. You won’t need to develop tools for exploring data or simulation since most of them are already available. Furthermore, Python’s large and active community means you’ll find extensive resources and tons of people ready to help you overcome technical challenges and stay updated on the latest developments.

Interdisciplinary integration: projects often require collaboration from various disciplines, including mechanics, electronics, aerodynamics, and environmental science. Python’s ability to seamlessly integrate with other languages and technologies means you can efficiently work within interdisciplinary teams, using Python’s capabilities to, for example, analyze data, automate tasks, and develop systems that are at the heart of engineering advancement.

Open source advantage: Python is open source, meaning it is freely available and continually improved by a global community of developers. This not only reduces software costs but also ensures that Python is at the cutting edge of technology, security, and performance. This means access to the latest tools and innovations without the constraint of licensing fees and proprietary software limitations.

Object-Oriented Programming (OOP): Python’s object-oriented programming capability is one of its main features and provides several advantages over other programming languages, especially regarding code organization, reusability, and scalability. While many modern programming languages support OOP, Python’s implementation is notable for its clarity and simplicity, making it accessible to beginners while still being powerful enough for advanced programming tasks.

What will you learn?

Completing this course will give you the knowledge and skills to understand and write Python code. More specifically, you will:

Understand Python programming:

  • Introduction to Google Colab, including how to set it up and how to run Python code.
  • Understand why Python is widely used in various fields and explore real-world applications of Python in Naval Engineering

Understand Python Syntax and Data Structures:

  • Write and execute Python scripts.
  • Understand Python’s syntax rules and conventions.
  • Use lists, tuples, dictionaries, and sets effectively.
  • Understand the properties and use cases of each data structure.

Develop Control Flow Skills:

  • Implement conditional statements in Python.
  • Use loops to iterate over data.

Create and Use Functions:

  • Define and call functions to organize code.
  • Understand the scope, parameters, and return values.

Handle Files and Data:

  • Read from and write to files.

Understand Object-Oriented Programming:

  • Define and instantiate classes to create objects.
  • Understand class attributes and methods.

Create and Use Modules:

  • Import and use Python’s built-in and external modules.
  • Organize code into modules for better maintainability.
  • Learn about popular Python modules such as NumPy, Pandas, Matplotlib, SciPy, SymPy, and PyTorch.

Apply All the Concepts to an Extensive Dataset:

  • Work with extensive datasets.
  • Compute quantities of interest systematically from big data.
  • Analyze the data and draw conclusions.

Course Organization

The course is video-based and on-demand, allowing you to learn at your own pace, wherever and whenever you want.

It includes videos, quizzes, and downloadable documents, and provides access to the course’s virtual private classroom, where you can interact with the instructor and other students.

Upon completion of the course, you will receive a Course Certificate. To obtain the Course Certificate, you must complete all lessons, pass the quizzes, and have your Course Assignment approved.

Resources:

  • Video lessons.
  • English captions.
  • Written materials.
  • Quizzes.
  • Final Assignment.
  • Virtual Private Classroom.
  • Course Certificate.

– Classroom:

  • Once enrolled, you will have access to the virtual classroom, where you can interact with the course instructor and fellow students.

– Prerequisites:

  • No prior knowledge of Python is required to take this course.

  • A minimum Navalapp membership level of “Subscriber” (free membership) is required to enroll in this course.

RINA Endorsement

The Royal Institution of Naval Architects Endorsement

After a thorough evaluation, the Royal Institution of Naval Architects (RINA) has found that Navalapp’s course Introduction to Python meets the Institution’s requirements for Continuing Professional Development (CPD). Therefore, RINA has considered that the course warrants recognition and has issued a Certificate of Endorsement.

During the evaluation, RINA studied different aspects of the course, such as learning aims, content and structure, whether the information is up-to-date and factually correct, students’ evaluations of the course, the supporting information and materials, the instructor’s expertise, the method by which the students are evaluated, and Navalapp’s organization standards.

Course Content

The Course

Introduction
Important Concepts
Lesson Content
Basic Syntax
Basic Data Structure
Control Flow
Functions
Basic File Handling
Classes
Packages and Modules
Final Assignment - Capstone Project
Course Materials
Course Survey
Summary
Not Enrolled
Regular Price: EUR 70

PRO member: EUR 56
ADVANCED member: EUR 63
SUBSCRIBER member: EUR 70

Prices exclusive of tax

Course Includes