Skip to content

Repository files navigation

Work Done by Force Physics Lab | Vector Decomposition & Variable Integrals

License: MIT TypeScript React Vite Author: Shamsuddin Piash BUET ME

Interactive Computational Physics Simulator & Educational Workbench
Developed by Shamsuddin Piash | Department of Mechanical Engineering, Bangladesh University of Engineering and Technology (BUET).


🔬 Overview & Conceptual Motivation

Interactive physics workbench for force-displacement vector decomposition W = F·s·cosθ, rotational torque work, lawn roller push vs pull, and variable force integrals.

Designed from first-principles physics and numerical mechanics, this simulation bridges textbook analytical theory and real-time computation. It enables students, researchers, and competitive engineering candidates to visualize dynamic force interactions, observe parametric trends, and verify conservation laws interactively.


📐 Mathematical Formulation & Physics Derivations

Governing Dynamic Equations

  1. Constant Force Work: $$W = \vec{F} \cdot \vec{s} = F \cdot s \cdot \cos\theta$$

    • $\theta = 0^\circ \implies W = +F s$ (Maximum positive work)
    • $\theta = 90^\circ \implies W = 0$ (Zero work / centripetal force)
    • $\theta = 180^\circ \implies W = -F s$ (Opposing / frictional work)
  2. Lawn Roller Push vs. Pull Mechanics:

    • Pulling: Normal force $N_{pull} = m g - F \sin\theta \implies f_{friction} = \mu(m g - F \sin\theta)$ (Lighter)
    • Pushing: Normal force $N_{push} = m g + F \sin\theta \implies f_{friction} = \mu(m g + F \sin\theta)$ (Heavier)
  3. Variable Force Numerical Integration: $$W = \int_{x_1}^{x_2} F(x),dx$$ Evaluated via Simpson's $1/3$ numerical quadrature for nonlinear spring $F(x) = k x + \alpha x^3$.


✨ Key Features & Interactive Workbench

  • Interactive Vector Angle Dial: Rotate force angle $ heta \in [0^\circ, 360^\circ]$ to observe cosine work scaling.
  • Push vs Pull Real-Time Demonstrator: Visualizes normal force variations and frictional resistance on a lawn roller.
  • Force-Displacement Integral Graph ($F$-$x$): Shaded area under the curve representing accumulated mechanical work.
  • Rotational Torque Workbench: Calculates $W = au heta$ for torque applied over angular displacement.

🔒 Confidentiality, Security & Academic Integrity

This repository adheres strictly to professional security standards, privacy guidelines, and academic integrity policies:

  • Proprietary & Institutional Protection: Underlying academic curricula, institutional questions, and confidential research data are sanitized and protected under institutional agreements.
  • Environment & Secrets Hygiene: No private keys, passwords, or personal credentials are hardcoded. API tokens (e.g., Gemini AI or cloud compute) must be supplied via local .env files or secure CI/CD secrets.
  • Vulnerability Reporting: Please refer to SECURITY.md for instructions on confidential disclosure.

🛠️ Project Structure & Architecture

.
├── src/
│   ├── components/       # UI panels, canvas renderer, sliders & controls
│   ├── utils/            # Physics solvers, RK4 ODE integration, vector math
│   ├── types.ts          # Strongly typed simulation interfaces
│   ├── App.tsx           # Primary application workbench
│   └── main.tsx          # Application root
├── public/               # Static assets & icons
├── metadata.json         # Simulator metadata & capabilities
├── package.json          # Dependencies & build scripts
├── tsconfig.json         # TypeScript compiler configuration
├── vite.config.ts        # Vite bundle & dev server configuration
├── SECURITY.md           # Confidentiality & vulnerability disclosure policy
└── LICENSE               # MIT License

🚀 Quickstart & Local Setup

Prerequisites

  • Node.js: v18.0.0 or higher
  • npm or bun / pnpm

Installation

# 1. Clone the repository
git clone https://github.com/piashoverflow/Workdone.git
cd Workdone

# 2. Install dependencies
npm install

# 3. Configure environment variables (if applicable)
cp .env.example .env

# 4. Launch the local development server
npm run dev

Visit http://localhost:3000 in your browser to interact with the simulation.

Production Build

npm run build
npm run preview

👤 Author & Academic Affiliation

Shamsuddin Piash
B.Sc. in Mechanical Engineering (Graduated March 2025)
Bangladesh University of Engineering and Technology (BUET)
Dhaka, Bangladesh


📜 License

This project is licensed under the MIT License — see the LICENSE file for complete details.

About

Interactive physics workbench for force-displacement vector decomposition W = F·s·cosθ, rotational torque work, lawn roller push vs pull, and variable force integrals.

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages