check_energy_conservation
Verify whether total mechanical energy is conserved or dissipated in a physics process. Helps validate simulation results and analyze energy transfer with tolerance-based checks.
Instructions
Verify conservation of energy in a physics process.
Checks whether total mechanical energy is conserved (or correctly dissipated).
Useful for validating simulation results and understanding energy transfer.
Args:
initial_kinetic_energy: Initial KE in Joules
final_kinetic_energy: Final KE in Joules
initial_potential_energy: Initial PE in Joules
final_potential_energy: Final PE in Joules
expected_energy_loss: Expected energy loss (from friction, etc.) in Joules
tolerance: Tolerance for conservation check (fraction, default 0.01 = 1%)
Returns:
Dict containing:
- initial_total_energy: Initial total energy in Joules
- final_total_energy: Final total energy in Joules
- energy_difference: Energy difference in Joules
- energy_difference_percent: % difference
- is_conserved: Whether energy is conserved within tolerance
- expected_loss: Expected energy loss in Joules
- actual_loss: Actual energy loss in Joules
Tips for LLMs:
- In isolated systems, total energy is conserved
- With friction/damping, expect energy loss
- Small numerical errors are normal in simulations
- Use to validate simulation accuracy
Example - Bouncing ball with energy loss:
result = await check_energy_conservation(
initial_kinetic_energy=0,
final_kinetic_energy=0,
initial_potential_energy=10, # J (at 1m height)
final_potential_energy=6.4, # J (bounced to 0.64m)
expected_energy_loss=3.6, # 36% loss (e=0.8)
tolerance=0.01
)
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"initial_kinetic_energy": "<initial_kinetic_energy>",
"final_kinetic_energy": "<final_kinetic_energy>",
"initial_potential_energy": "<initial_potential_energy>",
"final_potential_energy": "<final_potential_energy>"
},
"name": "check_energy_conservation"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| initial_kinetic_energy | Yes | ||
| final_kinetic_energy | Yes | ||
| initial_potential_energy | Yes | ||
| final_potential_energy | Yes | ||
| expected_energy_loss | No | ||
| tolerance | No |