算法艺术创作
algorithmic-art
通过代码和可调参数创作生成艺术与交互式视觉效果。
spettro-risposta-ntc【设计与创意】Calcola lo spettro di risposta elastico in accelerazione (componente orizzontale) ai sensi delle NTC 2018 par. 3.2 e Circolare 7/2019, dato il sito (parametri ag, F0, Tc* dal reticolo INGV per i 9 TR di riferimento), la vita nominale, la classe d'uso, la categoria di sottosuolo e la categoria topografica. Implementazione code-driven, deterministica e…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
name: spettro-risposta-ntc description: "Calcola lo spettro di risposta elastico in accelerazione (componente orizzontale) ai sensi delle NTC 2018 par. 3.2 e Circolare 7/2019, dato il sito (parametri ag, F0, Tc* dal reticolo INGV per i 9 TR di riferimento), la vita nominale, la classe d'uso, la categoria di sottosuolo e la categoria topografica. Implementazione code-driven, deterministica e riproducibile: la versione 0.1.0-alpha include solo test di consistenza interna delle formule; la validazione di campo (confronto numerico vs foglio Excel CSLP su 10+ casi reali) e' prerequisito del release stabile e non e' ancora stata eseguita. Use when an Italian structural engineer asks to compute the NTC 2018 elastic response spectrum, look up site seismic parameters interpolated on the return period, build the response spectrum table for a limit state, or verify spectrum values produced by other software. Target users are structural engineers preparing seismic design or assessment of new and existing buildings under NTC 2018." license: MIT area: strutture-geotecnica title: "Spettro di risposta NTC 2018 (par. 3.2)" summary: "Calcolo code-driven dello spettro di risposta elastico orizzontale (TR, ag/F0/Tc*, S, eta, TB/TC/TD, Se(T)) per SLO/SLD/SLV/SLC" normative_refs:
Usare quando un ingegnere strutturista italiano deve:
Non usare quando l'utente chiede:
Questa skill e' uno strumento di supporto al calcolo dello spettro di risposta NTC 2018. Non sostituisce il giudizio del progettista strutturale firmatario. L'output e' deterministico (formule chiuse) e quindi confrontabile dal progettista contro il foglio Excel CSLP del Servizio Tecnico Centrale e contro software di calcolo strutturale certificati: il confronto resta in capo al professionista. Nello stato v0.1.0-alpha la skill non e' ancora stata validata con confronto numerico vs CSLP su casi reali; i test interni coprono solo la consistenza delle formule e i raccordi tra rami. La skill non produce relazioni di calcolo pronte al deposito al Genio Civile e non firma elaborati. Per categorie di sottosuolo S1 o S2 la skill rifiuta il calcolo e rinvia ad analisi specifiche di risposta sismica locale come prescritto da NTC par. 3.2.2.
In base alla richiesta dell'utente, carica il task file appropriato:
tasks/calcola-spettro.mdtasks/valida-input-sito.mdtasks/run-test-suite.mdSe la richiesta e' generica ("aiutami con lo spettro NTC"), chiedi se l'utente vuole calcolare lo spettro completo o solo validare gli input. La sequenza naturale e': prima valida-input-sito (sanity check), poi calcola-spettro.
Le formule chiuse di NTC par. 3.2.3 sono implementate nel modulo Python tasks/lib/spettro.py. La test suite tasks/lib/test_spettro.py copre solo consistenza interna: round-trip dell'interpolazione log-log, continuita' ai raccordi TB/TC/TD, validazione input non-finite/non-positive, copertura categorie sottosuolo (incluse D, E) e topografiche (T2/T3/T4), match esatto fra il modulo e il fixture examples/caso-conforme-fittizio-cu2-c-t1/expected.json (anti-drift). Non confronta vs foglio CSLP: la validazione di campo e' prerequisito del release stabile e va eseguita seguendo tasks/run-test-suite.md.
REGOLA OPERATIVA INVIOLABILE. Per ogni calcolo numerico (TR, ag/F0/Tc* interpolati, S, eta, TB/TC/TD, Se(T)) devi invocare il modulo Python via Bash. NON riprodurre i numeri "a mano" leggendo le formule dagli estratti in
references/estratti/: gli estratti sono materiale di citazione normativa, non sostituiscono l'esecuzione del modulo. Calcolare a mano vanifica l'intera ragion d'essere della skill (output deterministico e riproducibile, confrontabile dal progettista) e introduce errore stocastico.
In Claude Code la variabile ${CLAUDE_SKILL_DIR} punta a questa skill. Usala in tutti i comandi Bash:
python3 ${CLAUDE_SKILL_DIR}/tasks/lib/spettro.py --help
In Codex e altri agent compatibili AGENTS.md la variabile potrebbe non essere risolta: in tal caso sostituiscila con il path assoluto della directory che contiene questo SKILL.md (l'agent conosce sempre il path da cui ha caricato la skill). Non usare path relativi tipo tasks/lib/spettro.py: la CWD dell'utente quasi mai coincide con la skill dir.
Il modulo non ha dipendenze esterne (solo libreria standard Python 3.9+).
tasks/.Riferimenti completi in references/sources.yaml. Fonti primarie:
Estratti testuali in references/estratti/.
Parametri di pericolosita' al sito (ag, F0, Tc* per i 9 TR): consultabili sul servizio INGV zonesismiche.mi.ingv.it o sul foglio Excel CSLP.
Questa skill NON fa:
Ogni output va verificato dal progettista strutturale prima di essere usato per analisi di calcolo, dimensionamento o asseverazione.