Matlab es solo un idioma. OOP es el concepto.
Intente explicar los conceptos utilizando una explicación menos orientada a ejemplos. Los ingenieros ciertamente entienden diferentes dominios y unidades (por ejemplo: agregar temperatura a la distancia sería extraño), por lo que deberían entender intuitivamente la encapsulación y el polimorfismo sin necesitar ejemplos concretos en Matlab. Deberías poder explicar la abstracción con bastante facilidad. La herencia y la composición serían más difíciles de explicar sin ejemplos, pero explique el concepto claramente y deberían entenderlo.
La especificidad genérica versus tipo debe motivarse a través de ejemplos de sus antecedentes matemáticos. La programación funcional, las funciones de paso y las lambdas no son OOP per se, y eso es más difícil de explicar sin un fondo matemático más abstracto que generalmente se presenta a los ingenieros (después de estudiar ingeniería, software y matemáticas, tengo una idea de sus diferentes especializaciones).
Es posible que no pueda proporcionar ejemplos usando Matlab directamente, pero ciertamente podría explicar la abstracción y la encapsulación usando ejemplos que incluyen estructuras. Incluso en idiomas en los que no puede encapsular sus funciones (métodos) con sus datos, aún puede explicar cómo ciertas funciones solo se definen para ciertos dominios.
Teniendo en cuenta que muchos desarrolladores valoran la composición sobre la herencia, podría explicar la herencia, la composición y los méritos relativos de los dos.
Podría motivar el polimorfismo de forma natural al revisar la diferencia entre enteros, racionales, reales y números complejos, y luego explicar cómo los operadores aritméticos "normales" son funciones (métodos), aunque el operador (ex '+') se ve igual, es una función diferente cuando se usa con diferentes dominios.
¡Buena suerte!