Commit ·
b974b33
1
Parent(s): 4d5e981
Update license year, refine README content, and enhance requirements for better clarity and organization
Browse files- .gitignore +5 -10
- .idea/FOXES.iml +0 -18
- .idea/inspectionProfiles/profiles_settings.xml +0 -6
- .idea/misc.xml +0 -7
- .idea/shelf/Uncommitted_changes_before_Checkout_at_7_16_25,_8_08_AM_[Changes]/shelved.patch +0 -23
- .idea/shelf/Uncommitted_changes_before_Checkout_at_7_16_25,_8_08_AM_[Changes]1/shelved.patch +0 -0
- .idea/vcs.xml +0 -6
- .idea/workspace.xml +0 -677
- LICENSE +1 -1
- README.md +15 -11
- __init__.py +0 -0
- cleanup_data.py +0 -51
- cleanup_data_mp.py +0 -88
- foxes.yml +273 -0
- requirements.txt +30 -22
.gitignore
CHANGED
|
@@ -131,7 +131,7 @@ cython_debug/
|
|
| 131 |
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
| 132 |
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
| 133 |
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
| 134 |
-
|
| 135 |
|
| 136 |
# Ruff stuff:
|
| 137 |
.ruff_cache/
|
|
@@ -139,7 +139,7 @@ cython_debug/
|
|
| 139 |
# PyPI configuration file
|
| 140 |
.pypirc
|
| 141 |
|
| 142 |
-
.vscode/
|
| 143 |
|
| 144 |
.DS_Store
|
| 145 |
|
|
@@ -151,12 +151,7 @@ wandb/
|
|
| 151 |
|
| 152 |
*.csv
|
| 153 |
|
| 154 |
-
notebooks_tests/
|
| 155 |
-
|
| 156 |
-
/.idea/
|
| 157 |
-
/.vscode/
|
| 158 |
-
|
| 159 |
*.code-workspace
|
| 160 |
-
|
| 161 |
-
.
|
| 162 |
-
|
|
|
|
| 131 |
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
| 132 |
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
| 133 |
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
| 134 |
+
.idea/
|
| 135 |
|
| 136 |
# Ruff stuff:
|
| 137 |
.ruff_cache/
|
|
|
|
| 139 |
# PyPI configuration file
|
| 140 |
.pypirc
|
| 141 |
|
| 142 |
+
.vscode/
|
| 143 |
|
| 144 |
.DS_Store
|
| 145 |
|
|
|
|
| 151 |
|
| 152 |
*.csv
|
| 153 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 154 |
*.code-workspace
|
| 155 |
+
|
| 156 |
+
.claude/
|
| 157 |
+
misc/
|
.idea/FOXES.iml
DELETED
|
@@ -1,18 +0,0 @@
|
|
| 1 |
-
<?xml version="1.0" encoding="UTF-8"?>
|
| 2 |
-
<module type="PYTHON_MODULE" version="4">
|
| 3 |
-
<component name="NewModuleRootManager">
|
| 4 |
-
<content url="file://$MODULE_DIR$">
|
| 5 |
-
<sourceFolder url="file://$MODULE_DIR$" isTestSource="false" />
|
| 6 |
-
<excludePattern pattern="*/T9/*" />
|
| 7 |
-
</content>
|
| 8 |
-
<content url="file:///Volumes/T9">
|
| 9 |
-
<excludeFolder url="file:///Volumes/T9/FOXES_Data" />
|
| 10 |
-
</content>
|
| 11 |
-
<orderEntry type="jdk" jdkName="foxes" jdkType="Python SDK" />
|
| 12 |
-
<orderEntry type="sourceFolder" forTests="false" />
|
| 13 |
-
</component>
|
| 14 |
-
<component name="PyDocumentationSettings">
|
| 15 |
-
<option name="format" value="NUMPY" />
|
| 16 |
-
<option name="myDocStringFormat" value="NumPy" />
|
| 17 |
-
</component>
|
| 18 |
-
</module>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.idea/inspectionProfiles/profiles_settings.xml
DELETED
|
@@ -1,6 +0,0 @@
|
|
| 1 |
-
<component name="InspectionProjectProfileManager">
|
| 2 |
-
<settings>
|
| 3 |
-
<option name="USE_PROJECT_PROFILE" value="false" />
|
| 4 |
-
<version value="1.0" />
|
| 5 |
-
</settings>
|
| 6 |
-
</component>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.idea/misc.xml
DELETED
|
@@ -1,7 +0,0 @@
|
|
| 1 |
-
<?xml version="1.0" encoding="UTF-8"?>
|
| 2 |
-
<project version="4">
|
| 3 |
-
<component name="Black">
|
| 4 |
-
<option name="sdkName" value="Python 3.11 (FOXES)" />
|
| 5 |
-
</component>
|
| 6 |
-
<component name="ProjectRootManager" version="2" project-jdk-name="foxes" project-jdk-type="Python SDK" />
|
| 7 |
-
</project>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.idea/shelf/Uncommitted_changes_before_Checkout_at_7_16_25,_8_08_AM_[Changes]/shelved.patch
DELETED
|
@@ -1,23 +0,0 @@
|
|
| 1 |
-
Index: flaring/vision_transformers/vision_transformer.py
|
| 2 |
-
IDEA additional info:
|
| 3 |
-
Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP
|
| 4 |
-
<+>\nimport torch\nimport torch.nn as nn\nimport pytorch_lightning as pl\nfrom timm import create_model\n\nclass VisionTransformerFlaringModel(pl.LightningModule):\n def __init__(self, d_input=6, d_output=1, eve_norm=(0, 1), lr=1e-4, model_name='vit_base_patch16_224', pretrained=True):\n super().__init__()\n self.save_hyperparameters()\n self.eve_norm = eve_norm\n self.lr = lr\n self.vit = create_model(\n model_name,\n pretrained=pretrained,\n in_chans=d_input,\n num_classes=0,\n global_pool='avg'\n )\n self.regression_head = nn.Linear(self.vit.embed_dim, d_output)\n self.loss_func = nn.HuberLoss()\n\n def forward(self, x):\n x = x.permute(0, 3, 1, 2)\n features = self.vit(x)\n output = self.regression_head(features)\n return output.squeeze(-1)\n\n def training_step(self, batch, batch_idx):\n (aia_img, _), sxr_target = batch\n sxr_pred = self(aia_img)\n loss = self.loss_func(sxr_pred, sxr_target)\n self.log('train_loss', loss, prog_bar=True)\n return loss\n\n def validation_step(self, batch, batch_idx):\n (aia_img, _), sxr_target = batch\n sxr_pred = self(aia_img)\n loss = self.loss_func(sxr_pred, sxr_target)\n self.log('valid_loss', loss, prog_bar=True)\n return loss\n\n def test_step(self, batch, batch_idx):\n (aia_img, _), sxr_target = batch\n sxr_pred = self(aia_img)\n loss = self.loss_func(sxr_pred, sxr_target)\n self.log('test_loss', loss, prog_bar=True)\n return loss\n\n def configure_optimizers(self):\n optimizer = torch.optim.AdamW(self.parameters(), lr=self.lr, weight_decay=0.01)\n scheduler = torch.optim.lr_scheduler.CosineAnnealingLR(optimizer, T_max=10)\n return {\n 'optimizer': optimizer,\n 'lr_scheduler': {\n 'scheduler': scheduler,\n 'monitor': 'valid_loss',\n 'interval': 'epoch',\n 'frequency': 1\n }\n }\n\n def predict_step(self, batch, batch_idx, dataloader_idx=0):\n (aia_img, _), _ = batch\n sxr_pred = self(aia_img)\n sxr_pred = sxr_pred * self.eve_norm[1] + self.eve_norm[0]\n sxr_pred = 10 ** sxr_pred - 1e-8\n return sxr_pred\n
|
| 5 |
-
===================================================================
|
| 6 |
-
diff --git a/flaring/vision_transformers/vision_transformer.py b/flaring/vision_transformers/vision_transformer.py
|
| 7 |
-
--- a/flaring/vision_transformers/vision_transformer.py (revision bb90fb79a516910ac93442850698317720adf6d5)
|
| 8 |
-
+++ b/flaring/vision_transformers/vision_transformer.py (date 1752678502848)
|
| 9 |
-
@@ -5,7 +5,7 @@
|
| 10 |
-
from timm import create_model
|
| 11 |
-
|
| 12 |
-
class VisionTransformerFlaringModel(pl.LightningModule):
|
| 13 |
-
- def __init__(self, d_input=6, d_output=1, eve_norm=(0, 1), lr=1e-4, model_name='vit_base_patch16_224', pretrained=True):
|
| 14 |
-
+ def __init__(self, d_input=6, d_output=1, eve_norm=(0, 1), lr=1e-4, model_name='vit_small_patch16_224', pretrained=True):
|
| 15 |
-
super().__init__()
|
| 16 |
-
self.save_hyperparameters()
|
| 17 |
-
self.eve_norm = eve_norm
|
| 18 |
-
@@ -66,3 +66,5 @@
|
| 19 |
-
sxr_pred = sxr_pred * self.eve_norm[1] + self.eve_norm[0]
|
| 20 |
-
sxr_pred = 10 ** sxr_pred - 1e-8
|
| 21 |
-
return sxr_pred
|
| 22 |
-
+
|
| 23 |
-
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.idea/shelf/Uncommitted_changes_before_Checkout_at_7_16_25,_8_08_AM_[Changes]1/shelved.patch
DELETED
|
File without changes
|
.idea/vcs.xml
DELETED
|
@@ -1,6 +0,0 @@
|
|
| 1 |
-
<?xml version="1.0" encoding="UTF-8"?>
|
| 2 |
-
<project version="4">
|
| 3 |
-
<component name="VcsDirectoryMappings">
|
| 4 |
-
<mapping directory="" vcs="Git" />
|
| 5 |
-
</component>
|
| 6 |
-
</project>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.idea/workspace.xml
DELETED
|
@@ -1,677 +0,0 @@
|
|
| 1 |
-
<?xml version="1.0" encoding="UTF-8"?>
|
| 2 |
-
<project version="4">
|
| 3 |
-
<component name="AutoImportSettings">
|
| 4 |
-
<option name="autoReloadType" value="SELECTIVE" />
|
| 5 |
-
</component>
|
| 6 |
-
<component name="ChangeListManager">
|
| 7 |
-
<list default="true" id="e883d810-3b4e-470d-b72e-9ed3eee941a0" name="Changes" comment="Enhance plotting themes for poster analysis, refine regression plot scaling, and add data cleanup utilities - Updated flare_analysis_poster.py to use white text and spines for improved visibility on dark backgrounds, adjusted legend and grid styling, and improved annotation contrast. - Refined regression plot scaling in evaluation.py: enforced realistic log-scale bounds, added buffer for axis limits, and improved color mapping for 2D histograms. - Added cleanup_data.py and cleanup_data_mp.py scripts for identifying and moving extraneous .npy files not present in train/val CSVs, with multiprocessing support. - Introduced processing_utils.py with functions for flare classification, parallel file processing, and data summarization. - Adjusted local_config.yaml time range and updated FOXES.iml data folder structure.">
|
| 8 |
-
<change afterPath="$PROJECT_DIR$/notebook_tests/PlottingResults.ipynb" afterDir="false" />
|
| 9 |
-
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
| 10 |
-
<change beforePath="$PROJECT_DIR$/forecasting/inference/evaluation.py" beforeDir="false" afterPath="$PROJECT_DIR$/forecasting/inference/evaluation.py" afterDir="false" />
|
| 11 |
-
<change beforePath="$PROJECT_DIR$/notebook_tests/Additional_Results_Analysis.ipynb" beforeDir="false" afterPath="$PROJECT_DIR$/notebook_tests/Additional_Results_Analysis.ipynb" afterDir="false" />
|
| 12 |
-
<change beforePath="$PROJECT_DIR$/notebook_tests/Additional_Results_Investigation_Download.ipynb" beforeDir="false" afterPath="$PROJECT_DIR$/notebook_tests/Additional_Results_Investigation_Download.ipynb" afterDir="false" />
|
| 13 |
-
<change beforePath="$PROJECT_DIR$/notebook_tests/processing_utils.py" beforeDir="false" afterPath="$PROJECT_DIR$/notebook_tests/processing_utils.py" afterDir="false" />
|
| 14 |
-
<change beforePath="$PROJECT_DIR$/notebook_tests/timelineplot.ipynb" beforeDir="false" afterPath="$PROJECT_DIR$/notebook_tests/timelineplot.ipynb" afterDir="false" />
|
| 15 |
-
<change beforePath="$PROJECT_DIR$/notebook_tests/weirdsxr.ipynb" beforeDir="false" afterPath="$PROJECT_DIR$/notebook_tests/weirdsxr.ipynb" afterDir="false" />
|
| 16 |
-
</list>
|
| 17 |
-
<option name="SHOW_DIALOG" value="false" />
|
| 18 |
-
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
| 19 |
-
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
| 20 |
-
<option name="LAST_RESOLUTION" value="IGNORE" />
|
| 21 |
-
</component>
|
| 22 |
-
<component name="CopilotPersistence">
|
| 23 |
-
<persistenceIdMap>
|
| 24 |
-
<entry key="_/Users/griffingoodwin/Documents/gitrepos/FOXES" value="38WeoPd73qtvhPoxz6TM6eycX2x" />
|
| 25 |
-
<entry key="_/Volumes/T9" value="38a78qcQSOmwaRego2V2zivIuLc" />
|
| 26 |
-
<entry key="_/Volumes/T9/FOXES_Data" value="300pTKGqQDgkIrymxlGIrm6ZrO3" />
|
| 27 |
-
</persistenceIdMap>
|
| 28 |
-
</component>
|
| 29 |
-
<component name="EmbeddingIndexingInfo">
|
| 30 |
-
<option name="cachedIndexableFilesCount" value="109" />
|
| 31 |
-
<option name="fileBasedEmbeddingIndicesEnabled" value="true" />
|
| 32 |
-
</component>
|
| 33 |
-
<component name="FileTemplateManagerImpl">
|
| 34 |
-
<option name="RECENT_TEMPLATES">
|
| 35 |
-
<list>
|
| 36 |
-
<option value="Python Script" />
|
| 37 |
-
<option value="Jupyter Notebook" />
|
| 38 |
-
</list>
|
| 39 |
-
</option>
|
| 40 |
-
</component>
|
| 41 |
-
<component name="Git.Settings">
|
| 42 |
-
<option name="RECENT_BRANCH_BY_REPOSITORY">
|
| 43 |
-
<map>
|
| 44 |
-
<entry key="$PROJECT_DIR$" value="flaring" />
|
| 45 |
-
</map>
|
| 46 |
-
</option>
|
| 47 |
-
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
| 48 |
-
</component>
|
| 49 |
-
<component name="GitHubPullRequestSearchHistory">{
|
| 50 |
-
"lastFilter": {}
|
| 51 |
-
}</component>
|
| 52 |
-
<component name="GithubPullRequestsUISettings">{
|
| 53 |
-
"selectedUrlAndAccountId": {
|
| 54 |
-
"url": "git@github.com:griffin-goodwin/FOXES.git",
|
| 55 |
-
"accountId": "dd5815ef-d79a-4f68-9de1-d483f99a50dd"
|
| 56 |
-
}
|
| 57 |
-
}</component>
|
| 58 |
-
<component name="McpProjectServerCommands">
|
| 59 |
-
<commands />
|
| 60 |
-
<urls />
|
| 61 |
-
</component>
|
| 62 |
-
<component name="NamedScopeManager">
|
| 63 |
-
<scope name="hide ._" pattern="!*.___*" />
|
| 64 |
-
</component>
|
| 65 |
-
<component name="ProjectColorInfo">{
|
| 66 |
-
"associatedIndex": 8
|
| 67 |
-
}</component>
|
| 68 |
-
<component name="ProjectId" id="300pTKGqQDgkIrymxlGIrm6ZrO3" />
|
| 69 |
-
<component name="ProjectViewState">
|
| 70 |
-
<option name="hideEmptyMiddlePackages" value="true" />
|
| 71 |
-
<option name="showLibraryContents" value="true" />
|
| 72 |
-
<option name="sortKey" value="BY_TIME_DESCENDING" />
|
| 73 |
-
</component>
|
| 74 |
-
<component name="PropertiesComponent">{
|
| 75 |
-
"keyToString": {
|
| 76 |
-
"ModuleVcsDetector.initialDetectionPerformed": "true",
|
| 77 |
-
"RunOnceActivity.MCP Project settings loaded": "true",
|
| 78 |
-
"RunOnceActivity.ShowReadmeOnStart": "true",
|
| 79 |
-
"RunOnceActivity.TerminalTabsStorage.copyFrom.TerminalArrangementManager.252": "true",
|
| 80 |
-
"RunOnceActivity.git.unshallow": "true",
|
| 81 |
-
"RunOnceActivity.typescript.service.memoryLimit.init": "true",
|
| 82 |
-
"WebServerToolWindowPanel.toolwindow.highlight.mappings": "true",
|
| 83 |
-
"WebServerToolWindowPanel.toolwindow.highlight.symlinks": "true",
|
| 84 |
-
"WebServerToolWindowPanel.toolwindow.show.date": "false",
|
| 85 |
-
"WebServerToolWindowPanel.toolwindow.show.permissions": "false",
|
| 86 |
-
"WebServerToolWindowPanel.toolwindow.show.size": "false",
|
| 87 |
-
"ai.playground.ignore.import.keys.banner.in.settings": "true",
|
| 88 |
-
"com.google.cloudcode.ide_session_index": "20251029_0000",
|
| 89 |
-
"com.intellij.ml.llm.matterhorn.ej.ui.settings.DefaultModelSelectionForGA.v1": "true",
|
| 90 |
-
"database.data.extractors.current.export.id": "Comma-separated (CSV)_id",
|
| 91 |
-
"git-widget-placeholder": "main",
|
| 92 |
-
"junie.onboarding.icon.badge.shown": "true",
|
| 93 |
-
"last_opened_file_path": "/Users/griffingoodwin/Documents/gitrepos/FOXES",
|
| 94 |
-
"node.js.detected.package.eslint": "true",
|
| 95 |
-
"node.js.selected.package.eslint": "(autodetect)",
|
| 96 |
-
"node.js.selected.package.tslint": "(autodetect)",
|
| 97 |
-
"nodejs_package_manager_path": "npm",
|
| 98 |
-
"settings.editor.selected.configurable": "jupyter.general.settings",
|
| 99 |
-
"to.speed.mode.migration.done": "true",
|
| 100 |
-
"vue.rearranger.settings.migration": "true"
|
| 101 |
-
}
|
| 102 |
-
}</component>
|
| 103 |
-
<component name="RecapSpentCounter">
|
| 104 |
-
<option name="endsOfQuotaMs" value="1768932019187" />
|
| 105 |
-
<option name="spentUsd" value="0.032168448" />
|
| 106 |
-
</component>
|
| 107 |
-
<component name="RecapUselessUpdatesCounter">
|
| 108 |
-
<option name="suspendCountdown" value="0" />
|
| 109 |
-
</component>
|
| 110 |
-
<component name="RecentsManager">
|
| 111 |
-
<key name="MoveFile.RECENT_KEYS">
|
| 112 |
-
<recent name="$PROJECT_DIR$/flaring/forecasting/training" />
|
| 113 |
-
<recent name="$PROJECT_DIR$/flaring/forecasting/models" />
|
| 114 |
-
<recent name="$PROJECT_DIR$/flaring/forecasting/data_loaders" />
|
| 115 |
-
<recent name="$PROJECT_DIR$/flaring/Forecasting/inference" />
|
| 116 |
-
<recent name="$PROJECT_DIR$" />
|
| 117 |
-
</key>
|
| 118 |
-
</component>
|
| 119 |
-
<component name="SharedIndexes">
|
| 120 |
-
<attachedChunks>
|
| 121 |
-
<set>
|
| 122 |
-
<option value="bundled-js-predefined-d6986cc7102b-9b0f141eb926-JavaScript-PY-253.29346.142" />
|
| 123 |
-
<option value="bundled-python-sdk-f2b7a9f6281b-6e1f45a539f7-com.jetbrains.pycharm.pro.sharedIndexes.bundled-PY-253.29346.142" />
|
| 124 |
-
</set>
|
| 125 |
-
</attachedChunks>
|
| 126 |
-
</component>
|
| 127 |
-
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
| 128 |
-
<component name="SvnConfiguration">
|
| 129 |
-
<configuration>$USER_HOME$/.subversion</configuration>
|
| 130 |
-
<option name="sshConnectionType" value="PRIVATE_KEY" />
|
| 131 |
-
<option name="sshUserName" value="griffin-goodwin" />
|
| 132 |
-
<option name="sshPrivateKeyPath" value="$USER_HOME$/.ssh" />
|
| 133 |
-
</component>
|
| 134 |
-
<component name="TaskManager">
|
| 135 |
-
<task active="true" id="Default" summary="Default task">
|
| 136 |
-
<changelist id="e883d810-3b4e-470d-b72e-9ed3eee941a0" name="Changes" comment="fixed wandb name scheme" />
|
| 137 |
-
<created>1752774351420</created>
|
| 138 |
-
<option name="number" value="Default" />
|
| 139 |
-
<option name="presentableId" value="Default" />
|
| 140 |
-
<updated>1752774351420</updated>
|
| 141 |
-
<workItem from="1752774352707" duration="28648000" />
|
| 142 |
-
<workItem from="1752962518515" duration="2550000" />
|
| 143 |
-
<workItem from="1753306014729" duration="13973000" />
|
| 144 |
-
<workItem from="1753374480667" duration="45913000" />
|
| 145 |
-
<workItem from="1753545524483" duration="2816000" />
|
| 146 |
-
<workItem from="1753630961668" duration="9897000" />
|
| 147 |
-
<workItem from="1753929248247" duration="23397000" />
|
| 148 |
-
<workItem from="1754000190506" duration="10165000" />
|
| 149 |
-
<workItem from="1754146439867" duration="7692000" />
|
| 150 |
-
<workItem from="1754282226274" duration="5949000" />
|
| 151 |
-
<workItem from="1754443347602" duration="1827000" />
|
| 152 |
-
<workItem from="1754482805314" duration="230000" />
|
| 153 |
-
<workItem from="1754483043965" duration="195000" />
|
| 154 |
-
<workItem from="1754483254382" duration="55570000" />
|
| 155 |
-
<workItem from="1754661837523" duration="32924000" />
|
| 156 |
-
<workItem from="1754949280985" duration="1853000" />
|
| 157 |
-
<workItem from="1755012015116" duration="134000" />
|
| 158 |
-
<workItem from="1755012234233" duration="16222000" />
|
| 159 |
-
<workItem from="1755110862054" duration="4930000" />
|
| 160 |
-
<workItem from="1755182186851" duration="7000" />
|
| 161 |
-
<workItem from="1755182816790" duration="16256000" />
|
| 162 |
-
<workItem from="1755274543631" duration="1138000" />
|
| 163 |
-
<workItem from="1755289237970" duration="2241000" />
|
| 164 |
-
<workItem from="1755526973852" duration="8608000" />
|
| 165 |
-
<workItem from="1755801805292" duration="58749000" />
|
| 166 |
-
<workItem from="1756171392559" duration="40222000" />
|
| 167 |
-
<workItem from="1756308588067" duration="10459000" />
|
| 168 |
-
<workItem from="1756386184391" duration="64689000" />
|
| 169 |
-
<workItem from="1756818485332" duration="17000" />
|
| 170 |
-
<workItem from="1756821188374" duration="7721000" />
|
| 171 |
-
<workItem from="1765907612776" duration="685000" />
|
| 172 |
-
<workItem from="1765908307908" duration="552000" />
|
| 173 |
-
<workItem from="1765909073111" duration="961000" />
|
| 174 |
-
<workItem from="1765910046969" duration="346000" />
|
| 175 |
-
<workItem from="1765910410274" duration="468000" />
|
| 176 |
-
<workItem from="1765915810103" duration="1093000" />
|
| 177 |
-
<workItem from="1765916926305" duration="367000" />
|
| 178 |
-
<workItem from="1765917308304" duration="283000" />
|
| 179 |
-
<workItem from="1765919768282" duration="248000" />
|
| 180 |
-
<workItem from="1765920350623" duration="2783000" />
|
| 181 |
-
<workItem from="1765923830409" duration="95000" />
|
| 182 |
-
<workItem from="1765923932850" duration="4525000" />
|
| 183 |
-
<workItem from="1766071632234" duration="557000" />
|
| 184 |
-
<workItem from="1766072202434" duration="3172000" />
|
| 185 |
-
<workItem from="1767642746610" duration="7711000" />
|
| 186 |
-
<workItem from="1768318275660" duration="7100000" />
|
| 187 |
-
<workItem from="1768511581940" duration="1375000" />
|
| 188 |
-
<workItem from="1768590208522" duration="10356000" />
|
| 189 |
-
<workItem from="1768855583083" duration="7118000" />
|
| 190 |
-
<workItem from="1768919929930" duration="31494000" />
|
| 191 |
-
<workItem from="1769025671291" duration="5485000" />
|
| 192 |
-
<workItem from="1769032850655" duration="18248000" />
|
| 193 |
-
</task>
|
| 194 |
-
<task id="LOCAL-00007" summary="Implement Vision Transformer model (custom) and update configuration for model selection + changed data loader outputs (it was partially redundant)">
|
| 195 |
-
<option name="closed" value="true" />
|
| 196 |
-
<created>1753201034025</created>
|
| 197 |
-
<option name="number" value="00007" />
|
| 198 |
-
<option name="presentableId" value="LOCAL-00007" />
|
| 199 |
-
<option name="project" value="LOCAL" />
|
| 200 |
-
<updated>1753201034025</updated>
|
| 201 |
-
</task>
|
| 202 |
-
<task id="LOCAL-00008" summary="Working on attention callbacks">
|
| 203 |
-
<option name="closed" value="true" />
|
| 204 |
-
<created>1753203631078</created>
|
| 205 |
-
<option name="number" value="00008" />
|
| 206 |
-
<option name="presentableId" value="LOCAL-00008" />
|
| 207 |
-
<option name="project" value="LOCAL" />
|
| 208 |
-
<updated>1753203631078</updated>
|
| 209 |
-
</task>
|
| 210 |
-
<task id="LOCAL-00009" summary="Refactor attention map callback to log attention plots and add multi-head visualization">
|
| 211 |
-
<option name="closed" value="true" />
|
| 212 |
-
<created>1753205974581</created>
|
| 213 |
-
<option name="number" value="00009" />
|
| 214 |
-
<option name="presentableId" value="LOCAL-00009" />
|
| 215 |
-
<option name="project" value="LOCAL" />
|
| 216 |
-
<updated>1753205974581</updated>
|
| 217 |
-
</task>
|
| 218 |
-
<task id="LOCAL-00010" summary="refactor model configuration and callbacks; update data paths and loss functions">
|
| 219 |
-
<option name="closed" value="true" />
|
| 220 |
-
<created>1753216904168</created>
|
| 221 |
-
<option name="number" value="00010" />
|
| 222 |
-
<option name="presentableId" value="LOCAL-00010" />
|
| 223 |
-
<option name="project" value="LOCAL" />
|
| 224 |
-
<updated>1753216904168</updated>
|
| 225 |
-
</task>
|
| 226 |
-
<task id="LOCAL-00011" summary="refactor attention visualization; update callback to log attention maps and adjust model configuration">
|
| 227 |
-
<option name="closed" value="true" />
|
| 228 |
-
<created>1753221151466</created>
|
| 229 |
-
<option name="number" value="00011" />
|
| 230 |
-
<option name="presentableId" value="LOCAL-00011" />
|
| 231 |
-
<option name="project" value="LOCAL" />
|
| 232 |
-
<updated>1753221151466</updated>
|
| 233 |
-
</task>
|
| 234 |
-
<task id="LOCAL-00012" summary="refactor model configuration; update vit parameters and checkpoint callback monitor">
|
| 235 |
-
<option name="closed" value="true" />
|
| 236 |
-
<created>1753223740556</created>
|
| 237 |
-
<option name="number" value="00012" />
|
| 238 |
-
<option name="presentableId" value="LOCAL-00012" />
|
| 239 |
-
<option name="project" value="LOCAL" />
|
| 240 |
-
<updated>1753223740556</updated>
|
| 241 |
-
</task>
|
| 242 |
-
<task id="LOCAL-00013" summary="refactor model configuration and loss functions; update batch size, patch size, and logging metrics">
|
| 243 |
-
<option name="closed" value="true" />
|
| 244 |
-
<created>1753280393483</created>
|
| 245 |
-
<option name="number" value="00013" />
|
| 246 |
-
<option name="presentableId" value="LOCAL-00013" />
|
| 247 |
-
<option name="project" value="LOCAL" />
|
| 248 |
-
<updated>1753280393483</updated>
|
| 249 |
-
</task>
|
| 250 |
-
<task id="LOCAL-00014" summary="refactor file structure; rename and reorganize model, callback, and configuration files; added configuration file for inference">
|
| 251 |
-
<option name="closed" value="true" />
|
| 252 |
-
<created>1753285792536</created>
|
| 253 |
-
<option name="number" value="00014" />
|
| 254 |
-
<option name="presentableId" value="LOCAL-00014" />
|
| 255 |
-
<option name="project" value="LOCAL" />
|
| 256 |
-
<updated>1753285792536</updated>
|
| 257 |
-
</task>
|
| 258 |
-
<task id="LOCAL-00015" summary="added plotly graphs for inference">
|
| 259 |
-
<option name="closed" value="true" />
|
| 260 |
-
<created>1753290195559</created>
|
| 261 |
-
<option name="number" value="00015" />
|
| 262 |
-
<option name="presentableId" value="LOCAL-00015" />
|
| 263 |
-
<option name="project" value="LOCAL" />
|
| 264 |
-
<updated>1753290195559</updated>
|
| 265 |
-
</task>
|
| 266 |
-
<task id="LOCAL-00016" summary="add FastViT model for solar flare prediction; update configuration files and optimize inference batch processing">
|
| 267 |
-
<option name="closed" value="true" />
|
| 268 |
-
<created>1753303152301</created>
|
| 269 |
-
<option name="number" value="00016" />
|
| 270 |
-
<option name="presentableId" value="LOCAL-00016" />
|
| 271 |
-
<option name="project" value="LOCAL" />
|
| 272 |
-
<updated>1753303152301</updated>
|
| 273 |
-
</task>
|
| 274 |
-
<task id="LOCAL-00017" summary="refactor model configuration and training scripts; update weight paths, batch size, and learning rate scheduler; add plotting functionality for attention maps">
|
| 275 |
-
<option name="closed" value="true" />
|
| 276 |
-
<created>1753380808931</created>
|
| 277 |
-
<option name="number" value="00017" />
|
| 278 |
-
<option name="presentableId" value="LOCAL-00017" />
|
| 279 |
-
<option name="project" value="LOCAL" />
|
| 280 |
-
<updated>1753380808931</updated>
|
| 281 |
-
</task>
|
| 282 |
-
<task id="LOCAL-00018" summary="refactor training and inference scripts; update model configuration, batch size, and weight paths; enhance data loading with prefetching; add support for loading checkpoints, added new weight to loss to mitigate few m / x class points">
|
| 283 |
-
<option name="closed" value="true" />
|
| 284 |
-
<created>1753454404812</created>
|
| 285 |
-
<option name="number" value="00018" />
|
| 286 |
-
<option name="presentableId" value="LOCAL-00018" />
|
| 287 |
-
<option name="project" value="LOCAL" />
|
| 288 |
-
<updated>1753454404812</updated>
|
| 289 |
-
</task>
|
| 290 |
-
<task id="LOCAL-00019" summary="update plotting script to change output video name and adjust timestamp generation interval;">
|
| 291 |
-
<option name="closed" value="true" />
|
| 292 |
-
<created>1753469024793</created>
|
| 293 |
-
<option name="number" value="00019" />
|
| 294 |
-
<option name="presentableId" value="LOCAL-00019" />
|
| 295 |
-
<option name="project" value="LOCAL" />
|
| 296 |
-
<updated>1753469024793</updated>
|
| 297 |
-
</task>
|
| 298 |
-
<task id="LOCAL-00020" summary="remove unused resizing and normalization code from SDOAIA_dataloader">
|
| 299 |
-
<option name="closed" value="true" />
|
| 300 |
-
<created>1753570672548</created>
|
| 301 |
-
<option name="number" value="00020" />
|
| 302 |
-
<option name="presentableId" value="LOCAL-00020" />
|
| 303 |
-
<option name="project" value="LOCAL" />
|
| 304 |
-
<updated>1753570672548</updated>
|
| 305 |
-
</task>
|
| 306 |
-
<task id="LOCAL-00021" summary="add visualization notebook and refactor model configuration; update batch size, patch size, and dropout rate; implement dynamic loss for SXR regression">
|
| 307 |
-
<option name="closed" value="true" />
|
| 308 |
-
<created>1753730360460</created>
|
| 309 |
-
<option name="number" value="00021" />
|
| 310 |
-
<option name="presentableId" value="LOCAL-00021" />
|
| 311 |
-
<option name="project" value="LOCAL" />
|
| 312 |
-
<updated>1753730360460</updated>
|
| 313 |
-
</task>
|
| 314 |
-
<task id="LOCAL-00022" summary="update model configuration and training scripts; adjust learning rate, epochs, and data paths; refactor trainer initialization and logging">
|
| 315 |
-
<option name="closed" value="true" />
|
| 316 |
-
<created>1753821485670</created>
|
| 317 |
-
<option name="number" value="00022" />
|
| 318 |
-
<option name="presentableId" value="LOCAL-00022" />
|
| 319 |
-
<option name="project" value="LOCAL" />
|
| 320 |
-
<updated>1753821485670</updated>
|
| 321 |
-
</task>
|
| 322 |
-
<task id="LOCAL-00023" summary="update model configuration and training scripts; change selected model to 'ViT Custom', increase epochs to 250, and adjust output paths; refactor model loading in inference to support hybrid models and attention weight saving">
|
| 323 |
-
<option name="closed" value="true" />
|
| 324 |
-
<created>1753883159604</created>
|
| 325 |
-
<option name="number" value="00023" />
|
| 326 |
-
<option name="presentableId" value="LOCAL-00023" />
|
| 327 |
-
<option name="project" value="LOCAL" />
|
| 328 |
-
<updated>1753883159604</updated>
|
| 329 |
-
</task>
|
| 330 |
-
<task id="LOCAL-00024" summary="added evaluation script">
|
| 331 |
-
<option name="closed" value="true" />
|
| 332 |
-
<created>1753901835422</created>
|
| 333 |
-
<option name="number" value="00024" />
|
| 334 |
-
<option name="presentableId" value="LOCAL-00024" />
|
| 335 |
-
<option name="project" value="LOCAL" />
|
| 336 |
-
<updated>1753901835422</updated>
|
| 337 |
-
</task>
|
| 338 |
-
<task id="LOCAL-00025" summary="update model configuration and evaluation scripts; adjust checkpoint paths, output file names, and weight paths; enhance evaluation metrics for flare classes and improve visualization aesthetics">
|
| 339 |
-
<option name="closed" value="true" />
|
| 340 |
-
<created>1754083359321</created>
|
| 341 |
-
<option name="number" value="00025" />
|
| 342 |
-
<option name="presentableId" value="LOCAL-00025" />
|
| 343 |
-
<option name="project" value="LOCAL" />
|
| 344 |
-
<updated>1754083359321</updated>
|
| 345 |
-
</task>
|
| 346 |
-
<task id="LOCAL-00026" summary="updated model and data loaders to take in different wavelengths!">
|
| 347 |
-
<option name="closed" value="true" />
|
| 348 |
-
<created>1754149724483</created>
|
| 349 |
-
<option name="number" value="00026" />
|
| 350 |
-
<option name="presentableId" value="LOCAL-00026" />
|
| 351 |
-
<option name="project" value="LOCAL" />
|
| 352 |
-
<updated>1754149724484</updated>
|
| 353 |
-
</task>
|
| 354 |
-
<task id="LOCAL-00027" summary="refactor model evaluation and configuration to include sxr norm; update model name to 'ViT',">
|
| 355 |
-
<option name="closed" value="true" />
|
| 356 |
-
<created>1754154137848</created>
|
| 357 |
-
<option name="number" value="00027" />
|
| 358 |
-
<option name="presentableId" value="LOCAL-00027" />
|
| 359 |
-
<option name="project" value="LOCAL" />
|
| 360 |
-
<updated>1754154137848</updated>
|
| 361 |
-
</task>
|
| 362 |
-
<task id="LOCAL-00028" summary="Changed weights for ViT">
|
| 363 |
-
<option name="closed" value="true" />
|
| 364 |
-
<created>1754319038616</created>
|
| 365 |
-
<option name="number" value="00028" />
|
| 366 |
-
<option name="presentableId" value="LOCAL-00028" />
|
| 367 |
-
<option name="project" value="LOCAL" />
|
| 368 |
-
<updated>1754319038616</updated>
|
| 369 |
-
</task>
|
| 370 |
-
<task id="LOCAL-00029" summary="Enhance AIA_GOESDataset to support cadence and reference time">
|
| 371 |
-
<option name="closed" value="true" />
|
| 372 |
-
<created>1754412270354</created>
|
| 373 |
-
<option name="number" value="00029" />
|
| 374 |
-
<option name="presentableId" value="LOCAL-00029" />
|
| 375 |
-
<option name="project" value="LOCAL" />
|
| 376 |
-
<updated>1754412270354</updated>
|
| 377 |
-
</task>
|
| 378 |
-
<task id="LOCAL-00030" summary="Add oversampling functionality to AIA_GOESDataset and update configuration">
|
| 379 |
-
<option name="closed" value="true" />
|
| 380 |
-
<created>1754417745022</created>
|
| 381 |
-
<option name="number" value="00030" />
|
| 382 |
-
<option name="presentableId" value="LOCAL-00030" />
|
| 383 |
-
<option name="project" value="LOCAL" />
|
| 384 |
-
<updated>1754417745022</updated>
|
| 385 |
-
</task>
|
| 386 |
-
<task id="LOCAL-00031" summary="Update AIA wavelengths and model configuration in config.yaml; adjust oversampling setting in dataloader">
|
| 387 |
-
<option name="closed" value="true" />
|
| 388 |
-
<created>1754426834672</created>
|
| 389 |
-
<option name="number" value="00031" />
|
| 390 |
-
<option name="presentableId" value="LOCAL-00031" />
|
| 391 |
-
<option name="project" value="LOCAL" />
|
| 392 |
-
<updated>1754426834672</updated>
|
| 393 |
-
</task>
|
| 394 |
-
<task id="LOCAL-00032" summary="added some checks to make sure model training and validation is successful">
|
| 395 |
-
<option name="closed" value="true" />
|
| 396 |
-
<created>1754431311188</created>
|
| 397 |
-
<option name="number" value="00032" />
|
| 398 |
-
<option name="presentableId" value="LOCAL-00032" />
|
| 399 |
-
<option name="project" value="LOCAL" />
|
| 400 |
-
<updated>1754431311188</updated>
|
| 401 |
-
</task>
|
| 402 |
-
<task id="LOCAL-00033" summary="updated the weighted loss to return proper multiplication values... also reduced weighting slightly">
|
| 403 |
-
<option name="closed" value="true" />
|
| 404 |
-
<created>1754482944827</created>
|
| 405 |
-
<option name="number" value="00033" />
|
| 406 |
-
<option name="presentableId" value="LOCAL-00033" />
|
| 407 |
-
<option name="project" value="LOCAL" />
|
| 408 |
-
<updated>1754482944827</updated>
|
| 409 |
-
</task>
|
| 410 |
-
<task id="LOCAL-00034" summary="updated the weighted loss">
|
| 411 |
-
<option name="closed" value="true" />
|
| 412 |
-
<created>1754483729804</created>
|
| 413 |
-
<option name="number" value="00034" />
|
| 414 |
-
<option name="presentableId" value="LOCAL-00034" />
|
| 415 |
-
<option name="project" value="LOCAL" />
|
| 416 |
-
<updated>1754483729804</updated>
|
| 417 |
-
</task>
|
| 418 |
-
<task id="LOCAL-00035" summary="added some additional metrics to analyze the validation loss per class">
|
| 419 |
-
<option name="closed" value="true" />
|
| 420 |
-
<created>1754487789125</created>
|
| 421 |
-
<option name="number" value="00035" />
|
| 422 |
-
<option name="presentableId" value="LOCAL-00035" />
|
| 423 |
-
<option name="project" value="LOCAL" />
|
| 424 |
-
<updated>1754487789125</updated>
|
| 425 |
-
</task>
|
| 426 |
-
<task id="LOCAL-00036" summary="refactor evaluation and inference code; add support for uncertainty in predictions and implement MC Dropout evaluation">
|
| 427 |
-
<option name="closed" value="true" />
|
| 428 |
-
<created>1754500617537</created>
|
| 429 |
-
<option name="number" value="00036" />
|
| 430 |
-
<option name="presentableId" value="LOCAL-00036" />
|
| 431 |
-
<option name="project" value="LOCAL" />
|
| 432 |
-
<updated>1754500617537</updated>
|
| 433 |
-
</task>
|
| 434 |
-
<task id="LOCAL-00037" summary="enhance evaluation plots; added flare class axes">
|
| 435 |
-
<option name="closed" value="true" />
|
| 436 |
-
<created>1754506057840</created>
|
| 437 |
-
<option name="number" value="00037" />
|
| 438 |
-
<option name="presentableId" value="LOCAL-00037" />
|
| 439 |
-
<option name="project" value="LOCAL" />
|
| 440 |
-
<updated>1754506057840</updated>
|
| 441 |
-
</task>
|
| 442 |
-
<task id="LOCAL-00038" summary="refactor evaluation and inference code; add uncertainty handling and update model parameters">
|
| 443 |
-
<option name="closed" value="true" />
|
| 444 |
-
<created>1754666197648</created>
|
| 445 |
-
<option name="number" value="00038" />
|
| 446 |
-
<option name="presentableId" value="LOCAL-00038" />
|
| 447 |
-
<option name="project" value="LOCAL" />
|
| 448 |
-
<updated>1754666197648</updated>
|
| 449 |
-
</task>
|
| 450 |
-
<task id="LOCAL-00039" summary="small fixes to data loader wavelengths">
|
| 451 |
-
<option name="closed" value="true" />
|
| 452 |
-
<created>1754677152392</created>
|
| 453 |
-
<option name="number" value="00039" />
|
| 454 |
-
<option name="presentableId" value="LOCAL-00039" />
|
| 455 |
-
<option name="project" value="LOCAL" />
|
| 456 |
-
<updated>1754677152392</updated>
|
| 457 |
-
</task>
|
| 458 |
-
<task id="LOCAL-00040" summary="update configuration for data loading to enable oversampling;">
|
| 459 |
-
<option name="closed" value="true" />
|
| 460 |
-
<created>1754678561074</created>
|
| 461 |
-
<option name="number" value="00040" />
|
| 462 |
-
<option name="presentableId" value="LOCAL-00040" />
|
| 463 |
-
<option name="project" value="LOCAL" />
|
| 464 |
-
<updated>1754678561074</updated>
|
| 465 |
-
</task>
|
| 466 |
-
<task id="LOCAL-00041" summary="update configuration for data loading to enable oversampling;">
|
| 467 |
-
<option name="closed" value="true" />
|
| 468 |
-
<created>1754678590926</created>
|
| 469 |
-
<option name="number" value="00041" />
|
| 470 |
-
<option name="presentableId" value="LOCAL-00041" />
|
| 471 |
-
<option name="project" value="LOCAL" />
|
| 472 |
-
<updated>1754678590926</updated>
|
| 473 |
-
</task>
|
| 474 |
-
<task id="LOCAL-00042" summary="update evaluation and inference configuration for 4-wavelengths dataset">
|
| 475 |
-
<option name="closed" value="true" />
|
| 476 |
-
<created>1754927662181</created>
|
| 477 |
-
<option name="number" value="00042" />
|
| 478 |
-
<option name="presentableId" value="LOCAL-00042" />
|
| 479 |
-
<option name="project" value="LOCAL" />
|
| 480 |
-
<updated>1754927662181</updated>
|
| 481 |
-
</task>
|
| 482 |
-
<task id="LOCAL-00043" summary="update evaluation and inference configuration for stereo dataset; adjust wavelengths and model parameters">
|
| 483 |
-
<option name="closed" value="true" />
|
| 484 |
-
<created>1755294111029</created>
|
| 485 |
-
<option name="number" value="00043" />
|
| 486 |
-
<option name="presentableId" value="LOCAL-00043" />
|
| 487 |
-
<option name="project" value="LOCAL" />
|
| 488 |
-
<updated>1755294111029</updated>
|
| 489 |
-
</task>
|
| 490 |
-
<task id="LOCAL-00044" summary="implement wavelength dropout in training, just as a test... it's commented out">
|
| 491 |
-
<option name="closed" value="true" />
|
| 492 |
-
<created>1755802313840</created>
|
| 493 |
-
<option name="number" value="00044" />
|
| 494 |
-
<option name="presentableId" value="LOCAL-00044" />
|
| 495 |
-
<option name="project" value="LOCAL" />
|
| 496 |
-
<updated>1755802313840</updated>
|
| 497 |
-
</task>
|
| 498 |
-
<task id="LOCAL-00045" summary="added support for a patch based model">
|
| 499 |
-
<option name="closed" value="true" />
|
| 500 |
-
<created>1756677376487</created>
|
| 501 |
-
<option name="number" value="00045" />
|
| 502 |
-
<option name="presentableId" value="LOCAL-00045" />
|
| 503 |
-
<option name="project" value="LOCAL" />
|
| 504 |
-
<updated>1756677376487</updated>
|
| 505 |
-
</task>
|
| 506 |
-
<task id="LOCAL-00046" summary="fixed some comments">
|
| 507 |
-
<option name="closed" value="true" />
|
| 508 |
-
<created>1756678669786</created>
|
| 509 |
-
<option name="number" value="00046" />
|
| 510 |
-
<option name="presentableId" value="LOCAL-00046" />
|
| 511 |
-
<option name="project" value="LOCAL" />
|
| 512 |
-
<updated>1756678669786</updated>
|
| 513 |
-
</task>
|
| 514 |
-
<task id="LOCAL-00047" summary="weight decay">
|
| 515 |
-
<option name="closed" value="true" />
|
| 516 |
-
<created>1756678864389</created>
|
| 517 |
-
<option name="number" value="00047" />
|
| 518 |
-
<option name="presentableId" value="LOCAL-00047" />
|
| 519 |
-
<option name="project" value="LOCAL" />
|
| 520 |
-
<updated>1756678864389</updated>
|
| 521 |
-
</task>
|
| 522 |
-
<task id="LOCAL-00048" summary="Add in FOXES project description and instructions markdown doc.">
|
| 523 |
-
<option name="closed" value="true" />
|
| 524 |
-
<created>1761206727112</created>
|
| 525 |
-
<option name="number" value="00048" />
|
| 526 |
-
<option name="presentableId" value="LOCAL-00048" />
|
| 527 |
-
<option name="project" value="LOCAL" />
|
| 528 |
-
<updated>1761206727112</updated>
|
| 529 |
-
</task>
|
| 530 |
-
<task id="LOCAL-00049" summary="Add in FOXES project description and instructions markdown.">
|
| 531 |
-
<option name="closed" value="true" />
|
| 532 |
-
<created>1761225368432</created>
|
| 533 |
-
<option name="number" value="00049" />
|
| 534 |
-
<option name="presentableId" value="LOCAL-00049" />
|
| 535 |
-
<option name="project" value="LOCAL" />
|
| 536 |
-
<updated>1761225368432</updated>
|
| 537 |
-
</task>
|
| 538 |
-
<task id="LOCAL-00050" summary="Add in FOXES project description and instructions markdown.">
|
| 539 |
-
<option name="closed" value="true" />
|
| 540 |
-
<created>1761225942194</created>
|
| 541 |
-
<option name="number" value="00050" />
|
| 542 |
-
<option name="presentableId" value="LOCAL-00050" />
|
| 543 |
-
<option name="project" value="LOCAL" />
|
| 544 |
-
<updated>1761225942195</updated>
|
| 545 |
-
</task>
|
| 546 |
-
<task id="LOCAL-00051" summary="Add in ViT ML Workflow illustration">
|
| 547 |
-
<option name="closed" value="true" />
|
| 548 |
-
<created>1761526222829</created>
|
| 549 |
-
<option name="number" value="00051" />
|
| 550 |
-
<option name="presentableId" value="LOCAL-00051" />
|
| 551 |
-
<option name="project" value="LOCAL" />
|
| 552 |
-
<updated>1761526222829</updated>
|
| 553 |
-
</task>
|
| 554 |
-
<task id="LOCAL-00052" summary="updates">
|
| 555 |
-
<option name="closed" value="true" />
|
| 556 |
-
<created>1765909732629</created>
|
| 557 |
-
<option name="number" value="00052" />
|
| 558 |
-
<option name="presentableId" value="LOCAL-00052" />
|
| 559 |
-
<option name="project" value="LOCAL" />
|
| 560 |
-
<updated>1765909732630</updated>
|
| 561 |
-
</task>
|
| 562 |
-
<task id="LOCAL-00053" summary="Implement dynamic theme-based plotting for regression output and tweak default parameters - Added theme-based (black/white) formatting for regression plots, impacting text, gridlines, legends, and backgrounds. - Adjusted layout to handle missing AIA data with specialized SXR-only frames. - Updated evaluation time ranges and plot intervals for better granularity. - Changed default regression plot background to black in CLI arguments.">
|
| 563 |
-
<option name="closed" value="true" />
|
| 564 |
-
<created>1766005071312</created>
|
| 565 |
-
<option name="number" value="00053" />
|
| 566 |
-
<option name="presentableId" value="LOCAL-00053" />
|
| 567 |
-
<option name="project" value="LOCAL" />
|
| 568 |
-
<updated>1766005071312</updated>
|
| 569 |
-
</task>
|
| 570 |
-
<task id="LOCAL-00054" summary="Simplify and restructure README: streamlined project description, updated team details, clarified repository structure, removed redundant sections, and added Docker setup instructions.">
|
| 571 |
-
<option name="closed" value="true" />
|
| 572 |
-
<created>1766078172890</created>
|
| 573 |
-
<option name="number" value="00054" />
|
| 574 |
-
<option name="presentableId" value="LOCAL-00054" />
|
| 575 |
-
<option name="project" value="LOCAL" />
|
| 576 |
-
<updated>1766078172890</updated>
|
| 577 |
-
</task>
|
| 578 |
-
<task id="LOCAL-00055" summary="Enhance plotting themes for poster analysis, refine regression plot scaling, and add data cleanup utilities - Updated flare_analysis_poster.py to use white text and spines for improved visibility on dark backgrounds, adjusted legend and grid styling, and improved annotation contrast. - Refined regression plot scaling in evaluation.py: enforced realistic log-scale bounds, added buffer for axis limits, and improved color mapping for 2D histograms. - Added cleanup_data.py and cleanup_data_mp.py scripts for identifying and moving extraneous .npy files not present in train/val CSVs, with multiprocessing support. - Introduced processing_utils.py with functions for flare classification, parallel file processing, and data summarization. - Adjusted local_config.yaml time range and updated FOXES.iml data folder structure.">
|
| 579 |
-
<option name="closed" value="true" />
|
| 580 |
-
<created>1768859793406</created>
|
| 581 |
-
<option name="number" value="00055" />
|
| 582 |
-
<option name="presentableId" value="LOCAL-00055" />
|
| 583 |
-
<option name="project" value="LOCAL" />
|
| 584 |
-
<updated>1768859793406</updated>
|
| 585 |
-
</task>
|
| 586 |
-
<option name="localTasksCounter" value="56" />
|
| 587 |
-
<servers />
|
| 588 |
-
</component>
|
| 589 |
-
<component name="TypeScriptGeneratedFilesManager">
|
| 590 |
-
<option name="version" value="3" />
|
| 591 |
-
</component>
|
| 592 |
-
<component name="Vcs.Log.Tabs.Properties">
|
| 593 |
-
<option name="RECENT_FILTERS">
|
| 594 |
-
<map>
|
| 595 |
-
<entry key="User">
|
| 596 |
-
<value>
|
| 597 |
-
<list>
|
| 598 |
-
<RecentGroup>
|
| 599 |
-
<option name="FILTER_VALUES">
|
| 600 |
-
<option value="*" />
|
| 601 |
-
</option>
|
| 602 |
-
</RecentGroup>
|
| 603 |
-
</list>
|
| 604 |
-
</value>
|
| 605 |
-
</entry>
|
| 606 |
-
</map>
|
| 607 |
-
</option>
|
| 608 |
-
<option name="TAB_STATES">
|
| 609 |
-
<map>
|
| 610 |
-
<entry key="MAIN">
|
| 611 |
-
<value>
|
| 612 |
-
<State>
|
| 613 |
-
<option name="FILTERS">
|
| 614 |
-
<map>
|
| 615 |
-
<entry key="user">
|
| 616 |
-
<value>
|
| 617 |
-
<list>
|
| 618 |
-
<option value="*" />
|
| 619 |
-
</list>
|
| 620 |
-
</value>
|
| 621 |
-
</entry>
|
| 622 |
-
</map>
|
| 623 |
-
</option>
|
| 624 |
-
</State>
|
| 625 |
-
</value>
|
| 626 |
-
</entry>
|
| 627 |
-
</map>
|
| 628 |
-
</option>
|
| 629 |
-
</component>
|
| 630 |
-
<component name="VcsManagerConfiguration">
|
| 631 |
-
<MESSAGE value="Enhance AIA_GOESDataset to support cadence and reference time" />
|
| 632 |
-
<MESSAGE value="Add oversampling functionality to AIA_GOESDataset and update configuration" />
|
| 633 |
-
<MESSAGE value="Update AIA wavelengths and model configuration in config.yaml; adjust oversampling setting in dataloader" />
|
| 634 |
-
<MESSAGE value="added some checks to make sure model training and validation is successful" />
|
| 635 |
-
<MESSAGE value="updated the weighted loss to return proper multiplication values... also reduced weighting slightly" />
|
| 636 |
-
<MESSAGE value="updated the weighted loss" />
|
| 637 |
-
<MESSAGE value="added some additional metrics to analyze the validation loss per class" />
|
| 638 |
-
<MESSAGE value="refactor evaluation and inference code; add support for uncertainty in predictions and implement MC Dropout evaluation" />
|
| 639 |
-
<MESSAGE value="enhance evaluation plots; added flare class axes" />
|
| 640 |
-
<MESSAGE value="refactor evaluation and inference code; add uncertainty handling and update model parameters" />
|
| 641 |
-
<MESSAGE value="small fixes to data loader wavelengths" />
|
| 642 |
-
<MESSAGE value="update configuration for data loading to enable oversampling;" />
|
| 643 |
-
<MESSAGE value="update evaluation and inference configuration for 4-wavelengths dataset" />
|
| 644 |
-
<MESSAGE value="update evaluation and inference configuration for stereo dataset; adjust wavelengths and model parameters" />
|
| 645 |
-
<MESSAGE value="implement wavelength dropout in training, just as a test... it's commented out" />
|
| 646 |
-
<MESSAGE value="added support for a patch based model" />
|
| 647 |
-
<MESSAGE value="fixed some comments" />
|
| 648 |
-
<MESSAGE value="weight decay" />
|
| 649 |
-
<MESSAGE value="Add in FOXES project description and instructions markdown doc." />
|
| 650 |
-
<MESSAGE value="Add in FOXES project description and instructions markdown." />
|
| 651 |
-
<MESSAGE value="Add in ViT ML Workflow illustration" />
|
| 652 |
-
<MESSAGE value="updates" />
|
| 653 |
-
<MESSAGE value="Implement dynamic theme-based plotting for regression output and tweak default parameters - Added theme-based (black/white) formatting for regression plots, impacting text, gridlines, legends, and backgrounds. - Adjusted layout to handle missing AIA data with specialized SXR-only frames. - Updated evaluation time ranges and plot intervals for better granularity. - Changed default regression plot background to black in CLI arguments." />
|
| 654 |
-
<MESSAGE value="Simplify and restructure README: streamlined project description, updated team details, clarified repository structure, removed redundant sections, and added Docker setup instructions." />
|
| 655 |
-
<MESSAGE value="Enhance plotting themes for poster analysis, refine regression plot scaling, and add data cleanup utilities - Updated flare_analysis_poster.py to use white text and spines for improved visibility on dark backgrounds, adjusted legend and grid styling, and improved annotation contrast. - Refined regression plot scaling in evaluation.py: enforced realistic log-scale bounds, added buffer for axis limits, and improved color mapping for 2D histograms. - Added cleanup_data.py and cleanup_data_mp.py scripts for identifying and moving extraneous .npy files not present in train/val CSVs, with multiprocessing support. - Introduced processing_utils.py with functions for flare classification, parallel file processing, and data summarization. - Adjusted local_config.yaml time range and updated FOXES.iml data folder structure." />
|
| 656 |
-
<option name="LAST_COMMIT_MESSAGE" value="Enhance plotting themes for poster analysis, refine regression plot scaling, and add data cleanup utilities - Updated flare_analysis_poster.py to use white text and spines for improved visibility on dark backgrounds, adjusted legend and grid styling, and improved annotation contrast. - Refined regression plot scaling in evaluation.py: enforced realistic log-scale bounds, added buffer for axis limits, and improved color mapping for 2D histograms. - Added cleanup_data.py and cleanup_data_mp.py scripts for identifying and moving extraneous .npy files not present in train/val CSVs, with multiprocessing support. - Introduced processing_utils.py with functions for flare classification, parallel file processing, and data summarization. - Adjusted local_config.yaml time range and updated FOXES.iml data folder structure." />
|
| 657 |
-
</component>
|
| 658 |
-
<component name="XDebuggerManager">
|
| 659 |
-
<breakpoint-manager>
|
| 660 |
-
<breakpoints>
|
| 661 |
-
<line-breakpoint enabled="true" suspend="THREAD" type="jupyter-line">
|
| 662 |
-
<url>file://$PROJECT_DIR$/flaring/notebook_tests/plotting_test_results.ipynb</url>
|
| 663 |
-
<line>1</line>
|
| 664 |
-
<option name="timeStamp" value="7" />
|
| 665 |
-
</line-breakpoint>
|
| 666 |
-
</breakpoints>
|
| 667 |
-
</breakpoint-manager>
|
| 668 |
-
</component>
|
| 669 |
-
<component name="github-copilot-workspace">
|
| 670 |
-
<instructionFileLocations>
|
| 671 |
-
<option value=".github/instructions" />
|
| 672 |
-
</instructionFileLocations>
|
| 673 |
-
<promptFileLocations>
|
| 674 |
-
<option value=".github/prompts" />
|
| 675 |
-
</promptFileLocations>
|
| 676 |
-
</component>
|
| 677 |
-
</project>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
MIT License
|
| 2 |
|
| 3 |
-
Copyright (c)
|
| 4 |
|
| 5 |
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 6 |
of this software and associated documentation files (the "Software"), to deal
|
|
|
|
| 1 |
MIT License
|
| 2 |
|
| 3 |
+
Copyright (c) 2026 Frontier Development Lab
|
| 4 |
|
| 5 |
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 6 |
of this software and associated documentation files (the "Software"), to deal
|
README.md
CHANGED
|
@@ -1,13 +1,11 @@
|
|
| 1 |
# FOXES: A Framework For Operational X-ray Emission Synthesis
|
| 2 |
|
| 3 |
-
This repository contains the code and resources for **FOXES**, a project developed as part of the _**Frontier Development Lab**_'s Heliolab Multimodal Flare Prediction
|
| 4 |
|
| 5 |
### Abstract
|
| 6 |
-
|
| 7 |
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
**Team**: Griffin Goodwin, Alison March, Jayant Biradar, Christopher Schirninger, Robert Jarolim, Angelos Vourlidas, Lorien Pratt
|
| 11 |
|
| 12 |
## Repository Structure
|
| 13 |
|
|
@@ -20,8 +18,10 @@ FOXES
|
|
| 20 |
│ ├── inference # Inference and evaluation scripts
|
| 21 |
│ ├── models # Vision Transformer model definitions
|
| 22 |
│ └── training # Training scripts and callbacks
|
|
|
|
| 23 |
├── notebook_tests # Visualization and testing notebooks
|
| 24 |
├── Dockerfile # Docker configuration for environment reproducibility
|
|
|
|
| 25 |
└── requirements.txt # Python dependencies
|
| 26 |
```
|
| 27 |
|
|
@@ -33,15 +33,19 @@ git clone https://github.com/griffin-goodwin/FOXES.git
|
|
| 33 |
cd FOXES
|
| 34 |
```
|
| 35 |
|
| 36 |
-
### 2) Create an environment
|
|
|
|
|
|
|
| 37 |
```bash
|
| 38 |
-
|
| 39 |
-
|
|
|
|
| 40 |
```
|
| 41 |
|
| 42 |
-
|
| 43 |
```bash
|
| 44 |
-
|
|
|
|
| 45 |
```
|
| 46 |
|
| 47 |
### 4) Docker Setup (Optional)
|
|
@@ -56,7 +60,7 @@ If you use this code or data in your work, please cite:
|
|
| 56 |
institution = {Frontier Development Lab (FDL), NASA Goddard Space Flight Center},
|
| 57 |
repository-code = {https://github.com/griffin-goodwin/FOXES},
|
| 58 |
version = {v1.0},
|
| 59 |
-
year = {
|
| 60 |
}
|
| 61 |
```
|
| 62 |
|
|
|
|
| 1 |
# FOXES: A Framework For Operational X-ray Emission Synthesis
|
| 2 |
|
| 3 |
+
This repository contains the code and resources for **FOXES**, a project developed as part of the _**Frontier Development Lab**_'s Heliolab Multimodal Flare Prediction Project.
|
| 4 |
|
| 5 |
### Abstract
|
| 6 |
+
The solar soft X-ray (SXR) irradiance is a long-standing proxy of solar activity, used for the classification of flare strength. As a result, the flare class, along with the SXR light curve, are routinely used as the primary input to many forecasting methods, from coronal mass ejection speed to energetic particle output. However, the SXR irradiance lacks spatial information leading to dubious classification during periods of high activity, and is applicable only for observations from Earth orbit, hindering forecasting for other places in the heliosphere. This work introduces the Framework for Operational X-ray Emission Synthesis (FOXES), a Vision Transformer-based approach for translating Extreme Ultraviolet (EUV) spatially-resolved observations into SXR irradiance predictions. The model produces two outputs: (1) a global SXR flux prediction and (2) per-patch flux contributions, which offer a spatially resolved interpretation of where the model attributes SXR emission. This paves the way for EUV-based flare detection to be extended beyond Earth's line of sight, allowing for a more comprehensive and reliable flare catalog to support robust, scalable, and real-time forecasting, extending our monitoring into a true multiviewpoint system.
|
| 7 |
|
| 8 |
+
**Team**: Griffin Goodwin, Alison March, Jayant Biradar, Christopher Schirninger, Robert Jarolim, Angelos Vourlidas, Viacheslav Sadykov, Lorien Pratt
|
|
|
|
|
|
|
| 9 |
|
| 10 |
## Repository Structure
|
| 11 |
|
|
|
|
| 18 |
│ ├── inference # Inference and evaluation scripts
|
| 19 |
│ ├── models # Vision Transformer model definitions
|
| 20 |
│ └── training # Training scripts and callbacks
|
| 21 |
+
├── misc # Personal utility scripts (gitignored)
|
| 22 |
├── notebook_tests # Visualization and testing notebooks
|
| 23 |
├── Dockerfile # Docker configuration for environment reproducibility
|
| 24 |
+
├── foxes.yml # Conda environment file
|
| 25 |
└── requirements.txt # Python dependencies
|
| 26 |
```
|
| 27 |
|
|
|
|
| 33 |
cd FOXES
|
| 34 |
```
|
| 35 |
|
| 36 |
+
### 2) Create an environment
|
| 37 |
+
|
| 38 |
+
**Option A — pip:**
|
| 39 |
```bash
|
| 40 |
+
conda create -n foxes python=3.11 -y
|
| 41 |
+
conda activate foxes
|
| 42 |
+
pip install -r requirements.txt
|
| 43 |
```
|
| 44 |
|
| 45 |
+
**Option B — conda (full environment):**
|
| 46 |
```bash
|
| 47 |
+
conda env create -f foxes.yml
|
| 48 |
+
conda activate foxes
|
| 49 |
```
|
| 50 |
|
| 51 |
### 4) Docker Setup (Optional)
|
|
|
|
| 60 |
institution = {Frontier Development Lab (FDL), NASA Goddard Space Flight Center},
|
| 61 |
repository-code = {https://github.com/griffin-goodwin/FOXES},
|
| 62 |
version = {v1.0},
|
| 63 |
+
year = {2026}
|
| 64 |
}
|
| 65 |
```
|
| 66 |
|
__init__.py
DELETED
|
File without changes
|
cleanup_data.py
DELETED
|
@@ -1,51 +0,0 @@
|
|
| 1 |
-
import pandas as pd
|
| 2 |
-
import os
|
| 3 |
-
import shutil
|
| 4 |
-
from pathlib import Path
|
| 5 |
-
|
| 6 |
-
# Paths
|
| 7 |
-
base_data_path = Path("/Volumes/T9/FOXES_Data")
|
| 8 |
-
train_csv = base_data_path / "train_data_combined.csv"
|
| 9 |
-
val_csv = base_data_path / "val_data_combined.csv"
|
| 10 |
-
|
| 11 |
-
# Load combined filenames
|
| 12 |
-
print("Loading CSVs...")
|
| 13 |
-
df_train = pd.read_csv(train_csv)
|
| 14 |
-
df_val = pd.read_csv(val_csv)
|
| 15 |
-
|
| 16 |
-
valid_filenames = set(df_train['filename'].tolist()) | set(df_val['filename'].tolist())
|
| 17 |
-
print(f"Total valid files: {len(valid_filenames)}")
|
| 18 |
-
|
| 19 |
-
# Directories to process
|
| 20 |
-
dirs_to_clean = [
|
| 21 |
-
base_data_path / "SXR" / "train",
|
| 22 |
-
base_data_path / "SXR" / "val",
|
| 23 |
-
base_data_path / "AIA" / "train",
|
| 24 |
-
base_data_path / "AIA" / "val"
|
| 25 |
-
]
|
| 26 |
-
|
| 27 |
-
for directory in dirs_to_clean:
|
| 28 |
-
if not directory.exists():
|
| 29 |
-
print(f"Directory {directory} does not exist, skipping.")
|
| 30 |
-
continue
|
| 31 |
-
|
| 32 |
-
print(f"\nProcessing {directory}...")
|
| 33 |
-
extras_dir = directory / "extras"
|
| 34 |
-
extras_dir.mkdir(exist_ok=True)
|
| 35 |
-
|
| 36 |
-
# Get all .npy files in the directory
|
| 37 |
-
files = [f for f in os.listdir(directory) if f.endswith(".npy") and os.path.isfile(directory / f)]
|
| 38 |
-
|
| 39 |
-
moved_count = 0
|
| 40 |
-
for filename in files:
|
| 41 |
-
if filename not in valid_filenames:
|
| 42 |
-
src = directory / filename
|
| 43 |
-
dst = extras_dir / filename
|
| 44 |
-
# shutil.move(src, dst) # Dry run first
|
| 45 |
-
moved_count += 1
|
| 46 |
-
if moved_count <= 5:
|
| 47 |
-
print(f" [DRY RUN] Would move: {filename}")
|
| 48 |
-
|
| 49 |
-
print(f" [DRY RUN] Would move {moved_count} files to {extras_dir}")
|
| 50 |
-
|
| 51 |
-
print("\nDone with dry run.")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cleanup_data_mp.py
DELETED
|
@@ -1,88 +0,0 @@
|
|
| 1 |
-
import pandas as pd
|
| 2 |
-
import os
|
| 3 |
-
import shutil
|
| 4 |
-
from pathlib import Path
|
| 5 |
-
from multiprocessing import Pool, cpu_count
|
| 6 |
-
from functools import partial
|
| 7 |
-
from tqdm import tqdm
|
| 8 |
-
|
| 9 |
-
def check_and_move_file(filename, directory, extras_dir, valid_filenames, dry_run=True):
|
| 10 |
-
"""Worker function to check and move a single file."""
|
| 11 |
-
if filename not in valid_filenames:
|
| 12 |
-
src = directory / filename
|
| 13 |
-
dst = extras_dir / filename
|
| 14 |
-
try:
|
| 15 |
-
if not dry_run:
|
| 16 |
-
shutil.move(src, dst)
|
| 17 |
-
return 1 # Increment moved count
|
| 18 |
-
except Exception as e:
|
| 19 |
-
print(f"Error moving {filename}: {e}")
|
| 20 |
-
return 0
|
| 21 |
-
return 0
|
| 22 |
-
|
| 23 |
-
def process_directory(directory, extras_sub_dir, valid_filenames, dry_run=True):
|
| 24 |
-
"""Processes a single directory using a pool of workers."""
|
| 25 |
-
if not directory.exists():
|
| 26 |
-
print(f"Directory {directory} does not exist, skipping.")
|
| 27 |
-
return 0
|
| 28 |
-
|
| 29 |
-
print(f"\nProcessing {directory}...")
|
| 30 |
-
extras_sub_dir.mkdir(parents=True, exist_ok=True)
|
| 31 |
-
|
| 32 |
-
# Get all .npy files in the directory
|
| 33 |
-
files = [f.name for f in os.scandir(directory) if f.name.endswith(".npy") and f.is_file()]
|
| 34 |
-
print(f"Found {len(files)} files in {directory.name}")
|
| 35 |
-
|
| 36 |
-
# Partial function with fixed arguments
|
| 37 |
-
worker = partial(check_and_move_file,
|
| 38 |
-
directory=directory,
|
| 39 |
-
extras_dir=extras_sub_dir,
|
| 40 |
-
valid_filenames=valid_filenames,
|
| 41 |
-
dry_run=dry_run)
|
| 42 |
-
|
| 43 |
-
# Use multiprocessing to check and move files
|
| 44 |
-
num_workers = cpu_count()
|
| 45 |
-
chunksize = max(1, len(files) // (num_workers * 4))
|
| 46 |
-
with Pool(num_workers) as pool:
|
| 47 |
-
results = list(tqdm(pool.imap(worker, files, chunksize=chunksize), total=len(files), desc=f"Cleaning {directory.name}"))
|
| 48 |
-
|
| 49 |
-
moved_count = sum(results)
|
| 50 |
-
status = "[DRY RUN] Would move" if dry_run else "Moved"
|
| 51 |
-
print(f"{status} {moved_count} files to {extras_sub_dir}")
|
| 52 |
-
return moved_count
|
| 53 |
-
|
| 54 |
-
if __name__ == "__main__":
|
| 55 |
-
# Paths
|
| 56 |
-
base_data_path = Path("/Volumes/T9/FOXES_Data")
|
| 57 |
-
train_csv = base_data_path / "train_data_combined.csv"
|
| 58 |
-
val_csv = base_data_path / "val_data_combined.csv"
|
| 59 |
-
extras_base_dir = base_data_path / "extras"
|
| 60 |
-
|
| 61 |
-
# Set dry_run to False to actually move files
|
| 62 |
-
DRY_RUN = False
|
| 63 |
-
|
| 64 |
-
# Load combined filenames
|
| 65 |
-
print("Loading CSVs...")
|
| 66 |
-
df_train = pd.read_csv(train_csv)
|
| 67 |
-
df_val = pd.read_csv(val_csv)
|
| 68 |
-
|
| 69 |
-
valid_filenames = set(df_train['filename'].tolist()) | set(df_val['filename'].tolist())
|
| 70 |
-
print(f"Total valid files in CSVs: {len(valid_filenames)}")
|
| 71 |
-
|
| 72 |
-
# Directories to process and their corresponding extras sub-directories
|
| 73 |
-
tasks = [
|
| 74 |
-
(base_data_path / "SXR" / "train", extras_base_dir / "SXR"),
|
| 75 |
-
(base_data_path / "SXR" / "val", extras_base_dir / "SXR"),
|
| 76 |
-
(base_data_path / "AIA" / "train", extras_base_dir / "AIA"),
|
| 77 |
-
(base_data_path / "AIA" / "val", extras_base_dir / "AIA")
|
| 78 |
-
]
|
| 79 |
-
|
| 80 |
-
total_moved = 0
|
| 81 |
-
for directory, extras_sub_dir in tasks:
|
| 82 |
-
total_moved += process_directory(directory, extras_sub_dir, valid_filenames, dry_run=DRY_RUN)
|
| 83 |
-
|
| 84 |
-
if DRY_RUN:
|
| 85 |
-
print(f"\nDry run complete. Total files that would be moved: {total_moved}")
|
| 86 |
-
print("To actually move files, set DRY_RUN = False in the script.")
|
| 87 |
-
else:
|
| 88 |
-
print(f"\nProcessing complete. Total files moved: {total_moved}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
foxes.yml
ADDED
|
@@ -0,0 +1,273 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
name: foxes
|
| 2 |
+
channels:
|
| 3 |
+
- defaults
|
| 4 |
+
- https://repo.anaconda.com/pkgs/main
|
| 5 |
+
- https://repo.anaconda.com/pkgs/r
|
| 6 |
+
dependencies:
|
| 7 |
+
- bzip2=1.0.8=h80987f9_6
|
| 8 |
+
- ca-certificates=2025.12.2=hca03da5_0
|
| 9 |
+
- expat=2.7.3=h982b769_0
|
| 10 |
+
- libcxx=20.1.8=hd7fd590_1
|
| 11 |
+
- libffi=3.4.4=hca03da5_1
|
| 12 |
+
- libmpdec=4.0.0=h80987f9_0
|
| 13 |
+
- libzlib=1.3.1=h5f15de7_0
|
| 14 |
+
- lz4-c=1.9.4=h313beb8_1
|
| 15 |
+
- ncurses=6.5=hee39554_0
|
| 16 |
+
- openssl=3.0.18=h9b4081a_0
|
| 17 |
+
- python=3.14.0=h1858270_101_cp314
|
| 18 |
+
- python_abi=3.14=2_cp314
|
| 19 |
+
- readline=8.3=h0b18652_0
|
| 20 |
+
- sqlite=3.51.0=hab6afd1_0
|
| 21 |
+
- tk=8.6.15=hcd8a7d5_0
|
| 22 |
+
- xz=5.6.4=h80987f9_1
|
| 23 |
+
- zlib=1.3.1=h5f15de7_0
|
| 24 |
+
- zstd=1.5.7=h817c040_0
|
| 25 |
+
- pip:
|
| 26 |
+
- aiapy==0.10.2
|
| 27 |
+
- aioftp==0.27.2
|
| 28 |
+
- aiohappyeyeballs==2.6.1
|
| 29 |
+
- aiohttp==3.13.2
|
| 30 |
+
- aiosignal==1.4.0
|
| 31 |
+
- albucore==0.0.24
|
| 32 |
+
- albumentations==2.0.8
|
| 33 |
+
- annotated-types==0.7.0
|
| 34 |
+
- anyio==4.12.0
|
| 35 |
+
- appdirs==1.4.4
|
| 36 |
+
- appnope==0.1.4
|
| 37 |
+
- argon2-cffi==25.1.0
|
| 38 |
+
- argon2-cffi-bindings==25.1.0
|
| 39 |
+
- argparse-dataclass==2.0.0
|
| 40 |
+
- arrow==1.4.0
|
| 41 |
+
- asdf==5.1.0
|
| 42 |
+
- asdf-astropy==0.9.0
|
| 43 |
+
- asdf-coordinates-schemas==0.4.0
|
| 44 |
+
- asdf-standard==1.4.0
|
| 45 |
+
- asdf-transform-schemas==0.6.0
|
| 46 |
+
- astropy==7.2.0
|
| 47 |
+
- astropy-healpix==1.1.2
|
| 48 |
+
- astropy-iers-data==0.2025.12.1.0.45.12
|
| 49 |
+
- asttokens==3.0.1
|
| 50 |
+
- async-lru==2.0.5
|
| 51 |
+
- attrs==25.4.0
|
| 52 |
+
- babel==2.17.0
|
| 53 |
+
- beautifulsoup4==4.14.3
|
| 54 |
+
- bleach==6.3.0
|
| 55 |
+
- cachetools==6.2.2
|
| 56 |
+
- cdflib==1.3.7
|
| 57 |
+
- certifi==2025.11.12
|
| 58 |
+
- cffi==2.0.0
|
| 59 |
+
- cftime==1.6.5
|
| 60 |
+
- charset-normalizer==3.4.4
|
| 61 |
+
- click==8.3.1
|
| 62 |
+
- cloudpickle==3.1.2
|
| 63 |
+
- colormaps==0.4.2
|
| 64 |
+
- comm==0.2.3
|
| 65 |
+
- conda-inject==1.3.2
|
| 66 |
+
- configargparse==1.7.1
|
| 67 |
+
- connection-pool==0.0.3
|
| 68 |
+
- contourpy==1.3.3
|
| 69 |
+
- cycler==0.12.1
|
| 70 |
+
- dask==2025.11.0
|
| 71 |
+
- dask-image==2025.11.0
|
| 72 |
+
- debugpy==1.8.17
|
| 73 |
+
- decorator==5.2.1
|
| 74 |
+
- defusedxml==0.7.1
|
| 75 |
+
- docutils==0.22.3
|
| 76 |
+
- donfig==0.8.1.post1
|
| 77 |
+
- dpath==2.2.0
|
| 78 |
+
- drms==0.9.0
|
| 79 |
+
- executing==2.2.1
|
| 80 |
+
- fastjsonschema==2.21.2
|
| 81 |
+
- filelock==3.20.0
|
| 82 |
+
- fonttools==4.61.0
|
| 83 |
+
- fqdn==1.5.1
|
| 84 |
+
- frozenlist==1.8.0
|
| 85 |
+
- fsspec==2025.12.0
|
| 86 |
+
- gitdb==4.0.12
|
| 87 |
+
- gitpython==3.1.45
|
| 88 |
+
- glymur==0.14.4
|
| 89 |
+
- google==3.0.0
|
| 90 |
+
- google-api-core==2.28.1
|
| 91 |
+
- google-auth==2.43.0
|
| 92 |
+
- google-cloud-core==2.5.0
|
| 93 |
+
- google-cloud-storage==3.6.0
|
| 94 |
+
- google-resumable-media==2.8.0
|
| 95 |
+
- googleapis-common-protos==1.72.0
|
| 96 |
+
- h11==0.16.0
|
| 97 |
+
- h5netcdf==1.7.3
|
| 98 |
+
- h5py==3.15.1
|
| 99 |
+
- httpcore==1.0.9
|
| 100 |
+
- httpx==0.28.1
|
| 101 |
+
- humanfriendly==10.0
|
| 102 |
+
- idna==3.11
|
| 103 |
+
- imageio==2.37.2
|
| 104 |
+
- imageio-ffmpeg==0.6.0
|
| 105 |
+
- immutables==0.21
|
| 106 |
+
- ipykernel==7.1.0
|
| 107 |
+
- ipython==9.8.0
|
| 108 |
+
- ipython-pygments-lexers==1.1.1
|
| 109 |
+
- ipywidgets==8.1.8
|
| 110 |
+
- isodate==0.7.2
|
| 111 |
+
- isoduration==20.11.0
|
| 112 |
+
- itipy==0.1.1
|
| 113 |
+
- jedi==0.19.2
|
| 114 |
+
- jinja2==3.1.6
|
| 115 |
+
- jmespath==1.0.1
|
| 116 |
+
- joblib==1.5.2
|
| 117 |
+
- json5==0.12.1
|
| 118 |
+
- jsonpointer==3.0.0
|
| 119 |
+
- jsonschema==4.25.1
|
| 120 |
+
- jsonschema-specifications==2025.9.1
|
| 121 |
+
- jupyter==1.1.1
|
| 122 |
+
- jupyter-client==8.6.3
|
| 123 |
+
- jupyter-console==6.6.3
|
| 124 |
+
- jupyter-core==5.9.1
|
| 125 |
+
- jupyter-events==0.12.0
|
| 126 |
+
- jupyter-lsp==2.3.0
|
| 127 |
+
- jupyter-server==2.17.0
|
| 128 |
+
- jupyter-server-terminals==0.5.3
|
| 129 |
+
- jupyterlab==4.5.0
|
| 130 |
+
- jupyterlab-pygments==0.3.0
|
| 131 |
+
- jupyterlab-server==2.28.0
|
| 132 |
+
- jupyterlab-widgets==3.0.16
|
| 133 |
+
- kiwisolver==1.4.9
|
| 134 |
+
- lark==1.3.1
|
| 135 |
+
- lazy-loader==0.4
|
| 136 |
+
- lightning==2.6.0
|
| 137 |
+
- lightning-utilities==0.15.2
|
| 138 |
+
- locket==1.0.0
|
| 139 |
+
- lxml==6.0.2
|
| 140 |
+
- markupsafe==3.0.3
|
| 141 |
+
- matplotlib==3.10.7
|
| 142 |
+
- matplotlib-inline==0.2.1
|
| 143 |
+
- mistune==3.1.4
|
| 144 |
+
- mpl-animators==1.2.4
|
| 145 |
+
- mpmath==1.3.0
|
| 146 |
+
- multidict==6.7.0
|
| 147 |
+
- nbclient==0.10.2
|
| 148 |
+
- nbconvert==7.16.6
|
| 149 |
+
- nbformat==5.10.4
|
| 150 |
+
- nest-asyncio==1.6.0
|
| 151 |
+
- netcdf4==1.7.3
|
| 152 |
+
- networkx==3.6
|
| 153 |
+
- notebook==7.5.0
|
| 154 |
+
- notebook-shim==0.2.4
|
| 155 |
+
- numcodecs==0.16.5
|
| 156 |
+
- numpy==2.4.0rc1
|
| 157 |
+
- numpy-typing-compat==20251206.2.4
|
| 158 |
+
- opencv-python==4.12.0.88
|
| 159 |
+
- opencv-python-headless==4.12.0.88
|
| 160 |
+
- optype==0.15.0
|
| 161 |
+
- packaging==25.0
|
| 162 |
+
- pandas==2.3.3
|
| 163 |
+
- pandas-stubs==2.3.3.251201
|
| 164 |
+
- pandocfilters==1.5.1
|
| 165 |
+
- parfive==2.2.0
|
| 166 |
+
- parso==0.8.5
|
| 167 |
+
- partd==1.4.2
|
| 168 |
+
- pexpect==4.9.0
|
| 169 |
+
- pillow==12.0.0
|
| 170 |
+
- pims==0.7
|
| 171 |
+
- pip==24.3.1
|
| 172 |
+
- platformdirs==4.5.0
|
| 173 |
+
- prometheus-client==0.23.1
|
| 174 |
+
- prompt-toolkit==3.0.52
|
| 175 |
+
- propcache==0.4.1
|
| 176 |
+
- proto-plus==1.26.1
|
| 177 |
+
- protobuf==6.33.1
|
| 178 |
+
- psutil==7.1.3
|
| 179 |
+
- ptyprocess==0.7.0
|
| 180 |
+
- pulp==3.3.0
|
| 181 |
+
- pure-eval==0.2.3
|
| 182 |
+
- pyarrow==22.0.0
|
| 183 |
+
- pyasn1==0.6.1
|
| 184 |
+
- pyasn1-modules==0.4.2
|
| 185 |
+
- pyavm==0.9.8
|
| 186 |
+
- pycparser==2.23
|
| 187 |
+
- pydantic==2.12.5
|
| 188 |
+
- pydantic-core==2.41.5
|
| 189 |
+
- pyerfa==2.0.1.5
|
| 190 |
+
- pygments==2.19.2
|
| 191 |
+
- pyparsing==3.2.5
|
| 192 |
+
- python-dateutil==2.9.0.post0
|
| 193 |
+
- python-json-logger==4.0.0
|
| 194 |
+
- pytorch-fid==0.3.0
|
| 195 |
+
- pytorch-lightning==2.6.0
|
| 196 |
+
- pytz==2025.2
|
| 197 |
+
- pyyaml==6.0.3
|
| 198 |
+
- pyzmq==27.1.0
|
| 199 |
+
- referencing==0.37.0
|
| 200 |
+
- reproject==0.19.0
|
| 201 |
+
- requests==2.32.5
|
| 202 |
+
- requests-file==3.0.1
|
| 203 |
+
- requests-toolbelt==1.0.0
|
| 204 |
+
- reretry==0.11.8
|
| 205 |
+
- rfc3339-validator==0.1.4
|
| 206 |
+
- rfc3986-validator==0.1.1
|
| 207 |
+
- rfc3987-syntax==1.1.0
|
| 208 |
+
- rpds-py==0.30.0
|
| 209 |
+
- rsa==4.9.1
|
| 210 |
+
- scikit-image==0.25.2
|
| 211 |
+
- scikit-learn==1.7.2
|
| 212 |
+
- scipy==1.16.3
|
| 213 |
+
- scipy-stubs==1.16.3.3
|
| 214 |
+
- seaborn==0.13.2
|
| 215 |
+
- semantic-version==2.10.0
|
| 216 |
+
- send2trash==1.8.3
|
| 217 |
+
- sentry-sdk==2.47.0
|
| 218 |
+
- setuptools==80.9.0
|
| 219 |
+
- simsimd==6.5.3
|
| 220 |
+
- six==1.17.0
|
| 221 |
+
- slicerator==1.1.0
|
| 222 |
+
- smart-open==7.5.0
|
| 223 |
+
- smmap==5.0.2
|
| 224 |
+
- snakemake==9.14.1
|
| 225 |
+
- snakemake-interface-common==1.22.0
|
| 226 |
+
- snakemake-interface-executor-plugins==9.3.9
|
| 227 |
+
- snakemake-interface-logger-plugins==2.0.0
|
| 228 |
+
- snakemake-interface-report-plugins==1.3.0
|
| 229 |
+
- snakemake-interface-scheduler-plugins==2.0.2
|
| 230 |
+
- snakemake-interface-storage-plugins==4.3.2
|
| 231 |
+
- soupsieve==2.8
|
| 232 |
+
- spicepy==1.0.5
|
| 233 |
+
- spiceypy==8.0.0
|
| 234 |
+
- stack-data==0.6.3
|
| 235 |
+
- stringzilla==4.4.0
|
| 236 |
+
- sunpy==7.0.3
|
| 237 |
+
- sunpy-soar==1.11.1
|
| 238 |
+
- sympy==1.14.0
|
| 239 |
+
- tabulate==0.9.0
|
| 240 |
+
- terminado==0.18.1
|
| 241 |
+
- threadpoolctl==3.6.0
|
| 242 |
+
- throttler==1.2.2
|
| 243 |
+
- tifffile==2025.10.16
|
| 244 |
+
- tinycss2==1.4.0
|
| 245 |
+
- toolz==1.1.0
|
| 246 |
+
- torch==2.9.1
|
| 247 |
+
- torchaudio==2.9.1
|
| 248 |
+
- torchmetrics==1.8.2
|
| 249 |
+
- torchvision==0.24.1
|
| 250 |
+
- tornado==6.5.2
|
| 251 |
+
- tqdm==4.67.1
|
| 252 |
+
- traitlets==5.14.3
|
| 253 |
+
- types-pytz==2025.2.0.20251108
|
| 254 |
+
- typing-extensions==4.15.0
|
| 255 |
+
- typing-inspection==0.4.2
|
| 256 |
+
- tzdata==2025.2
|
| 257 |
+
- uri-template==1.3.0
|
| 258 |
+
- urllib3==2.5.0
|
| 259 |
+
- validators==0.35.0
|
| 260 |
+
- wandb==0.23.1
|
| 261 |
+
- wcwidth==0.2.14
|
| 262 |
+
- webcolors==25.10.0
|
| 263 |
+
- webencodings==0.5.1
|
| 264 |
+
- websocket-client==1.9.0
|
| 265 |
+
- widgetsnbextension==4.0.15
|
| 266 |
+
- wrapt==2.0.1
|
| 267 |
+
- xarray==2025.11.0
|
| 268 |
+
- xitorch==0.3.0
|
| 269 |
+
- yarl==1.22.0
|
| 270 |
+
- yte==1.9.4
|
| 271 |
+
- zarr==3.1.5
|
| 272 |
+
- zeep==4.3.2
|
| 273 |
+
prefix: /opt/anaconda3/envs/foxes
|
requirements.txt
CHANGED
|
@@ -1,30 +1,38 @@
|
|
|
|
|
| 1 |
sunpy[all]
|
|
|
|
|
|
|
|
|
|
| 2 |
itipy
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
pytorch-lightning
|
| 6 |
-
pandas
|
| 7 |
-
netCDF4
|
| 8 |
-
matplotlib
|
| 9 |
-
scikit-learn
|
| 10 |
-
scikit-image
|
| 11 |
torch
|
| 12 |
torchvision
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
opencv-python
|
| 17 |
-
spicepy
|
| 18 |
-
xitorch
|
| 19 |
-
sympy
|
| 20 |
numpy
|
| 21 |
scipy
|
| 22 |
-
|
| 23 |
-
imageio
|
| 24 |
-
tqdm
|
| 25 |
-
seaborn
|
| 26 |
xarray
|
| 27 |
-
|
| 28 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 29 |
colormaps
|
| 30 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Solar physics and astronomy
|
| 2 |
sunpy[all]
|
| 3 |
+
sunpy-soar
|
| 4 |
+
astropy
|
| 5 |
+
drms
|
| 6 |
itipy
|
| 7 |
+
|
| 8 |
+
# Deep learning
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
torch
|
| 10 |
torchvision
|
| 11 |
+
pytorch-lightning
|
| 12 |
+
|
| 13 |
+
# Data processing
|
|
|
|
|
|
|
|
|
|
|
|
|
| 14 |
numpy
|
| 15 |
scipy
|
| 16 |
+
pandas
|
|
|
|
|
|
|
|
|
|
| 17 |
xarray
|
| 18 |
+
h5py
|
| 19 |
+
|
| 20 |
+
# Machine learning
|
| 21 |
+
scikit-learn
|
| 22 |
+
|
| 23 |
+
# Visualization
|
| 24 |
+
matplotlib
|
| 25 |
+
seaborn
|
| 26 |
+
plotly
|
| 27 |
colormaps
|
| 28 |
+
|
| 29 |
+
# Image processing
|
| 30 |
+
opencv-python
|
| 31 |
+
Pillow
|
| 32 |
+
imageio
|
| 33 |
+
imageio-ffmpeg
|
| 34 |
+
|
| 35 |
+
# Utilities
|
| 36 |
+
tqdm
|
| 37 |
+
wandb
|
| 38 |
+
PyYAML
|