Skip to main content

Librería con funciones para usar en cursos de física

Project description

fisica_dutra

Librería desarrollada para el uso en cursos de física, orientada a la enseñanza de la cinemática mediante herramientas computacionales.

Incluye simulaciones interactivas y actividades que permiten explorar conceptos físicos de forma visual y dinámica.


Descripción

La librería fisica_dutra permite trabajar con movimientos rectilíneos a partir de listas de tiempo, posición, velocidad y aceleración.

Incluye herramientas para:

  • visualizar movimientos mediante simulaciones
  • analizar gráficas de x(t), v(t) y a(t)
  • interactuar con actividades y desafíos de cinemática

Instalación

pip install fisica_dutra

Funciones disponibles

Simulación de movimientos

Las siguientes funciones permiten visualizar el movimiento a partir de listas de datos:

  • simular_pos(t, x)
  • simular_vel_y_pos(t, v, x)
  • simular_a_vel_y_pos(t, a, v, x)

Ejemplo de uso

Un primer ejemplo sencillo permite visualizar un movimiento a partir de listas ya construidas:

from fisica_dutra import simular_pos

t = [0, 1, 2, 3]
x = [0, 2, 4, 6]

simular_pos(t, x)

Este enfoque es útil para comenzar, pero tiene una limitación importante: al tener pocos valores, la simulación se ve “cortada”. El objeto solo aparece en los instantes de tiempo definidos, por lo que el movimiento se percibe más como una sucesión de posiciones (como fotos) que como un movimiento continuo.

En realidad, esto ocurre en cualquier simulación basada en listas discretas. La diferencia es que, si se utilizan más puntos, el movimiento se percibe como más fluido.

Una alternativa más completa consiste en generar las listas paso a paso a partir de condiciones iniciales y relaciones físicas:

from fisica_dutra import simular_a_vel_y_pos

t_i = 0
t_f = 5
dt = 0.2
x_i = 0
v_i = 0
a_i = 2

t = [t_i]
v = [v_i]
x = [x_i]
a = [a_i]

while t[-1] < t_f:
    t.append(t[-1] + dt)
    a.append(a[-1])
    v.append(v[-1] + a[-1]*dt)
    x.append(x[-1] + v[-2]*dt)

simular_a_vel_y_pos(t, a, v, x)

Una vez construidas las listas:

  • simular_pos(t, x) muestra únicamente la evolución de la posición.
  • simular_vel_y_pos(t, v, x) muestra la posición y la velocidad.
  • simular_a_vel_y_pos(t, a, v, x) muestra la posición, la velocidad y la aceleración.

Actividades y juegos

desafio_MRU(t, x, grupo)

Actividad interactiva en la que el objetivo es reconstruir un movimiento a partir de su gráfica x(t).

Se proporciona una gráfica de referencia y el desafío consiste en construir listas de tiempo y posición que reproduzcan ese movimiento.


Cómo jugar

  1. Crear una lista de tiempos con paso dt = 0.1
  2. Crear la lista de posiciones correspondiente
  3. Ejecutar:
from fisica_dutra import desafio_MRU

desafio_MRU(t, x, grupo)

donde grupo es un número entero correspondiente al número de grupo.


Qué muestra el programa

  • Azul → movimiento objetivo
  • Naranja → tu propuesta

En la simulación:

  • Color → tu movimiento
  • Blanco y negro → movimiento objetivo

Condiciones para ganar

  • La posición inicial debe diferir en menos de 1m
  • La velocidad debe diferir en menos de 1m/s

Sistema de puntaje

  • Se asigna un puntaje según qué tan cerca estés del movimiento objetivo
  • Podés intentar todas las veces que quieras
  • El objetivo es maximizar tu puntaje

Gráficas por grupo

Cada grupo recibe una gráfica distinta:

Grupo 1

Grupo 1

Grupo 2

Grupo 2

Grupo 3

Grupo 3

Grupo 4

Grupo 4

Grupo 5

Grupo 5

Grupo 6

Grupo 6

Grupo 7

Grupo 7

Grupo 8

Grupo 8

Grupo 9

Grupo 9


juego_cinematica()

Juego interactivo para explorar conceptos de cinemática.

from fisica_dutra import juego_cinematica

juego_cinematica()

En el juego, debés mover a una persona utilizando el mouse para intentar replicar una gráfica de posición en función del tiempo x(t) que se muestra en pantalla.

El objetivo es que tu movimiento coincida lo mejor posible con la gráfica dada.

El juego cuenta con tres niveles de dificultad:

Nivel fácil: movimientos con velocidad constante Nivel medio: movimientos con aceleración constante Nivel difícil: movimientos que combinan tramos de distintos movimientos

Objetivo

El objetivo de esta librería es facilitar la integración entre la física y la programación en contextos educativos, promoviendo la exploración de modelos de movimiento mediante simulaciones y herramientas computacionales.

La librería propone utilizar el código como una forma de modelización, donde las leyes físicas se traducen en reglas simples que permiten construir, visualizar y analizar el comportamiento de los sistemas.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fisica_dutra-1.0.3.tar.gz (2.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fisica_dutra-1.0.3-py3-none-any.whl (2.5 MB view details)

Uploaded Python 3

File details

Details for the file fisica_dutra-1.0.3.tar.gz.

File metadata

  • Download URL: fisica_dutra-1.0.3.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for fisica_dutra-1.0.3.tar.gz
Algorithm Hash digest
SHA256 d29059b71c4e697c6e834b7df84a3063a5807849a72bf267a58b656ec07df3c4
MD5 93d564f5849cf7e04165a4ee4b708a7e
BLAKE2b-256 8e2bb3ad8f5647a599e3ec6b4439f60995198c61065834d1f1d238ba3aeaff59

See more details on using hashes here.

File details

Details for the file fisica_dutra-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: fisica_dutra-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for fisica_dutra-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 318379d9c65a8740cfb9c52d4f3346b6934278815222bcbc69804ad118025e7a
MD5 52142dbea9c7fc705d8e13d8c9b93270
BLAKE2b-256 38fbbf1b161621e3616f7e3c960eaab0a1044dfef9c9ad973610ebd57d2e28f3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page