solarwindpy 0.0.1.dev0__py3-none-any.whl → 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of solarwindpy might be problematic. Click here for more details.
- plans/.velocity/metrics.json +96 -0
- plans/0-overview-template.md +268 -0
- plans/N-phase-template.md +106 -0
- plans/PLAN_AUDIT_SUMMARY.md +173 -0
- plans/TEMPLATE-USAGE-GUIDE.md +198 -0
- plans/__init__.py +1 -0
- plans/abandoned/compaction-agent-system/0-Overview.md +123 -0
- plans/abandoned/compaction-agent-system/agents-index-update-plan.md +109 -0
- plans/abandoned/compaction-agent-system/compacted_state.md +85 -0
- plans/abandoned/compaction-agent-system/implementation-plan.md +107 -0
- plans/abandoned/compaction-agent-system/system-validation-report.md +159 -0
- plans/abandoned/compaction-agent-system/usage-guide.md +210 -0
- plans/abandoned/hook-system-enhancement/0-Overview.md +214 -0
- plans/abandoned/hook-system-enhancement/1-Phase1-Core-Infrastructure.md +313 -0
- plans/abandoned/hook-system-enhancement/2-Phase2-Intelligent-Testing.md +385 -0
- plans/abandoned/hook-system-enhancement/3-Phase3-Physics-Validation.md +444 -0
- plans/abandoned/hook-system-enhancement/4-Phase4-Performance-Monitoring.md +458 -0
- plans/abandoned/hook-system-enhancement/5-Phase5-Developer-Experience.md +532 -0
- plans/abandoned/hook-system-enhancement/6-Implementation-Timeline.md +274 -0
- plans/abandoned/hook-system-enhancement/7-Risk-Management.md +376 -0
- plans/abandoned/hook-system-enhancement/8-Testing-Strategy.md +579 -0
- plans/abandoned/readthedocs-automation/0-Overview.md +247 -0
- plans/abandoned/readthedocs-automation/1-Emergency-Documentation-Fixes.md +270 -0
- plans/abandoned/readthedocs-automation/2-Template-System-Enhancement.md +811 -0
- plans/abandoned/readthedocs-automation/3-Quality-Audit-ReadTheDocs-Integration.md +844 -0
- plans/abandoned/readthedocs-automation/4-Plan-Consolidation-Cleanup.md +632 -0
- plans/abandoned/readthedocs-automation/9-Closeout.md +207 -0
- plans/abandoned/readthedocs-automation/ABANDONMENT_REASON.md +72 -0
- plans/cicd-architecture-redesign/0-Overview.md +193 -0
- plans/cicd-architecture-redesign/1-Workflow-Creation.md +103 -0
- plans/cicd-architecture-redesign/2-Version-Detection.md +123 -0
- plans/cicd-architecture-redesign/3-Deployment-Gates.md +169 -0
- plans/cicd-architecture-redesign/4-RC-Testing.md +194 -0
- plans/cicd-architecture-redesign/5-TestPyPI-Validation.md +264 -0
- plans/cicd-architecture-redesign/6-Production-Release.md +263 -0
- plans/cicd-architecture-redesign/7-Cleanup.md +243 -0
- plans/cicd-architecture-redesign/8-Documentation.md +285 -0
- plans/cicd-architecture-redesign/Closeout.md +225 -0
- plans/closeout-template.md +259 -0
- plans/completed/circular-import-audit/0-Overview.md +152 -0
- plans/completed/circular-import-audit/1-Static-Dependency-Analysis.md +62 -0
- plans/completed/circular-import-audit/2-Dynamic-Import-Testing.md +56 -0
- plans/completed/circular-import-audit/3-Performance-Impact-Assessment.md +56 -0
- plans/completed/circular-import-audit/4-Issue-Remediation.md +78 -0
- plans/completed/circular-import-audit/5-Preventive-Infrastructure.md +89 -0
- plans/completed/claude-settings-ecosystem-alignment/0-Overview.md +162 -0
- plans/completed/claude-settings-ecosystem-alignment/1-Security-Foundation.md +148 -0
- plans/completed/claude-settings-ecosystem-alignment/2-Hook-Integration.md +158 -0
- plans/completed/claude-settings-ecosystem-alignment/3-Agent-System-Integration.md +177 -0
- plans/completed/claude-settings-ecosystem-alignment/4-Enhanced-Workflow-Automation.md +159 -0
- plans/completed/claude-settings-ecosystem-alignment/5-Validation-Monitoring.md +181 -0
- plans/completed/claude-settings-ecosystem-alignment/compacted_session_state.md +290 -0
- plans/completed/combined_plan_with_checklist_documentation/1-Overview-and-Goals.md +51 -0
- plans/completed/combined_plan_with_checklist_documentation/2-Toolchain-and-Hosting.md +69 -0
- plans/completed/combined_plan_with_checklist_documentation/3-Repository-Structure.md +61 -0
- plans/completed/combined_plan_with_checklist_documentation/4-Configuration-and-Standards.md +70 -0
- plans/completed/combined_plan_with_checklist_documentation/5-Documentation-Content.md +62 -0
- plans/completed/combined_plan_with_checklist_documentation/6-CI-CD-and-Validation.md +58 -0
- plans/completed/combined_plan_with_checklist_documentation/7-Maintenance.md +55 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/0-Overview.md +135 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/1-Common-fixtures.md +59 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/10-power_laws.md +56 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/2-core.py-FitFunction.md +118 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/3-gaussians.py-Gaussian-GaussianNormalized-GaussianLn.md +69 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/4-trend_fits.py-TrendFit.md +99 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/5-plots.py-FFPlot.md +98 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/6-tex_info.py-TeXinfo.md +79 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/7-Justification.md +49 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/8-exponentials.md +64 -0
- plans/completed/combined_test_plan_with_checklist_fitfunctions/9-lines.md +58 -0
- plans/completed/combined_test_plan_with_checklist_plotting/0-Overview.md +142 -0
- plans/completed/combined_test_plan_with_checklist_plotting/1-base.py.md +90 -0
- plans/completed/combined_test_plan_with_checklist_plotting/10-labels-special.py.md +102 -0
- plans/completed/combined_test_plan_with_checklist_plotting/11-labels-chemistry.py.md +212 -0
- plans/completed/combined_test_plan_with_checklist_plotting/12-labels-composition.py.md +242 -0
- plans/completed/combined_test_plan_with_checklist_plotting/13-labels-datetime.py.md +247 -0
- plans/completed/combined_test_plan_with_checklist_plotting/14-labels-elemental_abundance.py.md +274 -0
- plans/completed/combined_test_plan_with_checklist_plotting/15-visual-validation.md +256 -0
- plans/completed/combined_test_plan_with_checklist_plotting/16-integration-testing.md +266 -0
- plans/completed/combined_test_plan_with_checklist_plotting/17-performance-benchmarks.md +267 -0
- plans/completed/combined_test_plan_with_checklist_plotting/18-Fixtures-and-Utilities.md +86 -0
- plans/completed/combined_test_plan_with_checklist_plotting/2-agg_plot.py.md +90 -0
- plans/completed/combined_test_plan_with_checklist_plotting/3-histograms.py.md +201 -0
- plans/completed/combined_test_plan_with_checklist_plotting/4-scatter.py.md +167 -0
- plans/completed/combined_test_plan_with_checklist_plotting/5-spiral.py.md +216 -0
- plans/completed/combined_test_plan_with_checklist_plotting/6-orbits.py.md +108 -0
- plans/completed/combined_test_plan_with_checklist_plotting/7-tools.py.md +86 -0
- plans/completed/combined_test_plan_with_checklist_plotting/8-select_data_from_figure.py.md +97 -0
- plans/completed/combined_test_plan_with_checklist_plotting/9-labels-base.py.md +88 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/.gitkeep +0 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/0-Overview.md +170 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/1-Package-Entry-Point-__init__.py.md +121 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/2-Core-Base-Classes-base.py.md +142 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/3-Plotting-Helpers-plots.py.md +123 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/4-LISIRD-Sub-package.md +119 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/5-Extrema-Calculator.md +103 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/6-Sunspot-Number-Sub-package.md +163 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/7-Sunspot-Number-Init.py.md +217 -0
- plans/completed/combined_test_plan_with_checklist_solar_activity/compacted_state.md +52 -0
- plans/completed/compaction-agent-modernization/0-Overview.md +156 -0
- plans/completed/compaction-agent-modernization/1-Architecture-Audit-Gap-Analysis.md +132 -0
- plans/completed/compaction-agent-modernization/2-Token-Baseline-Recalibration.md +153 -0
- plans/completed/compaction-agent-modernization/3-Agent-Reference-Updates.md +184 -0
- plans/completed/compaction-agent-modernization/4-Compression-Algorithm-Modernization.md +238 -0
- plans/completed/compaction-agent-modernization/5-Workflow-Integration-Streamlining.md +252 -0
- plans/completed/compaction-agent-modernization/6-Template-Structure-Optimization.md +240 -0
- plans/completed/compaction-agent-modernization/7-Integration-Testing-Validation.md +292 -0
- plans/completed/compaction-hook-enhancement/0-Overview.md +150 -0
- plans/completed/compaction-hook-enhancement/1-Token-Estimation-Enhancement.md +179 -0
- plans/completed/compaction-hook-enhancement/2-Compression-Intelligence.md +294 -0
- plans/completed/compaction-hook-enhancement/3-Git-Integration-Metadata.md +310 -0
- plans/completed/compaction-hook-enhancement/4-Session-Continuity-Features.md +358 -0
- plans/completed/compaction-hook-enhancement/5-Testing-Strategy.md +404 -0
- plans/completed/compaction-hook-enhancement/6-Integration-Roadmap.md +319 -0
- plans/completed/compaction-hook-enhancement/compacted_state.md +142 -0
- plans/completed/docstring-audit-enhancement/0-Overview.md +274 -0
- plans/completed/docstring-audit-enhancement/1-Infrastructure-Setup-and-Validation-Tools.md +206 -0
- plans/completed/docstring-audit-enhancement/2-Core-Physics-Modules-Enhancement.md +237 -0
- plans/completed/docstring-audit-enhancement/3-Fitfunctions-Mathematical-Modules-Enhancement.md +188 -0
- plans/completed/docstring-audit-enhancement/4-Plotting-Visualization-Modules-Enhancement.md +243 -0
- plans/completed/docstring-audit-enhancement/5-Specialized-Modules-Enhancement.md +216 -0
- plans/completed/docstring-audit-enhancement/6-Validation-and-Integration.md +216 -0
- plans/completed/fitfunctions-testing-implementation/0-Overview.md +130 -0
- plans/completed/fitfunctions-testing-implementation/1-Test-Infrastructure-Setup.md +79 -0
- plans/completed/fitfunctions-testing-implementation/2-Common-Fixtures-Test-Utilities.md +104 -0
- plans/completed/fitfunctions-testing-implementation/3-Core-FitFunction-Testing.md +168 -0
- plans/completed/fitfunctions-testing-implementation/4-Specialized-Function-Classes.md +210 -0
- plans/completed/fitfunctions-testing-implementation/5-Advanced-Classes-Testing.md +214 -0
- plans/completed/fitfunctions-testing-implementation/6-Plotting-Integration-Testing.md +231 -0
- plans/completed/fitfunctions-testing-implementation/7-Extended-Coverage-BONUS.md +184 -0
- plans/completed/numpy-docstring-conversion-plan/numpy-docstring-conversion-plan.md +118 -0
- plans/completed/pr-review-remediation/0-Overview.md +138 -0
- plans/completed/pr-review-remediation/1-Critical-Safety-Improvements.md +179 -0
- plans/completed/pr-review-remediation/2-Smart-Timeouts-Validation.md +399 -0
- plans/completed/pr-review-remediation/3-Enhanced-GitHub-Integration.md +258 -0
- plans/completed/pr-review-remediation/compacted_state.md +66 -0
- plans/completed/python-310-migration/0-Overview.md +390 -0
- plans/completed/python-310-migration/1-Planning-Setup.md +164 -0
- plans/completed/python-310-migration/2-Implementation.md +256 -0
- plans/completed/python-310-migration/3-Testing-Validation.md +335 -0
- plans/completed/python-310-migration/4-Documentation-Release.md +274 -0
- plans/completed/python-310-migration/5-Closeout.md +252 -0
- plans/completed/requirements-management-consolidation/0-Overview.md +118 -0
- plans/completed/requirements-management-consolidation/1-Documentation-Validation-Environment-Setup.md +116 -0
- plans/completed/requirements-management-consolidation/2-Requirements-Consolidation.md +161 -0
- plans/completed/requirements-management-consolidation/3-Workflow-Automation-Final-Integration.md +196 -0
- plans/completed/single-ecosystem-plan-implementation/0-Overview.md +83 -0
- plans/completed/single-ecosystem-plan-implementation/1-Plan-Preservation-Session-Management.md +38 -0
- plans/completed/single-ecosystem-plan-implementation/2-File-Structure-Optimization.md +43 -0
- plans/completed/single-ecosystem-plan-implementation/3-Plan-Migration-Archive-Setup.md +82 -0
- plans/completed/single-ecosystem-plan-implementation/4-Agent-System-Transformation.md +108 -0
- plans/completed/single-ecosystem-plan-implementation/5-Template-System-Enhancement.md +131 -0
- plans/completed/single-ecosystem-plan-implementation/6-Final-Validation-Testing.md +120 -0
- plans/completed/test-directory-consolidation/0-Overview.md +51 -0
- plans/completed/test-directory-consolidation/1-Structure-Preparation.md +82 -0
- plans/completed/test-directory-consolidation/2-File-Migration.md +100 -0
- plans/completed/test-directory-consolidation/3-Import-Transformation.md +117 -0
- plans/completed/test-directory-consolidation/4-Configuration-Consolidation.md +140 -0
- plans/completed/test-directory-consolidation/5-Validation.md +152 -0
- plans/completed/test-directory-consolidation/6-Cleanup.md +156 -0
- plans/completed/test-planning-agents-architecture/0-Overview.md +79 -0
- plans/completed/test-planning-agents-architecture/1-Branch-Isolation-Testing.md +49 -0
- plans/completed/test-planning-agents-architecture/2-Cross-Branch-Coordination.md +51 -0
- plans/completed/test-planning-agents-architecture/3-Merge-Workflow-Testing.md +48 -0
- plans/deployment-semver-pypi-rtd/0-Overview.md +463 -0
- plans/deployment-semver-pypi-rtd/1-Semantic-Versioning-Foundation.md +136 -0
- plans/deployment-semver-pypi-rtd/2-PyPI-Deployment-Infrastructure.md +168 -0
- plans/deployment-semver-pypi-rtd/3-Release-Automation.md +214 -0
- plans/deployment-semver-pypi-rtd/4-Plan-Closeout.md +543 -0
- plans/deployment-semver-pypi-rtd/compacted_session_state.md +172 -0
- plans/deployment-semver-pypi-rtd/compacted_state.md +131 -0
- plans/documentation-code-audit/0-Overview.md +393 -0
- plans/documentation-code-audit/1-Discovery-Inventory.md +183 -0
- plans/documentation-code-audit/2-Execution-Environment-Setup.md +263 -0
- plans/documentation-code-audit/3-Systematic-Validation.md +322 -0
- plans/documentation-code-audit/4-Code-Example-Remediation.md +358 -0
- plans/documentation-code-audit/5-Physics-MultiIndex-Compliance.md +464 -0
- plans/documentation-code-audit/6-Doctest-Integration.md +523 -0
- plans/documentation-code-audit/7-Reporting-Documentation.md +498 -0
- plans/documentation-code-audit/8-Closeout.md +456 -0
- plans/documentation-rebuild-session/compacted_state.md +109 -0
- plans/documentation-rendering-fixes/0-Overview.md +104 -0
- plans/documentation-rendering-fixes/1-Sphinx-Build-Diagnostics-Warning-Audit.md +101 -0
- plans/documentation-rendering-fixes/2-Configuration-Infrastructure-Fixes.md +113 -0
- plans/documentation-rendering-fixes/3-Docstring-Syntax-Audit-Repair.md +131 -0
- plans/documentation-rendering-fixes/4-HTML-Page-Rendering-Verification.md +113 -0
- plans/documentation-rendering-fixes/5-Advanced-Documentation-Quality-Assurance.md +119 -0
- plans/documentation-rendering-fixes/6-Documentation-Build-Optimization-Testing.md +129 -0
- plans/documentation-rendering-fixes/compacted_state.md +132 -0
- plans/documentation-template-fix/0-Overview.md +197 -0
- plans/documentation-template-fix/1-Template-System-Analysis.md +269 -0
- plans/documentation-template-fix/2-Template-Modification.md +609 -0
- plans/documentation-template-fix/3-Build-System-Integration.md +766 -0
- plans/documentation-template-fix/4-Testing-Validation.md +1399 -0
- plans/documentation-template-fix/5-Documentation-Training.md +602 -0
- plans/documentation-workflow-fix/0-Overview.md +222 -0
- plans/documentation-workflow-fix/1-Immediate-Fixes.md +238 -0
- plans/documentation-workflow-fix/2-Configuration-Setup.md +298 -0
- plans/documentation-workflow-fix/3-Pre-commit-Integration.md +382 -0
- plans/documentation-workflow-fix/4-Workflow-Improvements.md +446 -0
- plans/documentation-workflow-fix/5-Documentation-and-Training.md +527 -0
- plans/duplicate-object-warnings-fix-plan.md +130 -0
- plans/github-issues-migration/0-Overview.md +510 -0
- plans/github-issues-migration/1-Foundation-Label-System.md +180 -0
- plans/github-issues-migration/2-Migration-Tool-Rewrite.md +235 -0
- plans/github-issues-migration/3-CLI-Integration-Automation.md +169 -0
- plans/github-issues-migration/4-Validated-Migration.md +252 -0
- plans/github-issues-migration/5-Documentation-Training.md +171 -0
- plans/github-issues-migration/6-Closeout.md +179 -0
- plans/github-workflows-repair/repair-plan.md +299 -0
- plans/issues_from_plans.py +342 -0
- plans/pr-270-doc-validation-fixes/0-Overview.md +354 -0
- plans/pr-270-doc-validation-fixes/1-Critical-PR-Fixes.md +117 -0
- plans/pr-270-doc-validation-fixes/2-Framework-Right-Sizing.md +129 -0
- plans/pr-270-doc-validation-fixes/3-Sustainable-Documentation.md +126 -0
- plans/pr-270-doc-validation-fixes/4-Closeout-Migration.md +143 -0
- plans/pr-270-doc-validation-fixes/PLAN_COMPLETED.md +149 -0
- plans/python-310-migration/0-Overview.md +390 -0
- plans/python-310-migration/1-Planning-Setup.md +164 -0
- plans/python-310-migration/2-Implementation.md +256 -0
- plans/python-310-migration/3-Testing-Validation.md +335 -0
- plans/python-310-migration/4-Documentation-Release.md +274 -0
- plans/python-310-migration/5-Closeout.md +252 -0
- plans/readthedocs-simplified/0-Overview.md +243 -0
- plans/readthedocs-simplified/1-Immediate-Fixes.md +216 -0
- plans/readthedocs-simplified/2-Template-Simplification.md +278 -0
- plans/readthedocs-simplified/3-ReadTheDocs-Setup.md +298 -0
- plans/readthedocs-simplified/4-Testing-Validation.md +328 -0
- plans/readthedocs-simplified/5-Closeout.md +231 -0
- plans/readthedocs-simplified/compacted_state.md +127 -0
- plans/session-compaction-2025-08-12/compacted_state.md +114 -0
- plans/session-compaction-2025-08-13/compacted_state.md +145 -0
- plans/session-continuity-protocol/0-Overview.md +35 -0
- plans/session-continuity-protocol/1-Core-Principles-Framework.md +40 -0
- plans/session-continuity-protocol/2-Pre-Session-Validation-System.md +79 -0
- plans/session-continuity-protocol/3-Context-Switching-Prevention.md +87 -0
- plans/session-continuity-protocol/4-Progress-Tracking-Recovery.md +100 -0
- plans/sphinx-warnings-analysis.md +222 -0
- plans/systemprompt-optimization/0-Overview.md +447 -0
- plans/systemprompt-optimization/1-Deploy-SystemPrompt.md +114 -0
- plans/systemprompt-optimization/2-Documentation-Alignment.md +198 -0
- plans/systemprompt-optimization/3-Monitoring-Infrastructure.md +396 -0
- plans/systemprompt-optimization/4-Implementation-Script.md +450 -0
- plans/systemprompt-optimization/9-Closeout.md +165 -0
- plans/systemprompt-optimization/compacted_state.md +143 -0
- plans/template-value-propositions/0-Overview.md +357 -0
- plans/template-value-propositions/1-Value-Proposition-Framework-Design.md +144 -0
- plans/template-value-propositions/2-Plan-Template-Enhancement.md +178 -0
- plans/template-value-propositions/3-Value-Generator-Hook-Implementation.md +291 -0
- plans/template-value-propositions/4-Value-Validator-Hook-Implementation.md +274 -0
- plans/template-value-propositions/5-Documentation-Agent-Updates.md +219 -0
- plans/template-value-propositions/6-Integration-Testing-Validation.md +247 -0
- plans/tests-audit/0-Overview.md +410 -0
- plans/tests-audit/1-Discovery-Inventory.md +170 -0
- plans/tests-audit/2-Physics-Validation-Audit.md +195 -0
- plans/tests-audit/3-Architecture-Compliance.md +195 -0
- plans/tests-audit/4-Numerical-Stability-Analysis.md +203 -0
- plans/tests-audit/5-Documentation-Enhancement.md +220 -0
- plans/tests-audit/6-Audit-Deliverables.md +220 -0
- plans/tests-audit/7-Closeout.md +252 -0
- plans/tests-audit/artifacts/ARCHITECTURE_COMPLIANCE_REPORT.md +315 -0
- plans/tests-audit/artifacts/ARCHITECTURE_RECOMMENDATIONS.md +943 -0
- plans/tests-audit/artifacts/COMPREHENSIVE_AUDIT_REPORT.md +356 -0
- plans/tests-audit/artifacts/CONTRIBUTING_ENHANCED_TEMPLATE.md +419 -0
- plans/tests-audit/artifacts/COVERAGE_GAP_ANALYSIS.md +152 -0
- plans/tests-audit/artifacts/DOCUMENTATION_ENHANCEMENT_REPORT.md +502 -0
- plans/tests-audit/artifacts/EXECUTIVE_AUDIT_SUMMARY.md +129 -0
- plans/tests-audit/artifacts/IMPLEMENTATION_ROADMAP.md +647 -0
- plans/tests-audit/artifacts/NUMERICAL_RECOMMENDATIONS.md +739 -0
- plans/tests-audit/artifacts/NUMERICAL_STABILITY_GUIDE_TEMPLATE.rst +451 -0
- plans/tests-audit/artifacts/NUMERICAL_STABILITY_REPORT.md +301 -0
- plans/tests-audit/artifacts/PHASE_3_SUMMARY.md +280 -0
- plans/tests-audit/artifacts/PHASE_4_SUMMARY.md +229 -0
- plans/tests-audit/artifacts/PHASE_5_SUMMARY.md +292 -0
- plans/tests-audit/artifacts/PHASE_6_CLOSEOUT.md +278 -0
- plans/tests-audit/artifacts/PHYSICS_GUIDE_TEMPLATE.rst +268 -0
- plans/tests-audit/artifacts/PHYSICS_VALIDATION_REPORT.md +235 -0
- plans/tests-audit/artifacts/TECHNICAL_DELIVERABLES_PACKAGE.md +2502 -0
- plans/tests-audit/artifacts/TEST_INVENTORY.csv +1204 -0
- plans/tests-audit/artifacts/TEST_INVENTORY.md +135 -0
- plans/tests-audit/artifacts/test_discovery_analysis.py +231 -0
- plans/tests-audit/artifacts/test_parser.py +395 -0
- solarwindpy/README.md +3 -0
- solarwindpy/Untitled.ipynb +54 -0
- solarwindpy/__init__.py +74 -0
- solarwindpy/core/__init__.py +23 -0
- solarwindpy/core/alfvenic_turbulence.py +804 -0
- solarwindpy/core/base.py +267 -0
- solarwindpy/core/ions.py +309 -0
- solarwindpy/core/plasma.py +2133 -0
- solarwindpy/core/spacecraft.py +256 -0
- solarwindpy/core/tensor.py +90 -0
- solarwindpy/core/units_constants.py +199 -0
- solarwindpy/core/vector.py +328 -0
- solarwindpy/fitfunctions/__init__.py +20 -0
- solarwindpy/fitfunctions/core.py +734 -0
- solarwindpy/fitfunctions/exponentials.py +188 -0
- solarwindpy/fitfunctions/gaussians.py +264 -0
- solarwindpy/fitfunctions/lines.py +116 -0
- solarwindpy/fitfunctions/moyal.py +71 -0
- solarwindpy/fitfunctions/plots.py +751 -0
- solarwindpy/fitfunctions/power_laws.py +209 -0
- solarwindpy/fitfunctions/tex_info.py +568 -0
- solarwindpy/fitfunctions/trend_fits.py +482 -0
- solarwindpy/instabilities/__init__.py +16 -0
- solarwindpy/instabilities/beta_ani.py +82 -0
- solarwindpy/instabilities/verscharen2016.py +631 -0
- solarwindpy/plotting/__init__.py +33 -0
- solarwindpy/plotting/agg_plot.py +489 -0
- solarwindpy/plotting/base.py +465 -0
- solarwindpy/plotting/hist1d.py +405 -0
- solarwindpy/plotting/hist2d.py +1035 -0
- solarwindpy/plotting/histograms.py +1845 -0
- solarwindpy/plotting/labels/__init__.py +104 -0
- solarwindpy/plotting/labels/base.py +686 -0
- solarwindpy/plotting/labels/chemistry.py +19 -0
- solarwindpy/plotting/labels/composition.py +100 -0
- solarwindpy/plotting/labels/datetime.py +235 -0
- solarwindpy/plotting/labels/elemental_abundance.py +73 -0
- solarwindpy/plotting/labels/special.py +794 -0
- solarwindpy/plotting/orbits.py +515 -0
- solarwindpy/plotting/scatter.py +99 -0
- solarwindpy/plotting/select_data_from_figure.py +329 -0
- solarwindpy/plotting/spiral.py +980 -0
- solarwindpy/plotting/tools.py +434 -0
- solarwindpy/scripts/__init__.py +1 -0
- solarwindpy/scripts/logs/.gitignore +1 -0
- solarwindpy/solar_activity/__init__.py +53 -0
- solarwindpy/solar_activity/base.py +605 -0
- solarwindpy/solar_activity/lisird/__init__.py +3 -0
- solarwindpy/solar_activity/lisird/extrema_calculator.py +394 -0
- solarwindpy/solar_activity/lisird/lisird.py +319 -0
- solarwindpy/solar_activity/plots.py +116 -0
- solarwindpy/solar_activity/sunspot_number/.DS_Store +0 -0
- solarwindpy/solar_activity/sunspot_number/__init__.py +3 -0
- solarwindpy/solar_activity/sunspot_number/sidc.py +556 -0
- solarwindpy/solar_activity/sunspot_number/ssn_extrema.csv +72 -0
- solarwindpy/solar_activity/sunspot_number/ssn_extrema.csv.silso +72 -0
- solarwindpy/tools/__init__.py +162 -0
- solarwindpy-0.1.0.dist-info/METADATA +181 -0
- solarwindpy-0.1.0.dist-info/RECORD +409 -0
- {solarwindpy-0.0.1.dev0.dist-info → solarwindpy-0.1.0.dist-info}/WHEEL +1 -1
- solarwindpy-0.1.0.dist-info/licenses/LICENSE.rst +32 -0
- solarwindpy-0.1.0.dist-info/top_level.txt +3 -0
- tests/__init__.py +1 -0
- tests/conftest.py +10 -0
- tests/core/__init__.py +1 -0
- tests/core/test_alfvenic_turbulence.py +544 -0
- tests/core/test_base.py +112 -0
- tests/core/test_base_head_tail.py +29 -0
- tests/core/test_base_mi_tuples.py +11 -0
- tests/core/test_core_verify_datetimeindex.py +32 -0
- tests/core/test_ions.py +325 -0
- tests/core/test_plasma.py +2581 -0
- tests/core/test_plasma_io.py +12 -0
- tests/core/test_quantities.py +507 -0
- tests/core/test_spacecraft.py +210 -0
- tests/core/test_units_constants.py +22 -0
- tests/data/epoch.csv +4 -0
- tests/data/plasma.csv +4 -0
- tests/data/spacecraft.csv +4 -0
- tests/fitfunctions/conftest.py +60 -0
- tests/fitfunctions/test_core.py +193 -0
- tests/fitfunctions/test_exponentials.py +342 -0
- tests/fitfunctions/test_gaussians.py +142 -0
- tests/fitfunctions/test_lines.py +349 -0
- tests/fitfunctions/test_moyal.py +258 -0
- tests/fitfunctions/test_plots.py +258 -0
- tests/fitfunctions/test_power_laws.py +365 -0
- tests/fitfunctions/test_tex_info.py +183 -0
- tests/fitfunctions/test_trend_fit_properties.py +31 -0
- tests/fitfunctions/test_trend_fits.py +244 -0
- tests/plotting/__init__.py +1 -0
- tests/plotting/labels/__init__.py +1 -0
- tests/plotting/labels/test_chemistry.py +243 -0
- tests/plotting/labels/test_composition.py +345 -0
- tests/plotting/labels/test_datetime.py +445 -0
- tests/plotting/labels/test_elemental_abundance.py +366 -0
- tests/plotting/labels/test_init.py +66 -0
- tests/plotting/labels/test_labels_base.py +347 -0
- tests/plotting/labels/test_special.py +550 -0
- tests/plotting/test_agg_plot.py +602 -0
- tests/plotting/test_base.py +752 -0
- tests/plotting/test_fixtures_utilities.py +775 -0
- tests/plotting/test_histograms.py +546 -0
- tests/plotting/test_integration.py +675 -0
- tests/plotting/test_orbits.py +435 -0
- tests/plotting/test_performance.py +708 -0
- tests/plotting/test_scatter.py +752 -0
- tests/plotting/test_select_data_from_figure.py +1209 -0
- tests/plotting/test_spiral.py +573 -0
- tests/plotting/test_tools.py +607 -0
- tests/plotting/test_visual_validation.py +465 -0
- tests/solar_activity/__init__.py +1 -0
- tests/solar_activity/lisird/__init__.py +1 -0
- tests/solar_activity/lisird/test_extrema_calculator.py +593 -0
- tests/solar_activity/lisird/test_lisird_id.py +187 -0
- tests/solar_activity/sunspot_number/__init__.py +1 -0
- tests/solar_activity/sunspot_number/test_init.py +399 -0
- tests/solar_activity/sunspot_number/test_sidc.py +465 -0
- tests/solar_activity/sunspot_number/test_sidc_id.py +223 -0
- tests/solar_activity/sunspot_number/test_sidc_loader.py +275 -0
- tests/solar_activity/sunspot_number/test_ssn_extrema.py +406 -0
- tests/solar_activity/test_base.py +656 -0
- tests/solar_activity/test_init.py +396 -0
- tests/solar_activity/test_plots.py +371 -0
- tests/test_circular_imports.py +408 -0
- tests/test_issue_titles.py +25 -0
- tests/test_statusline.py +298 -0
- solarwindpy-0.0.1.dev0.dist-info/METADATA +0 -14
- solarwindpy-0.0.1.dev0.dist-info/RECORD +0 -4
- solarwindpy-0.0.1.dev0.dist-info/top_level.txt +0 -1
|
@@ -0,0 +1,609 @@
|
|
|
1
|
+
# Phase 2: Template Modification
|
|
2
|
+
|
|
3
|
+
## Objective
|
|
4
|
+
Enhance existing Sphinx templates and create new templates to support physics-specific documentation needs while maintaining full persistence across documentation rebuilds.
|
|
5
|
+
|
|
6
|
+
## Implementation Strategy
|
|
7
|
+
|
|
8
|
+
### Template Enhancement Approach
|
|
9
|
+
1. **Incremental Enhancement**: Modify existing templates step-by-step
|
|
10
|
+
2. **Physics-First Design**: Prioritize scientific documentation needs
|
|
11
|
+
3. **Backward Compatibility**: Ensure existing documentation continues working
|
|
12
|
+
4. **Validation Integration**: Include template validation at each step
|
|
13
|
+
|
|
14
|
+
## Template Modifications
|
|
15
|
+
|
|
16
|
+
### 2.1 Enhanced Class Template
|
|
17
|
+
|
|
18
|
+
#### Target: `docs/source/_templates/autosummary/class.rst`
|
|
19
|
+
|
|
20
|
+
**Current Template Problems**:
|
|
21
|
+
- Generic structure not optimized for scientific classes
|
|
22
|
+
- No support for physics-specific properties
|
|
23
|
+
- Missing units and mathematical relationship documentation
|
|
24
|
+
- No validation or constraint information
|
|
25
|
+
|
|
26
|
+
**Enhanced Template Design**:
|
|
27
|
+
|
|
28
|
+
```rst
|
|
29
|
+
{{ fullname | escape | underline }}
|
|
30
|
+
|
|
31
|
+
.. autoclass:: {{ fullname }}
|
|
32
|
+
:members:
|
|
33
|
+
:show-inheritance:
|
|
34
|
+
:no-index:
|
|
35
|
+
|
|
36
|
+
{% if "Plasma" in objname or "Ion" in objname or "Base" in objname %}
|
|
37
|
+
|
|
38
|
+
.. rubric:: Physics Overview
|
|
39
|
+
|
|
40
|
+
{{ objname }} represents {{ overview_text | default("a physics object in the solar wind analysis framework") }}.
|
|
41
|
+
|
|
42
|
+
{% endif %}
|
|
43
|
+
|
|
44
|
+
.. rubric:: Methods
|
|
45
|
+
|
|
46
|
+
.. autosummary::
|
|
47
|
+
:nosignatures:
|
|
48
|
+
{% for item in methods %}
|
|
49
|
+
{{ item }}
|
|
50
|
+
{%- endfor %}
|
|
51
|
+
|
|
52
|
+
.. rubric:: Attributes
|
|
53
|
+
|
|
54
|
+
.. autosummary::
|
|
55
|
+
{% for item in attributes %}
|
|
56
|
+
{{ item }}
|
|
57
|
+
{%- endfor %}
|
|
58
|
+
|
|
59
|
+
{% if "Plasma" in objname or "Ion" in objname %}
|
|
60
|
+
|
|
61
|
+
.. rubric:: Physical Properties
|
|
62
|
+
|
|
63
|
+
The following properties represent derived physical quantities:
|
|
64
|
+
|
|
65
|
+
.. autosummary::
|
|
66
|
+
{% for item in attributes %}
|
|
67
|
+
{%- if "temperature" in item.lower() or "density" in item.lower() or "velocity" in item.lower() or "pressure" in item.lower() %}
|
|
68
|
+
{{ item }}
|
|
69
|
+
{%- endif %}
|
|
70
|
+
{%- endfor %}
|
|
71
|
+
|
|
72
|
+
.. rubric:: Units and Dimensions
|
|
73
|
+
|
|
74
|
+
This class follows SI units internally with the following conventions:
|
|
75
|
+
|
|
76
|
+
* **Temperature**: Kelvin (K)
|
|
77
|
+
* **Density**: particles per cubic meter (m⁻³)
|
|
78
|
+
* **Velocity**: meters per second (m/s)
|
|
79
|
+
* **Magnetic field**: Tesla (T)
|
|
80
|
+
* **Pressure**: Pascal (Pa)
|
|
81
|
+
|
|
82
|
+
{% endif %}
|
|
83
|
+
|
|
84
|
+
{% if methods and any("fit" in method.lower() or "calculate" in method.lower() for method in methods) %}
|
|
85
|
+
|
|
86
|
+
.. rubric:: Mathematical Relationships
|
|
87
|
+
|
|
88
|
+
Key equations implemented by this class:
|
|
89
|
+
|
|
90
|
+
.. note::
|
|
91
|
+
Detailed mathematical formulations are documented in the individual method docstrings.
|
|
92
|
+
|
|
93
|
+
{% endif %}
|
|
94
|
+
|
|
95
|
+
{% if "validate" in " ".join(methods).lower() or "check" in " ".join(methods).lower() %}
|
|
96
|
+
|
|
97
|
+
.. rubric:: Physics Constraints
|
|
98
|
+
|
|
99
|
+
This class enforces physical constraints and validation rules. See validation methods for details.
|
|
100
|
+
|
|
101
|
+
{% endif %}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
**Key Enhancements**:
|
|
105
|
+
1. **Physics Overview**: Context for scientific classes
|
|
106
|
+
2. **Physical Properties**: Separate section for derived quantities
|
|
107
|
+
3. **Units and Dimensions**: Clear unit documentation
|
|
108
|
+
4. **Mathematical Relationships**: Formula documentation support
|
|
109
|
+
5. **Physics Constraints**: Validation rule documentation
|
|
110
|
+
6. **Conditional Sections**: Only show relevant sections for physics classes
|
|
111
|
+
|
|
112
|
+
#### Implementation Steps
|
|
113
|
+
|
|
114
|
+
**Step 2.1.1**: Create enhanced class template
|
|
115
|
+
```bash
|
|
116
|
+
# Backup current template
|
|
117
|
+
cp docs/source/_templates/autosummary/class.rst docs/source/_templates/autosummary/class.rst.backup
|
|
118
|
+
|
|
119
|
+
# Implement enhanced version
|
|
120
|
+
# Edit docs/source/_templates/autosummary/class.rst with enhanced content
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Step 2.1.2**: Test template with sample class
|
|
124
|
+
```bash
|
|
125
|
+
cd docs
|
|
126
|
+
make clean
|
|
127
|
+
make api
|
|
128
|
+
make html
|
|
129
|
+
# Verify enhanced documentation appears for physics classes
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
**Step 2.1.3**: Validate template syntax
|
|
133
|
+
```bash
|
|
134
|
+
# Check for Jinja2 template errors
|
|
135
|
+
python -c "
|
|
136
|
+
from jinja2 import Template
|
|
137
|
+
with open('docs/source/_templates/autosummary/class.rst') as f:
|
|
138
|
+
Template(f.read())
|
|
139
|
+
print('Template syntax valid')
|
|
140
|
+
"
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### 2.2 Enhanced Module Template
|
|
144
|
+
|
|
145
|
+
#### Target: `docs/source/_templates/autosummary/module.rst`
|
|
146
|
+
|
|
147
|
+
**Current Template Problems**:
|
|
148
|
+
- No scientific context for physics modules
|
|
149
|
+
- Missing physics background information
|
|
150
|
+
- No mathematical overview
|
|
151
|
+
- Generic structure for all modules
|
|
152
|
+
|
|
153
|
+
**Enhanced Template Design**:
|
|
154
|
+
|
|
155
|
+
```rst
|
|
156
|
+
{{ fullname | escape | underline }}
|
|
157
|
+
|
|
158
|
+
{% set module_parts = fullname.split('.') %}
|
|
159
|
+
{% set module_name = module_parts[-1] %}
|
|
160
|
+
|
|
161
|
+
{% if "core" in fullname %}
|
|
162
|
+
.. note::
|
|
163
|
+
This module contains core physics classes and functions for solar wind analysis.
|
|
164
|
+
|
|
165
|
+
{% elif "plotting" in fullname %}
|
|
166
|
+
.. note::
|
|
167
|
+
This module provides visualization tools specialized for plasma physics data.
|
|
168
|
+
|
|
169
|
+
{% elif "fitfunctions" in fullname %}
|
|
170
|
+
.. note::
|
|
171
|
+
This module contains mathematical fitting functions commonly used in plasma physics analysis.
|
|
172
|
+
|
|
173
|
+
{% elif "instabilities" in fullname %}
|
|
174
|
+
.. note::
|
|
175
|
+
This module implements plasma instability analysis and detection algorithms.
|
|
176
|
+
|
|
177
|
+
{% elif "tools" in fullname %}
|
|
178
|
+
.. note::
|
|
179
|
+
This module provides utility functions for physical calculations and data processing.
|
|
180
|
+
|
|
181
|
+
{% endif %}
|
|
182
|
+
|
|
183
|
+
.. automodule:: {{ fullname }}
|
|
184
|
+
:members:
|
|
185
|
+
:undoc-members:
|
|
186
|
+
:show-inheritance:
|
|
187
|
+
:no-index:
|
|
188
|
+
|
|
189
|
+
{% if "plasma" in module_name.lower() %}
|
|
190
|
+
|
|
191
|
+
.. rubric:: Physics Background
|
|
192
|
+
|
|
193
|
+
The plasma module provides the fundamental framework for representing and analyzing
|
|
194
|
+
solar wind plasma measurements. It implements the multi-species plasma model with
|
|
195
|
+
full electromagnetic field interactions.
|
|
196
|
+
|
|
197
|
+
**Key Physical Concepts**:
|
|
198
|
+
|
|
199
|
+
* Multi-species ion composition (protons, alpha particles, heavy ions)
|
|
200
|
+
* Magnetic field vector representation and derived quantities
|
|
201
|
+
* Plasma moments (density, velocity, temperature, pressure)
|
|
202
|
+
* Thermal properties and distribution functions
|
|
203
|
+
|
|
204
|
+
{% elif "ions" in module_name.lower() %}
|
|
205
|
+
|
|
206
|
+
.. rubric:: Physics Background
|
|
207
|
+
|
|
208
|
+
Ion species representation in solar wind plasma, implementing individual ion
|
|
209
|
+
properties and collective behavior analysis.
|
|
210
|
+
|
|
211
|
+
**Physical Properties**:
|
|
212
|
+
|
|
213
|
+
* Ion moments computed from distribution functions
|
|
214
|
+
* Species-specific thermal properties
|
|
215
|
+
* Composition ratios and charge states
|
|
216
|
+
* Flow velocities and differential streaming
|
|
217
|
+
|
|
218
|
+
{% elif module_name.lower() in ["gaussians", "exponentials", "power_laws", "lines"] %}
|
|
219
|
+
|
|
220
|
+
.. rubric:: Mathematical Background
|
|
221
|
+
|
|
222
|
+
This module implements {{ module_name.replace('_', ' ').title() }} fitting functions
|
|
223
|
+
commonly used in plasma physics data analysis.
|
|
224
|
+
|
|
225
|
+
**Applications**:
|
|
226
|
+
|
|
227
|
+
* Plasma distribution function fitting
|
|
228
|
+
* Spectral analysis and peak identification
|
|
229
|
+
* Background subtraction and trend removal
|
|
230
|
+
* Statistical analysis of plasma parameters
|
|
231
|
+
|
|
232
|
+
{% endif %}
|
|
233
|
+
|
|
234
|
+
{% if "examples" in globals() or "usage" in globals() %}
|
|
235
|
+
|
|
236
|
+
.. rubric:: Usage Examples
|
|
237
|
+
|
|
238
|
+
Basic usage patterns for this module:
|
|
239
|
+
|
|
240
|
+
.. code-block:: python
|
|
241
|
+
|
|
242
|
+
import solarwindpy as swp
|
|
243
|
+
|
|
244
|
+
# Module-specific usage examples would be inserted here
|
|
245
|
+
# Based on the specific module being documented
|
|
246
|
+
|
|
247
|
+
{% endif %}
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
**Key Enhancements**:
|
|
251
|
+
1. **Scientific Context**: Module-specific physics background
|
|
252
|
+
2. **Mathematical Background**: For fitting and analysis modules
|
|
253
|
+
3. **Usage Guidance**: Physics-relevant examples
|
|
254
|
+
4. **Conditional Content**: Tailored to module purpose
|
|
255
|
+
5. **Cross-references**: Links to related physics concepts
|
|
256
|
+
|
|
257
|
+
#### Implementation Steps
|
|
258
|
+
|
|
259
|
+
**Step 2.2.1**: Create enhanced module template
|
|
260
|
+
```bash
|
|
261
|
+
# Backup current template
|
|
262
|
+
cp docs/source/_templates/autosummary/module.rst docs/source/_templates/autosummary/module.rst.backup
|
|
263
|
+
|
|
264
|
+
# Implement enhanced version
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
**Step 2.2.2**: Test with core physics modules
|
|
268
|
+
```bash
|
|
269
|
+
make clean
|
|
270
|
+
make api
|
|
271
|
+
# Verify physics background sections appear correctly
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
### 2.3 New Function Template
|
|
275
|
+
|
|
276
|
+
#### Target: `docs/source/_templates/autosummary/function.rst` (NEW)
|
|
277
|
+
|
|
278
|
+
**Rationale**: Standalone physics functions need specialized documentation
|
|
279
|
+
|
|
280
|
+
**Function Template Design**:
|
|
281
|
+
|
|
282
|
+
```rst
|
|
283
|
+
{{ fullname | escape | underline }}
|
|
284
|
+
|
|
285
|
+
.. autofunction:: {{ fullname }}
|
|
286
|
+
:no-index:
|
|
287
|
+
|
|
288
|
+
{% set func_name = objname.lower() %}
|
|
289
|
+
|
|
290
|
+
{% if "calculate" in func_name or "compute" in func_name %}
|
|
291
|
+
|
|
292
|
+
.. rubric:: Mathematical Implementation
|
|
293
|
+
|
|
294
|
+
This function implements a physics calculation with the following characteristics:
|
|
295
|
+
|
|
296
|
+
* **Input Parameters**: Physical quantities with specified units
|
|
297
|
+
* **Output**: Computed physical quantity with units
|
|
298
|
+
* **Validation**: Input parameter validation for physical constraints
|
|
299
|
+
* **Precision**: Numerical precision considerations for physics applications
|
|
300
|
+
|
|
301
|
+
{% endif %}
|
|
302
|
+
|
|
303
|
+
{% if "convert" in func_name or "transform" in func_name %}
|
|
304
|
+
|
|
305
|
+
.. rubric:: Unit Conversion
|
|
306
|
+
|
|
307
|
+
This function performs unit conversion or coordinate transformation:
|
|
308
|
+
|
|
309
|
+
* **Input Units**: {{ input_units | default("See function signature") }}
|
|
310
|
+
* **Output Units**: {{ output_units | default("See function signature") }}
|
|
311
|
+
* **Conversion Factor**: Based on fundamental physical constants
|
|
312
|
+
* **Accuracy**: Maintains numerical precision for scientific applications
|
|
313
|
+
|
|
314
|
+
{% endif %}
|
|
315
|
+
|
|
316
|
+
{% if "validate" in func_name or "check" in func_name %}
|
|
317
|
+
|
|
318
|
+
.. rubric:: Physics Validation
|
|
319
|
+
|
|
320
|
+
This function enforces physics constraints and validation rules:
|
|
321
|
+
|
|
322
|
+
* **Physical Limits**: Validates parameters against known physical bounds
|
|
323
|
+
* **Consistency Checks**: Ensures internal consistency of related quantities
|
|
324
|
+
* **Error Handling**: Provides clear physics-based error messages
|
|
325
|
+
* **Performance**: Optimized for real-time data validation
|
|
326
|
+
|
|
327
|
+
{% endif %}
|
|
328
|
+
|
|
329
|
+
.. rubric:: Usage Notes
|
|
330
|
+
|
|
331
|
+
.. important::
|
|
332
|
+
This function follows SolarWindPy conventions for units and data structures.
|
|
333
|
+
See the main documentation for details on the physics framework.
|
|
334
|
+
|
|
335
|
+
{% if "deprecated" in (doc | default("")).lower() %}
|
|
336
|
+
|
|
337
|
+
.. deprecated::
|
|
338
|
+
This function is deprecated. See the function docstring for recommended alternatives.
|
|
339
|
+
|
|
340
|
+
{% endif %}
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
**Key Features**:
|
|
344
|
+
1. **Mathematical Implementation**: Formula and calculation details
|
|
345
|
+
2. **Unit Conversion**: Input/output unit documentation
|
|
346
|
+
3. **Physics Validation**: Constraint and validation information
|
|
347
|
+
4. **Usage Notes**: Integration with SolarWindPy framework
|
|
348
|
+
5. **Deprecation Support**: Clear migration guidance
|
|
349
|
+
|
|
350
|
+
#### Implementation Steps
|
|
351
|
+
|
|
352
|
+
**Step 2.3.1**: Create function template
|
|
353
|
+
```bash
|
|
354
|
+
# Create new function template
|
|
355
|
+
touch docs/source/_templates/autosummary/function.rst
|
|
356
|
+
# Implement function template content
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
**Step 2.3.2**: Configure Sphinx to use function template
|
|
360
|
+
```python
|
|
361
|
+
# Add to docs/source/conf.py
|
|
362
|
+
autosummary_context = {
|
|
363
|
+
'function': 'function.rst'
|
|
364
|
+
}
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
### 2.4 Enhanced Package Template
|
|
368
|
+
|
|
369
|
+
#### Target: Override default package documentation
|
|
370
|
+
|
|
371
|
+
**Package Overview Enhancement**:
|
|
372
|
+
|
|
373
|
+
```rst
|
|
374
|
+
{{ fullname | escape | underline }}
|
|
375
|
+
|
|
376
|
+
{% set package_name = fullname.split('.')[-1] %}
|
|
377
|
+
|
|
378
|
+
{% if package_name == "core" %}
|
|
379
|
+
|
|
380
|
+
.. rubric:: Core Physics Framework
|
|
381
|
+
|
|
382
|
+
The core package provides fundamental classes and functions for solar wind plasma analysis.
|
|
383
|
+
This package implements the mathematical and physical foundations for all other modules.
|
|
384
|
+
|
|
385
|
+
**Primary Components**:
|
|
386
|
+
|
|
387
|
+
* :py:class:`~solarwindpy.core.plasma.Plasma` - Multi-species plasma container
|
|
388
|
+
* :py:class:`~solarwindpy.core.ions.Ion` - Individual ion species representation
|
|
389
|
+
* :py:class:`~solarwindpy.core.base.Base` - Abstract base with logging and constants
|
|
390
|
+
|
|
391
|
+
**Physics Implementation**:
|
|
392
|
+
|
|
393
|
+
* SI units used internally throughout
|
|
394
|
+
* Consistent handling of missing data (NaN)
|
|
395
|
+
* Thermal speed convention: mw² = 2kT
|
|
396
|
+
* Time series data with chronological ordering
|
|
397
|
+
|
|
398
|
+
{% elif package_name == "plotting" %}
|
|
399
|
+
|
|
400
|
+
.. rubric:: Plasma Physics Visualization
|
|
401
|
+
|
|
402
|
+
Specialized plotting tools for solar wind and plasma physics data visualization,
|
|
403
|
+
providing publication-quality figures with proper scientific formatting.
|
|
404
|
+
|
|
405
|
+
**Capabilities**:
|
|
406
|
+
|
|
407
|
+
* Multi-dimensional plasma parameter visualization
|
|
408
|
+
* Time series plotting with physics-aware formatting
|
|
409
|
+
* Statistical distribution analysis plots
|
|
410
|
+
* Correlation and scatter analysis tools
|
|
411
|
+
|
|
412
|
+
{% elif package_name == "fitfunctions" %}
|
|
413
|
+
|
|
414
|
+
.. rubric:: Mathematical Fitting Framework
|
|
415
|
+
|
|
416
|
+
Mathematical functions for fitting plasma physics data, implementing common
|
|
417
|
+
distribution functions and trend analysis tools used in space physics research.
|
|
418
|
+
|
|
419
|
+
**Function Categories**:
|
|
420
|
+
|
|
421
|
+
* Gaussian distributions for velocity/temperature analysis
|
|
422
|
+
* Power laws for spectral and scaling analysis
|
|
423
|
+
* Exponential functions for decay processes
|
|
424
|
+
* Linear trends for background subtraction
|
|
425
|
+
|
|
426
|
+
{% elif package_name == "instabilities" %}
|
|
427
|
+
|
|
428
|
+
.. rubric:: Plasma Instability Analysis
|
|
429
|
+
|
|
430
|
+
Implementation of plasma instability detection and analysis algorithms,
|
|
431
|
+
providing tools for identifying and characterizing various plasma wave modes
|
|
432
|
+
and instabilities in solar wind data.
|
|
433
|
+
|
|
434
|
+
{% endif %}
|
|
435
|
+
|
|
436
|
+
.. toctree::
|
|
437
|
+
:maxdepth: 2
|
|
438
|
+
|
|
439
|
+
{% for item in modules %}
|
|
440
|
+
{{ item }}
|
|
441
|
+
{%- endfor %}
|
|
442
|
+
|
|
443
|
+
{% for item in subpackages %}
|
|
444
|
+
{{ item }}
|
|
445
|
+
{%- endfor %}
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
**Key Features**:
|
|
449
|
+
1. **Package Overview**: Clear scientific context
|
|
450
|
+
2. **Physics Implementation**: Technical details
|
|
451
|
+
3. **Cross-references**: Links to key classes/functions
|
|
452
|
+
4. **Hierarchical Organization**: Proper package structure
|
|
453
|
+
|
|
454
|
+
## Template Validation Strategy
|
|
455
|
+
|
|
456
|
+
### 2.5 Template Testing Framework
|
|
457
|
+
|
|
458
|
+
**Validation Approach**:
|
|
459
|
+
1. **Syntax Validation**: Jinja2 template syntax checking
|
|
460
|
+
2. **Build Testing**: Generate documentation and verify output
|
|
461
|
+
3. **Content Verification**: Ensure all sections render correctly
|
|
462
|
+
4. **Cross-reference Testing**: Verify all links work
|
|
463
|
+
5. **Physics Content Review**: Validate scientific accuracy
|
|
464
|
+
|
|
465
|
+
**Automated Testing Script**:
|
|
466
|
+
|
|
467
|
+
```python
|
|
468
|
+
# docs/validate_templates.py
|
|
469
|
+
"""Template validation script for SolarWindPy documentation."""
|
|
470
|
+
|
|
471
|
+
import os
|
|
472
|
+
import sys
|
|
473
|
+
from pathlib import Path
|
|
474
|
+
from jinja2 import Template, TemplateSyntaxError
|
|
475
|
+
|
|
476
|
+
def validate_template(template_path):
|
|
477
|
+
"""Validate a single template file."""
|
|
478
|
+
try:
|
|
479
|
+
with open(template_path, 'r') as f:
|
|
480
|
+
template_content = f.read()
|
|
481
|
+
|
|
482
|
+
# Test template syntax
|
|
483
|
+
Template(template_content)
|
|
484
|
+
print(f"✅ {template_path}: Syntax valid")
|
|
485
|
+
return True
|
|
486
|
+
|
|
487
|
+
except TemplateSyntaxError as e:
|
|
488
|
+
print(f"❌ {template_path}: Syntax error - {e}")
|
|
489
|
+
return False
|
|
490
|
+
except Exception as e:
|
|
491
|
+
print(f"❌ {template_path}: Error - {e}")
|
|
492
|
+
return False
|
|
493
|
+
|
|
494
|
+
def main():
|
|
495
|
+
"""Validate all templates."""
|
|
496
|
+
template_dir = Path("docs/source/_templates/autosummary")
|
|
497
|
+
templates = list(template_dir.glob("*.rst"))
|
|
498
|
+
|
|
499
|
+
print("🔍 Validating documentation templates...")
|
|
500
|
+
|
|
501
|
+
valid_count = 0
|
|
502
|
+
for template in templates:
|
|
503
|
+
if validate_template(template):
|
|
504
|
+
valid_count += 1
|
|
505
|
+
|
|
506
|
+
print(f"\n📊 Results: {valid_count}/{len(templates)} templates valid")
|
|
507
|
+
|
|
508
|
+
if valid_count == len(templates):
|
|
509
|
+
print("✅ All templates are valid!")
|
|
510
|
+
return 0
|
|
511
|
+
else:
|
|
512
|
+
print("❌ Some templates have errors")
|
|
513
|
+
return 1
|
|
514
|
+
|
|
515
|
+
if __name__ == "__main__":
|
|
516
|
+
sys.exit(main())
|
|
517
|
+
```
|
|
518
|
+
|
|
519
|
+
### 2.6 Implementation Timeline
|
|
520
|
+
|
|
521
|
+
**Template Modification Schedule**:
|
|
522
|
+
|
|
523
|
+
| Task | Duration | Dependencies | Validation |
|
|
524
|
+
|------|----------|--------------|------------|
|
|
525
|
+
| **Enhanced Class Template** | 45 min | Phase 1 analysis | Syntax + build test |
|
|
526
|
+
| **Enhanced Module Template** | 30 min | Class template | Build test |
|
|
527
|
+
| **Function Template Creation** | 30 min | Module template | Syntax + integration |
|
|
528
|
+
| **Package Template Enhancement** | 20 min | All templates | Full build test |
|
|
529
|
+
| **Template Validation Framework** | 25 min | All templates | Automated testing |
|
|
530
|
+
| **Integration Testing** | 30 min | All components | Full documentation build |
|
|
531
|
+
|
|
532
|
+
**Total Phase 2 Time**: 3 hours
|
|
533
|
+
|
|
534
|
+
## Success Criteria
|
|
535
|
+
|
|
536
|
+
### Template Enhancement Validation
|
|
537
|
+
|
|
538
|
+
- [ ] **Enhanced class template** renders physics sections for core classes
|
|
539
|
+
- [ ] **Enhanced module template** shows scientific context appropriately
|
|
540
|
+
- [ ] **Function template** provides physics-specific documentation
|
|
541
|
+
- [ ] **Package template** creates proper scientific overview
|
|
542
|
+
- [ ] **Template validation** passes all syntax and build tests
|
|
543
|
+
- [ ] **Full documentation build** completes without errors or warnings
|
|
544
|
+
|
|
545
|
+
### Physics Documentation Quality
|
|
546
|
+
|
|
547
|
+
- [ ] **Units and dimensions** clearly documented for all physical quantities
|
|
548
|
+
- [ ] **Mathematical relationships** properly formatted with LaTeX support
|
|
549
|
+
- [ ] **Physics constraints** documented for validation methods
|
|
550
|
+
- [ ] **Scientific context** provided for all major components
|
|
551
|
+
- [ ] **Cross-references** work correctly between related physics concepts
|
|
552
|
+
|
|
553
|
+
### Persistence Verification
|
|
554
|
+
|
|
555
|
+
- [ ] **Template changes persist** across multiple documentation rebuilds
|
|
556
|
+
- [ ] **Generated documentation** shows enhanced content consistently
|
|
557
|
+
- [ ] **CI/CD builds** incorporate template enhancements automatically
|
|
558
|
+
- [ ] **No manual intervention** required to maintain enhancements
|
|
559
|
+
|
|
560
|
+
## Commit Tracking
|
|
561
|
+
|
|
562
|
+
- Template backup creation: `<checksum_template_backup>`
|
|
563
|
+
- Enhanced class template: `<checksum_class_template>`
|
|
564
|
+
- Enhanced module template: `<checksum_module_template>`
|
|
565
|
+
- Function template creation: `<checksum_function_template>`
|
|
566
|
+
- Package template enhancement: `<checksum_package_template>`
|
|
567
|
+
- Validation framework: `<checksum_validation_framework>`
|
|
568
|
+
- Phase 2 completion: `<checksum_phase2_complete>`
|
|
569
|
+
|
|
570
|
+
## Risk Mitigation
|
|
571
|
+
|
|
572
|
+
### Template Modification Risks
|
|
573
|
+
|
|
574
|
+
| Risk | Probability | Impact | Mitigation |
|
|
575
|
+
|------|-------------|--------|------------|
|
|
576
|
+
| **Template syntax errors** | Low | High | Validation script + testing |
|
|
577
|
+
| **Build failures** | Low | Medium | Incremental testing |
|
|
578
|
+
| **Content formatting issues** | Medium | Low | Visual review process |
|
|
579
|
+
| **Physics accuracy errors** | Low | High | Scientific review |
|
|
580
|
+
|
|
581
|
+
### Rollback Strategy
|
|
582
|
+
|
|
583
|
+
```bash
|
|
584
|
+
# Emergency rollback procedure
|
|
585
|
+
cd docs/source/_templates/autosummary/
|
|
586
|
+
|
|
587
|
+
# Restore from backups
|
|
588
|
+
mv class.rst.backup class.rst
|
|
589
|
+
mv module.rst.backup module.rst
|
|
590
|
+
|
|
591
|
+
# Remove new templates if problematic
|
|
592
|
+
rm -f function.rst
|
|
593
|
+
|
|
594
|
+
# Rebuild documentation
|
|
595
|
+
cd ../../..
|
|
596
|
+
make clean
|
|
597
|
+
make html
|
|
598
|
+
```
|
|
599
|
+
|
|
600
|
+
## Next Phase Preparation
|
|
601
|
+
|
|
602
|
+
Phase 3 (Build System Integration) should address:
|
|
603
|
+
1. **Post-processing enhancements** for template-generated content
|
|
604
|
+
2. **Build system optimization** for improved template performance
|
|
605
|
+
3. **CI/CD integration validation** to ensure automated builds work
|
|
606
|
+
4. **Additional processing steps** for physics-specific content
|
|
607
|
+
5. **Performance optimization** for large-scale documentation generation
|
|
608
|
+
|
|
609
|
+
The enhanced templates provide the foundation for persistent, physics-aware documentation that will significantly improve the quality and usability of SolarWindPy's documentation system.
|