本文へ移動
cccskills
無料GitHub で公開

ecosim-output-variable-list

Extract and update the EcoSIM output-variable catalog from Fortran history-field registration calls such as hist_addfld1d and hist_addfld2d. Use only when explicitly asked to update, regenerate, refresh, or rebuild the list of EcoSIM output variables from HistDataType.F90 or related F90 source; do not invoke for ordinary EcoSIM output analysis unless the variable list itself must be updated.

インストール方法を見る

含まれるファイル(3)

  • SKILL.md4.3 KB
  • agents/openai.yaml233 B
  • scripts/extract_hist_output_vars.py17.1 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

EcoSIM Output Variable List

Purpose

Use this skill to rebuild the catalog of EcoSIM model output variables registered in Fortran history files. The source of truth is call hist_addfld...(...) registration calls, especially in HistDataType.F90.

The catalog is meant to guide downstream EcoSIM output processing: variable selection, dimension handling, aggregation interpretation, unit checks, and NetCDF metadata review.

Workflow

  1. Locate the selected .F90 source. If the user gives a path, use it. If no path is given, search data/ first, then the repository, for HistDataType.F90 or files containing hist_addfld.
  2. Create an output folder under result/, for example:
mkdir -p result/ecosim_output_variables
  1. Run the bundled extractor. Prefer JSON for automated processing and CSV for quick review:
python3 .agents/skills/ecosim-output-variable-list/scripts/extract_hist_output_vars.py /absolute/path/to/HistDataType.F90 --format json --output result/ecosim_output_variables/ecosim_output_variables.json
python3 .agents/skills/ecosim-output-variable-list/scripts/extract_hist_output_vars.py /absolute/path/to/HistDataType.F90 --format csv --output result/ecosim_output_variables/ecosim_output_variables.csv
  1. Inspect the summary. Report total fields, counts by hist_addfld* routine, counts by rank, the number of dynamic fname expressions, and any duplicate literal variable names.
  2. Preserve dynamic names as templates instead of inventing expansions. For example, names built from trim(micpar%cplxname(jj)) or trim(fieldname) should remain marked with is_dynamic_fname=true unless the loop values are explicitly available from source or runtime configuration.
  3. Use the catalog to guide processing code. Preserve the registered units, avgflag, type2d, pointer_kind, pointer_target, long_name, condition_context, and loop_context fields.

Output Contract

Each extracted variable record includes:

  • source_file, source_line, end_line: where the history registration call appears.
  • addfld_subroutine: the registration routine, such as hist_addfld1d or hist_addfld2d.
  • rank: derived from the routine name when possible (1d, 2d, etc.).
  • fname: literal variable name when available; otherwise a readable template.
  • fname_expr: raw Fortran expression for fname.
  • is_dynamic_fname: true when fname is assembled from expressions.
  • units, avgflag, type2d, default, long_name: named arguments from the registration call.
  • pointer_arg, pointer_kind, pointer_expr, pointer_target: pointer metadata used to infer whether the output is column-, patch-, or other domain-oriented.
  • condition_context, loop_context, enclosing_subroutine: lightweight source context for conditional and loop-registered variables.

Interpretation Rules

  • Do not include commented-out hist_addfld calls in the active variable list.
  • Treat avgflag as EcoSIM history metadata and preserve it verbatim. Do not change temporal units solely from avgflag; check whether units already encode rates (/hr, /s) or interval totals (gC/m2, mm H2O/m2).
  • Treat type2d as the vertical or secondary dimension key for 2-D history variables, such as levsoi, levcan, node, rootaxs, elements, or pmorphunits.
  • Flag unit inconsistencies for review, especially carbon, nitrogen, phosphorus, gas, water, and heat variables where g, mol, umol, m2, m3, hr, and s conversions can create mass-balance errors.
  • Do not edit the Fortran source unless the user asks for code changes. This skill updates the output-variable catalog derived from the source.

Reporting

When reporting the update, include the catalog paths, record counts, dynamic-name examples, duplicate-name warnings if any, and the selected F90 source path. Keep the output focused on how the catalog should guide EcoSIM model-output processing.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Extract EPA/NADP tDEP atmospheric deposition and NADP precipitation chemistry rasters for an AmeriFlux or EcoSIM site. Use when deriving atmospheric chemistry inputs such as NH4, NO3, SO4, Ca, or precipitation pH for EcoSIM forcing workflows.

日本語の概要は準備中です。原文の説明を表示しています。

bioepic-data/ecosim-agent32026年9月19日 更新

Extract AmeriFlux BASE-BADM/BIF crop management records into EcoSIM-editable plant-management and soil-management Excel workbooks that can be converted to EcoSIM NetCDF files. Use when asked to derive EcoSIM planting, harvest, fertilizer, or tillage management inputs from AMF *_BIF_*.xlsx or BIF CSV files, especially for crop sites where management details live in GRP_DM_* records and DM_COMMENT fields.

日本語の概要は準備中です。原文の説明を表示しています。

bioepic-data/ecosim-agent32026年9月19日 更新

Sort AmeriFlux BASE-BADM BIF variables from Excel or CSV files into observation, management-event, static metadata, and plotting-ready target time-series tables. Use when Codex is asked to sort AmeriFlux BIF variables into time series; organize BADM/BIF variables by date; pivot AMF *_BIF_*.xlsx files by GROUP_ID; output total LAI, leaf mass per area, above-ground biomass, canopy height, fruit yield, or total yield time series; write MATLAB readers for BIF time-series plotting; or prepare dated AmeriFlux site observations and management records for EcoSIM workflows.

日本語の概要は準備中です。原文の説明を表示しています。

bioepic-data/ecosim-agent32026年9月19日 更新

Convert AmeriFlux ERA5 half-hourly meteorological CSV files into EcoSIM hourly climate forcing NetCDF files, compare generated forcing against overlapping measured tower meteorology when a FULLSET file is available, and report large biases or errors. Use when preparing or validating EcoSIM climate inputs for AmeriFlux sites, checking ERA5 against in situ records, diagnosing forcing discrepancies, or writing climate-quality reports. For non-AmeriFlux paper sites that need a fresh Copernicus CDS ERA5 point download by longitude/latitude, use era5-cds-point-download first.

日本語の概要は準備中です。原文の説明を表示しています。

bioepic-data/ecosim-agent32026年9月19日 更新

Create EcoSIM Fortran namelist files and workable EcoSIM run folders for AmeriFlux site runs from site-specific grid, plant management, climate forcing, and greenhouse-gas inputs. Use when preparing or updating an EcoSIM `.namelist`, run folder, runfolder, run directory, or executable-ready site case for AmeriFlux or FLUXNET sites, especially after generating `*_ecosim_grid.nc`, `*_ecosim_climate.nc`, and `*_pft_mgmt.nc` inputs.

日本語の概要は準備中です。原文の説明を表示しています。

bioepic-data/ecosim-agent32026年9月19日 更新

Extract AmeriFlux site metadata and map it to EcoSIM JSON variables. Use when a task needs site latitude, longitude, elevation, mean annual temperature, Koppen climate code, or vegetation type for an AmeriFlux site ID or flux-site name.

日本語の概要は準備中です。原文の説明を表示しています。

bioepic-data/ecosim-agent32026年9月19日 更新

bioepic-data のスキルをすべて見る

このスキルの問題を報告する