# Scientific Paper Playground

> Build an automated researcher agent that reads static PDF papers, extracts mathematical models, and generates interactive Python simulations to verify the claims.

*Prompt · December 31, 2025*

**Goal:** Build an automated researcher agent that reads static PDF papers, extracts mathematical models, and generates interactive Python simulations to verify the claims.

**Prompt:**

> "Create a **Streamlit** application aimed at the academic and research community.
> ****The Use Case**:Researchers spend hours deciphering static equations in PDFs. This tool instantly converts those equations into an interactive playground, allowing for 'What-If' analysis.
> ****1. The Ingestion Pipeline:**
>
> - Use `pypdf` or `unstructured` to extract text and LaTeX formulas from uploaded PDFs.
> - **CRITICAL:** The prompt must explicitly ask Gemini 3 to *correct* any OCR errors in the formulas by inferring the mathematical context.
> ****2. The 'Model Extraction' Agent (Gemini 3):**
>
> - Task: Identify the core independent variables (inputs), dependent variables (outputs), and constants.
> - Task: Translate the math into a clean, vectorized Python function using `numpy`.
> - *Constraint:* The generated code must be self-contained and error-handled (checking for division by zero, etc.).
> ****3. The UI Generator:**
>
> - Dynamically generate a Streamlit script (`simulation_app.py`).
> - For each input variable, map it to the appropriate UI widget:
>   - Continuous range -&gt; `st.slider`
>   - Boolean switch -&gt; `st.checkbox`
>   - Categorical choice -&gt; `st.selectbox`
> - Graphing: Use `plotly.express` for interactive charts that update in real-time as sliders move.
> ****4. The 'Peer Review' Sidebar:**
>
> - In the generated app, include a sidebar where Gemini provides a critique:
>   - 'Assumption Check: The simulation assumes linear friction, but the paper suggests quadratic drag at high velocities.'
> ****Deliverables:**
>
> - `main.py`: The orchestrator app that takes the PDF and generates the sub-app.
> - `extractor.py`: The prompt logic for math extraction.
> - `template.py`: The Jinja2 template used to construct the final simulation file."

[Open on the site →](https://www.agenticamit.com/prompt/scientific-paper-playground)